From 979f64845cb392b372462159383177028d03a0b0 Mon Sep 17 00:00:00 2001 From: Adrien Langou Date: Fri, 9 Jun 2023 23:16:05 +0200 Subject: [PATCH] feat(ci): add ci first stage --- .gitlab-ci.yml | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..f99af945 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,75 @@ +--- + +stages: + - deps + - sast + +before_script: + - export GOPATH="$CI_PROJECT_DIR/.go" + - mkdir -p .go + - mkdir -p deploy + +cache: + paths: + - .go/pkg/mod/ + - qa/ui/node_modules/ + - frontend/ui/node_modules/ + +get-deps: + stage: deps + image: golang:alpine3.18 + script: + - apk --no-cache add git + - go get -v -d srs.epita.fr/fic-server/admin + - go get -v -d srs.epita.fr/fic-server/backend + - go get -v -d srs.epita.fr/fic-server/evdist + - 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/repochecker/epita + - go get -v -d srs.epita.fr/fic-server/repochecker/file-inspector + - go get -v -d srs.epita.fr/fic-server/repochecker/grammalecte + - go get -v -d srs.epita.fr/fic-server/repochecker/pcap-inspector + - go get -v -d srs.epita.fr/fic-server/repochecker/videos + - go get -v -d srs.epita.fr/fic-server/qa + + +build-qa-ui: + stage: deps + image: node:20-alpine3.18 + script: + - cd qa/ui + - npm install --network-timeout=100000 + - sed -i 's!@popperjs/core/dist/esm/popper!@popperjs/core!' node_modules/sveltestrap/src/*.js node_modules/sveltestrap/src/*.svelte + - npm run build + - tar chjf ../../deploy/htdocs-qa.tar.bz2 build + artifacts: + paths: + - qa/ui/build/ + - deploy/htdocs-qa.tar.bz2 + when: on_success + +vet: + stage: sast + dependencies: + - build-qa-ui + image: golang:alpine3.18 + script: + - apk --no-cache add build-base + - go vet -v -buildvcs=false -tags gitgo srs.epita.fr/fic-server/admin + - go vet -v -buildvcs=false srs.epita.fr/fic-server/libfic + - go vet -v -buildvcs=false srs.epita.fr/fic-server/admin/sync + - go vet -v -buildvcs=false srs.epita.fr/fic-server/admin/pki + - go vet -v -buildvcs=false srs.epita.fr/fic-server/admin + - go vet -v -buildvcs=false srs.epita.fr/fic-server/backend + - go vet -v -buildvcs=false srs.epita.fr/fic-server/evdist + - go vet -v -buildvcs=false srs.epita.fr/fic-server/frontend + - go vet -v -buildvcs=false srs.epita.fr/fic-server/dashboard + - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker + - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/epita + - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/file-inspector + - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/grammalecte + - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/pcap-inspector + - go vet -v -buildvcs=false srs.epita.fr/fic-server/repochecker/videos + - go vet -v -buildvcs=false srs.epita.fr/fic-server/qa + - go vet -v -buildvcs=false srs.epita.fr/fic-server/settings