Introduction to
Github Actions Workflow
Priyanka Saggu
$whoami
- I am Priyanka Saggu :)
-
Currently, I'm working as a DevOps Engineer Intern @Atlanhq. (And, I will be a DevOps Engineer in about 2 weeks from now XD )
-
I'm also an Outreachy'19 alumna @GNOME Foundation.
-
And yes, I am still in the very process of learning & exploring my ways.
Content
- What is a Github Action?
- What's my intent for talking about Github Actions here?
- Format for writing a basic Github Actions workflow.
- Quick handson!
- QnA
What is a Github Action?
GitHub Actions is an API for cause and effect on GitHub: orchestrate any workflow, based on any event, while GitHub manages the execution, provides rich feedback, and secures every step along the way. With GitHub Actions, workflows and steps are just code in a repository, so you can create, share, reuse, and fork your software development practices.
Github Action Workflow
Jobs
Github Actions (steps)
Commands
- GitHub Actions is an API for cause and effect on GitHub.
- orchestrate any workflow
- based on any event
- while GitHub manages the execution, provides rich feedback, and secures every step along the way.
- With GitHub Actions, workflows and steps are just code in a repository, so you can create, share, reuse, and fork your software development practices.
Just a little bit about CI/CD
A CI/CD Pipeline implementation, or Continuous Integration/Continuous Deployment, is the backbone of the modern DevOps environment.
- CI stands for Continuous Integration
- CD stands for Continuous Delivery/Continuous Deployment.
You can think of it as a process similar to a software development lifecycle.
Writing first Github Action!
- Make a nested directory structure in the root of your Github Repository. Like this:
.github -> workflows -> main.yaml
(Okay, you don't have to manually set this part too. :D)
name: CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Run a one-line script
run: echo Hello, world!
- name: Run a multi-line script
run: |
echo Add other actions to build,
echo test, and deploy your project.
HANDS ON!
Q/A
- `priyankasaggu119` on IRC. [mostly hanging around in #learnandteach, #dgplug (on freenode server) & #gtranslator (on irc.gimp.net)]
- Twitter handle: @PriyankaSaggu4
- LinkedIn: linkedin.com/in/priyanka-saggu
- priyankasaggu11929@gmail.com
You can connect with me:
And I (try hard to) write as well , so if you want to read:
- priyankasaggu119.github.io/