genericdatabaseapiservice/.gitlab-ci.yml

51 lines
2.1 KiB
YAML
Raw Normal View History

2021-11-26 13:50:02 +01:00
include:
- project: "SharedLibraries/CommonCI/webservices-common-ci"
2021-11-29 17:15:53 +01:00
ref: 4.x
2021-11-26 13:50:02 +01:00
file: "webservices-gitlab-ci-template-dotnetcore.yml"
2021-11-26 14:00:42 +01:00
versionize:
before_script:
- VERSION=`echo -e "import yaml\nwith open('openapi.yaml') as f:d=yaml.load(f)\nprint d['info']['version']" | python`
2021-11-26 14:03:08 +01:00
2021-11-29 18:01:30 +01:00
.deploy_test_dev:
extends: .deploy
tags:
- test-deployment-de01rdtst01
2021-11-26 14:54:40 +01:00
.deploy:
stage: deploy
image: devnexus.krohne.com:18079/repository/docker-krohne/krohnedockerbash:1.1.0
except:
- tags
artifacts:
paths:
- instance.txt
- api_major_version.txt
- api_version.txt
expire_in: 1 day
needs:
- dockerize
when: manual
allow_failure: false
2021-11-26 15:13:51 +01:00
variables:
WEBSERVICE_PORT: 8080
2021-11-26 15:03:15 +01:00
before_script:
2021-11-26 15:05:41 +01:00
- PKG_VERSION=$(echo -e "import yaml\nwith open('openapi.yaml') as f:d=yaml.load(f)\nprint(d['info']['version'])" | python)
2021-11-26 15:03:15 +01:00
- REFCNT=$(git rev-list --count ${CI_COMMIT_SHA})
- VERSION=${PKG_VERSION}.${REFCNT}.${CI_COMMIT_REF_NAME}
2021-11-26 16:59:09 +01:00
- API_VERSION=$PKG_VERSION
- API_MAJOR_VERSION=`echo $PKG_VERSION | awk -F. '{print $1}'`
2021-11-26 14:54:40 +01:00
script:
- echo $INSTANCE_SPECIFIER > instance.txt
- echo -n $API_VERSION > api_version.txt
- echo -n $API_MAJOR_VERSION > api_major_version.txt
- CONTAINER_NAME="${CI_PROJECT_PATH_SLUG}-${INSTANCE_SPECIFIER}-${API_MAJOR_VERSION}"
- SERVICE_PORT=$((SERVICE_FIRST_PORT + SERVICE_PORT_OFFSET + (API_MAJOR_VERSION - 1) % 5))
- echo "Service port is ${SERVICE_PORT}"
- docker stop $CONTAINER_NAME || echo "$CONTAINER_NAME not running, anyway okay"
- docker pull $IMAGE_NAME:$VERSION
- echo "docker run -d --rm -e TZ=Europe/Berlin -p $SERVICE_PORT:$WEBSERVICE_PORT --name $CONTAINER_NAME -e WEBSERVICE_INSTANCE=$INSTANCE_SPECIFIER -e Database__Host=$DATABASE_HOST -e Database__User=$DATABASE_USER -e Database__Password=$DATABASE_PASSWORD -e Database__Name=$DATABASE_NAME $IMAGE_NAME:$VERSION" > /start-scripts/${CONTAINER_NAME}.sh
2021-11-26 14:54:40 +01:00
- chmod 755 /start-scripts/${CONTAINER_NAME}.sh
2021-11-26 14:57:26 +01:00
- /start-scripts/${CONTAINER_NAME}.sh