Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---
- stages:
- - build
- - deploy
- before_script:
- - apk add --no-cache python3
- - pip3 install awscli
- variables:
- STACK_PREFIX: my-project
- .varsawsprod: &varsawsprod
- AWS_ACCESS_KEY_ID: $PROD_AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY: $PROD_AWS_SECRET_ACCESS_KEY
- CLOUD_ENV_TYPE: prod
- .varsawsdev: &varsawsdev
- AWS_ACCESS_KEY_ID: $DEV_AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY: $DEV_AWS_ACCESS_KEY_ID
- CLOUD_ENV_TYPE: dev
- .build-job:
- tags:
- - default
- script:
- - build something
- - ahhh, push it
- .deploy-job:
- tags:
- - default
- script:
- - export STACK_NAME="$STACK_PREFIX-$CLOUD_ENV_TYPE"
- - >-
- aws cloudformation deploy_that_shit --stack-name $STACK_NAME
- --parameter-overrides EnvType=$CLOUD_ENV_TYPE
- build-dev:
- stage: build
- only:
- - dev
- extends: .build-job
- variables:
- SOME_BUILD_SPECIFIC_DEV_VAR: 'PuddinPops'
- <<: *varsawsdev
- build-prod:
- stage: build
- only:
- - master
- extends: .build-job
- variables:
- SOME_BUILD_SPECIFIC_PROD_VAR: 'PuddinPops 2: A New Beginning'
- <<: *varsawsprod
- deploy-dev:
- stage: deploy
- only:
- - dev
- extends: .deploy-job
- variables:
- MAYBE_SOME_DEPLOY_SPECIFIC_DEV_VAR: 'PuddinPops 1: The Second One'
- <<: *varsawsdev
- environment:
- name: development
- url: mydevurl.website.com
- deploy-prod:
- stage: deploy
- only:
- - master
- extends: .deploy-job
- variables:
- MAYBE_SOME_DEPLOY_SPECIFIC_PROD_VAR: 'PuddinPops E=Mc2'
- <<: *varsawsprod
- environment:
- name: production
- url: myprodurl.website.com
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement