【问题标题】:Access secure file on Azure DevOps from pipeline when signing Android apk签署 Android apk 时从管道访问 Azure DevOps 上的安全文件
【发布时间】:2021-02-02 12:16:24
【问题描述】:

在签署 Android apk 时如何从“Azure Pipelines”访问存储在“Azure Secure Files”中的 .jks 文件?

我的想法只是调用 gradlew assembleRelease 在 Azure Pipeline 上生成和签署 apk。 登录gradle配置如下:

    signingConfigs {
    register("release") {
        storeFile(file(System.getenv("APK_KEYSTORE")))
        storePassword(System.getenv("APK_KEYSTORE_PASSWORD"))
        keyAlias(System.getenv("APK_KEY_ALIAS"))
        keyPassword(System.getenv("APK_KEY_PASSWORD"))
    }
}

它在本地工作,但无法访问存储在 Azure 中“安全文件”中的 APK_KEYSTORE 文件

我已经尝试过并且有效的是这个Android signing task,但我还需要在本地签名和生成apk,所以我需要上面这个例子

【问题讨论】:

    标签: android azure gradle azure-pipelines


    【解决方案1】:

    如何从“Azure”访问存储在“Azure Secure Files”中的 .jks 文件 管道”,同时签署 Android apk?

    在 Azure Pipelines 中,您无法直接使用 Pipelines -> Library -> Secure files 中的 Secure 文件。

    您需要在管道中添加Download secure file task。然后 .jks 文件将被下载到 $(Agent.TempDirectory)。这是代理临时文件夹(例如 /home/vsts/work/_temp)。

    这是一个例子:

    在运行管道时,会将.jks下载到本地,然后可以在temp文件夹中找到并使用(路径:$(Agent.TempDirectory)/key.jks )。

    【讨论】:

    • 你也可以给任务命名,然后参考这个来找到文件任务: DownloadSecureFile@1 name: 'keystore' //$(keystore.secureFilePath) inputs: secureFile: 'release- key.keystore'
    猜你喜欢
    • 2022-01-03
    • 1970-01-01
    • 2021-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多