SlideShare a Scribd company logo
1 of 23
Download to read offline
GitHub Actionsの紹介
@shogo82148
GitHub Actions is generally available
事前の発表とおり、11/13に正式公開になりました
GitHub Actionsとは
こんな感じの設定ファイルを作っておくと、コミット毎にテストを回せる
既存サービスだと Travis CI とか CircleCI とかが有名
Getting started GitHub Actions
Actions というタブが追加されているのでクリック
ワークフローの雛形を選択
なんと使用している言語を自動判別して
サジェストしてくれる!
エディタが開いてそのまま設定ファイルを編集できる
Workflow編集用にカスタマイズされていて、
サジェッションとかしてくれる
エラーがあればその場で警告&修正候補の提案
便利
右側で action の検索や、ドキュメントの参照もできる
便利
作業が終わったら、その場でコミット
そのままプルリクエストの作成に進める
便利
details から詳細なログを確認可能
個人的おすすめポイント(1)
• 実行環境としてLinux, macOS, Windowsが
提供されている
• Matrix builds ができる
• 例えば・・・
(Go 1.13, Go 1.12) (Linux, macOS, windows)
の組み合わせでテストが通ることを確認できる
• 他サービスだと設定が複雑になったり、
macOS, Windows 対応が微妙だったりする
個人的おすすめポイント(2)
• Annotations
• コンパイルエラー etc. が発生すると diff
の該当行にエラーメッセージが表示される
• よくわからないけどヘルプには載っていな
い
• toolkitの片隅にこっそりドキュメント
があった https://github.com/actions/toolkit/blob/
master/docs/problem-matchers.md
• GitHub Annotations が beta だから?
個人的おすすめポイント(3)
• Travis CI だとプルリクエストを出すと2種類のジョブが実行される
• Branch, Pull Requestとで矢印のコミットの有無が違う
• マージ後と同じ状態でテストが回るので安心感が増す
• CircleCI では簡単にはできないっぽい(?)ので困ってた
• GitHub Actions ではイベントトリガーを pull_request にするだけ
気になるお値段?
Public repositories
Free
https://github.com/features/actions
Private repositories
• Linux: 1分あたり0.008ドル=日本円で約0.9円/分
• Windows: 約1.8円/分
• macOS: 約9円/分
• FYI: t2.large(2vCPU, 8GiB Memory): 約0.22円/分 (in ap-northeast-1)
無料枠
• Teamの場合$80/月までは追加料金無し。超えた分は従量課金。
• Linux: 1万分, Windows: 5千分, macOS: 1000分
• 月の始まりはプラン変更日になるっぽい
• れても上限設定できるので安心(上限に達するとどうなるかは知らない)
Setting/Billing から確認できます
その他beta版からのアップデート(1)
• 並列数
• レポジトリ毎20並列まではbetaのまま
• アカウント毎の並列数がプランによって制限されるようになりました
• ジョブの実行時間は6時間まで(これはbeta同様) ワークフローの実行時間に制限が無いな・・・ 🤔
その他beta版からのアップデート(2)
• Matrix Buildで作成できるジョブの上限が100になった(undocumented)
https://github.com/shogo82148/Redis-Fast/commit/2a40879ee4269e66100d9e95a3259eb873f1ec80/checks?check_suite_id=272127466
その他beta版からのアップデート(3)
• GitHub Package Registry が GitHub Packages に名前を変えてGA 🎉
• secrets.GITHUB_TOKEN の権限で書き込みができる
• beta の初期のころは Docker で試したけど権限不足(?)だった
• それ以前の問題として unknown blob とかエラーを吐いてた

More Related Content

Similar to GitHub Actions

@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門Takashi Imagire
 
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込むKazumi IWANAGA
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwellsinsoku listy
 
Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02Kosuke Tanabe
 
GitHub Releasesからインストールしたコマンドを管理する
GitHub Releasesからインストールしたコマンドを管理するGitHub Releasesからインストールしたコマンドを管理する
GitHub Releasesからインストールしたコマンドを管理するjiro4989
 
VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 Hiro Yoshioka
 
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~DoshishaUniv ProntiatVR
 
GitHub ActionsでiOSのCIを実現しよう
GitHub ActionsでiOSのCIを実現しようGitHub ActionsでiOSのCIを実現しよう
GitHub ActionsでiOSのCIを実現しようShinya Nakajima
 
Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門kazuki kuriyama
 
GitHubの入門を読む前に読む入門書
GitHubの入門を読む前に読む入門書GitHubの入門を読む前に読む入門書
GitHubの入門を読む前に読む入門書相皓 卞
 
Gitpractice01
Gitpractice01Gitpractice01
Gitpractice01mmm110
 
プログラミング支援AI GitHub Copilot すごいの話
プログラミング支援AI GitHub Copilot すごいの話プログラミング支援AI GitHub Copilot すごいの話
プログラミング支援AI GitHub Copilot すごいの話Mitsushige Ishiguro
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理Takafumi Yoshida
 
GitHub + Circle CI で幸せになろう
GitHub + Circle CI で幸せになろうGitHub + Circle CI で幸せになろう
GitHub + Circle CI で幸せになろうNobuhiro Ueda
 
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsGitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsKazumi IWANAGA
 

Similar to GitHub Actions (20)

Yapc2012資料
Yapc2012資料Yapc2012資料
Yapc2012資料
 
@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門@s_ssk13さん向けGitHub入門
@s_ssk13さん向けGitHub入門
 
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
日々の開発フローにプラスする GitHub Actions ~ セキュリティ対策を取り込む
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
 
Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02Next-L Enju 開発ワークショップ #02
Next-L Enju 開発ワークショップ #02
 
GitHub Releasesからインストールしたコマンドを管理する
GitHub Releasesからインストールしたコマンドを管理するGitHub Releasesからインストールしたコマンドを管理する
GitHub Releasesからインストールしたコマンドを管理する
 
VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011
 
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
Github勉強会~Git・Githubを用いて共同開発・バージョン管理をしよう~
 
GitHub ActionsでiOSのCIを実現しよう
GitHub ActionsでiOSのCIを実現しようGitHub ActionsでiOSのCIを実現しよう
GitHub ActionsでiOSのCIを実現しよう
 
Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門Git & ブランチモデルで学ぶ バージョン管理入門
Git & ブランチモデルで学ぶ バージョン管理入門
 
俺とGitHub
俺とGitHub俺とGitHub
俺とGitHub
 
Github第8章
Github第8章Github第8章
Github第8章
 
GitHubの入門を読む前に読む入門書
GitHubの入門を読む前に読む入門書GitHubの入門を読む前に読む入門書
GitHubの入門を読む前に読む入門書
 
Gitpractice01
Gitpractice01Gitpractice01
Gitpractice01
 
プログラミング支援AI GitHub Copilot すごいの話
プログラミング支援AI GitHub Copilot すごいの話プログラミング支援AI GitHub Copilot すごいの話
プログラミング支援AI GitHub Copilot すごいの話
 
Github入門2014
Github入門2014Github入門2014
Github入門2014
 
Git tutorial
Git tutorialGit tutorial
Git tutorial
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
 
GitHub + Circle CI で幸せになろう
GitHub + Circle CI で幸せになろうGitHub + Circle CI で幸せになろう
GitHub + Circle CI で幸せになろう
 
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOpsGitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
 

Recently uploaded

【MASの教材】病気の流行
【MASの教材】病気の流行【MASの教材】病気の流行
【MASの教材】病気の流行Masaki Tamada
 
【MASの教材】飛ぶ鳥モデルからボイドモデルへ
【MASの教材】飛ぶ鳥モデルからボイドモデルへ【MASの教材】飛ぶ鳥モデルからボイドモデルへ
【MASの教材】飛ぶ鳥モデルからボイドモデルへMasaki Tamada
 
MELON_SalesHub_SlideShareUpload_20240501.pptx
MELON_SalesHub_SlideShareUpload_20240501.pptxMELON_SalesHub_SlideShareUpload_20240501.pptx
MELON_SalesHub_SlideShareUpload_20240501.pptxyuzuruhayashi
 
【MASの教材】立ち話モデル 人間関係が見えるように
【MASの教材】立ち話モデル 人間関係が見えるように【MASの教材】立ち話モデル 人間関係が見えるように
【MASの教材】立ち話モデル 人間関係が見えるようにMasaki Tamada
 
【MASの教材】ターミナル駅の通勤客の流れ
【MASの教材】ターミナル駅の通勤客の流れ【MASの教材】ターミナル駅の通勤客の流れ
【MASの教材】ターミナル駅の通勤客の流れMasaki Tamada
 
【MASの教材】シェリングの「分居モデル」
【MASの教材】シェリングの「分居モデル」【MASの教材】シェリングの「分居モデル」
【MASの教材】シェリングの「分居モデル」Masaki Tamada
 
【MASの教材】ホタルの光
【MASの教材】ホタルの光【MASの教材】ホタルの光
【MASの教材】ホタルの光Masaki Tamada
 
【MASの教材】水槽の中のプランクトン
【MASの教材】水槽の中のプランクトン【MASの教材】水槽の中のプランクトン
【MASの教材】水槽の中のプランクトンMasaki Tamada
 

Recently uploaded (8)

【MASの教材】病気の流行
【MASの教材】病気の流行【MASの教材】病気の流行
【MASの教材】病気の流行
 
【MASの教材】飛ぶ鳥モデルからボイドモデルへ
【MASの教材】飛ぶ鳥モデルからボイドモデルへ【MASの教材】飛ぶ鳥モデルからボイドモデルへ
【MASの教材】飛ぶ鳥モデルからボイドモデルへ
 
MELON_SalesHub_SlideShareUpload_20240501.pptx
MELON_SalesHub_SlideShareUpload_20240501.pptxMELON_SalesHub_SlideShareUpload_20240501.pptx
MELON_SalesHub_SlideShareUpload_20240501.pptx
 
【MASの教材】立ち話モデル 人間関係が見えるように
【MASの教材】立ち話モデル 人間関係が見えるように【MASの教材】立ち話モデル 人間関係が見えるように
【MASの教材】立ち話モデル 人間関係が見えるように
 
【MASの教材】ターミナル駅の通勤客の流れ
【MASの教材】ターミナル駅の通勤客の流れ【MASの教材】ターミナル駅の通勤客の流れ
【MASの教材】ターミナル駅の通勤客の流れ
 
【MASの教材】シェリングの「分居モデル」
【MASの教材】シェリングの「分居モデル」【MASの教材】シェリングの「分居モデル」
【MASの教材】シェリングの「分居モデル」
 
【MASの教材】ホタルの光
【MASの教材】ホタルの光【MASの教材】ホタルの光
【MASの教材】ホタルの光
 
【MASの教材】水槽の中のプランクトン
【MASの教材】水槽の中のプランクトン【MASの教材】水槽の中のプランクトン
【MASの教材】水槽の中のプランクトン
 

GitHub Actions