From 0dfd81ca1696053b366a39cab02e54205a09fb20 Mon Sep 17 00:00:00 2001 From: Luke Hoersten Date: Sun, 26 Jul 2026 16:46:21 -0500 Subject: build roles: create build_work_dir and redirect caches per-role Each build role now creates build_work_dir itself and sets its own toolchain's cache env (GOPATH/GOCACHE/GOMODCACHE, CARGO_HOME, npm cache, MIX/HEX) on its build tasks, so the roles are self-contained instead of relying on a play-level environment and pre_task. --- dendrite/build/tasks/main.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'dendrite/build') diff --git a/dendrite/build/tasks/main.yaml b/dendrite/build/tasks/main.yaml index dff7bdb..10f2e12 100644 --- a/dendrite/build/tasks/main.yaml +++ b/dendrite/build/tasks/main.yaml @@ -1,5 +1,14 @@ --- +- name: ensure build work dir exists + become: yes + file: + path: "{{build_work_dir}}" + state: "directory" + owner: "{{ansible_user}}" + group: "{{ansible_user}}" + mode: "0755" + - name: install golang become: yes apt: name="golang-1.21-go" @@ -34,6 +43,11 @@ command: "go build -o bin/ ./cmd/..." args: chdir: "{{dendrite_build_dir}}" + # Keep the Go caches on build_work_dir (the SSD) instead of the SD card. + environment: + GOPATH: "{{build_work_dir}}/.go" + GOCACHE: "{{build_work_dir}}/.go-cache" + GOMODCACHE: "{{build_work_dir}}/.go-mod" when: not build_file.stat.exists - name: create build server dir -- cgit v1.2.3