【问题标题】:Github Actions: Can not acces values in properties fileGithub 操作:无法访问属性文件中的值
【发布时间】:2021-10-22 18:32:20
【问题描述】:

我在访问 build.gradle 文件中的秘密变量时遇到了一些问题。我在 Github repo 设置中定义了两个秘密:PUBLIC_API_KEY 和 PRIVATE_API_KEY

在我的 actions.yml 文件中,我从秘密中读取它们,解码并写入 apikey.properties 文件

name: My fancy app 

on: [ push, pull_request ]

defaults:
  run:
    shell: bash

jobs:

  build:

    runs-on: ubuntu-latest

    steps:
      - name: Clone Repo
        uses: actions/checkout@v1

      - name: Acces API Public Key
        env:
          PUBLIC_API_KEY: ${{ secrets.PUBLIC_API_KEY }}
        run: echo "$PUBLIC_API_KEY" | base64 -d > ./apikey.properties

      - name: Acces API Private Key
        env:
          PRIVATE_API_KEY: ${{ secrets.PRIVATE_API_KEY }}
        run: echo "$PRIVATE_API_KEY" | base64 -d > ./apikey.properties

在我的 build.gradle 中,我从 apikey.properties 文件创建了一个属性对象,并尝试读取在上一步中保存的变量。这就是我的 build.gradle 文件中的样子

def apikeyPropertiesFile = rootProject.file("apikey.properties")
def apikeyProperties = new Properties()
try {
    apikeyProperties.load(new FileInputStream(apikeyPropertiesFile))
    println("Private Key value" + apikeyProperties['PRIVATE_API_KEY'])
    println("Public Key value" + apikeyProperties['PUBLIC_API_KEY'])
} catch(Exception exception) {
    println("Error by loading properties file" + exception.message)
}
....

buildConfigField("String", "PRIVATE_API_KEY", apikeyProperties['PRIVATE_API_KEY'])
buildConfigField("String", "PUBLIC_API_KEY", apikeyProperties['PUBLIC_API_KEY'])

构建失败,因为两个 apiKeyProperties 值均为空。

谁能告诉我,为什么这些值为空?

【问题讨论】:

    标签: android gradle devops github-actions


    【解决方案1】:

    感谢this 的帖子,我发现 apikey.properties 文件中缺少密钥。这就是我的修复的样子:

    ....
     - name: Acces API Keys
            run: |
              touch apikey.properties
              echo PUBLIC_API_KEY=${{ secrets.PUBLIC_API_KEY }} >> apikey.properties
              echo PRIVATE_API_KEY=${{ secrets.PRIVATE_API_KEY }} >> apikey.properties
              cat apikey.properties
    ...
    

    【讨论】:

      猜你喜欢
      • 2021-10-02
      • 2012-03-19
      • 2020-07-11
      • 2021-05-18
      • 2020-09-11
      • 2021-12-17
      • 1970-01-01
      • 2021-05-21
      • 2014-10-05
      相关资源
      最近更新 更多