Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 51 additions & 2 deletions .github/workflows/static.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
- name: Install the dependencies
run: npm ci
- name: Build
run: npm run build
run: npm run build
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
Expand All @@ -51,4 +51,53 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
uses: actions/deploy-pages@v4

deploy-s3:
needs: build
if: github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install s3cmd
run: sudo apt-get update && sudo apt-get install -y s3cmd

- name: Download build artifact
uses: actions/download-artifact@v4
with:
name: github-pages
path: build

- name: Extract artifact
run: |
tar -xf build/artifact.tar -C build

- name: Check secret
run: |
if [ -z "${{ secrets.SCW_ACCESS_KEY }}" ]; then
echo "Secret SCW_ACCESS_KEY is not set"
exit 1
fi

- name: Create s3cmd config
run: |
echo "[default]" > /home/runner/.s3cfg
echo "access_key = ${{ secrets.SCW_ACCESS_KEY }}" >> /home/runner/.s3cfg
echo "secret_key = ${{ secrets.SCW_SECRET_KEY }}" >> /home/runner/.s3cfg
echo "host_base = s3.fr-par.scw.cloud" >> /home/runner/.s3cfg
echo "host_bucket = %(bucket)s.s3.fr-par.scw.cloud" >> /home/runner/.s3cfg
echo "use_https = True" >> /home/runner/.s3cfg

- name: Sync build to S3
run: |
s3cmd sync build/ s3://quantstack-site/ --acl-public \
--delete-removed --exclude '*.css' --exclude '*.js' --force
s3cmd sync build/ s3://quantstack-site/ --acl-public \
--mime-type=text/css --exclude '*' --include '*.css' --force
s3cmd sync build/ s3://quantstack-site/ --acl-public \
--mime-type=application/javascript --exclude '*' --include '*.js' --force

- name: Ensure public ACL
run: s3cmd setacl s3://quantstack-site/ --acl-public --recursive
Loading