-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathTaskfile.yaml
50 lines (42 loc) · 2.17 KB
/
Taskfile.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
version: 3
# task go-generate go-build copy-to-router
tasks:
docker-build-generate:
cmds:
- docker build . -f Dockerfile.generate -t blesswinsamuel/router-monitor:generate
# docker-build:
# cmds:
# - docker build . -t blesswinsamuel/router-monitor
go-generate:
cmds:
- docker create blesswinsamuel/router-monitor:generate > /tmp/container_id
- defer: rm /tmp/container_id
- defer: docker rm -f $(cat /tmp/container_id)
- docker cp $(cat /tmp/container_id):/generated/ ./
- defer: rm -rf ./generated
- cp -r generated/* ./internal/routermonitor/
deps:
- docker-build-generate
go-build:
cmds:
- GOOS=linux GOARCH=amd64 go build -o router-monitor ./cmd/router-monitor
copy-to-router:
cmds:
- ssh root@router "pkill -f router-monitor" || true
- scp router-monitor root@router:/root/router-monitor
- ssh root@router "nix-shell -p autoPatchelfHook --run 'autoPatchelf /root/router-monitor'"
# nix-build:
# cmds:
# # - nix run github:nix-community/gomod2nix#gomod2nix -- generate
# # - nix build --eval-store auto -j0 --store 'ssh-ng://root@cloudlab-oracle-arm' --builders "ssh-ng://root@cloudlab-oracle-arm aarch64-linux" '.#packages.aarch64-linux.default'
# - nix build --eval-store auto -j0 --store 'ssh-ng://root@cloudlab-oracle-arm' '.#packages.aarch64-linux.default'
# # - nix build --eval-store auto -j0 --store 'ssh-ng://root@raspberry-pi-4' '.#packages.aarch64-linux.default'
# nix-copy-to-router:
# cmds:
# - nix copy --verbose --no-check-sigs --from 'ssh-ng://root@cloudlab-oracle-arm' --to 'ssh-ng://root@raspberry-pi-4' '.#packages.aarch64-linux.default'
# rsync-go-generate:
# cmds:
# - rsync -avz --delete ./ root@hp-450-laptop:/root/router-monitor/
# # - ssh root@hp-450-laptop "nix-shell -p go llvm_18 clang_18 libbpf --run 'cd /root/router-monitor && go generate ./...'"
# - ssh root@hp-450-laptop "nix-shell -p podman --run 'cd /root/router-monitor && podman build . -f Dockerfile.generate -t blesswinsamuel/router-monitor:generate'"
# - rsync -avz --delete root@hp-450-laptop:/root/router-monitor/internal/ ./internal/