GitHub Actions入门指南:从基础概念到实战发布
创作时间:
作者:
@小白创作中心
GitHub Actions入门指南:从基础概念到实战发布
引用
CSDN
1.
https://blog.csdn.net/unravel_tom/article/details/140084575
GitHub Actions 是一个持续集成和持续交付(CI/CD)平台,允许你自动化构建、测试和部署流水线。你可以创建工作流来构建和测试每个提交到代码库的拉取请求,或将合并的拉取请求部署到生产环境中。
CI/CD
CI(Continuous Integration)
持续集成 开发人员每天多次推送代码更改。对于每次推送到代码仓库,您可以创建一组脚本来自动构建和测试您的应用程序。这些脚本有助于减少在您的应用程序中引入错误的机会。
CD(Continuous Delivery(Develoyment))
持续交付(部署)是持续集成的更进一步。不仅在每次代码更改被推送到代码库时都会构建和测试您的应用程序,该应用程序还会被持续部署。
GitHub Actions Wolkflow
你可以配置一个 GitHub Actions工作流,当代码库中的某个事件发生时触发,例如打开拉取请求或创建问题。你的工作流包含一个或多个可以顺序或并行运行的作业。每个作业将在其自己的虚拟机运行器内运行,或在容器内运行,并且有一个或多个步骤,这些步骤可以运行你定义的脚本或运行一个操作,这是一种可以简化工作流的可重用扩展。
- Wolkflow:当代码库中发生某个事件时触发。
- event:如打开拉取请求或创建问题。
- jobs:一个或多个可以顺序或并行运行的任务。
- runner:作业运行的虚拟机或容器。
- steps:作业中的单个操作,可以运行脚本或操作。
- action:简化工作流的可重用扩展。
创建 GitHub Actions
- 官方教程首先创建好一个github仓库
- 打开仓库点击Add file > Creat new file
- 创建.github/workflows/main.yml 除了main可以更换,其他都是固定的。
- Markplace:别人写好的github action,可以copy在自己的.yml文件中
- Documention:官方文档的基本示例
将如下内容复制到main.yml中
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: [push]
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository
run: |
ls ${{ github.workspace }}
- run: echo "🍏 This job's status is ${{ job.status }}."
点击 Commit changes
查看 Wolkflow 结果
下面的日志显示了如何处理每个步骤的细节信息,展开可以查看更多的细节
发布 GitHub Action 到 Markplace
通过一下步骤,您可以将自己的 GitHub Action 发布到 Marketplace,让更多的开发者发现和使用它。
发布 Release
准备您的 Action:
- 确保您的 Action 代码已经在 GitHub 仓库中,并且功能完整、稳定。
- 在仓库根目录创建一个
action.yml
文件,描述您的 Action。
- 编写文档:
- 创建一个详细的 README.md 文件,包含 Action 的使用说明、输入输出参数、示例等。后续可以考虑添加徽章(如构建状态、版本信息等)到您的 README 中。
- 考虑添加一个 CONTRIBUTING.md 文件,说明如何贡献代码。
- 版本控制:
- 使用语义化版本(Semantic Versioning)为您的 Action 创建标签。
- 发布 Release:
- 在 GitHub 仓库中创建一个新的 Release。
- 选择您刚才创建的版本标签。
- 填写 Release 说明。
以上内容也适用于发布一个GitHub项目。
提交到 Marketplace
- 进入您的 GitHub 仓库。
- 点击 "Settings" 标签。
- 在左侧菜单中选择 "Actions"。
- 点击 "Add a new release" 或 "Publish this Action to the GitHub Marketplace"。(确保您的 Action 符合 GitHub 的政策和最佳实践。)
- 填写所需的元数据,如 Action 名称、描述、作者等。
- 选择适当的类别和版本。
- 同意 GitHub Marketplace 开发者协议。
等待审核:
- GitHub 团队会审核您的提交。
- 如果有问题,他们会与您联系。
发布后维护:
- 及时回应用户的问题和反馈。
- 定期更新和改进您的 Action。持续监控和改进 Action 的性能和功能。
热门推荐
非遗“潮”前看 当传统技艺遇上现代文创
“简源共生“:融合乔布斯与埃隆·马斯克智慧之光的设计思维在产品开发中的应用
你所不知道的徐州①|"彭城七里",文脉里的新徐州
乌鲁木齐提出打破区县条块分割,米东可向东南延伸再造一个新城区
转业士官安排去了国有企业工作怎么样?
家庭版红烧鸡肉:解密独特烹饪技巧!
教你如何用调料去腥增香,鸡肉鲜嫩无腥味
新沂"镁合金微弧氧化色彩炫技:探究材料颜色变化之美"
蒙古语家庭称呼:独特的文化传统与亲情表达
当女朋友有抑郁症怎么办?四个方面的实用建议和支持
移植后提重物会对身体恢复有影响吗?
儿童牙齿矫正用哪种牙套结果好?常见矫治器类型|特点|适用人群及注意事项全解!
修真世界的等级秩序:探索最正统的修为划分
牛排选择指南:四种经典牛排部位详解
科学解读:一见钟情的心理机制与影响因素
科学解析:咖啡对健康的影响及适量饮用建议
余少华院士:我国网络通信新的重大风险与挑战思考
股权转让的注意事项是什么?具体解释合同中应包含的条款
七大营养素全解析:人体健康的守护神
首款无激素男性避孕药或将问世:正进行二次人体临床试验
千金难买老来瘦?大错!EHJ:中疾控研究发现,老来胖的人,寿命最长
澳洲债务追讨指南:法律程序与实用建议
李渊两位宠妃多次陷害李世民,李世民称帝后,是如何对待她们的?
看武汉城市废物“变形记” 用科技“点石成金” 将废物“吃干榨尽”
中国网络水军进化史
悬了!13号线二期今年未必能开通?光明人:等到想哭!
腕表编年史:1957 - 1960,介于机械与石英的“过渡技术”
出自诗经的女生名字200个
英国带烟被没收有什么影响
冰封王座经典rpg地图:重温魔兽争霸3的辉煌岁月