要約
GitHub Actions に Amazon ECS デプロイツール ecspresso と AWS Lambda デプロイツール lambroll を簡単にインストール action を用意しました。
steps で以下の指定をするだけです。(Linux 環境専用です)
- uses: kayac/ecspresso@v0 - uses: fujiwara/lambroll@v0
もうちょっと詳しく
これまで GitHub Actions の action は基本的に Node で書く必要があったのですが、やりたいことはバイナリをダウンロードして展開してコピーするだけなのになんで Node を書かないといけないのか……(Linux以外の環境を考えると仕方ないとはいえ)、と面倒くささが先に立って、これまで action を作らないままでした。
が、先日 Composite Run Steps が使えるようになり、これは要するに自分の steps に shell script を書くかのように定義した action.yml を置いておくだけでよいという、顧客が本当に欲しかったものだったのでした。最高。
ソースはこれだけで、見ての通り単に curl で落として展開して install するだけ、です。
https://github.com/kayac/ecspresso/blob/master/action.yml
inputs: version: description: "A version of ecspresso" default: "v0.17.3" runs: using: "composite" steps: - run: | FILENAME=ecspresso-${{ inputs.version }}-linux-amd64 cd /tmp curl -sLO https://github.com/kayac/ecspresso/releases/download/${{ inputs.version }}/${FILENAME}.zip unzip ${FILENAME}.zip sudo install ${FILENAME} /usr/local/bin/ecspresso rm -f ${FILENAME} ${FILENAME}.zip shell: bash
使う側は他の action と同様、step で uses: kayac/ecspresso@v0
などとするだけです。便利。
jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: kayac/ecspresso@v0 with: version: v0.17.3 - run: | ecspresso deploy --config config.yaml