Codemagic APP_STORE_CONNECT_PRIVATE_KEY 提供的值无效
Posted
技术标签:
【中文标题】Codemagic APP_STORE_CONNECT_PRIVATE_KEY 提供的值无效【英文标题】:Codemagic APP_STORE_CONNECT_PRIVATE_KEY Provided value is not valid 【发布时间】:2021-11-29 07:08:17 【问题描述】:我正在尝试使用 YAML 工作流程在 Codemagic 上签署 ios 构建。在this文档之后,我加密并添加了以下环境变量:
-
APP_STORE_CONNECT_KEY_IDENTIFIER
APP_STORE_CONNECT_ISSUER_ID
APP_STORE_CONNECT_PRIVATE_KEY
CERTIFICATE_PRIVATE_KEY
在运行工作流时出现错误提供的值“APP_STORE_CONNECT_PRIVATE_KEY 的值”无效。什么使这个环境变量值有效?我也尝试为这个值添加 base64 编码,但仍然显示相同的错误。
这是我的 codemagic.yaml 文件:
workflows:
ios-workflow:
name: iOS Workflow
# instance_type: mac_mini
max_build_duration: 120
environment:
groups:
- store
vars:
XCODE_WORKSPACE: "Runner.xcworkspace"
XCODE_SCHEME: "Runner"
BUNDLE_ID: "*MY_BUNDLE_ID*"
flutter: stable
xcode: latest
cocoapods: default
scripts:
- name: Set up keychain to be used for codesigning using Codemagic CLI 'keychain' command
script: |
keychain initialize
- name: Fetch signing files
script: |
# Failing command with invalid APP_STORE_CONNECT_PRIVATE_KEY
**app-store-connect fetch-signing-files $BUNDLE_ID --type IOS_APP_STORE --create**
- name: Use system default keychain
script: |
keychain add-certificates
错误:
invoke_cli 中的文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/cli_app.py”,第 201 行 CliApp._running_app = cls._create_instance(解析器,参数) _create_instance 中的文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/cli_app.py”,第 130 行 实例 = cls.from_cli_args(cli_args) 文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/tools/app_store_connect.py”,第 116 行,在 from_cli_args private_key_argument = AppStoreConnectArgument.PRIVATE_KEY.from_args(cli_args) 文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/argument/argument.py”,第 55 行,在 from_args return self.value.type.from_environment_variable_default() 文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/argument/typed_cli_argument.py”,第 42 行,在 from_environment_variable_default 返回 cls(os.environ[cls.environment_variable_key], from_environment=True) init 中的文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/argument/typed_cli_argument.py”,第 33 行 self.value: T = self._parse_value() _parse_value 中的文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/argument/typed_cli_argument.py”,第 129 行 返回 super()._parse_value() _parse_value 中的文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/argument/typed_cli_argument.py”,第 57 行 返回 self._apply_type(value) _apply_type 中的文件“/Users/builder/.pyenv/versions/3.8.7/lib/python3.8/site-packages/codemagic/cli/argument/typed_cli_argument.py”,第 52 行 raise argparse.ArgumentTypeError(f'提供的值 "value" 无效') argparse.ArgumentTypeError:提供的值“APP_STORE_CONNECT_PRIVATE_KEY 的值”无效
【问题讨论】:
【参考方案1】:确保您以 .p8
格式从 App Store Connect 下载了私有 API 密钥,并在粘贴到环境变量值字段时复制了全部内容。
【讨论】:
是的,我正在粘贴整个文件以及 -----BEGIN PRIVATE KEY-----....-----END PRIVATE KEY-----。仍然面临同样的错误。 更正:我只是把整个钥匙放进去,它就起作用了。感谢您的意见。以上是关于Codemagic APP_STORE_CONNECT_PRIVATE_KEY 提供的值无效的主要内容,如果未能解决你的问题,请参考以下文章