diff options
Diffstat (limited to 'ansible')
-rw-r--r-- | ansible/hosts | 12 | ||||
-rw-r--r-- | ansible/roles/gsm-tester-bts/files/Release.key | 16 | ||||
-rw-r--r-- | ansible/roles/osmocom-jenkins-slave/README.md | 1 | ||||
-rw-r--r-- | ansible/roles/osmocom-jenkins-slave/defaults/main.yml | 3 | ||||
-rw-r--r-- | ansible/roles/osmocom-jenkins-slave/tasks/main.yml | 20 | ||||
-rw-r--r-- | ansible/roles/podman/files/mknod-fuse.service | 9 | ||||
-rw-r--r-- | ansible/roles/podman/files/storage.conf | 5 | ||||
-rw-r--r-- | ansible/roles/podman/tasks/main.yml | 21 | ||||
-rw-r--r-- | ansible/setup-jenkins-slave.yml | 15 | ||||
-rw-r--r-- | ansible/util/known_hosts | 8 |
10 files changed, 87 insertions, 23 deletions
diff --git a/ansible/hosts b/ansible/hosts index 51e26b9..f68ea52 100644 --- a/ansible/hosts +++ b/ansible/hosts @@ -4,29 +4,25 @@ osmo-gsm-tester-prod ansible_host=10.9.25.107 [coverity_slaves] build2-deb11build-ansible ansible_host=2a01:4f8:10b:2ad9::1:13 -build3-deb11build-ansible ansible_host=2a01:4f8:212:3762::1:3 build4-deb12build-ansible ansible_host=2a01:4f8:121:200a::1:3 [jenkins_slaves] build2-deb10build-ansible ansible_host=2a01:4f8:10b:2ad9::1:10 osmocom_jenkins_slave_fstrim=True docker_max_image_space="80 GB" build2-deb11build-ansible ansible_host=2a01:4f8:10b:2ad9::1:13 osmocom_jenkins_slave_fstrim=True docker_max_image_space="80 GB" -build3-deb11build-ansible ansible_host=2a01:4f8:212:3762::1:3 osmocom_jenkins_slave_fstrim=True docker_max_image_space="80 GB" build4-deb12build-ansible ansible_host=2a01:4f8:121:200a::1:3 osmocom_jenkins_slave_fstrim=True docker_max_image_space="80 GB" host2-deb11build-ansible ansible_host=2a01:4f8:120:8470::1:4 osmocom_jenkins_slave_fstrim=True docker_max_image_space="80 GB" -rpi4-raspbian11build-ansible-1 ansible_host=10.9.25.50 docker_max_image_space="20 GB" -rpi4-raspbian11build-ansible-2 ansible_host=10.9.25.60 docker_max_image_space="20 GB" -rpi4-raspbian11build-ansible-3 ansible_host=10.9.25.70 docker_max_image_space="20 GB" -lx2-raspbian11build-ansible ansible_host=10.34.2.153 docker_max_image_space="20 GB" +rpi4-raspbian12build-ansible-1 ansible_host=10.9.25.50 docker_max_image_space="20 GB" +rpi4-raspbian12build-ansible-2 ansible_host=10.9.25.60 docker_max_image_space="20 GB" +rpi4-raspbian12build-ansible-3 ansible_host=10.9.25.70 docker_max_image_space="20 GB" +lx2-raspbian11build-ansible ansible_host=10.9.25.28 docker_max_image_space="20 GB" jenkins_tmpfs=True [simtester] simtest ansible_host=10.9.25.80 [obs_workers] -build3-obsworker1 ansible_host=2a01:4f8:212:3762::1:2 obs_worker_instances=8 obs_worker_jobs=8 build4-obsworker1 ansible_host=2a01:4f8:121:200a::1:2 obs_worker_instances=8 obs_worker_jobs=8 lx2-1-obs-aarch64-1 ansible_host=2a02:8106:13:1e34:4e9:e7ff:fe97:fe92 obs_worker_instances=1 obs_worker_jobs=4 # Need to have kvm inside lxc, see OS#5365 [qemu] -build3-deb11build-ansible ansible_host=2a01:4f8:212:3762::1:3 build4-deb12build-ansible ansible_host=2a01:4f8:121:200a::1:3 diff --git a/ansible/roles/gsm-tester-bts/files/Release.key b/ansible/roles/gsm-tester-bts/files/Release.key index ecca084..b4c019a 100644 --- a/ansible/roles/gsm-tester-bts/files/Release.key +++ b/ansible/roles/gsm-tester-bts/files/Release.key @@ -8,13 +8,13 @@ e93fLa2Cu8vhFBcVn6CuHeEhsmuMf6NLbQRNfNNCEEUYaZn7beMYtpZ7t1djsKx5 1xGm50OzI22FLu8lELQ9d7qMVGRG3WHYawX9BDteRybiyqxfwUHm1haWazRJtlGt UWyzvwAb80BK1J2Nu5fbAa3w5CoEPAbUuCyrABEBAAG0JW9zbW9jb20gT0JTIFBy b2plY3QgPG9zbW9jb21Ab3Ntb2NvbT6JAVQEEwEIAD4WIQRrKp83ktFetw1Oao+G -pzC2U3JZcwUCYrMV4wIbAwUJBB6yjwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAK -CRCGpzC2U3JZc4FRCACQQkKIrnvQ7n2u7GSmyVZa3I+oLoFXSGqaGyey5TW/nrMm -vFDKU3qliHiuNSmUY35SnAhXUsvqOYppxVRoO1MLrqUvzMOnIWqkJpf8mtjGUnsW -jyVeto7Rsjs75y2i1Hk+e7ljb/V65J3NlfrfEYWbqR9AKd53ReNXTdrQ0J05A38N -GdI4Ld/2lNISAwaBmGhqdeKsLHpQw/JERU1TApVJR1whFiIwDF1rOCg9GPnNKIk7 -yRZdK267XzztrainX/cbPILyzUZEDhYs6wQuyACyQ1YUxZIxrwVfk7PMNay8CrLH -z42B73Ne5IAj8+op/3iJafFONLm7YXiDUFN+QDYAiQEzBBMBCAAdFiEExoiYhHND +pzC2U3JZcwUCZrNL8wIbAwUJCB7onwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAK +CRCGpzC2U3JZc11RB/9oogcqTF30pPEwjjGvXF+WMiRFHl8aVvQIk9m+2KUcjlVk +0q8+/guOg7KcVejPxyn2AQbTByWWgpH1o3BoDKWnvypURAV2uGOtCo6mUQop5yK0 +d50j9hwIXSwJWoD2r5OY+Gbs4dBzMGkKbnCED1n8324b8EN6m96eoL570Uq9vy4G +gIp+QCpePu8AMdoCLR2w3J+TA4gLdDeH2cr7TgmwlDCp8e6R8FVmRt3SvunPmFz3 +FHDicv2f9ZoHXVLQ20DgWUyI1xOPlzBNJowgK9YnLPdIidE9i+EbvC1YA+6O/WMa +kSUEyJLZS5mv2+T6ptgnCIgxrIoTu63O4Rsf5zV+iQEzBBMBCAAdFiEExoiYhHND S7aVYlnqa51NyAUyjdsFAmKzE1UACgkQa51NyAUyjdvuZgf+OXmr//i7u7Gg7eWB 7e0qUsyCId9lXS8J437x3K6ciJfD7/6RSy8TFW5Nglm/uSkbyq582I8t+SoOirMD E6cg9U/5+h5s46bAf+Kd2XS/6tLGeNLM18i4el8CP06NpFzDrsKu76uYFpyRiiHD @@ -22,5 +22,5 @@ otBdtgxeLJ83LugGfZslF+/5cigJkAJMhAdVvGO8h85R6fba8ZSOKtMKkaQRfi76 nhyOrJPlLuS+DLEnHwdkOFgtKnxHdjM97K+Tx0gisb6uwaWroXfSLnhP8RTLLZZy Z+noU1Hw3c+mn4c/NYbcC/uwHYHKRzuf9gHnQ3dGgv0Z5sbeLRVo92hjGj7Ftlyd 4hmKBg== -=HxK4 +=5Cwc -----END PGP PUBLIC KEY BLOCK----- diff --git a/ansible/roles/osmocom-jenkins-slave/README.md b/ansible/roles/osmocom-jenkins-slave/README.md index 81f68b3..fc62472 100644 --- a/ansible/roles/osmocom-jenkins-slave/README.md +++ b/ansible/roles/osmocom-jenkins-slave/README.md @@ -6,3 +6,4 @@ Support the following variables: * `generic_slave`: (true) contains tasks used by the most osmocom jenkins slaves * `osmocom_jenkins_slave_fstrim`: (false) calls fstrim periodical * `ttcn3_slave`: (true) install titan ttcn3 compiler and prepares the docker-playground +* `jenkins_tmpfs`: (false) put jenkins workspaces and ccache dirs into tmpfs diff --git a/ansible/roles/osmocom-jenkins-slave/defaults/main.yml b/ansible/roles/osmocom-jenkins-slave/defaults/main.yml index a4ce8ac..fc6f9fa 100644 --- a/ansible/roles/osmocom-jenkins-slave/defaults/main.yml +++ b/ansible/roles/osmocom-jenkins-slave/defaults/main.yml @@ -15,3 +15,6 @@ ttcn3_slave: true # call fstrim peridically osmocom_jenkins_slave_fstrim: false + +# put jenkins workspaces and ccache dirs into tmpfs +jenkins_tmpfs: false diff --git a/ansible/roles/osmocom-jenkins-slave/tasks/main.yml b/ansible/roles/osmocom-jenkins-slave/tasks/main.yml index 1868d97..46da076 100644 --- a/ansible/roles/osmocom-jenkins-slave/tasks/main.yml +++ b/ansible/roles/osmocom-jenkins-slave/tasks/main.yml @@ -58,3 +58,23 @@ minute: 0 job: "fstrim / >/dev/null 2>/dev/null || true" when: osmocom_jenkins_slave_fstrim + +- name: add tmpfs for /home/osmocom-build/jenkins + when: jenkins_tmpfs + ansible.posix.mount: + boot: true + path: /home/osmocom-build/jenkins + src: tmpfs + fstype: tmpfs + state: mounted + opts: "uid=1000,gid=1000" + +- name: add tmpfs for /home/osmocom-build/ccache + when: jenkins_tmpfs + ansible.posix.mount: + boot: true + path: /home/osmocom-build/ccache + src: tmpfs + fstype: tmpfs + state: mounted + opts: "uid=1000,gid=1000" diff --git a/ansible/roles/podman/files/mknod-fuse.service b/ansible/roles/podman/files/mknod-fuse.service new file mode 100644 index 0000000..b796f4f --- /dev/null +++ b/ansible/roles/podman/files/mknod-fuse.service @@ -0,0 +1,9 @@ +[Unit] +Description=Create /dev/fuse (OS#6524) + +[Service] +ExecStart=sh -c 'test -e /dev/fuse || mknod -m 666 /dev/fuse c 10 229' +RemainAfterExit=true + +[Install] +WantedBy=multi-user.target diff --git a/ansible/roles/podman/files/storage.conf b/ansible/roles/podman/files/storage.conf new file mode 100644 index 0000000..f212591 --- /dev/null +++ b/ansible/roles/podman/files/storage.conf @@ -0,0 +1,5 @@ +[storage] +driver = "overlay" + +[storage.options] +mount_program = "/usr/bin/fuse-overlayfs" diff --git a/ansible/roles/podman/tasks/main.yml b/ansible/roles/podman/tasks/main.yml index 45a712d..102b37e 100644 --- a/ansible/roles/podman/tasks/main.yml +++ b/ansible/roles/podman/tasks/main.yml @@ -5,5 +5,26 @@ pkg: - podman - buildah + - fuse-overlayfs # Has reasonable recommends needed for dns resolving etc. install_recommends: yes + +- name: install mknod-fuse.service + copy: + src: mknod-fuse.service + dest: /etc/systemd/system/ + mode: 0644 + +- name: enable mknod-fuse.service + systemd_service: + daemon_reload: true + name: mknod-fuse + enabled: true + state: started + +- name: install storage.conf + copy: + src: storage.conf + dest: "/home/{{ jenkins_user }}/.config/containers/" + mode: 0644 + owner: "{{ jenkins_user }}" diff --git a/ansible/setup-jenkins-slave.yml b/ansible/setup-jenkins-slave.yml index 03afe65..2ed3bc7 100644 --- a/ansible/setup-jenkins-slave.yml +++ b/ansible/setup-jenkins-slave.yml @@ -8,11 +8,14 @@ - name: install common utilities apt: name: - - vim - - tmux - - screen - ca-certificates + - etckeeper + - ncdu - rsync + - screen + - tmux + - tree + - vim cache_valid_time: 3600 update_cache: yes roles: @@ -23,6 +26,12 @@ tags: - docker + - name: podman + when: ansible_distribution == 'Debian' and ansible_distribution_version|int >= 11 + jenkins_user: osmocom-build + tags: + - podman + - name: install-poky-sdk when: ansible_architecture == "x86_64" jenkins_user: osmocom-build diff --git a/ansible/util/known_hosts b/ansible/util/known_hosts index 76e2a64..6067e86 100644 --- a/ansible/util/known_hosts +++ b/ansible/util/known_hosts @@ -2,9 +2,9 @@ 2a01:4f8:10b:2ad9::1:13 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEfg7NNBKjVJGoL3oUDrJCccI2D8podsSPKnRn1aTUge 2a01:4f8:212:3762::1:3 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICl7tuOgN64+iYuYCtfCKaUbN9IWzKycpKVRgzsjVCPY 2a01:4f8:120:8470::1:4 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIPKRz2Eg+h6RTREn52n/ip3pzUjRu9pw1XdjWUrvvi/ -10.9.25.50 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPowg8lZeIGJ6LCLA8U4eSHnnPX90FaVgInDuRi5U9Zq -10.9.25.60 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOAK6SQXmifMamE1VHL/1GmPkk6KhplzT20jSOwb8PyZ -10.9.25.70 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILioWTUt6CyZTceSKqy09mtlNUif+ETKTF6whnWuIROx +10.9.25.50 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKn5hZBA8i3kcCuTORaQtLXf/NqpXxhkoldj9i60GOLo +10.9.25.60 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMB+zhsSo20QYPGPNNgqknnbx3g8V+MBksHIF3GuPihu +10.9.25.70 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ4KE0enH9e76eWTy8HLFO/2pzrZaP8G93mtWvfD8//W 2a01:4f8:121:200a::1:3 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGafw2VdeZo4YNvbu8VEBjDrsCFL+ZSbHtvhspNIQ9PR 2a01:4f8:121:200a::1:2 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFyp0daWkfsRHErCVCcP/FZmtiRvFNAsK2A5TlQ6Ja+P -10.34.2.153 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG0rQGxSxWJHwNNT5XdeuMPSYCAXpcDnFDzvyw5+sH3l +10.9.25.28 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG0rQGxSxWJHwNNT5XdeuMPSYCAXpcDnFDzvyw5+sH3l |