- 諸般の事情で
- 作ったもの
- デモ
— ビルド
—– build.sh を修正
—– ビルド
— とりあえず手元の環境で
—– docker run
—– PHPUnit 実行
— CodeBuild では…
—– イメージの指定
—– 実行結果 - 以上
諸般の事情で
CodeBuild 用の PHP イメージを作って公開してみた。このコンテナイメージを利用して PHPUnit を実行する予定。
作ったもの
github.com
デモ
ビルド
build.sh を修正
ECR のリポジトリを指定する。
#!/usr/bin/env bash DOCKER_CONTENT_TRUST=1 eval $(aws ecr get-login --no-include-email --region ap-northeast-1) docker build -t codebuild-php . docker tag codebuild-php:latest 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/codebuild-php:latest docker push 123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/codebuild-php:latest
ビルド
./build.sh
実行すると ECR にコンテナイメージがプッシュされる。
とりあえず手元の環境で
docker run
cd sample docker run -t -i -v $(pwd):/opt/codebuild codebuild-php /bin/bash
PHPUnit 実行
root@2d2e13594b64:/# cd /opt/codebuild root@2d2e13594b64:/opt/codebuild# ./run_test.sh PHPUnit 5.7.21 by Sebastian Bergmann and contributors. ... 3 / 3 (100%) Time: 1.92 seconds, Memory: 12.00MB OK (3 tests, 3 assertions)
ちなみに run_test.sh の中身は以下の通り。
#!/usr/bin/env bash php phpunit.phar --bootstrap src/Email.php tests/EmailTest --log-junit post_build/result.xml
テストコードはこちらより拝借。
CodeBuild では…
イメージの指定
下図のように指定することで、ECR に push したコンテナイメージを利用することが出来る。
実行結果
buildspec.yml とかは sample 以下のファイルを確認されたし。
以上
メモでした。
だいぶん、色々と端折ってごめんくさい。