Files
tracker/.drone.yml
T
miczekandCursor ab8223c21a
continuous-integration/drone/push Build is running
ci: Pi-hole DNS, package cache, faster pulls
Route *.zea.lt via LAN Traefik, reuse bun cache under /drone-cache,
and skip redundant image pulls on the Pi runner.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-15 03:53:22 +03:00

83 lines
1.9 KiB
YAML

kind: pipeline
type: docker
name: build-and-push
platform:
os: linux
arch: arm64
# Use Pi-hole so *.zea.lt resolves to Traefik on the LAN (not public hairpin)
dns:
- 192.168.0.64
concurrency:
limit: 1
clone:
depth: 50
steps:
- name: test
image: oven/bun:1-alpine
pull: false
environment:
BUN_INSTALL_CACHE_DIR: /drone-cache/bun
commands:
- bun install --frozen-lockfile
- bun run test
- name: build
image: oven/bun:1-alpine
pull: false
environment:
# Serialise Angular workers — lower peak RAM, longer build (Pi-friendly)
NG_BUILD_MAX_WORKERS: "1"
NODE_OPTIONS: "--max-old-space-size=1536"
BUN_INSTALL_CACHE_DIR: /drone-cache/bun
STRAVA_CLIENT_ID:
from_secret: strava_client_id
STRAVA_REDIRECT_URI:
from_secret: strava_redirect_uri
RIOT_REGION:
from_secret: riot_region
RIOT_SUMMONER_NAME_LOL:
from_secret: riot_summoner_name_lol
RIOT_SUMMONER_NAME_TFT:
from_secret: riot_summoner_name_tft
RIOT_TAG_LINE:
from_secret: riot_tag_line
FACEIT_USER_ID:
from_secret: faceit_user_id
ROCKET_LEAGUE_PLATFORM:
from_secret: rocket_league_platform
ROCKET_LEAGUE_USERNAME:
from_secret: rocket_league_username
commands:
- bun run build:ssr
depends_on:
- test
- name: docker
image: plugins/docker
pull: false
settings:
repo: registry.zea.lt/miczek/tracker
registry: registry.zea.lt
username:
from_secret: registry_username
password:
from_secret: registry_password
build_args_from_env: true
# Reuse previous image layers when possible
cache_from:
- registry.zea.lt/miczek/tracker:latest
tags:
- latest
- ${DRONE_COMMIT_SHA:0:7}
when:
branch:
- main
- master
depends_on:
- build