This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
dagger/.github/workflows/docs.yml

79 lines
2.6 KiB
YAML
Raw Normal View History

name: Docs
on:
push:
branches:
- main
tags:
- v*
paths:
- "docs/**"
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
deploy:
runs-on: ubuntu-latest
env:
AWS_ACCESS_KEY_ID: ${{ secrets.DOCS_AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.DOCS_AWS_SECRET_ACCESS_KEY }}
AWS_DEFAULT_REGION: "us-east-1"
steps:
- name: Set Version
id: vars
run: echo ::set-output name=tag::${${GITHUB_REF#refs/*/}//main/devel}
# fetch-depth: '0' enables listing all tags for version selector
- uses: actions/checkout@v2
with:
fetch-depth: "0"
#################################################################
# BUILD SITE
#################################################################
# Install Node
- uses: actions/setup-node@v2
with:
node-version: "14"
- run: yarn --cwd ./tools/gendocs
- name: Build Site
run: yarn --cwd ./tools/gendocs build --prefix-paths
env:
VERSION: ${{steps.vars.outputs.tag}}
#################################################################
# DEPLOY TO S3
#################################################################
# deploy the site in the right foder ( tag or devel)
- name: S3 Sync
uses: ItsKarma/aws-cli@v1.70.0
with:
args: s3 sync --delete ./tools/gendocs/public/ s3://docs.dagger.io/${{steps.vars.outputs.tag}}/
# list All Tags in json file for version selector
# upload to /tags.json
- name: Create tags.json
run: echo "[" {\"tag\"':' \"$(git tag -l "v*" | tr '\n' '|' | sed -e 's/|/"}, {\"tag\"':' "/g')devel\"} "]" > tags.json
- name: Copy tags.json
uses: ItsKarma/aws-cli@v1.70.0
with:
args: s3 cp ./tags.json s3://docs.dagger.io/
# landing alway on latest tag
# use S3 Rediret objet
# upload to /docs/index.html
- run: touch index.html
- name: Redirect Latest tag on landing
# FIXME
# if: ${{ steps.vars.outputs.tag != 'devel' }}
uses: ItsKarma/aws-cli@v1.70.0
with:
# FIXME: `--website-redirect` uses a permanent redirect, therefore if
# we use the latest version it will be in cache forever.
# args: s3 cp --cache-control max-age=0 --website-redirect /docs/${{steps.vars.outputs.tag}}/ ./index.html s3://docs.dagger.io/docs/
args: s3 cp --cache-control max-age=0 --website-redirect /devel/ ./index.html s3://docs.dagger.io/