From 902b507c3a977e0355d821e6e47583fe31923270 Mon Sep 17 00:00:00 2001 From: Olivier Giorgis Date: Tue, 24 Mar 2026 17:21:24 +0100 Subject: [PATCH 1/2] add deployment on s3 scaleway --- .github/workflows/static.yml | 65 ++++++++++++++++++++++++++++++++---- 1 file changed, 59 insertions(+), 6 deletions(-) diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml index 5cbe3aea7..334d619f9 100644 --- a/.github/workflows/static.yml +++ b/.github/workflows/static.yml @@ -1,13 +1,17 @@ # Simple workflow for deploying static content to GitHub Pages name: Deploy static content to Pages +# on: +# # Runs on pushes targeting the default branch +# push: +# branches: ["master"] +# pull_request: +# branches: +# - '*' on: - # Runs on pushes targeting the default branch push: - branches: ["master"] - pull_request: branches: - - '*' + - '**' # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages @@ -31,7 +35,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: @@ -51,4 +55,53 @@ jobs: steps: - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v4 \ No newline at end of file + 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 \ No newline at end of file From b030bb8601d038d1a4ef6b627bb9d39ff36c4e74 Mon Sep 17 00:00:00 2001 From: Olivier Giorgis Date: Wed, 25 Mar 2026 11:09:08 +0100 Subject: [PATCH 2/2] deploy s3 only on master --- .github/workflows/static.yml | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml index 334d619f9..046c8faa1 100644 --- a/.github/workflows/static.yml +++ b/.github/workflows/static.yml @@ -1,17 +1,13 @@ # Simple workflow for deploying static content to GitHub Pages name: Deploy static content to Pages -# on: -# # Runs on pushes targeting the default branch -# push: -# branches: ["master"] -# pull_request: -# branches: -# - '*' on: + # Runs on pushes targeting the default branch push: + branches: ["master"] + pull_request: branches: - - '**' + - '*' # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages @@ -59,7 +55,7 @@ jobs: deploy-s3: needs: build - # if: github.ref == 'refs/heads/master' + if: github.ref == 'refs/heads/master' runs-on: ubuntu-latest steps: - name: Checkout