22 lines
1007 B
Makefile
22 lines
1007 B
Makefile
CHANNEL=stable
|
|
ENV=dev
|
|
|
|
clean:
|
|
rm -rf *.img *.model *.manifest snaps
|
|
|
|
%.model: boards/%.yaml # sign a model file
|
|
cat definition.yaml $< | python -c "import sys, yaml, json; json.dump(yaml.load(sys.stdin), sys.stdout, indent=2)" | sed "s|TIMESTAMP|$(shell date -Iseconds --utc)|g" | snap sign -k default > $@
|
|
snaps/%:
|
|
node build-tool.js --env $(ENV) --channel $(CHANNEL) --board $*
|
|
%.img: %.model snaps/% # build an image
|
|
sudo ubuntu-image snap -o $@ --cloud-init $(ENV).cloud-init.yaml -c $(CHANNEL) $<
|
|
|
|
# VM stuff
|
|
|
|
vm.img: amd64.img # make a copy of the newest clean image
|
|
cp amd64.img vm.img
|
|
start: vm.img # launch the image with kvm
|
|
kvm -smp 2 -m 1500 -netdev user,id=mynet0,hostfwd=tcp::8022-:22,hostfwd=tcp::8090-:80 -device virtio-net-pci,netdev=mynet0 -drive file=vm.img,format=raw
|
|
ssh: # ssh into it (don't check the key because that one changes after every rebuild)
|
|
ssh mkg20001@localhost -p 8022 -o StrictHostKeyChecking=no -o GlobalKnownHostsFile=/dev/null -o UserKnownHostsFile=/dev/null
|