使用GitHub Actions自动发布electron多端安装程序

简介: 使用GitHub Actions自动发布electron多端安装程序

GitHub Actions 是一个强大的自动化工具,可以帮助开发者在 GitHub 仓库中自动化构建、测试和部署工作流程。我们的客户端就是使用github action来打包项目发布的。

以下是关于 GitHub Actions 自动化构建的一些关键点和步骤:


GitHub Actions 的基本概念

工作流(Workflows):工作流是由一个或多个作业组成的自动化过程,可以在仓库中定义一个或多个工作流。

事件(Events):工作流可以被 GitHub 仓库中的特定事件触发,如 push、pull request、issue 创建等。

作业(Jobs):一个工作流包含一个或多个作业,这些作业可以并行或顺序执行。

步骤(Steps):每个作业由一系列步骤组成,步骤可以执行命令或使用 Actions。

Actions:是在步骤中调用的独立命令,可以是自己编写的或者是由社区提供的。

自动化构建的步骤

准备项目:

确保你的项目已经托管在 GitHub 上。

准备项目的构建脚本(如 Makefile、Dockerfile、npm scripts 等)。

创建工作流文件:

在你的 GitHub 仓库中创建一个新的 .github/workflows 目录(如果尚不存在)。

在 .github/workflows 目录中创建一个 YAML 文件,用于定义工作流。例如,可以命名为 build.yml。

定义工作流:

在 YAML 文件中,使用 YAML 语法定义工作流。这包括指定触发事件、运行作业的环境(如操作系统)、以及作业的步骤。

使用 actions/checkout@vX(X 为版本号)来检出代码。

使用适合你项目的构建命令或 Actions。例如,对于 Node.js 项目,可以使用 actions/setup-node@vX 来设置 Node.js 环境,并使用 npm install 来安装依赖,npm run build 来构建项目。

配置环境变量和秘密:

如果你的构建过程需要敏感信息(如 API 密钥、数据库密码等),可以在 GitHub 仓库的 Settings > Secrets 中配置这些秘密,并在工作流文件中引用它们。

提交并测试:

将工作流文件提交到你的 GitHub 仓库。

触发工作流(如通过 push 代码到仓库)。

在 GitHub 仓库的 Actions 选项卡中查看工作流的运行状态和结果。

build.yml参考代码

name: build
 
on:
    push:
        tags:
            - '*'
 
jobs:
    release:
        runs-on: ${{ matrix.os }}
 
        strategy:
            matrix:
                os: [windows-latest,ubuntu-latest, macos-13]
 
        # 步骤
        steps:
            # 使用预制action:拉取最新的代码
            - uses: actions/checkout@v3
            # 步骤一的名称:
            - name: Install and Build
              # 该步骤运行的终端命令,进入仓库的目录,安装依赖,运行编译命令
              run: yarn && yarn release
              env:
                  GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}


给你的代码加上tag

# 打上新版本 后面版本号,github action就会运行自动化构建。

git tag v1.0.31

# 提交新版本

git push origin v1.0.31

目录
相关文章
利用 GitHub Actions 自动化你的软件开发流程
在现代软件开发中,自动化是提升效率与质量的关键。GitHub Actions 作为 GitHub 的强大自动化工具,允许你在仓库中自动执行多种任务,如测试、打包、部署代码及自动合并 Pull Requests。本文介绍了 GitHub Actions 的核心概念、设置方法及其实用示例,帮助你快速上手并优化开发流程。通过 YAML 文件定义的工作流程可显著提高工作效率和代码质量。
利用 GitHub Actions 自动化你的软件开发流程
GitHub Actions 是由 GitHub 提供的自动化工具,可让你在仓库中触发和执行自动化工作流程,如自动运行测试和部署应用。其核心概念包括工作流程(定义在 YAML 文件中的一系列自动化步骤)、作业和步骤。本文将指导你如何设置和使用 GitHub Actions,并提供实用的自动化示例,帮助你提高开发效率和代码质量。通过简单的配置文件,你可以实现自动运行测试、部署应用甚至自动合并 Pull Requests。
|
5月前
|
开发者
利用 GitHub Actions 自动化你的软件开发流程
在快速发展的软件开发环境中,自动化对于提升效率与质量至关重要。GitHub Actions 作为一款强大的工具,能帮助开发者实现从自动运行测试到部署应用等工作的自动化。本文详细介绍了 GitHub Actions 的核心概念、设置方法及实际应用示例,如自动测试、部署和合并 Pull Requests,助力提升开发流程的自动化水平。
利用 GitHub Actions 自动化你的软件开发流程
GitHub Actions 是 GitHub 提供的自动化工具,可在仓库中触发和执行工作流程,包括自动运行测试、部署应用等。其核心概念包括工作流程(Workflow)、作业(Job)和步骤(Step),均定义在 YAML 文件中。本文将指导你如何设置和使用 GitHub Actions,并提供自动运行测试、部署应用及合并 Pull Requests 的示例,帮助提高开发效率和代码质量。
|
6月前
|
Java Spring 传感器
AI 浪潮席卷,Spring 框架配置文件管理与环境感知,为软件稳定护航,你还在等什么?
【8月更文挑战第31天】在软件开发中,配置文件管理至关重要。Spring框架提供强大支持,便于应对不同环境需求,如电商项目的开发、测试与生产环境。它支持多种格式的配置文件(如properties和YAML),并能根据环境加载不同配置,如数据库连接信息。通过`@Profile`注解可指定特定环境下的配置生效,同时支持通过命令行参数或环境变量覆盖配置值,确保应用稳定性和可靠性。
94 0
|
6月前
|
Devops 持续交付 开发者
.NET自动化之旅:是Azure DevOps还是GitHub Actions能够打造完美的CI/CD流水线?
【8月更文挑战第28天】在现代软件开发中,持续集成(CI)与持续部署(CD)是提升代码质量和加速交付的关键实践。对于 .NET 应用,Azure DevOps 和 GitHub Actions 等工具可高效构建 CI/CD 流水线,提升开发效率并确保软件稳定可靠。Azure DevOps 提供一站式全流程管理,支持 YAML 定义的自动化构建、测试和部署;GitHub Actions 则以简洁灵活著称,适用于 .NET 项目的自动化流程。选择合适的工具可显著提高开发效率并确保高质量标准。
46 0
|
6月前
|
数据采集 JSON 小程序
零成本 API 服务搭建,用 GitHub Actions 自动爬取文章?
本着将成本降到最低,我目前做的应用或小程序都是单机的,也就是不用请求接口,只要一上架就没有任何支出。但是写死的数据毕竟有限,应用的内容单一无法紧跟时事热点,每次打开一个样,自然就没有留存。遇到有错字啥还要更新版本,那有没有方法既能丰富应用内容,又不用增加成本呢?
56 0
|
6月前
|
JavaScript
GitHub——自动发布NPM包
GitHub——自动发布NPM包
67 0
|
1月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
186 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
4月前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
133 3