Permalänk
Hedersmedlem

GitLab CI/CD problem

Har satt upp en egen GitLab server och har skapat ett projekt på den som jag försöker få att bygga med det interna CI/CD systemet, men får problem. Jag har satt upp en runner som verkar fungera. Jag kör både GitLab själv och GitLab runner i en docker på Ubuntu server.

Min .gitlab-ci.yml ser ut som följer (den är som GitLab skapade den till mig)

stages: - build build: # Use the official docker image. image: docker:latest stage: build services: - docker:dind before_script: - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY script: - docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHA" . - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHA" # Run this job where a Dockerfile exists rules: - if: $CI_COMMIT_BRANCH exists: - Dockerfile

Jag får följande i loggen.

$ docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY WARNING! Using --password via the CLI is insecure. Use --password-stdin. Error response from daemon: Get "https://registry-1.docker.io/v2/": unauthorized: incorrect username or password ERROR: Job failed: exit code 1

Det jag undrar om är alltså felet som gör att jobbet avbryter. Varningen tänker jag att jag kan ta hand om när jag väl fattar vad som händer. Som jag förstår det ska GitLab själv sätta CI_ variablerna, så dessa har jag inte definierat i projektet.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk

Har du aktiverat Gitlab container registry? Känns spontant som att $CI_REGISTRY variabeln är tom och att docker då går till sitt defaultregistry. Kan vara värt att skriva ut $CI_REGISTRY för att dubbelkolla.

Permalänk
Medlem

Jo, pga den misslyckas att logga in (unauthorized: incorrect username or password) blir det en exit code >0 och då avbryts jobbet. Du kan sätta `allow_failure: true` för att fortsätta köra jobbet.

Annars, prova något enklare jobb för att komma igång, typ

stages: - build build: image: alpine:latest stage: build script: - echo "Hello world"

Du kan även sätta att bara vissa exit codes får fortsätta, kommer inte ihåg syntax exakt men det är typ

allow_failure: codes: - 123 - 456 script: - exit 123 # ok, jobbet fortsätter - exit 456 # ok, jobber fortsätter - exit 666 # inte ok! avbryter jobbet

Visa signatur

Desktop/Spel 9800X3D, RTX 5090 FE, Asrock A620I, 32 GB RAM, SG GGX 1.2, SF1000, Win 10 IoT LTSC
Laptop/Jobb MacBook Pro 16", M3 Max (16C CPU, 40C GPU), 48 GB RAM
Skärm PG32UCDP OLED Mus G305 Tangentbord Keychron V4 60% (Kailh Box Whites)

Permalänk
Hedersmedlem
Skrivet av Whatever..:

Har du aktiverat Gitlab container registry? Känns spontant som att $CI_REGISTRY variabeln är tom och att docker då går till sitt defaultregistry. Kan vara värt att skriva ut $CI_REGISTRY för att dubbelkolla.

Jag har inte aktivt aktiverat GitLab container registry, så jag ska kolla hur det står till med den. Återkommer.

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Hedersmedlem

Tror att jag ska installera om denna GitLab server. Docker är installerat via snap, och jag kan inte riktigt förstå var filerna sparas. Enligt Portainer ska de finnas här: "/data/compose/1/gitlab/config", men den mappen finns inte.

Visa signatur

Använd gilla för att markera nyttiga inlägg!