docs/.github/workflows/build-master.yml

49 lines
2.0 KiB
YAML

name: deploy stage website from master branch
on:
push:
branches:
- master
jobs:
build-static-page:
name: build
runs-on: ubuntu-18.04
timeout-minutes: 10
env:
DOCKER_BUILDKIT: '1'
steps:
- name: print docker info
run: docker version && docker info
- uses: actions/checkout@v2
- name: build current docs
run: docker build --target=deploy-source --output=./_site .
- name: upload files to S3 bucket
run: aws s3 sync --acl public-read _site s3://docs.docker.com-stage-us-east-1/ --delete
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
if: github.repository == 'docker/docker.github.io' && github.event_name == 'push'
- name: update S3 website config
uses: ./.github/actions/update-website-config
with:
bucketName: docs.docker.com-stage-us-east-1
regionName: us-east-1
websiteConfig: _website-config-docs-stage.json
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
if: github.repository == 'docker/docker.github.io' && github.event_name == 'push'
- name: invalidate docs website cache
run: aws --region us-east-1 lambda invoke --function-name arn:aws:lambda:us-east-1:710015040892:function:docs-stage-cache-invalidator response.json
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
if: github.repository == 'docker/docker.github.io' && github.event_name == 'push'
- name: send slack notification
run: |
curl -X POST -H 'Content-type: application/json' --data '{"text":"Successfully promoted docs-stage from master. https://docs-stage.docker.com/"}' $SLACK
env:
SLACK: ${{ secrets.SLACK_WEBHOOK }}
if: github.repository == 'docker/docker.github.io' && github.event_name == 'push'