без сервера удалить лямду с помощью gitlab CI - PullRequest
0 голосов
/ 18 февраля 2020

Я использую Gitlab CI для развертывания.

Я сталкиваюсь с проблемой при удалении ветви обзора.

stop_review:
  variables:
    GIT_STRATEGY: none
  stage: cleanup
  script:
    - echo "$AWS_REGION"
    - echo "Stopping review branch"
    - serverless config credentials --provider aws --key ${AWS_ACCESS_KEY_ID} --secret ${AWS_SECRET_ACCESS_KEY}
    - echo "$CI_COMMIT_REF_NAME"
    - serverless remove --stage=$CI_COMMIT_REF_NAME --verbose
  only:
    - branches
  except:
    - master
  environment:
    name: review/$CI_COMMIT_REF_NAME
    action: stop
  when: manual

ошибка This command can only be run in a Serverless service directory. Make sure to reference a valid config file in the current working directory if you're using a custom config file

Я пробовал разные GIT_STRATEGY, кто-нибудь может указать мне правильное направление?

1 Ответ

0 голосов
/ 19 февраля 2020

Чтобы запустить serverless remove, вам потребуется файл serverless.yml, что означает, что реальный репозиторий необходимо будет клонировать. (или этот файл должен каким-то образом попасть в GitLab).

При запуске serverless remove необходим файл конфигурации serverless.yml, поскольку Serverless Framework позволяет пользователям предоставлять инфраструктуру, используя не только YML-конфигурация фреймворка, а также дополнительные ресурсы (такие как CloudFormation в AWS), которые могут или не могут полностью находиться за пределами указанного стека app или stage CF.

Фактически вы также можете предоставлять инфраструктуру а также других провайдеров (AWS, GCP, Azure, OpenWhisk или фактически любой их комбинации).

Так что недостаточно просто определить имя этапа при запуске sls remove, вы ' Вам понадобится полный шаблон serverless.yml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...