Я хочу создать кодовую линию, которая получит код (java) из github, создаст файл jar и развернет его в aws lamda (или сохранит jar в определенном сегменте S3).Я хочу использовать только инструменты, предоставляемые только платформой AWS.
Если я использую только Codebuild, я могу собрать jar из кода github и сохранить его на S3 (https://docs.aws.amazon.com/codebuild/latest/userguide/getting-started.html), и я используюЛамда-функция развертывания для развертывания кода в моей сервисной лямде. Всякий раз, когда происходит какое-либо изменение в развертывателе корзины S3, срабатывает лямда.
DrawBack: проблема в том, что мне приходится каждый раз запускать codebuild вручную после принятия изменений вgithub. Я хочу, чтобы эта кодовая сборка автоматически обнаруживала изменения из github.
Чтобы решить вышеуказанную проблему, я создал конвейер кода, который обнаруживает изменения кода с помощью веб-залов github, но здесь он создает zip-файл вместо jar
Итак, что я на самом деле пытаюсь сделать так:
GitHub (изменения) ---> codebuild -> сохранить файл JAR для конкретного S3-контейнера с указанным именем или развернуть в lambda
buildspec.yml
version: 0.2
phases:
build:
commands:
- echo Build started on `date`
- mvn test
post_build:
commands:
- echo Build completed on `date`
- mvn package
artifacts:
files:
- target/testfunction-1.0.0-jar-with-dependencies.jar