はじめてのGitHub Actions
GitHub Actions の Action を作っていこうと思います。まずは、「Hey, Yo!」と出力するだけの簡単な Action にしておきましょう。Action にもいくつかの種類があるようですが、今回は Docker コンテナを用いた Action を作ります。
まずは Action の設定ファイルを作成します。 このファイルは action.yml
という名前でプロジェクトのルートに作成しました。
name: "Hey Yo Action"
description: "Everybody Say Hey, Yo!"
author: "okuzawats"
branding:
icon: "thumbs-up"
color: "yellow"
runs:
using: "docker"
image: "Dockerfile"
次に Dockerfile
を作ります。エントリーポイントとなる shell script を呼び出しています。
FROM alpine:3.10
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
上述の entrypoint.sh
の中身はこんな感じです。“Hey, Yo!“と出力するだけの特にどうということはない script です。
#!/bin/sh
echo "Hey, Yo!"
このままだと entrypoint.sh
の実行権限がないため、 entrypoint.sh
を実行できません。以下のコマンドで実行権限を与えます。
$ chmod +x entrypoint.sh
これだけで Action は作成完了ですので、早速試しに動かしてみます。 v0.3
という名前でタグとリリースが作成済みです。GitHub Actions のワークフローを以下のように作成しました。
name: yo
on: [pull_request]
jobs:
yo:
name: runner / yo
runs-on: ubuntu-latest
steps:
- uses: okuzawats/hey-yo-action@v0.3
GitHub Actions を実行すると、「Hey, Yo!」が出力されました。
Hey, Yo!
自作の Action を動かすだけならそれほど難しくないことがわかりました。
作成した Action はこちらのリポジトリに公開しています。
Reference
- Docker コンテナのアクションを作成する - GitHub Docs, retrieved from https://docs.github.com/ja/actions/creating-actions/creating-a-docker-container-action) (last acccess: 2022/07/03)
書いている人 😎

茨城県つくば市在住のソフトウェアエンジニア。柏の葉キャンパスと新潟にオフィスのある某社にて、Androidアプリ開発のテックリードをしています。モバイルアプリのアーキテクチャ、自動テスト、技術書の執筆に興味があります。
Jetpack ComposeによるAndroid MVVMアーキテクチャ入門の著者です。
👉 もっと詳しく
Android MVVMアーキテクチャ入門 📝
Androidアプリ開発の初学者に向けた、MVVM(Model-View-ViewModel)アーキテクチャの入門書を書きました。初学者の方を確実にネクストレベルに引き上げる技術書です。