Выходной файл AWS CodePipeline пуст
Чтобы развернуть мою инфраструктуру Laravel в контейнерах Docker на AWS, я создал CodePipeline в AWS с тремя основными этапами:
1) Получить источник из Github (Выходной артефакт = MyApp)
2) Используйте AWS CodeBuild (конфигурация ниже)
3) Используйте AWS CodeDeploy для развертывания моего вывода из CodeBuild в мои контейнеры Docker ECS. (входные артефакты = MyApp-built)
Моя проблема - шаг 2 (сборка кода). Этот шаг запускает команду Composer install as и загружает вывод в S3. Выходной Zip на S3 имеет один файл: appspec.yml вместо моего полного фреймворка с каталогом вендора. Итак, шаг 3 развертывает один файл в моих контейнерах.
Конфигурация моей Codebuild:
Входные артефакты = MyApp
Выходные артефакты = MyApp-built
Артефакты name = MyApp-built (??)
buildspec.yml:
version: 0.1
phases:
build:
commands:
- composer install
artifacts:
files:
- appspec.yml
Состояние CodePipeline успешно выполнено. Надеюсь, вы можете помочь мне перенести вывод после того, как моя команда установки composer запустила док-контейнеры. Ниже вы можете найти несколько строк из файла журнала CodeBuild.
[Container] 2017/03/23 20:41:18 Waiting for agent
[Container] 2017/03/23 20:41:18 Phase is DOWNLOAD_SOURCE
[Container] 2017/03/23 20:41:18 Source is located at /tmp/src931942067/src
[Container] 2017/03/23 20:41:18 YAML location is /codebuild/readonly/buildspec.yml
[Container] 2017/03/23 20:41:18 Registering with agent
[Container] 2017/03/23 20:41:18 Phases found in YAML: 1
[Container] 2017/03/23 20:41:18 BUILD: 1 commands
[Container] 2017/03/23 20:41:18 Phase complete: DOWNLOAD_SOURCE Success: true
[Container] 2017/03/23 20:41:18 Phase context status code: Message:
[Container] 2017/03/23 20:41:18 Processing plaintext environment variables
[Container] 2017/03/23 20:41:18 Processing build-level environment variables
[Container] 2017/03/23 20:41:18
{
"base-directory:": "/",
"discard-paths": "yes"
}
[Container] 2017/03/23 20:41:18 base-directory: = /
[Container] 2017/03/23 20:41:18 discard-paths = yes
[Container] 2017/03/23 20:41:18 Processing builtin environment variables
[Container] 2017/03/23 20:41:18 Moving to directory /tmp/src931942067/src
[Container] 2017/03/23 20:41:18 Entering phase BUILD
[Container] 2017/03/23 20:41:18 Running command composer install
[Container] 2017/03/23 20:41:19 Loading composer repositories with package information
....
....
[Container] 2017/03/23 20:42:25 > php artisan optimize
[Container] 2017/03/23 20:42:26 Generating optimized class loader
[Container] 2017/03/23 20:42:26 The compiled services file has been removed.
[Container] 2017/03/23 20:42:26 Phase complete: BUILD Success: true
[Container] 2017/03/23 20:42:26 Phase context status code: Message:
[Container] 2017/03/23 20:42:26 Preparing to copy artifacts
[Container] 2017/03/23 20:42:26 Expanding base directory path
[Container] 2017/03/23 20:42:26 Assembling file list
[Container] 2017/03/23 20:42:26 Expanding .
[Container] 2017/03/23 20:42:26 Found .
[Container] 2017/03/23 20:42:26 Expanding artifact file paths for base directory .
[Container] 2017/03/23 20:42:26 Assembling file list
[Container] 2017/03/23 20:42:26 Expanding appspec.yml
[Container] 2017/03/23 20:42:26 Found appspec.yml
[Container] 2017/03/23 20:42:26 Creating zip artifact
[Container] 2017/03/23 20:42:26 Phase complete: UPLOAD_ARTIFACTS Success: true
[Container] 2017/03/23 20:42:26 Phase context status code: Message:
1 ответ
Для загрузки всех файлов в проекте используйте этот формат:
artifacts:
files:
- '**/*'