| workflow: |
| rules: |
| - if: $CI_PIPELINE_SOURCE == 'merge_request_event' |
| - if: $CI_PIPELINE_SOURCE == 'push' |
| |
| variables: |
| DEBIAN_FRONTEND: noninteractive |
| DOCKER_IMAGE_TAG: $CI_REGISTRY_IMAGE:latest |
| |
| stages: |
| - build-container |
| - build |
| - tidy |
| - style |
| |
| build-container: |
| stage: build-container |
| image: docker:27.0.3 |
| services: |
| - docker:27.0.3-dind |
| variables: |
| DOCKER_TLS_CERTDIR: "" |
| before_script: |
| - echo "$CI_JOB_TOKEN" | docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin |
| script: |
| - docker build -t $DOCKER_IMAGE_TAG -f .ci/Dockerfile . |
| - docker push $DOCKER_IMAGE_TAG |
| after_script: |
| - docker logout |
| |
| build: |
| stage: build |
| image: $DOCKER_IMAGE_TAG |
| script: |
| - mkdir -p install/arm64 |
| - rm ${HOME}/aospless/src |
| - ln -s ${PWD} ${HOME}/aospless/src |
| - make -C ${HOME}/aospless all |
| - cp -r ${HOME}/aospless/install/* install/arm64 |
| |
| artifacts: |
| paths: |
| - install/ |
| expire_in: 1 week |
| |
| tidy: |
| stage: tidy |
| image: $DOCKER_IMAGE_TAG |
| script: |
| - rm ${HOME}/aospless/src |
| - ln -s ${PWD} ${HOME}/aospless/src |
| - BASE_DIR=${HOME}/aospless make -j$(nproc) -k -f .ci/Makefile |
| timeout: 2h |
| |
| checkstyle: |
| stage: style |
| image: $DOCKER_IMAGE_TAG |
| script: "./.ci/.gitlab-ci-checkcommit.sh" |
| artifacts: |
| when: on_failure |
| untracked: true |