migrate-ns2-opentofu #33
35
docs/plans/bootstrap-cache.md
Normal file
35
docs/plans/bootstrap-cache.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# Plan: Configure Template2 to Use Nix Cache
|
||||
|
||||
## Problem
|
||||
|
||||
New VMs bootstrapped from template2 don't use our local nix cache (nix-cache.home.2rjus.net) during the initial `nixos-rebuild boot`. This means the first build downloads everything from cache.nixos.org, which is slower and uses more bandwidth.
|
||||
|
||||
## Solution
|
||||
|
||||
Update the template2 base image to include the nix cache configuration, so new VMs immediately benefit from cached builds during bootstrap.
|
||||
|
||||
## Implementation
|
||||
|
||||
1. Add nix cache configuration to `hosts/template2/configuration.nix`:
|
||||
```nix
|
||||
nix.settings = {
|
||||
substituters = [ "https://nix-cache.home.2rjus.net" "https://cache.nixos.org" ];
|
||||
trusted-public-keys = [
|
||||
"nix-cache.home.2rjus.net:..." # Add the cache's public key
|
||||
"cache.nixos.org-1:..."
|
||||
];
|
||||
};
|
||||
```
|
||||
|
||||
2. Rebuild and redeploy the Proxmox template:
|
||||
```bash
|
||||
nix develop -c ansible-playbook -i playbooks/inventory.ini playbooks/build-and-deploy-template.yml
|
||||
```
|
||||
|
||||
3. Update `default_template_name` in `terraform/variables.tf` if the template name changed
|
||||
|
||||
## Benefits
|
||||
|
||||
- Faster VM bootstrap times
|
||||
- Reduced bandwidth to external cache
|
||||
- Most derivations will already be cached from other hosts
|
||||
Reference in New Issue
Block a user