68 lines
1.4 KiB
YAML
68 lines
1.4 KiB
YAML
image: shockrah/website:latest
|
|
|
|
stages:
|
|
- build
|
|
- deploy
|
|
- golive
|
|
|
|
|
|
############## ################## ##############
|
|
############## Build Site Content ##############
|
|
############## ################## ##############
|
|
|
|
|
|
build-content:
|
|
stage: build
|
|
image: shockrah/website:latest
|
|
only:
|
|
refs:
|
|
- master
|
|
script:
|
|
- cd main-site/ && hugo
|
|
artifacts:
|
|
expire_in: 1 week
|
|
paths:
|
|
- main-site/public/
|
|
|
|
|
|
|
|
|
|
############## ################## ##############
|
|
############## Deploy Site ##############
|
|
############## ################## ##############
|
|
|
|
deploy-to-s3:
|
|
stage: deploy
|
|
# Override entrypoint to avoid weird auto start shenanigans
|
|
image:
|
|
name: amazon/aws-cli:2.2.25
|
|
entrypoint: [""]
|
|
needs:
|
|
- build-content
|
|
before_script:
|
|
- bash ci/verify-aws-fields.sh
|
|
script:
|
|
# Upload the content to the bucket itself
|
|
- cd main-site/ && aws s3 cp public s3://temper.tv/ --recursive
|
|
|
|
|
|
|
|
############## ################## ##############
|
|
############## Refresh Container ##############
|
|
############## ################## ##############
|
|
|
|
blue-green-deployment-nginx:
|
|
stage: golive
|
|
image:
|
|
name: amazon/aws-cli:2.2.25
|
|
entrypoint: [""]
|
|
needs:
|
|
- deploy-to-s3
|
|
variables:
|
|
service: athens-nginx-static-content
|
|
cluster: athens-alpha-cluster
|
|
before_script:
|
|
- bash ci/verify-aws-fields.sh
|
|
script:
|
|
- aws ecs update-service --cluster $cluster --service $service --force-new-deployment
|