aboutsummaryrefslogtreecommitdiff
path: root/app/drone-ci/build
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2022-08-24 15:42:47 +0200
committerAlex Auvolat <alex@adnab.me>2022-08-24 15:42:47 +0200
commit2e8923b383eb06c53261eee8e5c442b857fb67e4 (patch)
tree0ad148f75f7b54dfed2dbac8f43f6df9badc502a /app/drone-ci/build
parent9848f3090f77363a2fda0f9fa673ebcf1fb8228c (diff)
downloadnixcfg-2e8923b383eb06c53261eee8e5c442b857fb67e4.tar.gz
nixcfg-2e8923b383eb06c53261eee8e5c442b857fb67e4.zip
Move app files into cluster subdirectories; add prod garage
Diffstat (limited to 'app/drone-ci/build')
-rw-r--r--app/drone-ci/build/.gitignore2
-rw-r--r--app/drone-ci/build/Makefile8
-rw-r--r--app/drone-ci/build/build-qcow2.nix24
-rw-r--r--app/drone-ci/build/machine-config.nix89
4 files changed, 0 insertions, 123 deletions
diff --git a/app/drone-ci/build/.gitignore b/app/drone-ci/build/.gitignore
deleted file mode 100644
index ef92077..0000000
--- a/app/drone-ci/build/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-result/
-*.qcow2.zst
diff --git a/app/drone-ci/build/Makefile b/app/drone-ci/build/Makefile
deleted file mode 100644
index 2814a0d..0000000
--- a/app/drone-ci/build/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-.PHONY: all
-
-all:
- nix-build '<nixpkgs/nixos>' -A config.system.build.qcow2 --arg configuration "{ imports = [ ./build-qcow2.nix ]; }" --show-trace
- zstd -7 -i result/nixos.qcow2 -o drone-runner.qcow2.zst -f
- RESULTPATH=`readlink result`; rm result; nix-store --delete $$RESULTPATH
- rclone copy drone-runner.qcow2.zst grgdf:alex/ -vv
-
diff --git a/app/drone-ci/build/build-qcow2.nix b/app/drone-ci/build/build-qcow2.nix
deleted file mode 100644
index 3ad45f4..0000000
--- a/app/drone-ci/build/build-qcow2.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-{
- imports =
- [
- <nixpkgs/nixos/modules/installer/cd-dvd/channel.nix>
- ./machine-config.nix
- ];
-
- system.build.qcow2 = import <nixpkgs/nixos/lib/make-disk-image.nix> {
- inherit lib config;
- pkgs = import <nixpkgs> { inherit (pkgs) system; }; # ensure we use the regular qemu-kvm package
- diskSize = 32768;
- format = "qcow2";
- configFile = pkgs.writeText "configuration.nix"
- ''
- {
- imports = [ <./machine-config.nix> ];
- }
- '';
- };
-}
diff --git a/app/drone-ci/build/machine-config.nix b/app/drone-ci/build/machine-config.nix
deleted file mode 100644
index 73d3f09..0000000
--- a/app/drone-ci/build/machine-config.nix
+++ /dev/null
@@ -1,89 +0,0 @@
-{ pkgs, lib, ... }:
-
-with lib;
-
-{
- imports = [
- <nixpkgs/nixos/modules/profiles/qemu-guest.nix>
- ];
-
- config = {
- fileSystems."/" = {
- device = "/dev/disk/by-label/nixos";
- fsType = "ext4";
- autoResize = true;
- };
-
- fileSystems."/secrets" = {
- device = "/dev/disk/by-label/QEMU\\x20VVFAT";
- fsType = "vfat";
- };
-
- boot.growPartition = true;
- boot.kernelParams = [ "console=ttyS0" ];
- boot.loader.grub.device = "/dev/vda";
- boot.loader.timeout = 0;
-
- environment.systemPackages = with pkgs; [
- iotop
- jnettop
- htop
- ];
-
- users.extraUsers.root.openssh.authorizedKeys.keys = [
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJpaBZdYxHqMxhv2RExAOa7nkKhPBOHupMP3mYaZ73w9 lx@lindy"
- ];
- services.openssh.enable = true;
- services.openssh.permitRootLogin = "prohibit-password";
- networking.firewall = {
- enable = true;
- allowedTCPPorts = [ 22 ];
- };
-
- virtualisation.docker.enable = true;
- virtualisation.oci-containers.backend = "docker";
- systemd.services.drone_nix_setup = {
- enable = true;
- path = [
- pkgs.docker
- ];
- script = ''
- docker run --rm -v /var/lib/drone/nix:/mnt nixpkgs/nix:nixos-21.05 cp -r /nix/{store,var} /mnt/
- '';
- wantedBy = [ "multi-user.target" ];
- };
- virtualisation.oci-containers.containers = {
- drone_runner = {
- image = "drone/drone-runner-docker:1.4.0";
- volumes = [
- "/var/lib/drone/nix:/nix"
- "/var/run/docker.sock:/var/run/docker.sock"
- ];
- environment = {
- DRONE_RPC_PROTO = "https";
- DRONE_RPC_HOST = "drone.deuxfleurs.fr";
- DRONE_RUNNER_CAPACITY = "1";
- DRONE_DEBUG = "true";
- DRONE_LOGS_TRACE = "true";
- DRONE_RPC_DUMP_HTTP = "true";
- DRONE_RPC_DUMP_HTTP_BODY = "true";
- DRONE_RUNNER_LABELS = "nix:1";
- };
- environmentFiles = [
- "/secrets/secret_env"
- ];
- };
- drone_gc = {
- image = "drone/gc:latest";
- volumes = [
- "/var/run/docker.sock:/var/run/docker.sock"
- ];
- environment = {
- GC_DEBUG = "true";
- GC_CACHE = "10gb";
- GC_INTERVAL = "10m";
- };
- };
- };
- };
-}