【发布时间】:2019-11-17 17:35:21
【问题描述】:
这是我第一次尝试使用 TravisCI 进行 CI/CD。
我正在尝试对其进行设置,以便对我的 API 密钥进行加密。我的机器上有奇怪的 Ruby 问题,所以不能通过终端加密密钥,我需要在存储库设置中定义变量。
我已将我的 API 密钥存储在我的
~/.gradle/gradle.properties中LUCKY_COINS_API_KEY= "abcd-1234"然后我通过 TravisCI 向我的 repo 添加了一个环境变量,名称和值与上面相同,我尝试使用 ';' 添加它和没有。
-
在我的应用程序
build.gradle我有以下几行。buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' buildConfigField 'String', 'LUCKY_COINS_API_KEY', apiKey() } debug { minifyEnabled true buildConfigField 'String', 'LUCKY_COINS_API_KEY', apiKey() }}
def apiKey() { if (project.hasProperty("LUCKY_COINS_API_KEY")) { return project.properties["LUCKY_COINS_API_KEY"] } else if (System.getenv("LUCKY_COINS_API_KEY") != null) { return System.getenv("LUCKY_COINS_API_KEY") } else { throw Exceptions("Set API Key") } }
所以现在当项目在 CI 上构建时,它可以访问 API 密钥,因为 TravisCI 无法从我的本地主页 gradle.properties 中提取值。问题是我收到以下错误:
全部位于远程BuildConfig.java
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: ';' expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: illegal start of type
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: ';' expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: illegal start of type
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: ';' expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
我无法访问此文件,因此在调试时遇到了问题。
【问题讨论】:
标签: android continuous-integration environment-variables travis-ci