Files
flake-hub/ci/setup.sh
T
Oleks d971b72ba4 ci: stream build logs and add env context
setup.sh now traces each command (set -ex) so /etc/hosts, nix.conf,
and netrc setup are visible in pipeline logs.

build.py replaces capture() with a streaming build() helper for
nix builds: stderr is inherited (live --print-build-logs output)
while stdout is captured for the out path. Also dumps nix version,
uname, disk, and memory at the start so failures have context.
2026-04-29 11:16:57 +03:00

20 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
# Bootstrap nix environment for CI (runs inside nixos/nix:latest)
set -ex
# Direct to armer public IP — bypass Cloudflare upload size limits
# Hairpin NAT on armer handles redirect for pods running on armer itself
echo "79.76.48.244 git.oleks.space nix-cache-upload.oleks.space" >>/etc/hosts
cat >>/etc/nix/nix.conf <<'EOF'
experimental-features = nix-command flakes
trusted-substituters = https://nix-cache-mirror.oleks.space https://nix-cache-custom.oleks.space/attic-infra-cache-k3s-1
substituters = https://nix-cache-mirror.oleks.space https://nix-cache-custom.oleks.space/attic-infra-cache-k3s-1
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs= hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc= cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E= nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA= attic-infra-cache-k3s-1:qYSNK3DmttQXCFqn1t50qoWGtQNPRFWq9mgQjD05DeU=
EOF
if [ -n "$GITEA_CLONE_TOKEN" ]; then
echo "machine git.oleks.space login oleks password $GITEA_CLONE_TOKEN" >~/.netrc
chmod 600 ~/.netrc
fi