github 运行python_Github Actions教程:运行python代码并Push到远端仓库
之前一篇文章介紹了AutoML論文聚合平臺(tái)AutoML論文聚合平臺(tái)?zhuanlan.zhihu.com
因?yàn)轭l繁修改html文件很麻煩,所以這個(gè)平臺(tái)是使用一個(gè)python腳本來(lái)生成。
具體生成的方法是python腳本會(huì)讀取目錄下的csv文件,將每一行數(shù)據(jù)解析成固定格式,然后生成html文件,最后需要將修改后的文件自動(dòng)push到github。但是每次push之前都需要運(yùn)行python文件,這很繁瑣,所以后面使用Github Actions來(lái)實(shí)現(xiàn)了自動(dòng)化部署。具體步驟邏輯如下:本地修改csv文件,然后push到github
push操作會(huì)觸發(fā)實(shí)現(xiàn)設(shè)定好的action運(yùn)行python腳本,生成新的html文件
將修改后的文件再次push到遠(yuǎn)端倉(cāng)庫(kù)
action代碼設(shè)置如下:
name: Python application
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: checkout actions
- uses: actions/checkout@v1
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7
- name: Update paper list
run: |
cd paper_infos
python generate_tables.py
- name: commit
run: |
git config --global user.email 1435679023@qq.com
git config --global user.name marsggbo
git add .
git commit -m "update" -a
- name: Push changes
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
代碼解釋:第一行name: 隨便可以設(shè)置,就是你的action名字
on: 觸發(fā)條件,我這里設(shè)置的是push操作一旦發(fā)生就出發(fā)
jobs: Github Actions的層級(jí)關(guān)系是這樣的: workflow/jobs/steps/action。 注意將action和Github Actions中的Actions區(qū)分開(kāi)來(lái),二者是不同的概念,action就表示最低level的動(dòng)作,Actions就是Github給我們提供的一個(gè)功能的名字而已。
steps:和jobs類似。可以看到steps由若干個(gè)step組成,每個(gè)step都可以設(shè)置name
uses:這個(gè)表示使用別人預(yù)先設(shè)置好的Actions,比如因?yàn)槲掖a中要用到python,所以就用了actions/setup-python@v1來(lái)設(shè)置python環(huán)境,不用我自己設(shè)置了。
run: 表示具體運(yùn)行什么命令行代碼可以看到,我首先在名字為Update paper list里運(yùn)行了python腳本
之后對(duì)github文件夾做了commit
最后使用別人的actions把更新后的代碼再次push到github
最后一行g(shù)ithub_token需要注意,這個(gè)弄了我好一會(huì)才明白,這個(gè)其實(shí)就相當(dāng)于你的密碼吧。這個(gè)設(shè)置方法是進(jìn)入你在個(gè)人設(shè)置頁(yè)面(即Settings,不是倉(cāng)庫(kù)里的Settings),選擇Developer settings>Personal access tokens>Generate new token,設(shè)置名字為GITHUB_TOKEN,然后勾選repo,admin:repo_hook,workflow等選項(xiàng),最后點(diǎn)擊Generate token即可。
MARSGGBO?原創(chuàng)
如有意合作,歡迎私戳
郵箱:marsggbo@foxmail.com
2019-12-24 11:25:45
總結(jié)
以上是生活随笔為你收集整理的github 运行python_Github Actions教程:运行python代码并Push到远端仓库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 排队问题解题思路_三大策略、5个技巧,完
- 下一篇: vim编写python没有代码提示_vi