Скрипт для замены txt в пост-сборке Aws CodeBuild & CodeDeploy - PullRequest
1 голос
/ 21 марта 2019

У меня есть CI / CD, хорошо работающий в Amazon.

Допустим, у меня есть простой HTML с URL-адресом homolog.test.com.

Есть ли способ, когда я объединяюрепозиторий для мастера, постобработка CodeBuild & CodeDeploy выполняется через все файлы, чтобы найти гомолога.заменить на www.

Дело в том, что я не хочу вручную менять все файлы для тестирования в homolog, а затем снова заменять вручную, чтобы объединить с master ... Я бы хотел, чтобы homolog работал нормально, и когдаЯ объединяюсь с мастером, он заменил бы во время развертывания URL-адреса ...

Я знаю, что правильные будут иметь правильные URL-адреса в репозитории corret, но для облегчения тестов было бы неплохо поработать в этоминаче не слишком тривиально ...

Будет ли работать команда оболочки "sed"?как этот пример? Оболочка Unix Проходить по файлам и заменять тексты

было бы что-то подобное в разделе пост сборки?как указать правильную папку на S3?

sed "s/homolog./www./g" *.html -i

Мой BuildSpec очень прост:

version: 0.2

phases:

  pre_build:
    commands:
      - echo Installing source NPM dependencies...
      - npm install

  build:
    commands:
      - cp dev-ops/config.production.js src/config.js
      - export PUBLIC_URL=/app/
      - npm run build

  post_build:
    commands:
      - aws s3 sync site-beta s3://www.test.com/ --cache-control max-age=3600
      - aws s3 sync build s3://www.test.com/app/ --cache-control max-age=3600

artifacts:
  files:
    - build/**/*
...