Files
dtrack-defectdojo-automation/.gitlab-ci.yml
Wolfgang Hottgenroth 18631dc02a
Some checks are pending
ci/woodpecker/tag/woodpecker Pipeline is pending
dockerize goal
2025-06-04 13:34:45 +02:00

121 lines
3.1 KiB
YAML

stages:
- generate-api-clients
- dockerize
variables:
REGISTRY: devnexus.krohne.com:18079/repository/docker-krohne
IMAGE_NAME: $REGISTRY/$CI_PROJECT_NAME
generate-dtrack-api:
stage: generate-api-clients
image: openapitools/openapi-generator-cli:v7.12.0
tags:
- linux
- docker
- bash
rules:
- if: '$CI_COMMIT_BRANCH == "main"'
artifacts:
paths:
- dtrack-api-client.tgz
expire_in: 1 week
script:
- curl https://dtrack-api.hottis.de/api/openapi.json > dependencytrack-openapi.json
- |
docker-entrypoint.sh \
author template \
-g python \
-o dependencytrack-openapi-custom-template
- sed -i 's/import re/import regex as re/' dependencytrack-openapi-custom-template/model_anyof.mustache
- sed -i 's/import re/import regex as re/' dependencytrack-openapi-custom-template/model_generic.mustache
- |
docker-entrypoint.sh \
generate \
-i dependencytrack-openapi.json \
-g python \
-o dependencytrack-client \
--package-name dependencytrack_api \
-t dependencytrack-openapi-custom-template
- tar -czvf dtrack-api-client.tgz dependencytrack-client
generate-defectdojo-api:
stage: generate-api-clients
image: openapitools/openapi-generator-cli:v7.12.0
tags:
- linux
- docker
- bash
rules:
- if: '$CI_COMMIT_BRANCH == "main"'
artifacts:
paths:
- defectdojo-api-client.tgz
expire_in: 1 week
script:
- curl https://defectdojo.hottis.de/api/v2/oa3/schema/?format=json > defectdojo-openapi.json
- |
docker-entrypoint.sh \
generate \
-i defectdojo-openapi.json \
-g python \
-o defectdojo-client \
--package-name defectdojo_api
- tar -czvf defectdojo-api-client.tgz defectdojo-client
dockerize:
stage: dockerize
image: devnexus.krohne.com:18079/repository/docker-krohne/krohnedockerbash:0.5
tags:
- linux
- docker
- bash
rules:
- if: '$CI_COMMIT_TAG'
script:
- docker build --tag $IMAGE_NAME:latest
--tag $IMAGE_NAME:$CI_COMMIT_SHA
--tag $IMAGE_NAME:$CI_COMMIT_TAG
.
- docker login -u $NEXUS_USER -p $NEXUS_PASSWORD $REGISTRY
- docker push $IMAGE_NAME:latest
- docker push $IMAGE_NAME:$CI_COMMIT_SHA
- docker push $IMAGE_NAME:$CI_COMMIT_TAG
#
# build:
# image: plugins/kaniko
# settings:
# repo: ${FORGE_NAME}/${CI_REPO}
# registry:
# from_secret: container_registry
# tags: latest,${CI_COMMIT_SHA},${CI_COMMIT_TAG}
# username:
# from_secret: container_registry_username
# password:
# from_secret: container_registry_password
# dockerfile: Dockerfile
# when:
# - event: [ push, tag ]
#
# build-for-quay:
# image: plugins/kaniko
# settings:
# repo: quay.io/wollud1969/${CI_REPO_NAME}
# registry: quay.io
# tags:
# - latest
# - ${CI_COMMIT_TAG}
# username:
# from_secret: quay_username
# password:
# from_secret: quay_password
# dockerfile: Dockerfile
# when:
# - event: [tag]
#