我试图使用一些简单的脚本(我已经在本地使用了)来做一个GitHub操作,我想要在一个码头容器中运行这些脚本。
一个新的问题应该触发事件,以便根据某些处理更新所述问题的内容。这方面的一个例子可能是:
假设我在脚本中定义了一个标签列表,它检查问题的标题并向问题添加一个标签。
我仍然在阅读GitHub操作的文档,所以我可能还没有完全了解到,但我似乎遇到的问题是,在我的本地机器中,这些脚本使用gh
cli来执行这样的任务(例如。添加标签)。所以,我想知道我是否需要将gh
安装在那个码头容器中,还是有更好的方法来更新这个问题?我非常愿意再次使用GitHub的事件有效负载和其他东西从头开始编写这些脚本,只要我不需要用TypeScript编写。
我查看了文档,没有发现任何关于更新问题的内容。在这里也找不到类似的问题,可能是我错过了什么,所以如果是这样的话,请告诉我相关的材料,我会非常感激的。
发布于 2021-03-23 18:18:55
选项可以(正如您说的那样)在这个码头容器中安装GH,然后运行GH命令。
使用容器的示例:
jobs:
build:
runs-on: ubuntu-latest
container:
image: docker://myrepoandimagewithghinstalled
steps:
- name: Github CLI Authentication
run: gh auth login --hostname <your hostname>
- name: Github CLI commands execution samples
run: |
gh command1
gh command2
gh command3
另一个选项可以是直接在操作系统上安装GH (例如ubuntu-),进行身份验证,然后使用"run“选项执行GH命令。
在操作系统上安装GH的示例:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Install Github CLI
run: |
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0
sudo apt-add-repository https://cli.github.com/packages
sudo apt update
sudo apt install gh
- name: Github CLI Authentication
run: gh auth login --hostname <your hostname>
- name: Github CLI commands execution samples
run: |
gh command1
gh command2
gh command3
最终,您还可以创建一个消耗Github API服务更新问题的脚本,并使用run选项执行脚本。
在工作流中执行Python脚本的示例:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: checkout repo content
uses: actions/checkout@v2 # checkout the repository content to github runner.
- name: setup python
uses: actions/setup-python@v2
with:
python-version: 3.8 #install the python needed
- name: execute py script # run the run.py to get the latest data
run: |
python run.py
env:
key: ${{ secrets.key }} # if run.py requires passwords..etc, set it as secrets
- name: export index
.... # use crosponding script or actions to help export.
https://stackoverflow.com/questions/66756072
复制相似问题