mirror of
https://github.com/DorkSquadRR/DorkNet.git
synced 2026-10-25 15:08:47 -07:00
6e5b011059
Each run now stages what it built as DorkNet-<release>-PC-Full.zip, -PC-Patch.zip, -Quest.xapk and -Quest-Installer.zip, writes their sizes and SHA-256 to a manifest, and uploads them with a static page to an S3 bucket served read-only (ci/downloads). The build scripts keep their own names, which the launcher depends on; only the published copies are renamed. PUBLISH_DOWNLOADS (on by default) turns the upload off per run. Jenkins archives the same renamed files instead of the raw build output.
43 lines
1.9 KiB
YAML
43 lines
1.9 KiB
YAML
# DorkNet build agent on Coolify. Deploy as its own Docker Compose application
|
|
# from this repository with base directory /ci/jenkins, compose location
|
|
# /docker-compose.agent.yml and "Connect to predefined network" on. It needs no
|
|
# domain: it dials out to Jenkins over WebSocket on Docker's internal network.
|
|
# Set the variables in the resource's Environment Variables; see
|
|
# ci/jenkins/README.md. The controller is docker-compose.yml.
|
|
services:
|
|
agent:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
restart: unless-stopped
|
|
# Reap the processes build tools leave behind (dotnet build servers,
|
|
# Gradle daemons, adb), as the inbound-agent image's docs ask for.
|
|
init: true
|
|
environment:
|
|
# Jenkins as seen from inside Docker (e.g. http://<jenkins container
|
|
# name>:8080), not the public URL, which is behind Cloudflare Access.
|
|
# Both are needed at runtime only; keep them out of the image build so
|
|
# the node secret never reaches a build argument.
|
|
JENKINS_URL: ${JENKINS_URL}
|
|
JENKINS_AGENT_NAME: ${JENKINS_AGENT_NAME:-dorknet-builder}
|
|
JENKINS_SECRET: ${JENKINS_SECRET}
|
|
JENKINS_WEB_SOCKET: "true"
|
|
JENKINS_AGENT_WORKDIR: /home/jenkins/agent
|
|
# Where the stock builds live in the archive (restic repository folders
|
|
# on the FTP, plain text). Overridable per run.
|
|
ARCHIVE_PC_REPO: ${ARCHIVE_PC_REPO:-}
|
|
ARCHIVE_QUEST_REPO: ${ARCHIVE_QUEST_REPO:-}
|
|
ARCHIVE_FTP_TLS: ${ARCHIVE_FTP_TLS:-explicit}
|
|
# The downloads page's bucket (S3 API, internal address) and the DorkNet
|
|
# website the page links to. See ci/downloads/publish.py.
|
|
DOWNLOADS_S3_ENDPOINT: ${DOWNLOADS_S3_ENDPOINT:-}
|
|
DOWNLOADS_BUCKET: ${DOWNLOADS_BUCKET:-}
|
|
DORKNET_SITE_URL: ${DORKNET_SITE_URL:-}
|
|
volumes:
|
|
- dorknet_cache:/home/jenkins/dorknet-cache
|
|
- agent_work:/home/jenkins/agent
|
|
|
|
volumes:
|
|
dorknet_cache:
|
|
agent_work:
|