-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathbuildspec.pr.yml
52 lines (41 loc) · 1.76 KB
/
buildspec.pr.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
version: 0.2
environment_variables:
plaintext:
APP_NAME: laravel-hands-on-app
phases:
install:
commands:
## laravelのリポジトリに入っておく
- cd laravel
- echo install started on `date`
## Dockerデーモンを起動し、正常に起動が終わるまで待つ。
- echo executed dockerd on `date`
- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&
- timeout 15 sh -c "until docker info; do echo .; sleep 1; done"
- echo dockerd started
## MySQLをインストールし、正常に起動できるまで待つ
- docker-compose up -d mysql-test
## .env.dev -> .envにリネーム
- cp .env.dev .env
## composer実行
- composer install
pre_build:
commands:
build:
commands:
## Dockerイメージのビルド
- echo Building the Docker image...
## キャッシュを利用したい場合
## - docker pull $IMAGE_REPOSITORY_NAME:$APP_NAME && CACHE_OPTION="--cache-from $IMAGE_REPOSITORY_NAME:$APP_NAME" || true
## - docker build $CACHE_OPTION -t $IMAGE_REPOSITORY_NAME:$APP_NAME .
- docker build -t $APP_NAME .
## 構築したイメージ上で'composer run ci-check'しテスト実行
- docker run -e "DB_HOST=127.0.0.1" -e "DB_PORT=3307" -e "DB_DATABASE=mysql" -e "DB_USERNAME=homestead" -e "DB_PASSWORD=password" --network=host $IMAGE_REPOSITORY_NAME:$IMAGE_TAG composer run ci-check
# キャッシュを利用する場合はコメントアウトを外してください
# cache:
# paths:
# # Composer用のキャッシュ
# - /root/.composer/**/*
# # Node用のキャッシュ
# - /root/.npm/**/*
# - /usr/lib/node_modules/**/*