From a902f3ca293dd7aa67124e652969e81750a84a57 Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sat, 18 Apr 2026 03:53:10 +0100 Subject: [PATCH 01/15] deployment action --- .github/workflows/main.yml | 93 +++++++++++++++++++++++++------------- 1 file changed, 61 insertions(+), 32 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e85b8ddf..4f39742e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,48 +1,77 @@ -name: Deploy to GitHub Pages +name: Build, run tests, and deploy if necessary on: + # Push to main and tag push push: - branches: ['main'] + branches: + - main + tags: + - '*' + # PR to main + pull_request: + branches: + - main + + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true jobs: build: runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Install Node.js + steps: + - uses: actions/checkout@v3 + - name: Enable Corepack + run: corepack enable + - name: Use Node.js 20.x uses: actions/setup-node@v4 with: - node-version: 20 - cache: npm - - - name: Install dependencies - run: npm install - - - name: build - env: - BASE_PATH: '/${{ github.event.repository.name }}' + node-version: '20.x' + - run: npm install + - name: Build project run: npm run build - - - name: Upload Artifacts - uses: actions/upload-pages-artifact@v3 + - run: mv cdn out/ + - uses: actions/upload-artifact@v4 with: - path: 'build/' + name: output + path: out/ deploy: - needs: build runs-on: ubuntu-latest - - permissions: - pages: write - id-token: write - - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - + needs: build + # Ensure that we only deploy to staging + if: github.repository == 'weirdgloop/osrs-dps-calc' && github.event_name != 'pull_request' + env: + DIRECTORY_NAME: 'rs-rot/' steps: - - name: Deploy - id: deployment - uses: actions/deploy-pages@v4 + - name: Download artifact + uses: actions/download-artifact@v4 + with: + name: output + path: out + - name: Deploy to server + uses: easingthemes/ssh-deploy@main + with: + SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + REMOTE_HOST: ${{ secrets.SSH_HOST }} + REMOTE_USER: ${{ secrets.SSH_USER }} + ARGS: "-rlgoDzvc -i --delete" + SOURCE: "out/" + TARGET: "/var/www/html/$DIRECTORY_NAME" + SCRIPT_AFTER: | + whoami + echo $RSYNC_STDOUT + - name: Purge cache on Cloudflare + run: | + curl --request POST \ + --url https://api.cloudflare.com/client/v4/zones/${{ secrets.CLOUDFLARE_ZONE }}/purge_cache \ + -H 'Content-Type: application/json' \ + -H 'Authorization: Bearer ${{ secrets.CLOUDFLARE_TOKEN }}' \ + --data '{ + "prefixes": [ + "tools.runescape.wiki/${{ env.DIRECTORY_NAME }}" + ] + }' \ No newline at end of file From 94e6ea6143d6e3ae140eb3aa7462ce37ef41b054 Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sat, 18 Apr 2026 04:00:39 +0100 Subject: [PATCH 02/15] bump node version, correct mv target --- .github/workflows/main.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4f39742e..dc5d602a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -26,14 +26,14 @@ jobs: - uses: actions/checkout@v3 - name: Enable Corepack run: corepack enable - - name: Use Node.js 20.x + - name: Use Node.js 24.x uses: actions/setup-node@v4 with: - node-version: '20.x' + node-version: '24.x' - run: npm install - name: Build project run: npm run build - - run: mv cdn out/ + - run: mv build out/ - uses: actions/upload-artifact@v4 with: name: output From a6cf7232b8d08f2d12dee541e2c1bd9c0ed0083a Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sat, 18 Apr 2026 04:02:49 +0100 Subject: [PATCH 03/15] correct repo name --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dc5d602a..96548c51 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -43,7 +43,7 @@ jobs: runs-on: ubuntu-latest needs: build # Ensure that we only deploy to staging - if: github.repository == 'weirdgloop/osrs-dps-calc' && github.event_name != 'pull_request' + if: github.repository == 'weirdgloop/rs-rotations' && github.event_name != 'pull_request' env: DIRECTORY_NAME: 'rs-rot/' steps: From 5e72a4d4d26f98636f6e9ed3a866b749eae943c6 Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sun, 19 Apr 2026 23:37:23 +0100 Subject: [PATCH 04/15] change urls to use /rs-rot/ --- src/app.html | 2 +- .../AbilityDamageTable.svelte | 2 +- src/components/Layout/Navbar.svelte | 26 +- .../DamageDistributionChart.svelte | 2 +- .../RotationBuilder/ExtraActionsPanel.svelte | 26 +- .../Settings/FamiliarSelection.svelte | 16 +- src/components/Settings/GearSelection.svelte | 96 ++--- src/components/Settings/PerkSelection.svelte | 38 +- .../Settings/RotationSettings.svelte | 80 ++-- .../calc/rotation_builder/rotation_consts.ts | 118 +++--- src/lib/data/abilities.ts | 354 +++++++++--------- src/lib/data/armour.ts | 352 ++++++++--------- src/lib/data/familiars.ts | 22 +- src/lib/data/perks.ts | 34 +- src/lib/data/weapons.ts | 98 ++--- src/lib/special/abilities.ts | 74 ++-- src/lib/utils/gearVariants.ts | 2 +- src/routes/+page.svelte | 42 +-- src/routes/faq/+page.svelte | 2 +- src/routes/magic/+page.svelte | 76 ++-- src/routes/melee/+page.svelte | 72 ++-- src/routes/necromancy/+page.svelte | 68 ++-- src/routes/projects/+page.svelte | 2 +- src/routes/ranged/+page.svelte | 56 +-- src/routes/research/+page.svelte | 6 +- src/routes/rotation_builder/+page.svelte | 8 +- .../rotation_builder_guide/+page.svelte | 4 +- 27 files changed, 839 insertions(+), 839 deletions(-) diff --git a/src/app.html b/src/app.html index 3fc94943..e5adb577 100644 --- a/src/app.html +++ b/src/app.html @@ -15,7 +15,7 @@ property="og:description" content="A web based damage analysis tool for RuneScape 3" /> - + %sveltekit.head% diff --git a/src/components/AbilityDamageTable/AbilityDamageTable.svelte b/src/components/AbilityDamageTable/AbilityDamageTable.svelte index 43d3be78..323c7342 100644 --- a/src/components/AbilityDamageTable/AbilityDamageTable.svelte +++ b/src/components/AbilityDamageTable/AbilityDamageTable.svelte @@ -132,7 +132,7 @@ -
+

Please report any bugs or errors in the RSA discord. For a more comprehensive guide, check out our - + full guide.

diff --git a/src/routes/rotation_builder_guide/+page.svelte b/src/routes/rotation_builder_guide/+page.svelte index fff063dc..84baa5ff 100644 --- a/src/routes/rotation_builder_guide/+page.svelte +++ b/src/routes/rotation_builder_guide/+page.svelte @@ -59,7 +59,7 @@ -
+
@@ -127,7 +127,7 @@ Adrenaline is tracked tick by tick.

- Buffs, stacks and cooldowns on the rotation timeline + Buffs, stacks and cooldowns on the rotation timeline

From 6cb6f5370ab493d40412fd94c3e4708577b95cf6 Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sun, 19 Apr 2026 23:45:06 +0100 Subject: [PATCH 05/15] Revert "change urls to use /rs-rot/" This reverts commit 5e72a4d4d26f98636f6e9ed3a866b749eae943c6. --- src/app.html | 2 +- .../AbilityDamageTable.svelte | 2 +- src/components/Layout/Navbar.svelte | 26 +- .../DamageDistributionChart.svelte | 2 +- .../RotationBuilder/ExtraActionsPanel.svelte | 26 +- .../Settings/FamiliarSelection.svelte | 16 +- src/components/Settings/GearSelection.svelte | 96 ++--- src/components/Settings/PerkSelection.svelte | 38 +- .../Settings/RotationSettings.svelte | 80 ++-- .../calc/rotation_builder/rotation_consts.ts | 118 +++--- src/lib/data/abilities.ts | 354 +++++++++--------- src/lib/data/armour.ts | 352 ++++++++--------- src/lib/data/familiars.ts | 22 +- src/lib/data/perks.ts | 34 +- src/lib/data/weapons.ts | 98 ++--- src/lib/special/abilities.ts | 74 ++-- src/lib/utils/gearVariants.ts | 2 +- src/routes/+page.svelte | 42 +-- src/routes/faq/+page.svelte | 2 +- src/routes/magic/+page.svelte | 76 ++-- src/routes/melee/+page.svelte | 72 ++-- src/routes/necromancy/+page.svelte | 68 ++-- src/routes/projects/+page.svelte | 2 +- src/routes/ranged/+page.svelte | 56 +-- src/routes/research/+page.svelte | 6 +- src/routes/rotation_builder/+page.svelte | 8 +- .../rotation_builder_guide/+page.svelte | 4 +- 27 files changed, 839 insertions(+), 839 deletions(-) diff --git a/src/app.html b/src/app.html index e5adb577..3fc94943 100644 --- a/src/app.html +++ b/src/app.html @@ -15,7 +15,7 @@ property="og:description" content="A web based damage analysis tool for RuneScape 3" /> - + %sveltekit.head% diff --git a/src/components/AbilityDamageTable/AbilityDamageTable.svelte b/src/components/AbilityDamageTable/AbilityDamageTable.svelte index 323c7342..43d3be78 100644 --- a/src/components/AbilityDamageTable/AbilityDamageTable.svelte +++ b/src/components/AbilityDamageTable/AbilityDamageTable.svelte @@ -132,7 +132,7 @@ -

+

Please report any bugs or errors in the RSA discord. For a more comprehensive guide, check out our - + full guide.

diff --git a/src/routes/rotation_builder_guide/+page.svelte b/src/routes/rotation_builder_guide/+page.svelte index 84baa5ff..fff063dc 100644 --- a/src/routes/rotation_builder_guide/+page.svelte +++ b/src/routes/rotation_builder_guide/+page.svelte @@ -59,7 +59,7 @@ -
+
@@ -127,7 +127,7 @@ Adrenaline is tracked tick by tick.

- Buffs, stacks and cooldowns on the rotation timeline + Buffs, stacks and cooldowns on the rotation timeline

From 2a1153018136e82eeb9c842a02506126a0de6510 Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sun, 19 Apr 2026 23:46:03 +0100 Subject: [PATCH 06/15] alter svelte path --- svelte.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/svelte.config.js b/svelte.config.js index 75143692..9c538c3c 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -15,7 +15,7 @@ const config = { typescript: true }), paths: { - base: '', + base: '/rs-rot', }, alias: { $components: path.resolve('src/components'), From cff3fdaa499f67414d083471bb21451d0253a657 Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sun, 19 Apr 2026 23:49:46 +0100 Subject: [PATCH 07/15] Reapply "change urls to use /rs-rot/" This reverts commit 6cb6f5370ab493d40412fd94c3e4708577b95cf6. --- src/app.html | 2 +- .../AbilityDamageTable.svelte | 2 +- src/components/Layout/Navbar.svelte | 26 +- .../DamageDistributionChart.svelte | 2 +- .../RotationBuilder/ExtraActionsPanel.svelte | 26 +- .../Settings/FamiliarSelection.svelte | 16 +- src/components/Settings/GearSelection.svelte | 96 ++--- src/components/Settings/PerkSelection.svelte | 38 +- .../Settings/RotationSettings.svelte | 80 ++-- .../calc/rotation_builder/rotation_consts.ts | 118 +++--- src/lib/data/abilities.ts | 354 +++++++++--------- src/lib/data/armour.ts | 352 ++++++++--------- src/lib/data/familiars.ts | 22 +- src/lib/data/perks.ts | 34 +- src/lib/data/weapons.ts | 98 ++--- src/lib/special/abilities.ts | 74 ++-- src/lib/utils/gearVariants.ts | 2 +- src/routes/+page.svelte | 42 +-- src/routes/faq/+page.svelte | 2 +- src/routes/magic/+page.svelte | 76 ++-- src/routes/melee/+page.svelte | 72 ++-- src/routes/necromancy/+page.svelte | 68 ++-- src/routes/projects/+page.svelte | 2 +- src/routes/ranged/+page.svelte | 56 +-- src/routes/research/+page.svelte | 6 +- src/routes/rotation_builder/+page.svelte | 8 +- .../rotation_builder_guide/+page.svelte | 4 +- 27 files changed, 839 insertions(+), 839 deletions(-) diff --git a/src/app.html b/src/app.html index 3fc94943..e5adb577 100644 --- a/src/app.html +++ b/src/app.html @@ -15,7 +15,7 @@ property="og:description" content="A web based damage analysis tool for RuneScape 3" /> - + %sveltekit.head% diff --git a/src/components/AbilityDamageTable/AbilityDamageTable.svelte b/src/components/AbilityDamageTable/AbilityDamageTable.svelte index 43d3be78..323c7342 100644 --- a/src/components/AbilityDamageTable/AbilityDamageTable.svelte +++ b/src/components/AbilityDamageTable/AbilityDamageTable.svelte @@ -132,7 +132,7 @@ -

+

Please report any bugs or errors in the RSA discord. For a more comprehensive guide, check out our - + full guide.

diff --git a/src/routes/rotation_builder_guide/+page.svelte b/src/routes/rotation_builder_guide/+page.svelte index fff063dc..84baa5ff 100644 --- a/src/routes/rotation_builder_guide/+page.svelte +++ b/src/routes/rotation_builder_guide/+page.svelte @@ -59,7 +59,7 @@ -
+
@@ -127,7 +127,7 @@ Adrenaline is tracked tick by tick.

- Buffs, stacks and cooldowns on the rotation timeline + Buffs, stacks and cooldowns on the rotation timeline

From 33795ef392296e02973e9c1ac4003655bf441e5a Mon Sep 17 00:00:00 2001 From: Gareth Lloyd Date: Sun, 19 Apr 2026 23:52:39 +0100 Subject: [PATCH 08/15] few more urls --- src/routes/+page.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 8ea846da..4714bcd7 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -155,7 +155,7 @@