Skip to content

Commit 6f3a5a4

Browse files
committed
chore: replace hostName with fqdnOrHostName
1 parent 42628f7 commit 6f3a5a4

File tree

10 files changed

+49
-49
lines changed

10 files changed

+49
-49
lines changed

lib/runner.nix

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
let
77
inherit (pkgs) lib;
88

9-
inherit (microvmConfig) hostName vmHostPackages;
9+
inherit (microvmConfig) fqdnOrHostName vmHostPackages;
1010

1111
inherit (import ./. { inherit lib; }) makeMacvtap withDriveLetters extractOptValues extractParamValue;
1212
inherit (import ./volumes.nix { pkgs = microvmConfig.vmHostPackages; }) createVolumesScript;
@@ -25,7 +25,7 @@ let
2525
setBalloonScript = hypervisorConfig.setBalloonScript or null;
2626

2727
execArg = lib.optionalString microvmConfig.prettyProcnames
28-
''-a "microvm@${hostName}"'';
28+
''-a "microvm@${fqdnOrHostName}"'';
2929

3030

3131
binScripts = microvmConfig.binScripts // {
@@ -54,11 +54,11 @@ let
5454
};
5555

5656
binScriptPkgs = lib.mapAttrs (scriptName: lines:
57-
vmHostPackages.writeShellScript "microvm-${hostName}-${scriptName}" lines
57+
vmHostPackages.writeShellScript "microvm-${fqdnOrHostName}-${scriptName}" lines
5858
) binScripts;
5959
in
6060

61-
vmHostPackages.buildPackages.runCommand "microvm-${microvmConfig.hypervisor}-${hostName}"
61+
vmHostPackages.buildPackages.runCommand "microvm-${microvmConfig.hypervisor}-${fqdnOrHostName}"
6262
{
6363
# for `nix run`
6464
meta.mainProgram = "microvm-run";

lib/runners/qemu.nix

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ let
5353
then "io_uring"
5454
else "threads";
5555

56-
inherit (microvmConfig) hostName vcpu mem balloon initialBalloonMem deflateOnOOM hotplugMem hotpluggedMem user interfaces shares socket forwardPorts devices vsock graphics storeOnDisk kernel initrdPath storeDisk credentialFiles;
56+
inherit (microvmConfig) fqdnOrHostName vcpu mem balloon initialBalloonMem deflateOnOOM hotplugMem hotpluggedMem user interfaces shares socket forwardPorts devices vsock graphics storeOnDisk kernel initrdPath storeDisk credentialFiles;
5757
inherit (microvmConfig.qemu) machine extraArgs serialConsole;
5858

5959

@@ -184,7 +184,7 @@ lib.warnIf (mem == 2048) ''
184184
else lib.escapeShellArgs (
185185
[
186186
"${qemu}/bin/qemu-system-${arch}"
187-
"-name" hostName
187+
"-name" fqdnOrHostName
188188
"-M" machineConfig
189189
"-m" (toString mem)
190190
"-smp" (toString vcpu)
@@ -268,7 +268,7 @@ lib.warnIf (mem == 2048) ''
268268
lib.warnIf (
269269
forwardPorts != [] &&
270270
! builtins.any ({ type, ... }: type == "user") interfaces
271-
) "${hostName}: forwardPortsOptions only running with user network" (
271+
) "${fqdnOrHostName}: forwardPortsOptions only running with user network" (
272272
builtins.concatMap ({ type, id, mac, bridge, ... }: [
273273
"-netdev" (
274274
lib.concatStringsSep "," (

nixos-modules/host/default.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ in
6666
description = "Install MicroVM '${name}'";
6767
before = [
6868
"microvm@${name}.service"
69-
"microvm-tap-interfaces@${name}.service"
69+
"microvm-tap-interfaces@${name}.service" # TODO split after first .
7070
"microvm-pci-devices@${name}.service"
7171
"microvm-virtiofsd@${name}.service"
7272
];

nixos-modules/host/options.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
extraConfig = ({ lib, ... }: {
4545
_file = "module at ${__curPos.file}:${toString __curPos.line}";
4646
config = {
47-
networking.hostName = lib.mkDefault name;
47+
networking.fqdnOrHostName = lib.mkDefault name;
4848
};
4949
});
5050
in [

nixos-modules/microvm/asserts.nix

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{ config, lib, ... }:
22
let
3-
inherit (config.networking) hostName;
3+
inherit (config.networking) fqdnOrHostName;
44

55
in
66
lib.mkIf config.microvm.guest.enable {
@@ -9,7 +9,7 @@ lib.mkIf config.microvm.guest.enable {
99
map (volumes: {
1010
assertion = builtins.length volumes == 1;
1111
message = ''
12-
MicroVM ${hostName}: volume image "${(builtins.head volumes).image}" is used ${toString (builtins.length volumes)} > 1 times.
12+
MicroVM ${fqdnOrHostName}: volume image "${(builtins.head volumes).image}" is used ${toString (builtins.length volumes)} > 1 times.
1313
'';
1414
}) (
1515
builtins.attrValues (
@@ -21,7 +21,7 @@ lib.mkIf config.microvm.guest.enable {
2121
map (interfaces: {
2222
assertion = builtins.length interfaces == 1;
2323
message = ''
24-
MicroVM ${hostName}: interface id "${(builtins.head interfaces).id}" is used ${toString (builtins.length interfaces)} > 1 times.
24+
MicroVM ${fqdnOrHostName}: interface id "${(builtins.head interfaces).id}" is used ${toString (builtins.length interfaces)} > 1 times.
2525
'';
2626
}) (
2727
builtins.attrValues (
@@ -35,14 +35,14 @@ lib.mkIf config.microvm.guest.enable {
3535
then {
3636
assertion = bridge != null;
3737
message = ''
38-
MicroVM ${hostName}: interface ${id} is of type "bridge"
38+
MicroVM ${fqdnOrHostName}: interface ${id} is of type "bridge"
3939
but doesn't have a bridge to attach to defined.
4040
'';
4141
}
4242
else {
4343
assertion = bridge == null;
4444
message = ''
45-
MicroVM ${hostName}: interface ${id} is not of type "bridge"
45+
MicroVM ${fqdnOrHostName}: interface ${id} is not of type "bridge"
4646
and therefore shouldn't have a "bridge" option defined.
4747
'';
4848
}
@@ -52,7 +52,7 @@ lib.mkIf config.microvm.guest.enable {
5252
map ({ id, ... }: {
5353
assertion = builtins.stringLength id <= 15;
5454
message = ''
55-
MicroVM ${hostName}: interface name ${id} is longer than the
55+
MicroVM ${fqdnOrHostName}: interface name ${id} is longer than the
5656
the maximum length of 15 characters on Linux.
5757
'';
5858
}) config.microvm.interfaces
@@ -61,7 +61,7 @@ lib.mkIf config.microvm.guest.enable {
6161
map (shares: {
6262
assertion = builtins.length shares == 1;
6363
message = ''
64-
MicroVM ${hostName}: share tag "${(builtins.head shares).tag}" is used ${toString (builtins.length shares)} > 1 times.
64+
MicroVM ${fqdnOrHostName}: share tag "${(builtins.head shares).tag}" is used ${toString (builtins.length shares)} > 1 times.
6565
'';
6666
}) (
6767
builtins.attrValues (
@@ -73,7 +73,7 @@ lib.mkIf config.microvm.guest.enable {
7373
map (shares: {
7474
assertion = builtins.length shares == 1;
7575
message = ''
76-
MicroVM ${hostName}: share socket "${(builtins.head shares).socket}" is used ${toString (builtins.length shares)} > 1 times.
76+
MicroVM ${fqdnOrHostName}: share socket "${(builtins.head shares).socket}" is used ${toString (builtins.length shares)} > 1 times.
7777
'';
7878
}) (
7979
builtins.attrValues (
@@ -88,7 +88,7 @@ lib.mkIf config.microvm.guest.enable {
8888
map ({ tag, socket, ... }: {
8989
assertion = socket != null;
9090
message = ''
91-
MicroVM ${hostName}: virtiofs share with tag "${tag}" is missing a `socket` path.
91+
MicroVM ${fqdnOrHostName}: virtiofs share with tag "${tag}" is missing a `socket` path.
9292
'';
9393
}) (
9494
builtins.filter ({ proto, ... }: proto == "virtiofs")
@@ -103,22 +103,22 @@ lib.mkIf config.microvm.guest.enable {
103103
builtins.any ({ type, ... }: type == "user") config.microvm.interfaces
104104
);
105105
message = ''
106-
MicroVM ${hostName}: `config.microvm.forwardPorts` works only with qemu and one network interface with `type = "user"`
106+
MicroVM ${fqdnOrHostName}: `config.microvm.forwardPorts` works only with qemu and one network interface with `type = "user"`
107107
'';
108108
} ]
109109
++
110110
# cloud-hypervisor specific asserts
111111
lib.optionals (config.microvm.hypervisor == "cloud-hypervisor") [ {
112112
assertion = ! (lib.any (str: lib.hasInfix "oem_strings" str) config.microvm.cloud-hypervisor.platformOEMStrings);
113113
message = ''
114-
MicroVM ${hostName}: `config.microvm.cloud-hypervisor.platformOEMStrings` items must not contain `oem_strings`
114+
MicroVM ${fqdnOrHostName}: `config.microvm.cloud-hypervisor.platformOEMStrings` items must not contain `oem_strings`
115115
'';
116116
} ];
117117

118118

119119
warnings =
120120
# 32 MB is just an optimistic guess, not based on experience
121121
lib.optional (config.microvm.mem < 32) ''
122-
MicroVM ${hostName}: ${toString config.microvm.mem} MB of RAM is uncomfortably narrow.
122+
MicroVM ${fqdnOrHostName}: ${toString config.microvm.mem} MB of RAM is uncomfortably narrow.
123123
'';
124124
}

nixos-modules/microvm/default.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ in
2828
microvm-lib.buildRunner {
2929
inherit pkgs;
3030
microvmConfig = config.microvm // {
31-
inherit (config.networking) hostName;
31+
inherit (config.networking) fqdnOrHostName;
3232
inherit hypervisor;
3333
};
3434
inherit (config.system.build) toplevel;

nixos-modules/microvm/options.nix

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ let
55
};
66

77
cfg = config.microvm;
8-
hostName = config.networking.hostName or "$HOSTNAME";
8+
fqdnOrHostName = config.networking.fqdnOrHostName or "$fqdnOrHostName";
99
kernelAtLeast = lib.versionAtLeast config.boot.kernelPackages.kernel.version;
1010
in
1111
{
@@ -66,8 +66,8 @@ in
6666

6767
socket = mkOption {
6868
description = "Hypervisor control socket path";
69-
default = "${hostName}.sock";
70-
defaultText = literalExpression ''"''${hostName}.sock"'';
69+
default = "${fqdnOrHostName}.sock";
70+
defaultText = literalExpression ''"''${fqdnOrHostName}.sock"'';
7171
type = with types; nullOr str;
7272
};
7373

@@ -349,7 +349,7 @@ in
349349
type = nullOr str;
350350
default =
351351
if config.proto == "virtiofs"
352-
then "${hostName}-virtiofs-${config.tag}.sock"
352+
then "${fqdnOrHostName}-virtiofs-${config.tag}.sock"
353353
else null;
354354
description = "Socket for communication with virtiofs daemon";
355355
};
@@ -491,7 +491,7 @@ in
491491

492492
graphics.socket = mkOption {
493493
type = types.str;
494-
default = "${hostName}-gpu.sock";
494+
default = "${fqdnOrHostName}-gpu.sock";
495495
description = ''
496496
Path of vhost-user socket
497497
'';

nixos-modules/microvm/ssh-deploy.nix

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{ config, lib, pkgs, ... }:
22

33
let
4-
hostName = config.networking.hostName or "$HOSTNAME";
4+
fqdnOrHostName = config.networking.fqdnOrHostName or "$fqdnOrHostName";
55
inherit (config.system.build) toplevel;
66
inherit (config.microvm) declaredRunner;
77
inherit (config) nix;
@@ -42,8 +42,8 @@ in
4242
`microvm.nixosModules.host`:
4343
4444
```
45-
nix run .#nixosConfigurations.${hostName}.config.microvm.deploy.installOnHost [email protected]
46-
ssh [email protected] systemctl restart microvm@${hostName}
45+
nix run .#nixosConfigurations.${fqdnOrHostName}.config.microvm.deploy.installOnHost [email protected]
46+
ssh [email protected] systemctl restart microvm@${fqdnOrHostName}
4747
```
4848
4949
- Evaluate this MicroVM to a derivation
@@ -52,7 +52,7 @@ in
5252
- Install/update the MicroVM on the target host
5353
5454
Can be followed by either:
55-
- `systemctl restart microvm@${hostName}.service` on the
55+
- `systemctl restart microvm@${fqdnOrHostName}.service` on the
5656
target host, or
5757
- `config.microvm.deploy.sshSwitch`
5858
'';
@@ -69,8 +69,8 @@ in
6969
`microvm.deploy.installOnHost` like this:
7070
7171
```
72-
nix run .#nixosConfigurations.${hostName}.config.microvm.deploy.installOnHost [email protected]
73-
nix run .#nixosConfigurations.${hostName}.config.microvm.deploy.sshSwitch [email protected] switch
72+
nix run .#nixosConfigurations.${fqdnOrHostName}.config.microvm.deploy.installOnHost [email protected]
73+
nix run .#nixosConfigurations.${fqdnOrHostName}.config.microvm.deploy.sshSwitch [email protected] switch
7474
```
7575
'';
7676
type = with lib.types; nullOr package;
@@ -84,7 +84,7 @@ in
8484
MicroVM.
8585
8686
```
87-
nix run .#nixosConfigurations.${hostName}.config.microvm.deploy.rebuild [email protected] [email protected] switch
87+
nix run .#nixosConfigurations.${fqdnOrHostName}.config.microvm.deploy.rebuild [email protected] [email protected] switch
8888
```
8989
'';
9090
type = with lib.types; nullOr package;
@@ -126,15 +126,15 @@ in
126126
ssh "$HOST" -- $SSH_CMD -e <<__SSH__
127127
set -eou pipefail
128128
129-
echo "Initializing MicroVM ${hostName} if necessary"
129+
echo "Initializing MicroVM ${fqdnOrHostName} if necessary"
130130
mkdir -p /nix/var/nix/gcroots/microvm
131-
mkdir -p /var/lib/microvms/${hostName}
132-
cd /var/lib/microvms/${hostName}
131+
mkdir -p /var/lib/microvms/${fqdnOrHostName}
132+
cd /var/lib/microvms/${fqdnOrHostName}
133133
chown microvm:kvm .
134134
chmod 0755 .
135-
ln -sfT \$PWD/current /nix/var/nix/gcroots/microvm/${hostName}
136-
ln -sfT \$PWD/booted /nix/var/nix/gcroots/microvm/booted-${hostName}
137-
ln -sfT \$PWD/old /nix/var/nix/gcroots/microvm/old-${hostName}
135+
ln -sfT \$PWD/current /nix/var/nix/gcroots/microvm/${fqdnOrHostName}
136+
ln -sfT \$PWD/booted /nix/var/nix/gcroots/microvm/booted-${fqdnOrHostName}
137+
ln -sfT \$PWD/old /nix/var/nix/gcroots/microvm/old-${fqdnOrHostName}
138138
139139
echo "Building toplevel ${paths.toplevelOut}"
140140
nix build -L --accept-flake-config --no-link \
@@ -143,12 +143,12 @@ in
143143
closureInfoDrv
144144
toplevelDrv
145145
]}
146-
echo "Building MicroVM runner for ${hostName}"
146+
echo "Building MicroVM runner for ${fqdnOrHostName}"
147147
nix build -L --accept-flake-config -o new \
148148
"${paths.runnerDrv}^out"
149149
150150
if [[ $(realpath ./current) != $(realpath ./new) ]]; then
151-
echo "Installing MicroVM ${hostName}"
151+
echo "Installing MicroVM ${fqdnOrHostName}"
152152
rm -f old
153153
if [ -e current ]; then
154154
mv current old
@@ -164,7 +164,7 @@ in
164164
echo "Success."
165165
fi
166166
else
167-
echo "MicroVM ${hostName} is already installed"
167+
echo "MicroVM ${fqdnOrHostName} is already installed"
168168
fi
169169
__SSH__
170170
'';
@@ -195,9 +195,9 @@ in
195195
ssh "$TARGET" $SSH_CMD -e <<__SSH__
196196
set -eou pipefail
197197
198-
hostname=\$(cat /etc/hostname)
199-
if [[ "\$hostname" != "${hostName}" ]]; then
200-
echo "Attempting to deploy NixOS ${hostName} on host \$hostname"
198+
fqdnOrHostName=\$(cat /etc/fqdn)
199+
if [[ "\$fqdnOrHostName" != "${fqdnOrHostName}" ]]; then
200+
echo "Attempting to deploy NixOS ${fqdnOrHostName} on host \$fqdnOrHostName"
201201
exit 1
202202
fi
203203
@@ -233,7 +233,7 @@ in
233233
${lib.getExe installOnHost} "$HOST" $OPTS
234234
${if canSwitchViaSsh
235235
then ''${lib.getExe sshSwitch} "$TARGET" $OPTS''
236-
else ''ssh "$HOST" -- systemctl restart "microvm@${hostName}.service"''
236+
else ''ssh "$HOST" -- systemctl restart "microvm@${fqdnOrHostName}.service"''
237237
}
238238
'';
239239
};

nixos-modules/microvm/virtiofsd/default.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ in
6363
);
6464

6565
supervisordConfigFile =
66-
pkgs.writeText "${config.networking.hostName}-virtiofsd-supervisord.conf" (
66+
pkgs.writeText "${config.networking.fqdnOrHostName}-virtiofsd-supervisord.conf" (
6767
lib.generators.toINI {} supervisordConfig
6868
);
6969

pkgs/build-microvm.nix

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ writeShellScriptBin "build-microvm" ''
5454
in self.lib.buildRunner {
5555
inherit pkgs;
5656
microvmConfig = {
57-
inherit (extended.config.networking) hostName;
57+
inherit (extended.config.networking) fqdnOrHostName;
5858
} // extended.config.microvm;
5959
inherit (extended.config.system.build) toplevel;
6060
}"

0 commit comments

Comments
 (0)