Hey again guys, I am hoping that you are already aware of CI/CD and if you are not then please so visit this blog post, it has been a long time since we are using traditional way to deploy changes on production most of the organization still using | Push local changes on Git | -> | Pull Changes on Production | -> | Restart Server |
Unfortunately, sometimes scary things happen when server restarts in-the-middle of work, then downtime is another issue that we have to deal with:(, Github recently announced (Streamed live on Aug 8, 2019, on youtube) Total GitHub user count is 40 million, can you believe this 40,00,000? I am 100 of those 40.000.000 Developers;-) LOL, anyways there were some cool announcements to such as free private repos and most important inbuilt CI/CD(beta), Bad news for CircleCI guys.
Being a DevOps developer – I am loving it. There are some things that I need to understand that how can I integrate them together. There are chances that you could have experienced that if GitHub goes down then CircleCI job won’t work so if there us one organization that can monitor and fix the issue; then it’s definitely a plus point.
As discussed previously in the GitHub blog, GitHub Actions now officially makes it convenient to build, test and deploy the project on any platform – whether it is Linux, macOS, and Windows.
It is ideal to run your container in a virtual machine or in a container itself. Actions are offering support for more languages and frameworks than it was earlier. iOS, Android, Python, Java, PHP, Ruby, C/C++, .NET and more.
If in case your concern is related to the multi-container app, then you can test your web service by adding docker-compose to your workflow file.
Cool it is, isn’t it? So it is possible to manage code, repo, deployment, automation, and testing altogether at one place. Github action has made it convenient to automate all your software workflows. So, right from Github, you can build, test and deploy your code. Do your code reviews, issue triaging, branch management the way you want them.
Create workflows with GitHub events – push, merge, on: pull request, issue creation, or a new release. Combine as well as configure actions for the services by the community. Whatever is your purpose, build a container app, publish packages to registries, or automate welcoming new users to your open source projects – there is already an action for that.
Matrix lets you test various versions of your project by adding few lines to the Actions YAML file, and rest will be taken care of by GitHub.
jobs: test: name: Test on node ${{ matrix.node_version }} and ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: node_version: [8, 10, 12] os: [ubuntu-latest, windows-latest, macos-latest] steps: - uses: actions/checkout@v1 - name: Use Node.js ${{ matrix.node_version }} uses: actions/setup-node@v1 with: version: ${{ matrix.node_version }} - name: npm install, build and test run: | npm install npm run build --if-present npm test
As shown in the yml file I defined node_version: [8, 10, 12] and os: [ubuntu-latest, windows-latest, macos-latest], now what happens this script while checking the compatibility with node versions 8,10,12 and also test of various operating system such as Ubuntu,Windows and MacOS with different version support,
By doing this we can easily judge and run our test cases and codebase, all these major things happen on two lines of code,
Developer who previously worked with https://circleci.com is already familiar with this yml systex
Creating and managing CI/CD is not that easy task, But Github did this job for you.
So from the next time whenever you will enable Actions for the repository, GitHub will give you suggestions on Actions workflows for your project. Like Ruby,node,python etc
Learn more and sign up for the beta that is free until GitHub is officially making it available at GitHub Universe on November 13.
Your Success Is Guaranteed !
We accelerate the release of digital product and guaranteed their success
We Use Slack, Jira & GitHub for Accurate Deployment and Effective Communication.