Deploying Packages with GitHub Actions

GitHub Actions is a flexible platform for creating DevOps pipelines, and with it we can create smooth workflows that will build and deploy our libraries to destinations like npm and NuGet. What’s more, GitHub has their own package feed that we can deploy packages to. So let’s look at how we can create a workflow that will publish new versions of packages, right from GitHub.

Jump to:

  • [00:55] What are packages?
  • [03:28] Creating a GitHub Action
  • [08:17] Viewing the workflow

Learn more:
Deploy to GitHub packages https://aka.ms/DevOpsLab/DeployGitHubBlog
Publishing a package https://aka.ms/DevOpsLab/GitHubDocs
About packaging with GitHub Actions https://aka.ms/DevOpsLab/GitHubActions

Build in-demand skills to leverage DevOps capabilities in every stage of your software development lifecycle. In less than 1-hour commitment a day, you can earn 50 percent off the cost of a Microsoft certification exam as DevOps Engineer Expert. https://aka.ms/30DaystoLearnIt/DevOpsLab

#github

What is GEEK

Buddha Community

Deploying Packages with GitHub Actions

A Simple Guide to Github Page Deployment

Long story short: Jekyll is a template engine changing

markdowndocuments on staticHTMLwebpages, that you can then host anywyere, because you don’t need databases or server that has PHP or Python.

Usual Process

Normally the process of adding new post looks like this:

  • I write markdown document with setting parameters like title, date and tags
  • when I’m happy with what I wrote (never), I commit changes and push it to repository on GitHub. Repository name comes from my nick and is also address for blog asvid.github.io
  • Github after pushing to branch master builds website from sources using Jekyll - probably something like running jekyll build
  • result of Jekyll build is not present in a repository, but you see it right now after visiting bloga page

#github-pages #github-page-with-jekyll #jekyll #github-actions #github #deployment #continuous-deployment #web-development

Justyn  Ortiz

Justyn Ortiz

1602853200

How to get your organization started with containerized deployments

This is our second post on cloud deployment with containers. Looking for more? Join our upcoming GitHub Actions webcast with Sarah, Solutions Engineer Benedict Oleforo, and Senior Product Manager Kayla Ngan on October 22.

In the past few years, businesses have moved towards cloud-native operating models to help streamline operations and move away from costly infrastructure. When running applications in dynamic environments with Docker, Kubernetes, and other tooling, a container becomes the tool of choice as a consistent, atomic unit of packaging, deployment, and application management. This sounds straightforward: build a new application, package it into containers, and scale elastically across the infrastructure of your choice. Then you can automatically update with new images as needed and focus more on solving problems for your end users and customers.

However, organizations don’t work in vacuums. They’re part of a larger ecosystem of customers, partners, and open source communities, with unique cultures, existing processes, applications, and tooling investments in place. This adds new challenges and complexity for adopting cloud native tools such as containers, Kubernetes, and other container schedulers.

Challenges for adopting container-based strategies in organizations

At GitHub, we’re fortunate to work with many customers on their container and DevOps strategy. When it comes to adopting containers, there are a few consistent challenges we see across organizations.

  • Containerizing and maintaining applications: Most organizations have existing applications and need to make the decision about whether to keep them as-is, or to place them in containers for an easier transition to the cloud. Even then, teams need to determine whether a single container for the application is appropriate (in a lift-and-shift motion to the cloud), or if more extensive work is needed to break it down into multiple services, delivered as a set of containers.
  • Efficiently configuring and managing permissions: Adopting containers often translates to better collaboration for everyone in your organization. DevOps is now more than just core developers and IT operators. It includes release and infosec engineers, data scientists, QA, project managers, and other roles. But collaborating across multiple teams introduces new needs for configuring and managing permissions for code, along with the automation to support it.
  • Standardizing best practices across the organization: Containers help teams scale and integrate quickly, but may also require updating your CI/CD practices to match. You have to validate they work well for existing applications, while incorporating the correct user and package permissions and policies… The best practices you set have to be flexible for others too. Individual teams—who are transitioning to new ways of working—need to be able to optimize for their own goals.

Connecting teams and cloud-native tools with GitHub

Despite the few challenges of adopting containers and leveraging Kubernetes, more and more organizations continue to use them. Stepping over those hurdles allows enterprises to automate and streamline their operations, here with a few examples of how enterprises make it work successfully with support from package managers and CI/CD tools. At GitHub, we’ve introduced container support in GitHub Packages, CI/CD through GitHub Actions, and partnered within the ecosystem to simplify cloud-native workflows. Finding the right container tools should mean less work, not more—easily integrating alongside other tools, projects, and processes your organization already uses.

#engineering #actions #containerized #deployment #devops #github actions #github packages #packages

Oral  Brekke

Oral Brekke

1617437520

Deploying my portfolio website on Github Pages using Github Actions.

I recently deployed  my portfolio site and wanted to try out github actions and this is my experience of automating the deployment.

This article is more focused on how you can use the GitHub actions and how easy it is to deploy your code to GitHub pages rather than the portfolio site code.So every time you make an update or build to your website ,the changes are automatically reflected and this automated deploying process makes work much faster.

The way GitHub action works is you create actions in your repositories by creating one or more yaml files and these are called workflows.Workflows now can handle build tasks like CI CD. This means you use the action to test your code and push the site to the desired hosting platform (in this case GitHub pages ) when the main branch changes .

First step assuming that you have a GitHub account is to create a repository having your website code in it.Now I have a bootstrap website but in the future I do plan on adding node JS so I already added package.json.

#workflow #portfolio #github #github-actions #github-pages

Bongani  Ngema

Bongani Ngema

1619183580

Make Deployment Easy with Continuous Delivery and GitHub Actions

Learn how CD can save you hundreds of hours

Deployment is always a complicated and tedious task. As your applications grow, you will probably need to ship to production many times a week, and doing so rapidly is usually crucial. Luckily for you, thanks to Continuous Delivery and GitHub Actions, deploying to production becomes a trivial task!

What is CD?

Continuous Delivery or CD is the agile practice of continuously deploying to production bit size pieces of code, instead of in big chunks. This way, not only your application can grow more steadily, but it also becomes way easier to identify bugs in small commits than in massive pieces of code. CD is at its best when combined with Continuous Integration or CI.

CI parts from the same principle of managing your application changes in small, more manageable parts, but contrary to CD, CI is responsible for verifying that new changes to the code base work as intended. This way, CD will only step in to deploy new changes if they work as intended!

The beauty of CI and CD is that they can be fully automatized thanks to GitHub Actions! Every time a commit is made to the main branch, we can trigger a workflow that runs tests on our code and if they pass, our code gets deployed to production. All you will have to worry about is pushing your code to your repository and fixing any bugs that may occur.

To learn more about GitHub Actions and how to create workflows, check out my previous article on CI.

In this article, I will be mainly focused on the contents of a proper CD workflow.

#github-actions #programming #deployment #github

Desmond  Gerber

Desmond Gerber

1624347085

How to Create a Custom GitHub Actions Using JavaScript — Beginner Level

In this blog, we are going to learn how to create our own custom GitHub action using javaScript.

Prerequisite

  • Basic JavaScript Knowledge
  • Basic Git & GitHub Knowledge

About GitHub Actions

Automate, customize, and execute your software development workflows right in your repository with GitHub Actions. You can discover, create, and share actions to perform any job you’d like, including CI/CD, and combine actions in a completely customized workflow.

Types of Actions

There are three types of actions: Docker container actions, JavaScript actions, and composite run steps actions.

JavaScript Custom Action

Let’s create a Custom GitHub Action using JavaScript by creating a public repo, once the repo is created, we can clone it to our local machine using VS Code or GitPod. You need to have Node.js 12.x or higher and npm installed on your machine to perform the steps described here. You can verify the node and npm versions with the following commands in a VS Code or GitPod terminal.

node --version 
npm --version

#github #github-tutorial #github-actions #github-trend