137 lines
3.3 KiB
YAML
137 lines
3.3 KiB
YAML
steps:
|
|
- name: maven-build
|
|
image: maven:3.9.16-eclipse-temurin-25
|
|
when:
|
|
event:
|
|
- push
|
|
- pull_request
|
|
- manual
|
|
branch:
|
|
- master
|
|
- develop
|
|
- main
|
|
commands: |
|
|
cd $CI_WORKSPACE
|
|
|
|
mvn -B -ntp -am -pl :gb32960-ingest-app,:vehicle-history-app,:vehicle-analytics-app package
|
|
|
|
BRANCH_NAME=$(echo ${CI_COMMIT_BRANCH:-local} | tr / -)
|
|
PROJECT_VERSION=$(mvn -q -DforceStdout help:evaluate -Dexpression=project.version)
|
|
SHORT_SHA=$(echo ${CI_COMMIT_SHA:-manual} | cut -c1-8)
|
|
IMAGE_VERSION="$BRANCH_NAME-$PROJECT_VERSION-$SHORT_SHA"
|
|
|
|
echo "Project version: $PROJECT_VERSION"
|
|
echo "Image version: $IMAGE_VERSION"
|
|
echo "$IMAGE_VERSION" > $CI_WORKSPACE/project_version.txt
|
|
|
|
- name: docker-build-gb32960-ingest-app
|
|
image: docker:24.0.5-cli
|
|
when:
|
|
event:
|
|
- push
|
|
- pull_request
|
|
- manual
|
|
branch:
|
|
- master
|
|
- develop
|
|
- main
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
commands: |
|
|
cd $CI_WORKSPACE
|
|
APP_NAME=gb32960-ingest-app
|
|
APP_VERSION=$(cat $CI_WORKSPACE/project_version.txt)
|
|
IMAGE=harbor.lnh2e.com/lingniu-v1/$APP_NAME:$APP_VERSION
|
|
|
|
docker build \
|
|
--build-arg APP_NAME=$APP_NAME \
|
|
--build-arg APP_VERSION=$APP_VERSION \
|
|
-t $IMAGE .
|
|
|
|
mkdir -p /root/.docker
|
|
cat > /root/.docker/config.json <<EOF
|
|
{
|
|
"auths": {
|
|
"harbor.lnh2e.com": {
|
|
"auth": "$(echo Y2ljZDpMbkBjaWNkMDE=)"
|
|
}
|
|
}
|
|
}
|
|
EOF
|
|
|
|
docker push $IMAGE
|
|
|
|
- name: docker-build-vehicle-history-app
|
|
image: docker:24.0.5-cli
|
|
when:
|
|
event:
|
|
- push
|
|
- pull_request
|
|
- manual
|
|
branch:
|
|
- master
|
|
- develop
|
|
- main
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
commands: |
|
|
cd $CI_WORKSPACE
|
|
APP_NAME=vehicle-history-app
|
|
APP_VERSION=$(cat $CI_WORKSPACE/project_version.txt)
|
|
IMAGE=harbor.lnh2e.com/lingniu-v1/$APP_NAME:$APP_VERSION
|
|
|
|
docker build \
|
|
--build-arg APP_NAME=$APP_NAME \
|
|
--build-arg APP_VERSION=$APP_VERSION \
|
|
-t $IMAGE .
|
|
|
|
mkdir -p /root/.docker
|
|
cat > /root/.docker/config.json <<EOF
|
|
{
|
|
"auths": {
|
|
"harbor.lnh2e.com": {
|
|
"auth": "$(echo Y2ljZDpMbkBjaWNkMDE=)"
|
|
}
|
|
}
|
|
}
|
|
EOF
|
|
|
|
docker push $IMAGE
|
|
|
|
- name: docker-build-vehicle-analytics-app
|
|
image: docker:24.0.5-cli
|
|
when:
|
|
event:
|
|
- push
|
|
- pull_request
|
|
- manual
|
|
branch:
|
|
- master
|
|
- develop
|
|
- main
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
commands: |
|
|
cd $CI_WORKSPACE
|
|
APP_NAME=vehicle-analytics-app
|
|
APP_VERSION=$(cat $CI_WORKSPACE/project_version.txt)
|
|
IMAGE=harbor.lnh2e.com/lingniu-v1/$APP_NAME:$APP_VERSION
|
|
|
|
docker build \
|
|
--build-arg APP_NAME=$APP_NAME \
|
|
--build-arg APP_VERSION=$APP_VERSION \
|
|
-t $IMAGE .
|
|
|
|
mkdir -p /root/.docker
|
|
cat > /root/.docker/config.json <<EOF
|
|
{
|
|
"auths": {
|
|
"harbor.lnh2e.com": {
|
|
"auth": "$(echo Y2ljZDpMbkBjaWNkMDE=)"
|
|
}
|
|
}
|
|
}
|
|
EOF
|
|
|
|
docker push $IMAGE
|