From 38c18ef1aae3ef35cb79eadd112834e9a9752c46 Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Fri, 13 Nov 2020 15:15:37 +0100 Subject: [PATCH] CI: build repochecker and generate repochecker.version --- .drone.yml | 21 +++++++++++++++++++++ docker-compose.yml | 35 +++++++++++++++++++++++++++++++++++ repochecker/update.go | 4 ++-- 3 files changed, 58 insertions(+), 2 deletions(-) diff --git a/.drone.yml b/.drone.yml index f5e5e29d..b6b0e650 100644 --- a/.drone.yml +++ b/.drone.yml @@ -20,6 +20,7 @@ steps: - go get -v -d srs.epita.fr/fic-server/backend - go get -v -d srs.epita.fr/fic-server/frontend - go get -v -d srs.epita.fr/fic-server/dashboard + - go get -v -d srs.epita.fr/fic-server/repochecker - go get -v -d srs.epita.fr/fic-server/qa - mkdir deploy @@ -31,6 +32,7 @@ steps: - go vet -v srs.epita.fr/fic-server/backend - go vet -v srs.epita.fr/fic-server/frontend - go vet -v srs.epita.fr/fic-server/dashboard + - go vet -v srs.epita.fr/fic-server/repochecker - go vet -v srs.epita.fr/fic-server/qa - name: build admin @@ -53,6 +55,20 @@ steps: commands: - go build -v -o deploy/dashboard-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} srs.epita.fr/fic-server/dashboard + - name: build repochecker + image: golang:alpine + commands: + - go build -v -o deploy/repochecker-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} srs.epita.fr/fic-server/repochecker + - grep "const version" repochecker/update.go | sed -r 's/^.*=\s*(\S.*)$/\1/' > deploy/repochecker.version + + - name: build repochecker for macOS + image: golang:alpine + commands: + - go build -v -o deploy/repochecker-darwin-${DRONE_STAGE_ARCH} srs.epita.fr/fic-server/repochecker + environment: + GOOS: darwin + GOARCH: amd64 + - name: build qa image: golang:alpine commands: @@ -116,6 +132,11 @@ steps: commands: - go build -v -o deploy/dashboard-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} srs.epita.fr/fic-server/dashboard + - name: build repochecker + image: golang:alpine + commands: + - go build -v -o deploy/repochecker-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH} srs.epita.fr/fic-server/repochecker + - name: build qa image: golang:alpine commands: diff --git a/docker-compose.yml b/docker-compose.yml index a7cea8b2..1b5d97a3 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,6 +3,8 @@ version: '3' services: mysql: image: mariadb + networks: + - fic-net volumes: - mysql-data:/var/lib/mysql environment: @@ -20,12 +22,15 @@ services: - "8081:8081" links: - mysql + networks: + - fic-net volumes: - /mnt/fic:/mnt/fic:ro - dashboard:/srv/DASHBOARD - files:/srv/FILES - pki:/srv/PKI - settings:/srv/SETTINGS + - submissions:/srv/submissions - teams:/srv/TEAMS command: -baseurl /admin/ -localimport /mnt/fic -localimportsymlink depends_on: @@ -41,6 +46,8 @@ services: image: nemunaire/fic-backend:latest links: - mysql + networks: + - fic-net volumes: - files:/srv/FILES:ro - teams:/srv/TEAMS @@ -51,6 +58,25 @@ services: environment: - MYSQL_HOST=mysql + fic-qa: + build: + context: . + dockerfile: Dockerfile-qa + image: nemunaire/fic-qa:latest + ports: + - "8083:8083" + links: + - mysql + networks: + - fic-net + volumes: + - teams:/srv/TEAMS + command: -baseurl /qa/ + depends_on: + - mysql + environment: + - MYSQL_HOST=mysql + fic-frontend: build: context: . @@ -59,6 +85,8 @@ services: command: "-startedFile /srv/startingblock/started" ports: - "8080:8080" + networks: + - fic-net volumes: - htdocs:/srv/htdocs-frontend:ro - files:/srv/FILES:ro @@ -77,6 +105,8 @@ services: command: "-baseurl /dashboard/" ports: - "8082:8082" + networks: + - fic-net volumes: - dashboard:/srv/DASHBOARD - teams:/srv/TEAMS:ro @@ -88,6 +118,8 @@ services: image: nginx:latest ports: - "8042:80" + networks: + - fic-net volumes: - /mnt/fic:/mnt/fic:ro - ./configs/nginx-frontend-htpasswd.conf:/etc/nginx/conf.d/default.conf:ro @@ -114,3 +146,6 @@ volumes: device: tmpfs submissions: teams: + +networks: + fic-net: diff --git a/repochecker/update.go b/repochecker/update.go index 9e51dd32..bfd1335b 100644 --- a/repochecker/update.go +++ b/repochecker/update.go @@ -9,7 +9,7 @@ import ( "net/http" ) -const version = 0 +const version = 9 func init() { go checkUpdate() @@ -24,7 +24,7 @@ func checkUpdate() { var v int if err := dec.Decode(&v); err == io.EOF || err == nil { if v > version { - log.Println("Your repochecker version is outdated, please update it:\n wget https://srs.nemunai.re/repochecker") + log.Println("Your repochecker version is outdated, please update it:\n https://srs.nemunai.re/fic-binaries/") } } }