关于建议的机密
如果项目需要设置用户特定机密,则你可在用户创建 codespace 时提示用户进行此设置。 你可在存储库的开发容器配置文件中添加设置来实现此目的。
当你指定建议的机密后,如果用户尚未在 Codespaces 个人设置中创建这些机密,则在他们使用创建 codespace 的高级选项方法时,系统会提示他们创建这些机密。 这需在 GitHub 上完成,具体方法是依次单击“ 代码”按钮、“Codespaces”选项卡,然后选择 并单击“使用选项新建” 。
建议的机密列在页面底部。
Note
仅当所选分支上的容器配置指定了这些机密时,建议的机密的名称才会列在此页上。
每个建议的机密都以下列三种方式之一显示:
- 如果用户尚未在 Codespaces 设置中设置建议的机密,则会显示一个输入框,让他们能够立即创建机密。 如果已配置建议的机密,则会显示说明和指向详细信息的链接。 输入值是可选操作。
- 如果用户已创建建议的机密,但尚未将其与此存储库关联,则可选中一个复选框来添加此关联。 这样做是可选操作。
- 如果用户已创建建议的机密并将其与此存储库关联,则会显示一个预选复选框。
何时为项目指定建议的机密
对于创建 Codespace 的用户(而不是存储库或组织的所有者)必须提供的开发环境机密,应使用建议的机密。 例如,如果你有一个公共项目,并且用户必须提供个人 API 密钥才能在项目中运行应用程序,则你可指定一个建议的机密,这样当用户使用高级选项页创建 codespace 时,系统会提示用户提供密钥作为该机密的值。
或者,对于存储库或组织的所有者可提供的开发环境机密(例如在整个团队中共享的 API 密钥),你可在存储库或组织级别设置机密。 有关详细信息,请参阅“管理存储库或组织的开发环境机密”。
在开发容器配置中指定建议的机密
-
可以通过向
devcontainer.json
文件添加设置来配置为存储库创建的 codespace。 如果存储库尚未包含devcontainer.json
文件,可以立即添加一个。 请参阅“将开发容器配置添加到存储库”。 -
编辑
devcontainer.json
文件,将属性secrets
添加到文件顶层,位于封闭的 JSON 对象内。 例如:JSON "secrets": { "NAME_OF_SECRET_1": { "description": "This is the description of the secret.", "documentationUrl": "https://example.com/link/to/info" }, "NAME_OF_SECRET_2": { } }
"secrets": { "NAME_OF_SECRET_1": { "description": "This is the description of the secret.", "documentationUrl": "https://example.com/link/to/info" }, "NAME_OF_SECRET_2": { } }
-
在
secrets
内为要建议的每个机密添加属性。 例如在前面的代码示例中,将NAME_OF_SECRET_1
和NAME_OF_SECRET_2
更改为用户应在 Codespaces 个人设置中创建的机密的名称。 -
(可选)为每个机密提供一个说明,并提供一个有关此机密的详细信息的 URL。
可省略
description
和documentationUrl
,如前面的代码示例中的NAME_OF_SECRET_2
所示。 -
根据需要指定其他机密。
-
保存文件并将更改提交到存储库的所需分支。