Build fickit packages

This commit is contained in:
nemunaire 2023-07-22 11:39:04 +02:00
parent 0aff2a3151
commit dfccde82cf
3 changed files with 55 additions and 8 deletions

View File

@ -3,6 +3,7 @@
stages:
- deps
- build
- fickit
- sast
- qa
- image
@ -83,3 +84,49 @@ vet:
- apk --no-cache add build-base
- go vet -v -buildvcs=false -tags gitgo ./...
- go vet -v -buildvcs=false ./...
fickit:
stage: fickit
interruptible: true
needs: []
image: alpine:3.18
tags: ['docker']
before_script:
- apk add --no-cache git docker
- wget -O /usr/bin/linuxkit https://github.com/linuxkit/linuxkit/releases/download/v1.0.1/linuxkit-linux-amd64
- chmod +x /usr/bin/linuxkit
- mkdir -p ~/.docker
- echo "{\"auths\":{\"${CI_REGISTRY}\":{\"username\":\"${CI_REGISTRY_USER}\",\"password\":\"${CI_REGISTRY_PASSWORD}\"}}}" > ~/.docker/config.json
script:
- dockerd & sleep 5
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/boot/
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/kexec/
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/mariadb-client/
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/mdadm/
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/rsync/
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/syslinux/
- linuxkit pkg push -force -org "${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}" fickit-pkg/unbound/
- sed -i "s@nemunaire/fic-@${CI_REGISTRY_IMAGE}/master/@;s@nemunaire/@${CI_REGISTRY_IMAGE}/${CI_COMMIT_REF_SLUG}/@" fickit-backend.yml fickit-boot.yml fickit-frontend.yml fickit-prepare.yml fickit-update.yml
- mv "${SYNCHRO_SSH_KEY_FILE}" configs/id_ed25519
- mv "${SYNCHRO_SSH_PUBKEY_FILE}" configs/id_ed25519.pub
- base64 -d "${DM_CRYPT_ENCKEY}" > configs/dm-crypt.key
- mv "${DHPARAMS_FILE}" configs/dhparams-4096.pem
- mv "${SSL_CERT_FILE}" configs/fic.srs.epita.fr/fullchain.pem
- mv "${SSL_PRIVKEY_FILE}" configs/fic.srs.epita.fr/privkey.pem
- linuxkit build -format kernel+squashfs fickit-backend.yml
- linuxkit build -format kernel+squashfs fickit-boot.yml
- linuxkit build -format kernel+squashfs fickit-frontend.yml
- linuxkit build -format kernel+squashfs fickit-prepare.yml
- linuxkit build -format kernel+squashfs fickit-update.yml
artifacts:
paths:
- fickit-backend-squashfs.img
- fickit-boot-kernel
- fickit-boot-squashfs.img
- fickit-frontend-squashfs.img
- fickit-prepare-squashfs.img
- fickit-update-squashfs.img

View File

@ -172,7 +172,7 @@ services:
mkdir:
- /var/lib/fic/backups
- name: fic-admin
image: nemunaire/fic-admin:latest@sha256:e18e137207a2b8f9a79e64541b24701f4c5b9969c0c877e5266c1290b2f3bc0c
image: nemunaire/fic-admin:latest
command: ["/srv/admin", "-4real", "-bind=127.0.0.1:8081", "-baseurl=/admin/", "-localimport=/mnt/fic", "-timestampCheck=/srv/submissions", "-git-import-remote=git@gitlab.cri.epita.fr:ing/majeures/srs/fic/2023/challenges.git"]
env:
- PATH=/usr/sbin:/usr/bin:/sbin:/bin
@ -204,7 +204,7 @@ services:
- /var/lib/fic/submissions
- /var/lib/fic/teams
- name: fic-evdist
image: nemunaire/fic-evdist:latest@sha256:a629a4b230dda51103bddec9aa6d7fd4a6db9afebff9b237fce1c1b402c0067d
image: nemunaire/fic-evdist:latest
binds:
- /etc/hosts:/etc/hosts:ro
- /var/lib/fic/settings:/srv/SETTINGS
@ -218,7 +218,7 @@ services:
- /var/lib/fic/settings
- /var/lib/fic/settingsdist
- name: fic-checker
image: nemunaire/fic-checker:latest@sha256:12d3286cdbe6d18d284f21432b4eb92ce8ab9844982177562069bc0f9536c93b
image: nemunaire/fic-checker:latest
env:
- MYSQL_HOST=db
- MYSQL_PASSWORD=fic
@ -239,7 +239,7 @@ services:
- /var/lib/fic/submissions
- /var/lib/fic/teams
- name: fic-dashboard
image: nemunaire/fic-dashboard:latest@sha256:67819594a312b89512b1d0994c92d814e2dd40689b7c86fd9d01b8ede7dfc2c2
image: nemunaire/fic-dashboard:latest
command: ["/srv/dashboard", "-bind=:8082", "-restrict-to-ips=/srv/DASHBOARD/restricted-ips.json"]
binds:
- /etc/hosts:/etc/hosts:ro
@ -257,7 +257,7 @@ services:
- /var/lib/fic/teams
- /var/lib/fic/settingsdist
- name: fic-generator
image: nemunaire/fic-generator:latest@sha256:12d3286cdbe6d18d284f21432b4eb92ce8ab9844982177562069bc0f9536c93b
image: nemunaire/fic-generator:latest
command: ["/srv/generator", "-bind=/srv/GENERATOR/generator.socket"]
env:
- MYSQL_HOST=db

View File

@ -11,7 +11,7 @@ init:
- linuxkit/getty:06f34bce0facea79161566d67345c3ea49965437
- nemunaire/mdadm:8c8a476336087b395878e02e1d89008da6a38044
- nemunaire/kexec:839b4eedfce02a56c581dec2383dc6faff120855
- nemunaire/fic-frontend-ui:latest@sha256:d3aef56d6b80ee454d800059a9c551f098c0ea62af01f75620c64d733326e0de
- nemunaire/fic-frontend-ui:latest
onboot:
- name: mod
@ -173,7 +173,7 @@ services:
- /var/lib/fic/settingsdist
- /var/lib/fic/teams
- name: fic-receiver
image: nemunaire/fic-receiver:latest@sha256:6bbecfaedd551fa6e6e13f741d7fa71291e495f3959dfd36d20b226007063f39
image: nemunaire/fic-receiver:latest
command: ["/srv/receiver", "-bind=:8080", "-startedFile=/srv/startingblock/started"]
binds:
- /etc/hosts:/etc/hosts:ro
@ -207,7 +207,7 @@ services:
- /var/lib/fic/remote
net: /run/netns/nginx
- name: sshd
image: nemunaire/rsync:5d1f678641de2197041f4bc4c745e7748bedab02
image: nemunaire/rsync:a3d76b2dd0a9ad73be44dc77ad765b20d96a3285
capabilities:
- all
binds: