Конвейер CICD для приложения nodejs без экземпляров EC2?

Можно ли создать конвейер CICD с использованием AWS codepipeline для приложения nodejs без использования какого-либо экземпляра EC2 для сборки кода?

У вас будет просто репозиторий кода -> сборка кода -> файл спецификации сборки -> Развернуть на промежуточной стадии (S3)?

Мой вопрос НЕ о развертывании лямбда-функции без сервера, а о создании и развертывании приложения nodejs без подготовки каких-либо спотовых экземпляров (Ec2), это выполнимо?

Одно из преимуществ этого бессерверного подхода к созданию нашего приложения nodejs:

  1. Более быстрая обратная связь с разработчиками в случае сбоя тестов
  2. Небольшое время запуска, поскольку EC2 может иметь переменное время запуска от 1 до 3 минут

Кто-нибудь достиг этого своего рода бессерверного конвейера для создания приложения nodejs, опять же НЕ для создания лямбда-функции, а для создания приложения nodejs.


person pelican    schedule 11.04.2018    source источник
comment
Я не понимаю - вы не можете развернуть приложение Node.js на S3. Может быть, вы просто хотите создать приложение и загрузить созданные артефакты в S3?   -  person Michał Z.    schedule 11.04.2018
comment
Извините за неправильное использование языка; да, я хотел бы просто создать приложение и загрузить артефакты в S3 БЕЗ ПРЕДОСТАВЛЕНИЯ КАКИХ-ЛИБО машин EC2   -  person pelican    schedule 11.04.2018


Ответы (1)


Если вы хотите загружать артефакты сборки в S3 - есть 2 способа добиться этого с помощью CodePipeline:

  1. Добавьте шаг с помощью Invoke Lambda

    или (и я думаю, что проще):

  2. Загрузите созданные файлы приложения в S3 из CodeBuild

Во втором случае вы можете просто добавить команду как это в ваш buildspec.yml:

aws s3 sync --delete <PATH TO BUILT APP FILES> s3://<DESTINATION BUCKET NAME>

Это заменит все содержимое корзины на ваши созданные файлы приложения.

person Michał Z.    schedule 11.04.2018