Skip to content

ci: add GitHub Actions deploy-to-amplify config #7

ci: add GitHub Actions deploy-to-amplify config

ci: add GitHub Actions deploy-to-amplify config #7

Workflow file for this run

name: Build documentation
on:
push:
branches:
- main
workflow_dispatch:
permissions:
id-token: write
contents: read
env:
INSTANCE: 'Writerside/cd'
ARTIFACT: 'webHelpCD2-all.zip'
DOCKER_VERSION: '242.21870'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Build docs using Writerside Docker builder
uses: JetBrains/writerside-github-action@v4
with:
instance: ${{ env.INSTANCE }}
artifact: ${{ env.ARTIFACT }}
docker-version: ${{ env.DOCKER_VERSION }}
- name: Save artifact with build results
uses: actions/upload-artifact@v4
with:
name: docs
path: |
artifacts/${{ env.ARTIFACT }}
artifacts/report.json
retention-days: 7
test:
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
name: docs
path: artifacts
- name: Test documentation
uses: JetBrains/writerside-checker-action@v1
with:
instance: ${{ env.INSTANCE }}
deploy:
env:
AWS_REGION: 'us-east-1'
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
needs:
- build
- test
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
with:
name: docs
- name: configure aws credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_OIDC_ROLE_ARN }}
aws-region: ${{ env.AWS_REGION }}
role-duration-seconds: 900
- name: Upload artifact to S3
run: aws s3api put-object --bucket ${{ secrets.AWS_S3_BUCKET }} --key ${{ env.ARTIFACT }} --body ${{ env.ARTIFACT }}
- name: Deploy artifact to Amplify
run: |
aws amplify start-deployment \
--app-id ${{ secrets.AMPLIFY_APP_ID }} \
--branch-name ${{ env.BRANCH_NAME }} \
--source-url https://s3.${{ env.AWS_REGION }}.amazonaws.com/${{ secrets.AWS_S3_BUCKET }}/${{ env.ARTIFACT }}