Commit 563ffc66 authored by Dimitrios Giannopoulos's avatar Dimitrios Giannopoulos
Browse files

Decompose .gitlab-ci.yml into modular templates

parent 097877db
Loading
Loading
Loading
Loading
Loading
+12 −42
Original line number Original line Diff line number Diff line
# stages:
.default:
#   - java_build
#   - docker_build

.default_rules: &default_rules
  rules:
    - if: $CI_COMMIT_REF_NAME == "main"
    - if: $CI_COMMIT_REF_NAME == "develop"
    - if: $CI_COMMIT_REF_NAME == "12-create-a-pipeline-to-build-and-publish-the-docker-image-in-gitlab-registry"

  variables:
  variables:
    DEFAULT_TAG: "1.2.0-SNAPSHOT"
    DEFAULT_TAG: "1.2.0-SNAPSHOT"

  before_script:
  before_script:
    - |
    - |
      if [ "$CI_COMMIT_REF_NAME" = "main" ] && [ -n "$CI_COMMIT_TAG" ]; then
      if [ "$CI_COMMIT_REF_NAME" = "main" ] && [ -n "$CI_COMMIT_TAG" ]; then
@@ -20,27 +10,7 @@ before_script:
      else
      else
        export APP_VERSION=$DEFAULT_TAG
        export APP_VERSION=$DEFAULT_TAG
      fi
      fi

  rules:
java_build:
    - if: $CI_COMMIT_REF_NAME == "main"
  # stage: java_build
    - if: $CI_COMMIT_REF_NAME == "develop"
  image: maven:3.9.5-ibm-semeru-17-focal
    - if: $CI_COMMIT_REF_NAME == "12-create-a-pipeline-to-build-and-publish-the-docker-image-in-gitlab-registry"
  script:
    - mvn deploy -s ci_settings.xml -DskipTests -Dversion=$APP_VERSION
  artifacts:
    paths:
      - target/
  <<: *default_rules

# .docker_build:
#   stage: docker_build
#   image:
#     name: gcr.io/kaniko-project/executor:debug
#     entrypoint: [""]
#   script:
#     - /kaniko/executor --context "${CI_PROJECT_DIR}" --dockerfile "${CI_PROJECT_DIR}/Dockerfile" --destination "${CI_REGISTRY_IMAGE}:$APP_VERSION"
#     - |
#       if [ "$CI_COMMIT_REF_NAME" = "main" ]; then
#         echo "Pushing Docker image with tag 'latest'"
#         /kaniko/executor --context "${CI_PROJECT_DIR}" --dockerfile "${CI_PROJECT_DIR}/Dockerfile" --destination "${CI_REGISTRY_IMAGE}:latest"
#       fi
#   <<: *default_rules

ci-templates/build.yml

0 → 100644
+21 −0
Original line number Original line Diff line number Diff line
.maven_build:
  extends: .default
  image: maven:3.9.5-ibm-semeru-17-focal
  script:
    - mvn deploy -s ci_settings.xml -DskipTests -Dversion=$APP_VERSION
  artifacts:
    paths:
      - target/

.docker_build:
  extends: .default
  image:
    name: gcr.io/kaniko-project/executor:debug
    entrypoint: [""]
  script:
    - /kaniko/executor --context "${CI_PROJECT_DIR}" --dockerfile "${CI_PROJECT_DIR}/Dockerfile" --destination "${CI_REGISTRY_IMAGE}:$APP_VERSION"
    - |
      if [ "$CI_COMMIT_REF_NAME" = "main" ]; then
        echo "Pushing Docker image with tag 'latest'"
        /kaniko/executor --context "${CI_PROJECT_DIR}" --dockerfile "${CI_PROJECT_DIR}/Dockerfile" --destination "${CI_REGISTRY_IMAGE}:latest"
      fi