Как запустить скрипт в трубе? - PullRequest
0 голосов
/ 10 февраля 2020

Я использую трубу atlassian / aws -s3-deploy: 0.4.0 в моем конвейере Bitbucket для развертывания на aws s3. Это хорошо работает, но мне нужно установить Cache-Control только для индекса. html

Как запустить код в канале, чтобы инструмент cli * aws оставался доступным? Это не должно быть другим шагом, поскольку процесс развертывания должен быть единым.

Мой текущий скрипт выглядит следующим образом:

image: node:10.15.3

pipelines:
default:
    - step:
        name: Build
        caches:
        - node
        script:
        - npm install
        - npm run build
        artifacts:
        - dist/**
    - step:
        name: Deploy
        trigger: manual
        script:
        - pipe: atlassian/aws-s3-deploy:0.4.0
            variables:
            AWS_DEFAULT_REGION: 'eu-central-1'
            S3_BUCKET: '***'
            LOCAL_PATH: 'dist'
        - aws s3 cp dist/index.html s3://***/index.html --cache-control no-cache,no-store

Учетные данные предоставляются через секретные переменные проекта.

Спасибо !!

1 Ответ

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

Вы можете просто установить aws cli на том же шаге:

- step:
    name: Deploy
    trigger: manual
    # use python docker image so pip is available
    image: python:3.7
    script:
      - pipe: atlassian/aws-s3-deploy:0.4.0
          variables:
            AWS_DEFAULT_REGION: 'eu-central-1'
            S3_BUCKET: '***'
            LOCAL_PATH: 'dist'
    # install the aws cli
      - pip3 install awscli --upgrade --user
      - aws s3 cp dist/index.html s3://***/index.html --cache-control no-cache,no-store
...