LoginSignup
1
0

More than 1 year has passed since last update.

Github ActionでDB2コンテナの起動を待つcompositeなActionを書いてみました

Last updated at Posted at 2022-08-09

ibm/db2のコンテナは簡易的なテスト環境を作るときなどに便利ですが、DB2のセットアップから起動までに時間がかかるという欠点があります。

そのため、Github Actionのdocker上で利用しテストなどを実行しようとすると、DB2に接続できる状態を確認するためのShell Scriptを書く必要になることが多々あったため、DB2のデータベースが構築される状態になるまで待つだけの処理を書いたActionを作ってみました。

Action

使い方

シンプルに下記を書くだけです。

- uses: amanoese/db2-container-wait-action@v1

dockerコンテナの名前やデータベース名は指定しない限り、
最初に見つかったものを採用するため設定不要です。

また、データベース名を指定したい場合や2つ以上DBを使う場合などのために、オプションで指定できるようになっています。
詳しくは「usage-advanced-setting」を見てください。

workflow例

READMEにも書いていますが、下記のように利用されることを想定しています。

name: workflow-example
on: push

jobs:
  simple-db2:
    runs-on: ubuntu-latest
    steps:
      - name: start db2 container
        run: docker run --name mydb2 --privileged=true -e LICENSE=accept -e DBNAME=testdb -dt ibmcom/db2

      - name: wait database create
        uses: amanoese/db2-container-wait-action@v1

      - name: check connect database
        run: docker exec -t mydb2 bash -c "sudo -i -u db2inst1 db2 'connect to testdb'"

備考

Action作るのおもしろいですね。

DB2詳しくないので、かんたんに待つ方法をご存知のかたがございましたらご教示いただけると幸いです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0