1# azure 2 3## Demo 4 5Here's a demo of this being used: https://asciinema.org/a/euXb9dIeUybE3VkstLWLbvhmp 6 7## Usage 8 9This is meant to be an example image that you can copy into your own 10project and modify to your own needs. Notice that the example image 11includes a built-in test user account, which by default uses your 12`~/.ssh/id_ed25519.pub` as an `authorized_key`. 13 14Build and upload the image 15```shell 16$ ./upload-image.sh ./examples/basic/image.nix 17 18... 19+ attr=azbasic 20+ nix-build ./examples/basic/image.nix --out-link azure 21/nix/store/qdpzknpskzw30vba92mb24xzll1dqsmd-azure-image 22... 2395.5 %, 0 Done, 0 Failed, 1 Pending, 0 Skipped, 1 Total, 2-sec Throughput (Mb/s): 932.9565 24... 25/subscriptions/aff271ee-e9be-4441-b9bb-42f5af4cbaeb/resourceGroups/nixos-images/providers/Microsoft.Compute/images/azure-image-todo-makethisbetter 26``` 27 28Take the output, boot an Azure VM: 29 30``` 31img="/subscriptions/.../..." # use output from last command 32./boot-vm.sh "${img}" 33... 34=> booted 35``` 36 37## Future Work 38 391. If the user specifies a hard-coded user, then the agent could be removed. 40 Probably has security benefits; definitely has closure-size benefits. 41 (It's likely the VM will need to be booted with a special flag. See: 42 https://github.com/Azure/azure-cli/issues/12775 for details.)