行业资讯
action-electron-builder配置详解:从基础参数到高级功能的全面指南
action-electron-builder配置详解从基础参数到高级功能的全面指南【免费下载链接】action-electron-builder:electron: GitHub Action for building and releasing Electron apps项目地址: https://gitcode.com/gh_mirrors/ac/action-electron-builderaction-electron-builder是一款强大的GitHub Action工具专为Electron应用的自动化构建和发布设计。它深度集成electron-builder帮助开发者在GitHub CI/CD环境中轻松实现跨平台应用打包与分发无需直接操作macOS、Windows和Linux系统。快速上手基础配置步骤环境准备要求在使用action-electron-builder前需完成两项关键准备工作确保项目已安装并配置electron-builderv22版本具体可参考electron-builder官方文档如需代码编译如TypeScript转JavaScript需在package.json中定义build脚本但请勿在该脚本中执行electron-builder构建过程将由Action自动处理基础工作流示例创建.github/workflows/build.yml文件添加以下基础配置name: Build/release on: push jobs: release: runs-on: ${{ matrix.os }} strategy: matrix: os: [macos-latest, ubuntu-latest, windows-latest] steps: - uses: actions/checkoutv1 - uses: actions/setup-nodev1 with: node-version: 10 - uses: samuelmeuli/action-electron-builderv1 with: github_token: ${{ secrets.github_token }} release: ${{ startsWith(github.ref, refs/tags/v) }}这个配置将在每次代码推送时触发构建并在检测到v*.*.*格式的标签时自动创建发布版本。核心参数配置指南必选基础参数参数名描述示例值github_tokenGitHub认证令牌自动提供无需额外配置${{ secrets.github_token }}release是否在构建成功后发布应用${{ startsWith(github.ref, refs/tags/v) }}常用可选参数在action.yml中定义了丰富的配置选项以下是开发中最常用的几个package_rootNPM/Yarn命令执行目录默认.with: package_root: ./appbuild_script_name构建前执行的NPM脚本名称默认buildwith: build_script_name: compileskip_build是否跳过构建脚本执行默认falsewith: skip_build: trueargs传递给electron-builder的额外参数with: args: --linux deb --win nsis高级功能实现Vue项目集成方案对于Vue.js Electron项目可通过use_vue_cli参数启用Vue CLI插件模式with: use_vue_cli: true此配置会使用vue-cli-service electron:build命令替代直接调用electron-builder需确保项目已安装vue-cli-plugin-electron-builder。代码签名配置macOS签名导出代码签名证书为p12文件并设置密码使用命令base64 -i certs.p12 -o encoded.txt编码证书在GitHub项目设置中添加mac_certs和mac_certs_password密钥在工作流中配置with: mac_certs: ${{ secrets.mac_certs }} mac_certs_password: ${{ secrets.mac_certs_password }}Windows签名类似macOS配置使用windows_certs和windows_certs_password参数即可实现Windows代码签名。应用公证配置macOS实现macOS应用自动公证需以下步骤在App Store Connect获取API密钥、Key ID和Issuer ID在GitHub添加api_key、api_key_id和api_key_issuer_id密钥在工作流中添加准备步骤- name: Prepare for app notarization if: startsWith(matrix.os, macos) run: | mkdir -p ~/private_keys/ echo ${{ secrets.api_key }} ~/private_keys/AuthKey_${{ secrets.api_key_id }}.p8传递环境变量给action-electron-builderenv: API_KEY_ID: ${{ secrets.api_key_id }} API_KEY_ISSUER_ID: ${{ secrets.api_key_issuer_id }}Snapcraft发布配置对于Linux平台如需发布Snap包需添加Snapcraft安装步骤- name: Install Snapcraft uses: samuelmeuli/action-snapcraftv1 if: startsWith(matrix.os, ubuntu) with: snapcraft_token: ${{ secrets.snapcraft_token }}实用工作流技巧条件发布策略通过GitHub Actions表达式实现更精细的发布控制release: ${{ github.event_name release github.event.action published }}构建重试机制使用max_attempts参数设置构建失败自动重试with: max_attempts: 3多平台构建优化通过矩阵策略和条件步骤优化构建效率strategy: matrix: os: [macos-latest, ubuntu-latest, windows-latest] include: - os: ubuntu-latest snap: true steps: - name: Install Snapcraft if: matrix.snap uses: samuelmeuli/action-snapcraftv1项目结构与文件说明action-electron-builder项目包含以下核心文件action.yml定义Action输入参数和执行逻辑index.js核心执行脚本处理环境变量、构建命令和错误处理package.json项目依赖和脚本定义测试目录中提供了多种项目结构示例test/app-in-root应用代码在根目录的项目结构test/app-in-subdirectory应用代码在子目录的项目结构test/vue-appVue.js Electron项目示例常见问题解决构建脚本冲突若package.json中的build脚本与Action冲突可通过build_script_name参数指定自定义构建脚本名称with: build_script_name: electron:compile证书导入失败macOS代码签名时如遇证书问题建议确保证书包含所有必要的中间证书验证base64编码过程未引入额外字符检查密钥密码是否正确发布版本不创建若标签推送后未创建发布检查标签格式是否为v*..如v1.2.3工作流文件中release条件是否正确GitHub Actions日志中是否有错误信息通过合理配置action-electron-builder开发者可以实现Electron应用的全自动化构建、签名和发布流程大幅提升开发效率。无论是小型个人项目还是大型企业应用该工具都能提供稳定可靠的CI/CD支持。【免费下载链接】action-electron-builder:electron: GitHub Action for building and releasing Electron apps项目地址: https://gitcode.com/gh_mirrors/ac/action-electron-builder创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
郑州网站建设
网页设计
企业官网