栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

在编写GitHub Actions配置文件时候的一些总结(1)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在编写GitHub Actions配置文件时候的一些总结(1)

我在编写EasyGitTool相关的CI的时候,我找了很多的与GitHub Actions有关的技术文档,但我认为为了不要让我在这样找,我决定以写一篇文章来记录这些事情。

发布到Pypi 基本步骤
- name: Install dependencies
    run: |
        python -m pip install --upgrade pip
        pip install setuptools wheel twine
- name: Build and publish
    env:
        TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
        TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
    run: |
        python setup.py sdist bdist_wheel
        twine upload dist/*
在加了tag后才发布

在每一个- name: 后加上if: startsWith(github.ref, 'refs/tags/')

- name: Install dependencies
    if: startsWith(github.ref, 'refs/tags/')
    run: |
        python -m pip install --upgrade pip
        pip install setuptools wheel twine
- name: Build and publish
    if: startsWith(github.ref, 'refs/tags/')
    env:
        TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
        TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
    run: |
        python setup.py sdist bdist_wheel
        twine upload dist/*
自动化写版本号

你可以建一个通过echo命令建立一个ver.py,但是在setup.py在前面import ver,然后version = ver.ver文件内声明的变量,像下面那样

from setuptools import setup, find_packages

import ver

setup(
    name = "你的项目名",  
    version = ver.ver,
    long_description = "你的项目的概述",  
    license = "你的项目的开源许可证",
    url = "你的项目的网站",  
    author = "作者名",  
    packages = find_packages(),  
    include_package_data = True,  
    platforms = "你的项目支持的平台",  
    install_requires = [],  
    keywords=["你的项目的关键词"],
    scripts = []
)

ver.py要与setup.py在同一目录内!

- name: Install dependencies
    if: startsWith(github.ref, 'refs/tags/')
    run: |
        python -m pip install --upgrade pip
        pip install setuptools wheel twine
- name: Build and publish
    if: startsWith(github.ref, 'refs/tags/')
    env:
        TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
        TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
    run: |
        echo 'ver = "V0.'${{ github.run_id }}'.dev"'>ver.py
        python setup.py sdist bdist_wheel
        twine upload dist/*
发布GitHub Release 手动写版本号
- name: Create Release and Upload Release Asset
	uses: softprops/action-gh-release@v1
	with:
		tag_name: V0.1 # 你也可以将其输入为V1.2……
		name: V0.1 # 你也可以将其输入为V1.2……
		body: TODO New Release.
		draft: false  # 是否是草稿
		prerelease: true # 是否是预览版
		files: |
			# 你要上传的文件
自动化写版本号
- name: Create Release and Upload Release Asset
	uses: softprops/action-gh-release@v1
	with:
		tag_name: V0.${{ github.run_id }}.dev
		name: V0.${{ github.run_id }}.dev
		body: TODO New Release.
		draft: false  # 是否是草稿
		prerelease: true # 是否是预览版
		files: |
			# 你要上传的文件
在加了tag后才发布

在每一个- name: 后加上if: startsWith(github.ref, 'refs/tags/')

- name: Create Release and Upload Release Asset
	if: startsWith(github.ref, 'refs/tags/')
	uses: softprops/action-gh-release@v1
	with:
		tag_name: V0.${{ github.run_id }}.dev
		name: V0.${{ github.run_id }}.dev
		body: TODO New Release.
		draft: false  # 是否是草稿
		prerelease: true # 是否是预览版
		files: |
			# 你要上传的文件
语法描述
${{ github.run_id }}运行身份标识(就是一堆纯数字)
github.ref当前分支名称(但必须要用“refs/tags/”或“refs/heads/main”)
重命名

重命名这部分,我原本不想写的,但就是这部分浪费了我一个小时的时间(主要是GitHub Actions构建速度有些慢)。当时,我原本是要rename来去完成这个东西,谁知道CI报错了,到后面我找了一些资料才知道——原来用mv是可以的。那我之前搞了那么一个小时真的是浪费了。
所以当我们要重命名文件的时候,只要用mv 原来的文件名 你想要的文件名就可以了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1018704.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号