JavaScript Github操作中的环境变量

问题描述

我正在编写一个javascript github动作。在我的action.yml中,我有以下内容:

runs:
  using: node12
  main: ./index.js

在我的index.js内,我正在调用需要密钥的api。我想使用自己的秘密密钥。我不希望使用我的操作来定义自己的密钥的用户。如何将我的秘密密钥作为秘密or env变量添加到文件中?

解决方法

秘密需要来自某个地方。即使您为外部api加密令牌并直接将其托管在操作的代码中,您仍然需要密码来解密它,并且该令牌必须来自操作用户的秘密条目,因为它需要托管在该操作中他们自己的存储库或组织。

如果您想加密秘密的示例,但仍需要密码,因此我们又回到了同一条船上。

gpg --symmetric --cipher-algo AES256 my_secret.json

这种情况之所以不理想,是因为据我了解,您希望对操作的所有用户使用一个令牌。因此,机密将需要以某种方式公开,因为多个用户将需要具有该令牌,因此,您可以直接在操作中托管令牌,或告诉用户通过其机密设置将其作为操作变量或环境提供给您。这是一个示例,用户以两种不同的方式共享令牌以进行操作。

steps:
  - name: Hello world action
    with: # Set the secret as an input
      super_secret: ${{ secrets.SuperSecret }}
    env: # Or as an environment variable
      super_secret: ${{ secrets.SuperSecret }}

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...