Я хочу развернуть приложение Angular 7 (как статический веб-сайт) на S3 автоматически с использованием конвейера кода AWS.
Я создал приложение Angular и отправил его в git-репо.
Я создал новое ведро AWS S3, создал AWS Codepipline и интегрированный git repo
Я получаю ошибку ниже, когда aws code-pipelineb создает приложение:
COMMAND_EXECUTION_ERROR: Ошибка при выполнении команды: ng build. Причина: статус выхода 1
Я использую файл buildspect.yml
version: 0.2
env:
variables:
S3_BUCKET: "<bucket name>"
BUILD_ENV : "prod"
phases:
install:
runtime-versions:
nodejs: 10
commands:
# install dependencies
- echo Installng source NPM dependencies...
- npm install npm@latest -g
- npm install -g @angular/cli
pre_build:
commands:
- echo Prebuild steps
- npm install
build:
commands:
# Builds Angular application. You can also build using custom environment here like mock or staging
- echo Build started on `date`
- ng build
post_build:
commands:
# Clear S3 bucket.
- aws s3 rm s3://${S3_BUCKET} --recursive
- echo S3 bucket is cleared.
# Copy dist folder to S3 bucket, As of Angular 6, builds are stored inside an app folder in distribution and not at the root of the dist folder
- aws s3 cp dist s3://${S3_BUCKET} --recursive
- echo Build completed on `date`
artifacts:
files:
- '/'
discard-paths: yes
base-directory: 'dist*'
Мне кажется, что среда сборки кода настроена неправильно. Я имею ввиду, что Nodejs и npm установлены неправильно. Пожалуйста, пройдите выше файл yml и помогите мне определить, что я что-то упустил.