Skip to content

freebsd

freebsd #294

name: Publish Website
on:
push:
branches:
- master
- feature/website
jobs:
build_and_deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: ./install-deps-wasm.sh
working-directory: tunshell-client/build
shell: bash
- run: ./compile-wasm.sh
working-directory: tunshell-client/build
shell: bash
- uses: actions/setup-node@v1
with:
node-version: 22
- run: npm ci
working-directory: website
- run: npm run export
working-directory: website
- uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.WEBSITE_AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.WEBSITE_AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Deploy to S3
run: aws s3 sync --delete --acl=public-read --cache-control max-age=7200 --metadata-directive REPLACE out/ s3://tunshell-web/
working-directory: website
- name: Deploy to S3 (html)
run: aws s3 cp --recursive --content-type text/html --exclude "*" --include "*.html" --include "go" --include "term" --include "404" --acl=public-read --cache-control max-age=7200 --metadata-directive REPLACE out/ s3://tunshell-web/
working-directory: website
- name: Deploy to S3 (wasm)
run: aws s3 cp --recursive --content-type application/wasm --exclude "*" --include "*.wasm" --acl=public-read --cache-control max-age=7200 --metadata-directive REPLACE services/wasm/ s3://tunshell-web/wasm/
working-directory: website
- name: Invalidate CloudFront
run: aws cloudfront create-invalidation --distribution-id=E2BXOYP52RJJQF --paths '/*'