64 Commits

Author SHA1 Message Date
wylab 63d79740ed fix: add --amend flag to docker manifest create
The manifest already exists from previous builds, so --amend is needed
to update it with new architecture images.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 17:53:21 +01:00
Codex Agent 0651098b66 fix: disable provenance to fix multi-arch manifest creation
Buildx with provenance creates manifest lists even for single-platform
builds. This breaks `docker manifest create` which expects plain images.

Adding provenance: false ensures plain images are pushed, allowing
the manifest creation step to work correctly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 09:16:10 +01:00
Codex Agent d21b1e9877 ci: Add multi-arch manifest with :main tag
- arm64 build pushes :main-arm64
- amd64 build pushes :main-amd64
- New create-manifest job combines into :main (auto-selects arch)
- Manifest job can run on any self-hosted runner

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:37:37 +01:00
Codex Agent b9bbe80856 ci: Use :latest tag instead of :main
- amd64: :latest and :sha-xxx
- arm64: :latest-arm64 and :sha-xxx-arm64

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:30:17 +01:00
Codex Agent 906d405e43 Refactor to LiamAEdwards watchdog approach
- Dockerfile: Download server from wylab CDN at build time, build watchdog
- start.sh: Simplified to copy defaults and run watchdog
- appsettings.yml: Configure for wylab instance with CDN manifest
- main.yml: Simplified workflow with auto-tagging via metadata-action
- Delete update_build_metadata.py (no longer needed)

Based on: https://github.com/LiamAEdwards/SS14-Docker-Linux-Server

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 08:21:19 +01:00
wylab f74b25bc3c chore: Remove update_build_metadata.py (watchdog handles updates) 2025-12-16 07:44:09 +01:00
wylab 1d20c8c80d chore: Remove start.sh (watchdog is now the entrypoint) 2025-12-16 07:44:09 +01:00
wylab 1916037ff8 ci: Simplify workflow for watchdog build (no game source compilation)
Main branch now builds watchdog-only image that auto-updates from CDN.
Dev branch retains the full game source build workflow.
2025-12-16 07:43:44 +01:00
wylab 129c4bebd1 config: Update watchdog key to wylab, clean up build section 2025-12-16 07:42:52 +01:00
wylab 050061a7aa config: Update watchdog instance to wylab with CDN manifest 2025-12-16 07:42:51 +01:00
wylab aaade96257 refactor: Switch to SS14.Watchdog for auto-updates from CDN
- Watchdog automatically downloads and updates game server from CDN manifest
- No need to rebuild image for game updates
- Game server binaries pulled from https://cdn.wylab.me/fork/wylab/manifest
- Dev branch retains the build-from-source approach
2025-12-16 07:41:49 +01:00
wylab 2d86eac066 Remove commented download_url/build examples
The update_build_metadata.py script's regex matches commented lines first,
causing duplicates. Keep only the actual values.
2025-12-16 07:15:41 +01:00
wylab e149fceec2 Fix config path - files go to root, not publish/
The SS14.Server zip extracts files to root, not a publish/ subdirectory.
Config files were being placed in non-existent /ss14-default/publish/.
2025-12-16 07:10:13 +01:00
wylab d91dfefec1 Add PostgreSQL database configuration
Configure SS14 server to use PostgreSQL for persistent storage.
Data persists independently of game server container rebuilds.
2025-12-16 07:04:23 +01:00
wylab 3b41aab1f5 Revert "Add MariaDB database configuration"
SS14 does not support MySQL/MariaDB, only SQLite and PostgreSQL.
Reverting to SQLite default.
2025-12-16 06:56:53 +01:00
Codex Agent 551245ab53 Add MariaDB database configuration
Configure SS14 server to use MariaDB for persistent storage
(player data, admin logs, preferences).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 06:10:55 +01:00
Wylabb 29ec3bd03e Replace GHA cache with registry cache
Switch from type=gha to type=registry for Docker build caching.
Registry cache works with Gitea runners and stores cache layers
as special tags in the container registry.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-15 04:50:40 +01:00
Wylabb 3a0980b294 Remove incompatible GitHub Actions cache from workflow
Remove cache-from and cache-to settings using type=gha, which are
incompatible with Gitea runners. The build completes successfully
but fails when trying to export to the non-existent GHA cache service.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-15 04:49:33 +01:00
Wylabb 900969b9ef Fix amd64 runner to use Docker mode
Restore runs-on to [self-hosted, linux-amd64] which now maps to Docker
mode after updating the runner configuration. This fixes actions/checkout
compatibility while maintaining amd64 tagging.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-15 04:25:00 +01:00
Wylabb f1229098af Switch amd64 job to Docker runner mode
Change build-amd64 from host mode to ubuntu-latest Docker runner to
fix actions/checkout compatibility. The checkout action requires a
proper containerized environment that host mode doesn't provide.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-15 04:19:08 +01:00
Wylabb 2d7fbeb95a Fix checkout action compatibility with gitea-runner
Downgrade actions/checkout from v4 to v3 to resolve MODULE_NOT_FOUND
errors in gitea-runner's act environment. The v4 action has known
compatibility issues with act's caching mechanism.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-15 03:59:42 +01:00
Codex Agent 7010841d75 Point runners to macos-arm64 and linux-amd64 labels 2025-12-15 01:32:54 +01:00
Codex Agent ad71315b41 Switch runner labels to lower-case arm64/x64 2025-12-15 01:30:46 +01:00
Codex Agent b4155b8c0a Adjust runner labels to self-hosted ARM64/X64 2025-12-15 01:28:49 +01:00
Codex Agent e0d3723507 Pin arm64/amd64 jobs to matching self-hosted runners 2025-12-15 01:21:27 +01:00
Codex Agent db3c67de58 Remove QEMU setup for amd64 job 2025-12-15 01:06:10 +01:00
Codex Agent 61a392c4d3 Revert cache registry change 2025-12-15 01:02:08 +01:00
Codex Agent d528323a9f Use registry cache for buildx 2025-12-15 01:00:54 +01:00
Codex Agent ea4f55a8dc Auto-detect target platform 2025-12-15 00:50:55 +01:00
Codex Agent 2a615a644a CI: split arm64 and amd64 jobs 2025-12-15 00:31:53 +01:00
Codex Agent 3b0e3ae250 CI: force plain buildx progress for logging 2025-12-15 00:18:48 +01:00
Codex Agent 8633363c22 CI: cache build artifacts and configs 2025-12-14 23:33:08 +01:00
Codex Agent 59c193f954 CI: enable amd64 buildx with qemu 2025-12-14 18:45:32 +01:00
Codex Agent 8a9aaefd2a CI: build/push linux/amd64 image 2025-12-14 18:43:51 +01:00
Codex Agent fdf43ea089 Revert "Fix shell scripts to use LF line endings"
This reverts commit f248f11f7e.
2025-12-14 18:41:41 +01:00
Codex Agent f248f11f7e Fix shell scripts to use LF line endings 2025-12-14 18:37:33 +01:00
Codex Agent 9ba94bb69f Restrict workflow to native arch 2025-12-14 18:06:56 +01:00
Codex Agent b74fc4298d Add buildx setup for workflow 2025-12-14 17:20:26 +01:00
Codex Agent 54fe07621e Remove host mapping step from workflow 2025-12-14 17:04:05 +01:00
Codex Agent 0ec2652886 Add client zip download helper 2025-12-14 16:51:52 +01:00
Wylabb 893f5de12b chore: trigger CI 2025-12-14 11:39:57 +01:00
Codex Agent cd5890730a Use internal git host mapping 2025-12-14 09:31:15 +01:00
Codex Agent 842b643ecd Add git host mapping for CI 2025-12-14 09:30:09 +01:00
Codex Agent 627d147be2 Always rebuild docker image in CI 2025-12-14 09:23:41 +01:00
Codex Agent fdef15cdf1 Support Robust.Server fallback 2025-12-14 09:19:35 +01:00
Codex Agent da734d1ffc Fallback to Robust.Server when Watchdog absent 2025-12-14 09:16:11 +01:00
Codex Bot 8b66eca6a3 Make start script detect SS14.Watchdog path 2025-12-14 08:36:26 +01:00
Codex Bot ec1d063d83 Use lowercase registry image name 2025-12-14 08:27:04 +01:00
Codex Bot 0fc5da9fe0 Skip redundant Docker image builds 2025-12-14 08:09:18 +01:00
Codex Bot eb4cf5ead8 Build Docker image from wylab-station-14 source 2025-12-14 05:13:39 +01:00