hypervisors: init #269
No reviewers
Labels
No labels
Compat/Breaking
Difficulty
Architectural
Difficulty
Easy
Difficulty
Hard
Help Wanted
Kind
Bug
Kind
Documentation
Kind
Enhancement
Kind
Feature
Kind
Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Security
Silenced Alert
Status
Abandoned
Status
Blocked
Status
Need More Info
Status
Postponed
Tracking Issue
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: the-distro/infra#269
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "hypervisors"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This initialize the code for hypervisors, this doesn't contain VM workloads on purpose because they still contain stuff to redo. Another stacked PR will be open to that end.
3 hypervisors gets introduced.
2 in EU (France & Germany), 1 in the US (SEA01 location).
Planned usecases:
@ -0,0 +17,4 @@
};
};
mkAdditionalRoutes = int: dsts: {
this should probably go away
@ -0,0 +31,4 @@
{
options.bagel.baremetal.ovh = {
publicNetwork = mkNetworkOption "public";
additionalRoutes = mkOption {
deadcode
@ -0,0 +72,4 @@
address = cfg.publicNetwork.address;
routes = cfg.publicNetwork.routes;
};
} // mapAttrs' mkAdditionalRoutes cfg.additionalRoutes;
deadcode
@ -0,0 +3,4 @@
inherit (lib) mkOption types hasPrefix mkIf mapAttrs';
cfgParent = config.bagel.baremetal;
cfg = config.bagel.baremetal.ovh;
mkNetworkOption = typology: {
docs would be relevant here
c6aa4414a1
to557e80076d
557e80076d
tob3e8420c23
@ -21,2 +17,2 @@
config = mkIf cfg.enable {
config = mkIf cfg.enable (mkMerge [
(import "${modulesPath}/profiles/qemu-guest.nix" args)
This seems very prone to breaking. Can we just vendor the (probably tiny) parts of the profile that we need? Profiles are kind of a bad and unmaintained abstraction in nixos anyway.
yes we can
@ -0,0 +4,4 @@
bagel.baremetal.num = 14;
networking.hostName = "hv01-lix";
networking.hostId = "4df8f1b4";
networking.domain = "infra.forkos.org";
Can we avoid deploying new stuff as forkos.org?
indeed
this is now fixed as much as reasonably I can for now
@ -0,0 +32,4 @@
};
};
bagel.baremetal.ovh = {
This doesn't exist until the next commit.
thanks
@ -0,0 +5,4 @@
{
config = lib.mkIf (cfg.enable && cfg.az == "sea01" && cfg.hostPlatform == "aarch64") {
nixpkgs.hostPlatform = "aarch64-linux";
networking.domain = "sea01-aarch64.infra.forkos.org";
(Not to fix now, but I'm still very very unconvinced by putting hostPlatform in the hostname...)
To be processed in #270.
b3e8420c23
to69c78c045e
69c78c045e
tod393d8a56e
@ -22,6 +22,11 @@ D("afnix.fr", REG_NONE, DnsProvider(DNS_DNSIMPLE),
AAAA("vpn-gw.wob01.infra", "2a01:584:11::2"),
// FIXME: hv01.sea01-x86_64.infra.forkos.org is kept for legacy reasons.
x86-64
d393d8a56e
tocbf5b148d1
Follow up in #271.