diff --git a/.drone.yml b/.drone.yml index c5871a1..d8623ac 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,23 +1,39 @@ 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: @@ -43,6 +59,7 @@ steps: - name: docker image: plugins/docker + pull: false settings: repo: registry.zea.lt/miczek/tracker registry: registry.zea.lt @@ -51,6 +68,9 @@ steps: 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} @@ -59,4 +79,4 @@ steps: - main - master depends_on: - - build \ No newline at end of file + - build