Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GitHub Actions 2021-12-16
Search
sullis
December 16, 2021
Programming
0
38
GitHub Actions 2021-12-16
GitHub Actions overview
December 16, 2021
sullis
December 16, 2021
Tweet
Share
More Decks by sullis
See All by sullis
Amazon S3 NYJavaSIG 2024-12-12
sullis
0
130
Amazon S3 - Portland Java User Group 2024-09-17
sullis
0
64
Netty - Montreal Java User Group 2024-05-21
sullis
0
140
Netty Chicago Java User Group 2024-04-17
sullis
0
950
Java 21 - Portland Java User Group 2023-10-24
sullis
0
290
Microbenchmarking with JMH - Portland 2023-03-14
sullis
0
130
Code generation on the Java VM 2022-04-19
sullis
0
120
Mockito 2022-01-25
sullis
0
170
Apache Struts and the Equifax data breach 2021-06-03
sullis
0
55
Other Decks in Programming
See All in Programming
iOS開発におけるCopilot For XcodeとCode Completion / copilot for xcode
fuyan777
1
1.2k
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.1k
fs2-io を試してたらバグを見つけて直した話
chencmd
0
280
Beyond ORM
77web
11
1.5k
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.3k
技術的負債と向き合うカイゼン活動を1年続けて分かった "持続可能" なプロダクト開発
yuichiro_serita
0
250
HTML/CSS超絶浅い説明
yuki0329
0
160
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.7k
Go の GC の不得意な部分を克服したい
taiyow
3
980
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
390
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
210
為你自己學 Python
eddie
0
500
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
How STYLIGHT went responsive
nonsquared
96
5.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
230
Statistics for Hackers
jakevdp
797
220k
A Modern Web Designer's Workflow
chriscoyier
693
190k
YesSQL, Process and Tooling at Scale
rocio
170
14k
The Invisible Side of Design
smashingmag
299
50k
Bash Introduction
62gerente
609
210k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Transcript
GitHub Actions 2021-12-16 Sean Sullivan
Agenda GitHub Actions Core concepts Security
GITHUB ACTIONS
“GitHub Actions help you automate your software development work fl
ows” source: GitHub.com
“You can write individual tasks, called actions, and combine them
to create a custom work fl ow” source: GitHub.com
Getting started
Actions tab
Actions tab Starter Work fl ow
Work fl ow editor
Work fl ow editor
Work fl ow editor
Work fl ow editor checkout
Work fl ow editor setup-java
Work fl ow editor run: sbt test
Work fl ow editor click
Work fl ow editor click
.github/work fl ows
Actions tab
Actions tab
Actions tab
Ruby On Rails uses GitHub Actions
Ruby on Rails
Ruby on Rails
Ruby on Rails
Ruby on Rails
Redis Dropwizard Log4j Open source projects using GitHub Actions twilio-java
Guardrail Net fl ix Zuul
Core concepts
Events Actions Work fl ows
create deployment deployment_status issue created pull_request push schedule label created
(and many more) Events trigger work fl ows
Work fl ows are custom automated processes that you can
set up in your repository to build, test, package, release, or deploy source: GitHub.com
GitHub webhooks GitHub Actions work fl ows
Actions are individual tasks that you can combine to create
jobs source: GitHub.com
You can create custom Actions or use Actions provided by
the GitHub community source: GitHub.com
action.yml declares the inputs and outputs for an action source:
GitHub.com
Types of Actions: JavaScript Docker source: GitHub.com
“GitHub Actions is available with GitHub Free, GitHub Pro, GitHub
Team, and GitHub Enterprise” source: GitHub.com
What if I already have an existing CI tool enabled?
Keep your existing CI tool and enable GitHub Actions
Evaluate both CI tools running side-by-side
Actions runtime Runners Virtual Environments
Runners GitHub-hosted Self-hosted
Hosted Runners “GitHub hosts Linux and Windows runners on Standard_DS2_v2
virtual machines in Microsoft Azure with the GitHub Actions runner application installed” source: GitHub.com
Self-Hosted Runners “Self-hosted runners can be physical, virtual, container, on-premises,
or in a cloud” source: GitHub.com
Self-Hosted Runners
Self-Hosted Runners C Sharp
Virtual Environments
Ubuntu 20.04 Ubuntu 18.04 Linux support
Third party actions
AWS Actions Azure Actions Google Cloud Actions
Pulumi Actions Terraform Actions Docker Actions
https://github.com/aws-actions
None
AWS: action.yml
Security
Secrets access protected keys using the secrets context object source:
GitHub.com
Secrets source: GitHub.com
Secrets source: GitHub.com
Secrets source: GitHub.com
Secrets source: GitHub.com
Self-Hosted Runners “do not use self- hosted runners with public
repositories” source: GitHub.com
Self-Hosted Runners “Forks of your public repository can potentially run
dangerous code on your self-hosted runner machine” source: GitHub.com
Final thoughts
“CI ensures that the code that we create, as a
team, works by providing us with rapid feedback on any problems”
GitHub Actions YAML Automation Conclusion
Thank you twitter.com/tinyrobots github.com/sullis
Bonus slides
None
THE END