Развертывание в различных средах Elasti c Beanstalk с использованием 1 файла config.yml - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть конвейер развертывания CircleCI, который использует awsebcli для работ по развертыванию. В настоящее время у меня есть две разные среды EB:

default_platform: arn:aws:elasticbeanstalk:eu-west-1::platform/Docker running on
      64bit Amazon Linux/2.14.3

и

default_platform: arn:aws:elasticbeanstalk:eu-west-1::platform/Java 8 running on
      64bit Amazon Linux/2.9.2

My .elasticbeanstalk/config.yml выглядит так:

branch-defaults:
  ##

environment-defaults:
  dev-dockerization:
    branch: mybranch
    repository: null
    default_platform: arn:aws:elasticbeanstalk:eu-west-1::platform/Docker running on
      64bit Amazon Linux/2.14.3
  dev:
    branch: mybranch
    repository: null
    default_platform: arn:aws:elasticbeanstalk:eu-west-1::platform/Java 8 running on
      64bit Amazon Linux/2.9.2
    deploy:
      artifact: target/my-jar-file.jar # This is what I need to deploy to non-docker EB

Но

eb use dev --profile eb-cli
eb deploy --profile eb-cli

не может найти target/my-jar-file.jar и вместо этого искал application.jar (я полагаю, это значение по умолчанию awsebcli?). Если я напишу config.yml как:

branch-defaults:
  mybranch:
    environment: dev
deploy:
  artifact: target/my-jar-file.jar
environment-defaults:

Затем разверните конвейер для docker EB, потому что CircleCI пытается развернуть файлы jar в docker ENV. Как мне решить эту проблему? Требуется только 1 config.yml, чтобы eb deploy --modules component-a component-b здесь не справлялся.

...