我的安卓项目使用了在 ~/.gradle/gradle.properties
中定义的一些密钥。这些文件在 git 中被有意忽略了。是否有方法让 Github Actions 访问这些属性?
我的安卓项目使用了在 ~/.gradle/gradle.properties
中定义的一些密钥。这些文件在 git 中被有意忽略了。是否有方法让 Github Actions 访问这些属性?
gradle.properties
文件,其中一个是项目的根目录。gradle.properties
,请在项目的根目录下创建一个文件并提交到Git。而位于主目录下的文件应该保留不变。
gradle.properties
文件提交到git,我的第一个问题是为什么?GRADLE_PROPERTIES
的秘密信息,那么您可以在步骤之一中执行以下操作:steps:
- uses: actions/checkout@v2
- name: Restore gradle.properties
env:
GRADLE_PROPERTIES: ${{ secrets.GRADLE_PROPERTIES }}
shell: bash
run: |
mkdir -p ~/.gradle/
echo "::set-env name=GRADLE_USER_HOME::$HOME/.gradle"
echo ${GRADLE_PROPERTIES} > ~/.gradle/gradle.properties
执行此步骤后,gradle 将使用该文件来配置自身,进而使您的项目配置完毕。
我们需要使用$GITHUB_ENV
环境变量来存储GRADLE_USER_HOME
,因为旧的::set-env
已经被弃用。
这里是一个示例工作流程:
name: build
on: [ push ]
jobs:
build-app:
runs-on: ubuntu-latest
steps:
- name: Checkout the code
uses: actions/checkout@v2
- name: Restore gradle.properties
env:
GRADLE_PROPERTIES: ${{ secrets.GRADLE_PROPERTIES }}
shell: bash
run: |
mkdir -p ~/.gradle/
echo "GRADLE_USER_HOME=${HOME}/.gradle" >> $GITHUB_ENV
echo "${GRADLE_PROPERTIES}" > ~/.gradle/gradle.properties
- name: Build the app
run: ./gradlew build
~/.gradle/gradle.properties
是用户特定的属性,应该避免版本控制。
如果您有密钥或任何敏感数据需要与您的 Github Actions 共享,请考虑使用加密的 Secrets。
"
gradle.properties
),但不包括~/.gradle/gradle.properties
。有关属性文件合并的更多详细信息,请参阅https://docs.gradle.org/current/userguide/build_environment.html。 - Achraf Amilecho“your.gradle.property=value”>> gradle.properties
。 - Achraf Amil