123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- name: deploy
- on:
- push:
- branches:
- - master
- repository_dispatch:
- types: [build]
- workflow_dispatch:
- jobs:
- release:
- name: Build and deploy site
- runs-on: ubuntu-latest
- permissions:
- id-token: write
- contents: read
- if: "!contains(github.event.head_commit.message, '[skip ci]')"
- steps:
- - name: Checkout
- uses: actions/checkout@v4
- - name: Download external project files
- run: |
- wget https://raw.githubusercontent.com/netbootxyz/netboot.xyz/development/CHANGELOG.md -O external/changelog.md
- wget https://raw.githubusercontent.com/netbootxyz/build-pipelines/master/README.md -O external/build-automation.md
- wget https://raw.githubusercontent.com/netbootxyz/netboot.xyz/master/CONTRIBUTING.md -O external/contributing.md
- curl https://raw.githubusercontent.com/netbootxyz/docker-netbootxyz/master/README.md | tail -n+6 > external/docker.md
- - name: Setup Node.js
- uses: actions/setup-node@v4
- with:
- node-version: 18
- - name: Install dependencies
- run: yarn install
- - name: Build static site
- run: yarn run build
-
- - name: Configure AWS credentials
- uses: aws-actions/configure-aws-credentials@v4
- with:
- role-to-assume: ${{ secrets.AWS_ROLE_DOCS }}
- aws-region: ${{ secrets.AWS_ACCESS_REGION }}
-
- - name: Deploy site to bucket
- run: |
- aws s3 sync --no-progress --acl public-read build s3://${{ secrets.BUCKET_SITE }}
- - name: Invalidate Cloudfront
- run: |
- aws cloudfront create-invalidation --distribution-id ${{ secrets.CLOUDFRONT_DIST_ID_SITE }} --paths "/*"
|