src.nth.io/

summaryrefslogtreecommitdiff
path: root/mattertimesync/build
AgeCommit message (Collapse)AuthorFilesLines
19 hoursbuild roles: create build_work_dir and redirect caches per-roleHEADmainLuke Hoersten1-0/+14
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.
19 hoursbuild roles: force real tarballs for single-file artifactsLuke Hoersten1-0/+3
community.general.archive (>=10) compresses a lone file into a bare .gz instead of a tarball, so the mattertimesync/bin/nostr artifacts failed the server-side unarchive. Set force_archive: true so the archive module emits a real single-member .tar.gz, consistent with the multi-file dendrite/pleroma builds.
19 hoursbuild roles: stage checkouts + artifacts under build_work_dirLuke Hoersten2-2/+2
Move every build role's working dir off /tmp (the SD card) to {{build_work_dir}}, which the playbook points at the SSD on the build host. nostr and pleroma stage their artifacts inside their own build dirs so the shared work dir can't collide, while preserving the archive top-level names (relayer, release) that the server roles depend on.
24 hoursmattertimesync: add build + server rolesLuke Hoersten3-0/+54
Build role compiles the tagged source on the build host (npm ci + npm run bundle) into a versioned mattertimesync-<ver>.tar.gz in build_srv_dir. Server role installs the single bundled .mjs, creates the mattertimesync service user and a 0700 storage dir for the Matter fabric keys, templates config.json, and runs a hardened oneshot sync via a systemd timer. Both roles depend on the nodejs role for Node >=20.