Roman Stratiienko | dddbb4e | 2023-09-20 00:17:39 +0300 | [diff] [blame] | 1 | workflow: |
| 2 | rules: |
| 3 | - if: $CI_PIPELINE_SOURCE == 'merge_request_event' |
| 4 | - if: $CI_PIPELINE_SOURCE == 'push' |
| 5 | |
Roman Stratiienko | d26619b | 2021-08-04 19:55:37 +0300 | [diff] [blame] | 6 | variables: |
| 7 | DEBIAN_FRONTEND: noninteractive |
Mattijs Korpershoek | a999307 | 2024-07-12 11:38:21 +0200 | [diff] [blame] | 8 | DOCKER_IMAGE_TAG: $CI_REGISTRY_IMAGE:latest |
Stefan Schake | 0234678 | 2018-05-05 02:39:33 +0200 | [diff] [blame] | 9 | |
Stefan Schake | 0234678 | 2018-05-05 02:39:33 +0200 | [diff] [blame] | 10 | stages: |
Mattijs Korpershoek | a999307 | 2024-07-12 11:38:21 +0200 | [diff] [blame] | 11 | - build-container |
Roman Stratiienko | d518a05 | 2021-02-25 19:15:14 +0200 | [diff] [blame] | 12 | - build |
Roman Stratiienko | 2bf68c3 | 2022-12-16 12:57:27 +0200 | [diff] [blame] | 13 | - tidy |
Stefan Schake | 0234678 | 2018-05-05 02:39:33 +0200 | [diff] [blame] | 14 | - style |
| 15 | |
Mattijs Korpershoek | a999307 | 2024-07-12 11:38:21 +0200 | [diff] [blame] | 16 | build-container: |
| 17 | stage: build-container |
| 18 | image: docker:27.0.3 |
| 19 | services: |
| 20 | - docker:27.0.3-dind |
| 21 | variables: |
| 22 | DOCKER_TLS_CERTDIR: "" |
| 23 | before_script: |
| 24 | - echo "$CI_JOB_TOKEN" | docker login $CI_REGISTRY -u $CI_REGISTRY_USER --password-stdin |
| 25 | script: |
| 26 | - docker build -t $DOCKER_IMAGE_TAG -f .ci/Dockerfile . |
| 27 | - docker push $DOCKER_IMAGE_TAG |
| 28 | after_script: |
| 29 | - docker logout |
| 30 | |
Roman Stratiienko | d518a05 | 2021-02-25 19:15:14 +0200 | [diff] [blame] | 31 | build: |
| 32 | stage: build |
Mattijs Korpershoek | ca89ea5 | 2024-07-12 17:28:01 +0200 | [diff] [blame] | 33 | image: $DOCKER_IMAGE_TAG |
Roman Stratiienko | cef5c77 | 2021-12-22 16:22:24 +0200 | [diff] [blame] | 34 | script: |
Roman Stratiienko | 2bf68c3 | 2022-12-16 12:57:27 +0200 | [diff] [blame] | 35 | - mkdir -p install/arm64 |
Mattijs Korpershoek | ca89ea5 | 2024-07-12 17:28:01 +0200 | [diff] [blame] | 36 | - rm ${HOME}/aospless/src |
| 37 | - ln -s ${PWD} ${HOME}/aospless/src |
| 38 | - make -C ${HOME}/aospless all |
| 39 | - cp -r ${HOME}/aospless/install/* install/arm64 |
Roman Stratiienko | 2bf68c3 | 2022-12-16 12:57:27 +0200 | [diff] [blame] | 40 | |
Roman Stratiienko | d518a05 | 2021-02-25 19:15:14 +0200 | [diff] [blame] | 41 | artifacts: |
Roman Stratiienko | 2bf68c3 | 2022-12-16 12:57:27 +0200 | [diff] [blame] | 42 | paths: |
| 43 | - install/ |
| 44 | expire_in: 1 week |
| 45 | |
| 46 | tidy: |
| 47 | stage: tidy |
Mattijs Korpershoek | ca89ea5 | 2024-07-12 17:28:01 +0200 | [diff] [blame] | 48 | image: $DOCKER_IMAGE_TAG |
Roman Stratiienko | 2bf68c3 | 2022-12-16 12:57:27 +0200 | [diff] [blame] | 49 | script: |
Mattijs Korpershoek | ca89ea5 | 2024-07-12 17:28:01 +0200 | [diff] [blame] | 50 | - rm ${HOME}/aospless/src |
| 51 | - ln -s ${PWD} ${HOME}/aospless/src |
Drew Davenport | 4be73ee | 2024-09-03 11:49:23 -0600 | [diff] [blame] | 52 | - BASE_DIR=${HOME}/aospless make -j$(nproc) -k -f .ci/Makefile |
Drew Davenport | 76b9d61 | 2024-08-09 09:37:57 -0600 | [diff] [blame] | 53 | timeout: 2h |
Roman Stratiienko | d518a05 | 2021-02-25 19:15:14 +0200 | [diff] [blame] | 54 | |
Sean Paul | 592c98a | 2018-09-04 15:30:29 -0400 | [diff] [blame] | 55 | checkstyle: |
Stefan Schake | 0234678 | 2018-05-05 02:39:33 +0200 | [diff] [blame] | 56 | stage: style |
Mattijs Korpershoek | ca89ea5 | 2024-07-12 17:28:01 +0200 | [diff] [blame] | 57 | image: $DOCKER_IMAGE_TAG |
Roman Stratiienko | d518a05 | 2021-02-25 19:15:14 +0200 | [diff] [blame] | 58 | script: "./.ci/.gitlab-ci-checkcommit.sh" |
| 59 | artifacts: |
| 60 | when: on_failure |
| 61 | untracked: true |