【问题标题】:How to target newer versions in .gitlab-ci.yml using auto devops (java 11 instead of 8 and Android 31 instead of 29)如何使用自动 devops 定位 .gitlab-ci.yml 中的较新版本(java 11 而不是 8 和 Android 31 而不是 29)
【发布时间】:2022-01-02 02:03:33
【问题描述】:
我正在使用 gitlab auto devops android 模板 Android.gitlab-ci.yml here 但它使用的是 java 8 映像(而我想使用 java 11)。此外,它的ANDROID_COMPILE_SDK 设置为“29”,我想用最新版本编译我的应用程序 - 目前是 31。
【问题讨论】:
标签:
android
java-8
gitlab
java-11
gitlab-autodevops
【解决方案1】:
还有一个名为 Android.latest.gitlab-ci.yml 的 "latest" template file 可以在 on gitlab here 找到。在撰写本文时,它将image 设置为“openjdk:11-jdk”,将COMPILE_SDK 设置为“30”。有关详细信息,请参阅relevant gitlab MR/discussion。
因此,如果您只想使用模板中的任何内容,您的 .gitlab-ci.yml 只需如下所示:
include:
- template: Android.latest.gitlab-ci.yml
这就是你所需要的。
在撰写本文时,将 ANDROID_COMPLE_SDK 设置为“30”。因此,如果您想提高并自行设置,只需将其添加到该文件中即可。例如:
include:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Android.latest.gitlab-ci.yml
- template: Android.latest.gitlab-ci.yml
variables:
ANDROID_COMPILE_SDK: "31"
ANDROID_BUILD_TOOLS: "31.0.0"
请记住,如果/当有人将模板更新为“32”时,您仍将使用“31”。选择权在你:
- 不要设置任何值(仅使用
include),当有人更新模板时,您会自动获得更新
- 设置/覆盖某些值。更新不会自动进行,因此您必须确保自己维护它们