[feat] More generic gitlab-ci.yml

This commit is contained in:
Zeva Rose 2024-03-17 01:13:25 -06:00
parent 21b950317a
commit d53ff94041

View file

@ -1,13 +1,35 @@
default: precommit:
stage: test
image: python:3.12-bookworm
before_script: before_script:
- docker info - apt-get update && apt-get install -y --no-install-recommends git
script:
- pip install -r requirements.precommit.txt
- pre-commit run --all-files
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
build: build:
stage: build stage: build
tags: tags:
- docker-build - docker-build
before_script:
- echo "$ZEVARYX_REGISTRY_PASSWORD" | docker login -u "$ZEVARYX_REGISTRY_USERNAME" --password-stdin "$ZEVARYX_REGISTRY_URL"
script: script:
- docker build -t $ZEVARYX_REGISTRY_URL/jarvis-tasks:$CI_COMMIT_BRANCH . - echo "$ZEVARYX_REGISTRY_PASSWORD" | docker login -u "$ZEVARYX_REGISTRY_USERNAME" --password-stdin "$ZEVARYX_REGISTRY_URL"
- docker push $ZEVARYX_REGISTRY_URL/jarvis-tasks:$CI_COMMIT_BRANCH - if [ "$CI_COMMIT_BRANCH" == "main" ]; then TAG="stable"; elif [ "$CI_COMMIT_BRANCH" == "dev" ]; then TAG="latest"; else TAG="${CI_COMMIT_BRANCH}"; fi
- docker build -t $ZEVARYX_REGISTRY_URL/$CI_PROJECT_NAME:$TAG -t zevaryx/$CI_PROJECT_NAME:$TAG .
- docker push $ZEVARYX_REGISTRY_URL/$CI_PROJECT_NAME:$TAG
- echo "$DOCKERHUB_REGISTRY_PASSWORD" | docker login -u "$DOCKERHUB_REGISTRY_USERNAME" --password-stdin
- docker push zevaryx/$CI_PROJECT_NAME:$TAG
release:
stage: build
rules:
- if: $CI_COMMIT_TAG
tags:
- docker-build
script:
- echo "$ZEVARYX_REGISTRY_PASSWORD" | docker login -u "$ZEVARYX_REGISTRY_USERNAME" --password-stdin "$ZEVARYX_REGISTRY_URL"
- docker build -t $ZEVARYX_REGISTRY_URL/$CI_PROJECT_NAME:$CI_COMMIT_TAG -t zevaryx/$CI_PROJECT_NAME:$CI_COMMIT_TAG .
- docker push $ZEVARYX_REGISTRY_URL/$CI_PROJECT_NAME:$CI_COMMIT_TAG
- echo "$DOCKERHUB_REGISTRY_PASSWORD" | docker login -u "$DOCKERHUB_REGISTRY_USERNAME" --password-stdin
- docker push zevaryx/$CI_PROJECT_NAME:$CI_COMMIT_TAG