2024-05-28 23:23:10 +00:00
|
|
|
# SPDX-FileCopyrightText: 2024 Auxolotl Infrastructure Contributors
|
|
|
|
#
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-only
|
|
|
|
|
2024-05-04 21:20:45 +00:00
|
|
|
{
|
|
|
|
description = "Auxolotl infrastructure.";
|
|
|
|
|
|
|
|
inputs = {
|
2024-05-07 03:36:54 +00:00
|
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
|
|
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
|
2024-05-04 21:20:45 +00:00
|
|
|
snowfall-lib = {
|
|
|
|
url = "github:snowfallorg/lib/dev";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
|
|
|
|
2024-07-02 22:46:30 +00:00
|
|
|
agenix.url = "github:ryantm/agenix";
|
|
|
|
|
|
|
|
agenix-rekey = {
|
|
|
|
url = "github:oddlama/agenix-rekey";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
|
|
|
|
2024-05-04 21:20:45 +00:00
|
|
|
auxolotl-website = {
|
2024-07-02 21:59:38 +00:00
|
|
|
url = "git+https://git.auxolotl.org/auxolotl/website";
|
2024-05-04 21:20:45 +00:00
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2024-05-07 03:36:54 +00:00
|
|
|
|
2024-07-02 22:46:30 +00:00
|
|
|
buildbot-nix.url = "github:nix-community/buildbot-nix";
|
|
|
|
# Do not override nixpkgs in buildbot-nix (see https://github.com/nix-community/buildbot-nix)
|
|
|
|
|
2024-05-07 03:36:54 +00:00
|
|
|
deploy-rs = {
|
|
|
|
url = "github:serokell/deploy-rs";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
|
|
};
|
2024-05-04 21:20:45 +00:00
|
|
|
};
|
|
|
|
|
2024-05-07 03:36:54 +00:00
|
|
|
outputs = inputs: let
|
|
|
|
lib = inputs.snowfall-lib.mkLib {
|
2024-05-04 21:20:45 +00:00
|
|
|
inherit inputs;
|
|
|
|
|
|
|
|
src = ./.;
|
|
|
|
|
2024-05-07 03:36:54 +00:00
|
|
|
snowfall = {
|
|
|
|
namespace = "auxolotl";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
in
|
|
|
|
lib.mkFlake {
|
2024-07-02 22:46:30 +00:00
|
|
|
overlays = [
|
|
|
|
inputs.auxolotl-website.overlays.default
|
|
|
|
inputs.agenix-rekey.overlays.default
|
|
|
|
];
|
|
|
|
|
|
|
|
systems.modules.nixos = [
|
|
|
|
inputs.agenix.nixosModules.default
|
|
|
|
inputs.agenix-rekey.nixosModules.default
|
2024-07-02 22:46:30 +00:00
|
|
|
inputs.buildbot-nix.nixosModules.buildbot-master
|
|
|
|
inputs.buildbot-nix.nixosModules.buildbot-worker
|
2024-05-04 21:20:45 +00:00
|
|
|
];
|
2024-05-07 03:36:54 +00:00
|
|
|
|
|
|
|
deploy = lib.mkDeploy {
|
|
|
|
inherit (inputs) self;
|
2024-05-21 20:38:54 +00:00
|
|
|
overrides = {
|
|
|
|
axol.hostname = "137.184.177.239";
|
|
|
|
baxter.hostname = "209.38.149.197";
|
|
|
|
};
|
2024-05-07 03:36:54 +00:00
|
|
|
};
|
|
|
|
|
2024-07-02 22:46:30 +00:00
|
|
|
agenix-rekey = inputs.agenix-rekey.configure {
|
|
|
|
userFlake = inputs.self;
|
|
|
|
nodes = inputs.self.nixosConfigurations;
|
|
|
|
};
|
|
|
|
|
2024-05-07 03:36:54 +00:00
|
|
|
checks =
|
|
|
|
builtins.mapAttrs
|
|
|
|
(system: deploy-lib: deploy-lib.deployChecks inputs.self.deploy)
|
|
|
|
inputs.deploy-rs.lib;
|
2024-05-04 21:20:45 +00:00
|
|
|
};
|
|
|
|
}
|