about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorClemens Fruhwirth <clemens@endorphin.org>2017-03-22 17:17:25 +0100
committerClemens Fruhwirth <clemens@endorphin.org>2017-03-27 17:41:42 +0200
commit72ec884cc65c2bfd799376a80868994f24621b1b (patch)
tree821750e4ce549e8444c188c72abbb0036a28e72a /nixos
parent50adc53207cc7c5697d8c7581222d5c1cbe73b2b (diff)
downloadnixlib-72ec884cc65c2bfd799376a80868994f24621b1b.tar
nixlib-72ec884cc65c2bfd799376a80868994f24621b1b.tar.gz
nixlib-72ec884cc65c2bfd799376a80868994f24621b1b.tar.bz2
nixlib-72ec884cc65c2bfd799376a80868994f24621b1b.tar.lz
nixlib-72ec884cc65c2bfd799376a80868994f24621b1b.tar.xz
nixlib-72ec884cc65c2bfd799376a80868994f24621b1b.tar.zst
nixlib-72ec884cc65c2bfd799376a80868994f24621b1b.zip
Make GCE image as small as possible and incorporate partition growing
when users of nixops specified a larger root disk via
deployment.gce.rootDiskSize

1GB is the smallest possible size as GCP doesn't support
fractions of GB for RAW images, see
https://cloud.google.com/compute/docs/images/import-existing-image#requirements
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/virtualisation/google-compute-image.nix9
1 files changed, 6 insertions, 3 deletions
diff --git a/nixos/modules/virtualisation/google-compute-image.nix b/nixos/modules/virtualisation/google-compute-image.nix
index a3dd3bd55d14..5673d55b3394 100644
--- a/nixos/modules/virtualisation/google-compute-image.nix
+++ b/nixos/modules/virtualisation/google-compute-image.nix
@@ -2,10 +2,10 @@
 
 with lib;
 let
-  diskSize = "100G";
+  diskSize = "1G";
 in
 {
-  imports = [ ../profiles/headless.nix ../profiles/qemu-guest.nix ];
+  imports = [ ../profiles/headless.nix ../profiles/qemu-guest.nix ./grow-partition.nix ];
 
   # https://cloud.google.com/compute/docs/tutorials/building-images
   networking.firewall.enable = mkDefault false;
@@ -94,7 +94,10 @@ in
         ''
     );
 
-  fileSystems."/".label = "nixos";
+  fileSystems."/" = {
+    device = "/dev/disk/by-label/nixos";
+    autoResize = true;
+  };
 
   boot.kernelParams = [ "console=ttyS0" "panic=1" "boot.panic_on_fail" ];
   boot.initrd.kernelModules = [ "virtio_scsi" ];