# All jobs needing docker-edk2 must use the same rules it uses.
.edk2_job_rules:
 rules: # Only run this job when ...
 - changes:
   # this file is modified
   - .gitlab-ci.d/edk2.yml
   # or the Dockerfile is modified
   - .gitlab-ci.d/edk2/Dockerfile
   # or roms/edk2/ is modified (submodule updated)
   - roms/edk2/*
   when: always
 - if: '$CI_COMMIT_REF_NAME =~ /^edk2/' # or the branch/tag starts with 'edk2'
   when: always
 - if: '$CI_COMMIT_MESSAGE =~ /edk2/i' # or last commit description contains 'EDK2'
   when: always

docker-edk2:
 extends: .edk2_job_rules
 stage: containers
 image: docker:19.03.1
 services:
 - docker:19.03.1-dind
 variables:
  GIT_DEPTH: 3
  IMAGE_TAG: $CI_REGISTRY_IMAGE:edk2-cross-build
  # We don't use TLS
  DOCKER_HOST: tcp://docker:2375
  DOCKER_TLS_CERTDIR: ""
 before_script:
 - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
 script:
 - docker pull $IMAGE_TAG || true
 - docker build --cache-from $IMAGE_TAG --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
                                        --tag $IMAGE_TAG .gitlab-ci.d/edk2
 - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
 - docker push $IMAGE_TAG

build-edk2:
 extends: .edk2_job_rules
 stage: build
 needs: ['docker-edk2']
 artifacts:
   paths: # 'artifacts.zip' will contains the following files:
   - pc-bios/edk2*bz2
   - pc-bios/edk2-licenses.txt
   - edk2-stdout.log
   - edk2-stderr.log
 image: $CI_REGISTRY_IMAGE:edk2-cross-build
 variables:
   GIT_DEPTH: 3
 script: # Clone the required submodules and build EDK2
 - git submodule update --init roms/edk2
 - git -C roms/edk2 submodule update --init
 - export JOBS=$(($(getconf _NPROCESSORS_ONLN) + 1))
 - echo "=== Using ${JOBS} simultaneous jobs ==="
 - make -j${JOBS} -C roms efi 2>&1 1>edk2-stdout.log | tee -a edk2-stderr.log >&2
