# SPDX-FileCopyrightText: 2020 Luke Granger-Brown # # SPDX-License-Identifier: Apache-2.0 { depot, lib, ... }: { imports = [ ../lib/bvm.nix ../../../nix/pkgs/rundeck-bin/module.nix ]; # Networking! networking = { hostName = "bvm-nixosmgmt"; hostId = "49b0fbc7"; interfaces.enp1s0 = { ipv4.addresses = [{ address = "10.100.0.200"; prefixLength = 23; }]; }; }; my.ip.tailscale = "100.65.226.19"; services.rundeck.enable = true; environment.etc."rundeck.nodes.yaml" = let content = builtins.mapAttrs (name: value: { nodename = name; hostname = value.config.networking.fqdn; tags = lib.concatStringsSep "," value.config.my.rundeck.tags; username = "deployer"; osFamily = "unix"; osName = "Linux"; }) (lib.filterAttrs (name: value: value.config.my.rundeck.expectedOnline) depot.ops.nixos.systemConfigs ); in { text = builtins.toJSON content; }; system.stateVersion = "21.05"; }