@cryptotaxi247 / infra-1 / commits / dd2f6cb0

hydra-provisioner: remove

This has not been used in years and has most certainly bitrotted with no active maintenance/testing.

Pierre Bourdon committed Feb 20, 2024 at 23:16 UTC dd2f6cb09e379c269ebd9351c649fb8d6619d299
5 files changed -174
delft/provisioner.nix deleted
-58
@@ -1,58 +0,0 @@
1 -{ config, lib, pkgs, ... }:
2 -
3 -let
4 -
5 - hydra-provisioner = import ../../hydra-provisioner { inherit pkgs; inherit nixops; };
6 - nixops = pkgs.nixops;
7 -
8 -in
9 -
10 -{
11 -
12 - users.extraUsers.hydra-provisioner =
13 - { description = "Hydra provisioner";
14 - group = "hydra";
15 - home = "/var/lib/hydra-provisioner";
16 - useDefaultShell = true;
17 - createHome = true;
18 - openssh.authorizedKeys.keys = [ (import ../ssh-keys.nix).eelco ];
19 - };
20 -
21 - system.activationScripts.hydra-provisioner = lib.stringAfter [ "users" ]
22 - ''
23 - mkdir -m 0755 -p /var/lib/hydra/provisioner
24 - mkdir -m 0700 -p /var/lib/hydra-provisioner
25 - chown hydra-provisioner.hydra /var/lib/hydra-provisioner /var/lib/hydra/provisioner
26 - '';
27 -
28 - environment.systemPackages =
29 - [ hydra-provisioner
30 - nixops
31 - pkgs.awscli
32 - ];
33 -
34 - # FIXME: restrict PostgreSQL access.
35 - services.postgresql.identMap =
36 - ''
37 - hydra-users hydra-provisioner hydra
38 - '';
39 -
40 - services.hydra-dev.buildMachinesFiles =
41 - [ "/etc/nix/machines" "/var/lib/hydra/provisioner/machines" ];
42 -
43 - systemd.services.hydra-provisioner =
44 - { script =
45 - ''
46 - source /etc/profile
47 - while true; do
48 - timeout 3600 ${hydra-provisioner}/bin/hydra-provisioner /var/lib/hydra-provisioner/nixos-org-configurations/hydra-provisioner/conf.nix
49 - sleep 300
50 - done
51 - '';
52 - serviceConfig.User = "hydra-provisioner";
53 - serviceConfig.Restart = "always";
54 - serviceConfig.RestartSec = 60;
55 - };
56 -
57 - nix.nixPath = [ "${hydra-provisioner}/share/nix" ];
58 -}
hydra-provisioner/conf.nix deleted
-16
@@ -1,16 +0,0 @@
1 -{
2 -
3 - tag = "hydra-provisioned-nixos-org";
4 -
5 - systemTypes.x86_64-linux = {
6 - nixopsExpr = builtins.toPath ./nixops.nix;
7 - nixPath = [ "nixpkgs=channel:nixos-17.09-small" ];
8 - minMachines = 0;
9 - maxMachines = 12;
10 - ignoredRunnables = 250;
11 - runnablesPerMachine = 50;
12 - maxJobs = 4;
13 - sshKey = "/var/lib/hydra/queue-runner/.ssh/id_buildfarm_rsa";
14 - };
15 -
16 -}
hydra-provisioner/nixops.nix deleted
-58
@@ -1,58 +0,0 @@
1 -{ type, tag, ... }:
2 -
3 -let
4 - region = "us-east-1";
5 - accessKeyId = "hydra-provisioner";
6 -in
7 -
8 -{
9 -
10 - resources.ec2KeyPairs.default =
11 - { inherit region accessKeyId;
12 - };
13 -
14 - machine =
15 - { config, lib, pkgs, resources, ... }:
16 - {
17 - deployment.targetEnv = "ec2";
18 - deployment.ec2.accessKeyId = accessKeyId;
19 - deployment.ec2.region = region;
20 - deployment.ec2.instanceType = "m4.xlarge";
21 - deployment.ec2.spotInstancePrice = 10;
22 - deployment.ec2.spotInstanceTimeout = 5 * 60;
23 - deployment.ec2.keyPair = resources.ec2KeyPairs.default;
24 - deployment.ec2.subnetId = "subnet-1eb22868";
25 - deployment.ec2.associatePublicIpAddress = true;
26 - deployment.ec2.securityGroupIds = [ "sg-b2ee60ca" ];
27 - deployment.ec2.tags.Name = "Hydra Builder";
28 - deployment.ec2.ebsInitialRootDiskSize = 100;
29 - deployment.owners = [ "eelco.dolstra@logicblox.com" ];
30 -
31 - imports =
32 - [ <nixpkgs/nixos/modules/profiles/minimal.nix>
33 - <hydra-provisioner/auto-shutdown.nix>
34 - #../delft/diffoscope.nix
35 - ];
36 -
37 - users.extraUsers.root.openssh.authorizedKeys.keys =
38 - [ ''command="nix-store --serve --write" ${(import ../ssh-keys.nix).hydra-queue-runner}''
39 - ];
40 -
41 - nix.package = pkgs.nixUnstable;
42 -
43 - nix.buildCores = 0;
44 -
45 - nix.useSandbox = true;
46 -
47 - nix.gc.automatic = true;
48 - nix.gc.dates = "*:0/30";
49 - nix.gc.options = ''--max-freed "$((15 * 1024**3 - 1024 * $(df -P -k /nix/store | tail -n 1 | ${pkgs.gawk}/bin/awk '{ print $4 }')))"'';
50 -
51 - # Use the cache.nixos.org S3 bucket directly, rather than going
52 - # through Cloudfront, since same-region EC2<->S3 traffic is
53 - # free. Also it avoids caching of negative lookups by
54 - # Cloudfront.
55 - nix.binaryCaches = lib.mkForce [ https://nix-cache.s3.amazonaws.com/ ];
56 - };
57 -
58 -}
hydra-provisioner/policy.json deleted
-40
@@ -1,40 +0,0 @@
1 -{
2 - "Version": "2012-10-17",
3 - "Statement": [
4 - {
5 - "Sid": "NoResource",
6 - "Effect": "Allow",
7 - "Action": [
8 - "ec2:DescribeKeyPairs",
9 - "ec2:ImportKeyPair",
10 - "ec2:DeleteKeyPair",
11 - "ec2:DescribeInstances",
12 - "ec2:DescribeSpotInstanceRequests",
13 - "ec2:DescribeImages",
14 - "ec2:DescribeInstanceStatus",
15 - "ec2:RequestSpotInstances",
16 - "ec2:CancelSpotInstanceRequests",
17 - "ec2:DescribeIamInstanceProfileAssociations"
18 - ],
19 - "Resource": [
20 - "*"
21 - ],
22 - "Condition": {
23 - "StringEquals": {
24 - "ec2:Region": "us-east-1"
25 - }
26 - }
27 - },
28 - {
29 - "Sid": "EC2Resource",
30 - "Effect": "Allow",
31 - "Action": [
32 - "ec2:CreateTags",
33 - "ec2:TerminateInstances"
34 - ],
35 - "Resource": [
36 - "arn:aws:ec2:us-east-1:*"
37 - ]
38 - }
39 - ]
40 -}
ssh-keys.nix
-2
@@ -2,8 +2,6 @@ rec {
2
3 eelco = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAnI5L6oCgFyvEesL04LnbnH1TBhegq1Yery6TNlIRAA edolstra@gmail.com";
4
5 - provisioner = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKDSfHu0xHu2qtWjmCC92rTMZfwZNKXrsJvPCLSoWtzR eelco.dolstra@deploy";
6 -
5 hydra-queue-runner = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCyM48VC5fpjJssLI8uolFscP4/iEoMHfkPoT9R3iE3OEjadmwa1XCAiXUoa7HSshw79SgPKF2KbGBPEVCascdAcErZKGHeHUzxj7v3IsNjObouUOBbJfpN4DR7RQT28PZRsh3TvTWjWnA9vIrSY/BvAK1uezFRuObvatqAPMrw4c0DK+JuGuCNkKDGHLXNSxYBc5Pmr1oSU7/BDiHVjjyLIsAMIc20+q8SjWswKqL1mY193mN7FpUMBtZrd0Za9fMFRII9AofEIDTOayvOZM6+/1dwRWZXM6jhE6kaPPF++yromHvDPBnd6FfwODKLvSF9BkA3pO5CqrD8zs7ETmrV hydra-queue-runner@chef";
6
7 graham = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILBPW2syaEH82DrqIl8/7/ypTgyfK8CRRTBEA4AmMB1l grahamc@nixos";