From 8b4ef0e0c4463afd622d47127e3ed5515f21c87f Mon Sep 17 00:00:00 2001 From: andrewc Date: Fri, 16 May 2025 16:33:31 +1000 Subject: [PATCH] Added Dockerfile so ki-ntree does not need to be installed every run --- .gitlab-ci.yml | 36 ++++++++++++++++++++++++++++++++++++ Dockerfile-poetry | 3 +++ 2 files changed, 39 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 Dockerfile-poetry diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..e6146d7 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,36 @@ +workflow: + rules: + - if: $CI_COMMIT_TAG + when: never + - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS + when: never + # - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # Run this job when commits are pushed or merged to the default branch +default: + image: docker:28.0.4 + services: + - docker:28.0.4-dind + before_script: + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY +variables: + # Use TLS https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#tls-enabled + DOCKER_HOST: tcp://docker:2376 + DOCKER_TLS_CERTDIR: "/certs" + CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_BRANCH + CONTAINER_RELEASE_IMAGE: $CI_REGISTRY_IMAGE:latest + IMAGES: ('poetry') +stages: + - build +.commands: + strip_tag: + - TAG=$(echo ${CI_COMMIT_MESSAGE} | tr -d \\n) +build: + stage: build + script: + - docker context create my-builder + - docker buildx create my-builder --driver docker-container --use + - | + for image in $IMAGES + do + CONTAINER_IMAGE="$CI_REGISTRY_IMAGE/$image" + docker buildx build --push -t $CONTAINER_IMAGE --cache-to type=registry,ref=$CONTAINER_IMAGE,mode=max --cache-from type=registry,ref=$CONTAINER_IMAGE -f Dockerfile-$image . + done diff --git a/Dockerfile-poetry b/Dockerfile-poetry new file mode 100644 index 0000000..6f555d3 --- /dev/null +++ b/Dockerfile-poetry @@ -0,0 +1,3 @@ +FROM thehale/python-poetry:2.1.3-py3.12-slim + +RUN apt update && apt install -y curl wget