Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.32 KiB
variables:
  DOCKER_CLI_EXPERIMENTAL: 'enabled'
  JOB_IMAGE: $CI_REGISTRY/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_JOB_NAME:$CI_COMMIT_REF_NAME
  MANIFEST_IMAGE:  $CI_REGISTRY/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME
  IMAGE_amd64: $CI_REGISTRY/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/amd64:$CI_COMMIT_REF_NAME
  IMAGE_ppc64le: $CI_REGISTRY/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/ppc64le:$CI_COMMIT_REF_NAME
  CI_DEBUG_TRACE: "false"

stages:
- build
- manifest
#- deploy

before_script:
  - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY

.build:
  script:
    - docker build --build-arg GITLAB_LOGIN=gitlab-ci-token --build-arg GITLAB_PASSWORD=$CI_JOB_TOKEN --pull -t $JOB_IMAGE -f Dockerfile .
    - docker push $JOB_IMAGE

ppc64le:
  extends: .build
  stage: build
  tags:
    - ppc64le-docker
    - docker

amd64:
  extends: .build
  stage: build
  tags:
    - amd64-docker
    - docker

manifest:
  stage: manifest
  tags:
    - ppc64le-docker
  script:
    - docker manifest create $MANIFEST_IMAGE $IMAGE_amd64 $IMAGE_ppc64le
    - docker manifest push $MANIFEST_IMAGE

# deploy:
#   stage: deploy
#   tags:
#     - ppc64le
#   only:
#     - master
#   script:
#     - for ref in $DEPLOYENVS; do curl -X POST -F token=$TRIGGER_TOKEN -F ref=$ref -F variables[branch]=$CI_COMMIT_REF_NAME $TRIGGER_CODE_BUILD; done