| 1 | stages:
|
| 2 | - verify
|
| 3 | - trigger
|
| 4 |
|
| 5 | variables:
|
| 6 | GIT_STRATEGY: clone
|
| 7 | GIT_DEPTH: "500"
|
| 8 | REGISTRY: registry.alpinelinux.org
|
| 9 |
|
| 10 | .k8s-limits-small-job:
|
| 11 | variables:
|
| 12 | KUBERNETES_CPU_REQUEST: 2
|
| 13 | KUBERNETES_MEMORY_REQUEST: 256Mi
|
| 14 |
|
| 15 | workflow:
|
| 16 | rules:
|
| 17 | - if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
| 18 | - if: $CI_PIPELINE_SOURCE == "pipeline" || $CI_PIPELINE_SOURCE == "parent_pipeline"
|
| 19 | - if: $CI_COMMIT_TAG
|
| 20 |
|
| 21 | lint:
|
| 22 | extends: [.k8s-limits-small-job]
|
| 23 | stage: verify
|
| 24 | image: $REGISTRY/alpine/infra/docker/apkbuild-lint-tools:latest
|
| 25 | interruptible: true
|
| 26 | script:
|
| 27 | - lint
|
| 28 | allow_failure: true
|
| 29 | rules:
|
| 30 | - if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
| 31 | tags:
|
| 32 | - docker-alpine
|
| 33 | - ci-fast
|
| 34 |
|
| 35 | generate-build-jobs:
|
| 36 | extends: [.k8s-limits-small-job]
|
| 37 | stage: verify
|
| 38 | image:
|
| 39 | name: $REGISTRY/alpine/infra/docker/alpine-gitlab-ci:latest
|
| 40 | script:
|
| 41 | - pipeline generate .gitlab-ci.yml .gitlab/job-config.yaml >.gitlab/build-jobs.yaml
|
| 42 | artifacts:
|
| 43 | paths:
|
| 44 | - .gitlab/build-jobs.yaml
|
| 45 | tags:
|
| 46 | - docker-alpine
|
| 47 | - ci-fast
|
| 48 | rules:
|
| 49 | - if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
| 50 |
|
| 51 | build-jobs:
|
| 52 | stage: verify
|
| 53 | needs:
|
| 54 | - generate-build-jobs
|
| 55 | trigger:
|
| 56 | include:
|
| 57 | - artifact: .gitlab/build-jobs.yaml
|
| 58 | job: generate-build-jobs
|
| 59 | strategy: depend
|
| 60 | rules:
|
| 61 | - if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
| 62 |
|
| 63 | .build:
|
| 64 | stage: verify
|
| 65 | image:
|
| 66 | name: $REGISTRY/alpine/infra/docker/alpine-gitlab-ci:latest
|
| 67 | interruptible: true
|
| 68 | script:
|
| 69 | - build.sh
|
| 70 | artifacts:
|
| 71 | paths:
|
| 72 | - packages/
|
| 73 | - keys/
|
| 74 | - logs/
|
| 75 | expire_in: 1 day
|
| 76 | when: always
|
| 77 | rules:
|
| 78 | - if: $CI_PIPELINE_SOURCE == "parent_pipeline"
|
| 79 |
|
| 80 | build-x86_64:
|
| 81 | extends: .build
|
| 82 | artifacts:
|
| 83 | name: MR${CI_MERGE_REQUEST_ID}_x86_64
|
| 84 | tags:
|
| 85 | - docker-alpine
|
| 86 | - ci-build
|
| 87 | - x86_64
|
| 88 |
|
| 89 | build-x86:
|
| 90 | extends: .build
|
| 91 | image:
|
| 92 | name: $REGISTRY/alpine/infra/docker/alpine-gitlab-ci:latest-x86
|
| 93 | entrypoint: ["linux32", "sh", "-c"]
|
| 94 | artifacts:
|
| 95 | name: MR${CI_MERGE_REQUEST_ID}_x86
|
| 96 | tags:
|
| 97 | - docker-alpine
|
| 98 | - ci-build
|
| 99 | - x86
|
| 100 |
|
| 101 | build-s390x:
|
| 102 | extends: .build
|
| 103 | artifacts:
|
| 104 | name: MR${CI_MERGE_REQUEST_ID}_s390x
|
| 105 | tags:
|
| 106 | - docker-alpine
|
| 107 | - ci-build
|
| 108 | - s390x
|
| 109 |
|
| 110 | build-ppc64le:
|
| 111 | extends: .build
|
| 112 | artifacts:
|
| 113 | name: MR${CI_MERGE_REQUEST_ID}_ppc64le
|
| 114 | tags:
|
| 115 | - docker-alpine
|
| 116 | - ci-build
|
| 117 | - ppc64le
|
| 118 |
|
| 119 | build-aarch64:
|
| 120 | extends: .build
|
| 121 | artifacts:
|
| 122 | name: MR${CI_MERGE_REQUEST_ID}_aarch64
|
| 123 | tags:
|
| 124 | - docker-alpine
|
| 125 | - ci-build
|
| 126 | - aarch64
|
| 127 |
|
| 128 | build-armv7:
|
| 129 | extends: .build
|
| 130 | image:
|
| 131 | entrypoint: ["linux32", "sh", "-c"]
|
| 132 | docker:
|
| 133 | platform: linux/arm/v7
|
| 134 | artifacts:
|
| 135 | name: MR${CI_MERGE_REQUEST_ID}_armv7
|
| 136 | tags:
|
| 137 | - docker-alpine
|
| 138 | - ci-build
|
| 139 | - armv7
|
| 140 |
|
| 141 | build-armhf:
|
| 142 | extends: .build
|
| 143 | image:
|
| 144 | entrypoint: ["linux32", "sh", "-c"]
|
| 145 | docker:
|
| 146 | platform: linux/arm/v6
|
| 147 | artifacts:
|
| 148 | name: MR${CI_MERGE_REQUEST_ID}_armhf
|
| 149 | tags:
|
| 150 | - docker-alpine
|
| 151 | - ci-build
|
| 152 | - armhf
|
| 153 |
|
| 154 | build-riscv64:
|
| 155 | extends: .build
|
| 156 | artifacts:
|
| 157 | name: MR${CI_MERGE_REQUEST_ID}_riscv64
|
| 158 | tags:
|
| 159 | - docker-alpine
|
| 160 | - ci-build
|
| 161 | - riscv64
|
| 162 |
|
| 163 | build-loongarch64:
|
| 164 | extends: .build
|
| 165 | artifacts:
|
| 166 | name: MR${CI_MERGE_REQUEST_ID}_loongarch64
|
| 167 | tags:
|
| 168 | - docker-alpine
|
| 169 | - ci-build
|
| 170 | - loongarch64
|