diff --git a/.github/workflows/website.yml b/.github/workflows/website.yml index e16e08cb2..4efb4311b 100644 --- a/.github/workflows/website.yml +++ b/.github/workflows/website.yml @@ -27,6 +27,7 @@ env: WOTB_GLOSSARY: ${{ secrets.WOTB_GLOSSARY }} WOTB_GLOSSARY_DOMAIN: ${{ secrets.WOTB_GLOSSARY_DOMAIN }} WOTB_GLOSSARY_PATH: ${{ secrets.WOTB_GLOSSARY_PATH }} + GAME_DIR: temp/game # google PUBLIC_GOOGLE_TAG_MANAGER_ID: ${{ secrets.PUBLIC_GOOGLE_TAG_MANAGER_ID }} @@ -34,6 +35,12 @@ env: # wargaming PUBLIC_WARGAMING_APPLICATION_ID: ${{ secrets.PUBLIC_WARGAMING_APPLICATION_ID }} + # steam + STEAM_USERNAME: ${{ secrets.STEAM_USERNAME }} + STEAM_PASSWORD: ${{ secrets.STEAM_PASSWORD }} + STEAM_APP: 444202 + STEAM_OS: windows + jobs: build: name: Build website @@ -41,6 +48,7 @@ jobs: runs-on: ubuntu-latest strategy: + fail-fast: false matrix: chunk: [default, api] @@ -68,6 +76,43 @@ jobs: - name: Install dependencies run: bun install + - name: Setup DepotDownloader + run: | + REPO_USER="SteamRE" + REPO_NAME="DepotDownloader" + TEMP="temp" + + OUT="$TEMP/$REPO_NAME" + ZIP="$TEMP/$REPO_NAME.zip" + + URL=$( + curl -s "https://api.github.com/repos/$REPO_USER/$REPO_NAME/releases/latest" \ + | jq -r '.assets[] + | select(.name | contains("linux-x64")) + | .browser_download_url' \ + | head -n 1 + ) + + mkdir -p "$TEMP" + curl -L "$URL" -o "$ZIP" + unzip -p "$ZIP" "$REPO_NAME" > "$OUT" + rm "$ZIP" + + chmod +x "$OUT" + + - name: Download game + run: | + TEMP="temp" + + DEPOT_DOWNLOADER="$TEMP/DepotDownloader" + GAME="$TEMP/game" + + set -a + source .env + set +a + + $DEPOT_DOWNLOADER -os $STEAM_OS -app $STEAM_APP -username $STEAM_USERNAME -password $STEAM_PASSWORD -dir $GAME + - name: Build run: bun run build env: diff --git a/packages/website/src/core/blitzkit/vfs.ts b/packages/website/src/core/blitzkit/vfs.ts index 34eb3e1e9..19bd8e044 100644 --- a/packages/website/src/core/blitzkit/vfs.ts +++ b/packages/website/src/core/blitzkit/vfs.ts @@ -1,5 +1,4 @@ +import { assertSecret } from "@blitzkit/core"; import { LocalVFS } from "@blitzkit/core/src/blitzkit/vfs/local"; -export const vfs = new LocalVFS( - "/run/media/tresabhi/Windows/Program Files/WindowsApps/7458BE2C.WorldofTanksBlitz_11.19.272.0_x64__x4tje2y229k00", -); +export const vfs = new LocalVFS(assertSecret(import.meta.env.GAME_DIR)); diff --git a/packages/website/src/pages/[...chunk_default]/[...locale]/embed/[embed]/host/index.astro b/packages/website/src/pages/[...chunk_default]/[...locale]/embed/[embed]/host/index.astro index 00fb8f464..73f575172 100644 --- a/packages/website/src/pages/[...chunk_default]/[...locale]/embed/[embed]/host/index.astro +++ b/packages/website/src/pages/[...chunk_default]/[...locale]/embed/[embed]/host/index.astro @@ -1,5 +1,5 @@ --- -import EmbedLayout from "../../../../../layouts/EmbedLayout.astro"; +import EmbedLayout from "../../../../../../layouts/EmbedLayout.astro"; import type { getStaticPaths } from "../index.astro"; import { Page } from "./_index";