tenongene / visitor-count-app

0 stars 0 forks source link

Project Extension: Configure a GitLab CI pipeline to build and push docker image #6

Open tenongene opened 1 year ago

tenongene commented 1 year ago

Pushed project into a repository in GitLab.

stages:
- test
- build
sast:
  stage: test
include:
- template: Security/SAST.gitlab-ci.yml

docker-build:
  # Use the official docker image.
  image: docker:latest
  stage: build
  services:
    - docker:dind
  before_script:
    - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" 

  script:
    - |
      if [[ "$CI_COMMIT_BRANCH" == "$CI_DEFAULT_BRANCH" ]]; then
        tag=""
        echo "Running on default branch '$CI_DEFAULT_BRANCH': tag = 'latest'"
      else
        tag=":$CI_COMMIT_REF_SLUG"
        echo "Running on branch '$CI_COMMIT_BRANCH': tag = $tag"
      fi
    - docker build -t "$CI_REGISTRY_IMAGE${tag}" .
    - docker push "$CI_REGISTRY_IMAGE${tag}"

  rules:
    - if: $CI_COMMIT_BRANCH
      exists:
        - Dockerfile

Image

tenongene commented 1 year ago

Pipeline tests the code, builds the docker image and then pushes image to docker hub.

Image

Image

tenongene commented 1 year ago

Image

==============================

Application image in docker hub after successful CI.