Конвейер кода AWS CDK, как развертывать в Elastic Beanstalk? - PullRequest
0 голосов
/ 21 мая 2019

Попытка создать конвейер кода для среды Elastic Beanstalk с помощью AWS CDK, У меня проблемы с созданием стадии развертывания.

В консоли AWS я могу добавить действие с поставщиком действий AWS Elastic Beanstalk. Я не могу найти такого поставщика в CDK.

Есть ли другой способ или обходной путь для развертывания в Elastic Beanstalk?

Ответы [ 2 ]

0 голосов
/ 19 июня 2019

Поскольку развертывание в Elastic Beanstalk Action не реализовано, я создал действие с использованием этого класса и интерфейса:

import { ActionCategory, Action, Artifact } from "@aws-cdk/aws-codepipeline";

export interface ElasticBeanstalkDeployActionProps {
  ebsApplicationName: string;
  ebsEnvironmentName: string;
  input: Artifact;
}

export class ElasticBeanstalkDeployAction extends Action {
  constructor(props: ElasticBeanstalkDeployActionProps) {
    super({
      ...props,
      category: ActionCategory.Deploy,
      actionName: 'elasticbeanstalk-deploy-action',
      owner: 'AWS',
      provider: 'ElasticBeanstalk',
      artifactBounds: {
        minInputs: 1,
        maxInputs: 1,
        minOutputs: 0,
        maxOutputs: 0,
      },
      inputs: [props.input],
      configuration: {
        ApplicationName: props.ebsApplicationName,
        EnvironmentName: props.ebsEnvironmentName,
      },
    });
  }
  bind(_info: any) {
    // nothing to do
  }
}

Чтобы запустить развертывание, мне пришлось присоединить управляемую политику AWS AWSElasticBeanstalkFullAccess кроль конвейера

0 голосов
/ 21 мая 2019

Я знаю, что это все еще открытая проблема в CDK и отслеживается здесь:

https://github.com/awslabs/aws-cdk/issues/2516

Я не знаю об обходном пути.

...