[レポート]Github ActionsによるAWSの継続的デリバリ #DOP322-S #reinvent
はじめに
DOP322-S - Continuous delivery to AWS with GitHub Actionsのセッションレポートです。
Continuous delivery to AWS with GitHub Actions
GitHub Actionsの要素
- Workflow
- リポジトリ内でセットアップできる、編集可能な自動化されたプロセス
- Event
- Workflowが各イベントにて実行するもの
- Actions
- Workflow内で作成したジョブを順番に組み立てる、作業における個々のユニット
初めての場合は以下のリポジトリから触ってみましょう。
actions/starter-workflows: Accelerating new GitHub Actions workflows
料金
パブリックリポジトリ
無料。We love open source
プライベートリポジトリ
以下の時間内であれば、料金の請求が発生しません。
Plan | minutes per month |
---|---|
Free | 2,000 |
Pro | 3,000 |
Team | 10,000 |
Enterprise | 50,000 |
それ以降での料金請求額です。
OS | per minutes |
---|---|
Linux (2core 7GB) |
$0.008 |
Windows (2core 7GB) |
$0.016 |
macOS (2core 7GB) |
$0.08 |
Self-hosted | Free |
Actionsを作成してみる
GitHub Actions Toolkitを使ってみましょう。
actions/toolkit: The GitHub ToolKit for developing GitHub Actions.
DEMOアプリケーション
当セッションのメインでした。
git clone [email protected]:github-developer/octochat-aws.git cd octochat-aws mv .env.example .env docker build -t octochat -f Dockerfile.develop . ./script/server.sh
http://localhost:49160/ にてアクセスできます。
あるいは、forkした上でブラウザ上からworkflowを色々書き換えて試してみるのもありです。
Amazon ECSへのデプロイ
上記アプリケーションのECSへデプロイしたログをActionsからたどることができます。
尚、セッション中に動作させていたActionsについては以下の通り。
dump aws access key · github-developer/octochat-aws@d6cbbb8
おさらい
とにかく触って試してみよう、という趣旨でした。パブリックリポジトリであれば費用が発生しないので、今回のDEMOアプリを元に色々といじってみましょう。