Gitlab Ci include local 只在最后执行
Gitlab Ci include local only executes last
我有很多不同的 android 风格来构建一个应用程序,所以我想将构建拆分成不同的 yml 文件。我目前有我的基本文件 .gitlab-ci.yml
image: alvrme/alpine-android:android-29-jdk11
variables:
GIT_SUBMODULE_STRATEGY: recursive
before_script:
- export GRADLE_USER_HOME=`pwd`/.gradle
- chmod +x ./gradlew
cache:
key: "$CI_COMMIT_REF_NAME"
paths:
- .gradle/
stages:
- test
- staging
- production
- firebaseUpload
- slack
include:
- local: '/.gitlab/bur.yml'
- local: '/.gitlab/vil.yml'
- local: '/.gitlab/kom.yml'
我目前正在尝试制作 3 种不同的口味。但我不知道为什么只执行最后包含的 yml 文件。前 2 个被忽略。
/.gitlab/bur.yml
unitTests:
stage: test
script:
- ./gradlew testBurDevDebugUnitTest
/.gitlab/vil.yml
unitTests:
stage: test
script:
- ./gradlew testVilDevDebugUnitTest
/.gitlab/kom.yml
unitTests:
stage: test
script:
- ./gradlew testKomDevDebugUnitTest
您观察到的情况与预期的行为相似:
您的三个文件 .gitlab/{bur,vil,kom}.yml
包含相同的作业名称 unitTests
。
因此,每个 include
都会覆盖此作业的规范。
结果,你最终只得到 1 unitTests
个作业,使用最后一个 YAML 文件的规范。
因此,最简单的解决方法是更改此作业名称,例如:
unitTests-kom:
stage: test
script:
- ./gradlew testKomDevDebugUnitTest
我有很多不同的 android 风格来构建一个应用程序,所以我想将构建拆分成不同的 yml 文件。我目前有我的基本文件 .gitlab-ci.yml
image: alvrme/alpine-android:android-29-jdk11
variables:
GIT_SUBMODULE_STRATEGY: recursive
before_script:
- export GRADLE_USER_HOME=`pwd`/.gradle
- chmod +x ./gradlew
cache:
key: "$CI_COMMIT_REF_NAME"
paths:
- .gradle/
stages:
- test
- staging
- production
- firebaseUpload
- slack
include:
- local: '/.gitlab/bur.yml'
- local: '/.gitlab/vil.yml'
- local: '/.gitlab/kom.yml'
我目前正在尝试制作 3 种不同的口味。但我不知道为什么只执行最后包含的 yml 文件。前 2 个被忽略。
/.gitlab/bur.yml
unitTests:
stage: test
script:
- ./gradlew testBurDevDebugUnitTest
/.gitlab/vil.yml
unitTests:
stage: test
script:
- ./gradlew testVilDevDebugUnitTest
/.gitlab/kom.yml
unitTests:
stage: test
script:
- ./gradlew testKomDevDebugUnitTest
您观察到的情况与预期的行为相似:
您的三个文件 .gitlab/{bur,vil,kom}.yml
包含相同的作业名称 unitTests
。
因此,每个 include
都会覆盖此作业的规范。
结果,你最终只得到 1 unitTests
个作业,使用最后一个 YAML 文件的规范。
因此,最简单的解决方法是更改此作业名称,例如:
unitTests-kom:
stage: test
script:
- ./gradlew testKomDevDebugUnitTest