You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GitHub添加自定义按钮,实现向Salesforce DEV Org部署代码变更

在GitHub上添加自定义部署按钮至Salesforce DEV Org的方法

要实现点击自定义按钮将Master分支代码部署到Salesforce DEV Org,核心是利用GitHub Actions的手动触发功能,具体步骤如下:

1. 创建GitHub Actions工作流文件

在你的GitHub仓库中,新建路径 .github/workflows/salesforce-deploy.yml,写入以下工作流配置:

name: 部署至Salesforce DEV Org
on:
  workflow_dispatch:
    branches: [ master ]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: 拉取Master分支代码
        uses: actions/checkout@v4
        with:
          ref: master

      - name: 安装Salesforce CLI
        run: |
          npm install -g sfdx-cli

      - name: 登录Salesforce DEV Org
        run: |
          # 推荐使用JWT认证(更安全)
          sfdx force:auth:jwt:grant --clientid ${{ secrets.SF_CLIENT_ID }} --jwtkeyfile server.key --username ${{ secrets.SF_USERNAME }} --setdefaultdevhubusername -a DevHub
          # 若使用密码+安全令牌认证,替换为下方命令
          # sfdx force:auth:web:login -d -a DevOrg -r ${{ secrets.SF_SERVERURL }} --username ${{ secrets.SF_USERNAME }} --password ${{ secrets.SF_PASSWORD }}

      - name: 部署代码至DEV Org
        run: |
          sfdx force:source:deploy -p force-app -u ${{ secrets.SF_USERNAME }} -w 10

2. 配置GitHub Secrets

在仓库的「Settings」→「Secrets and variables」→「Actions」页面,添加以下敏感信息:

  • SF_USERNAME:Salesforce DEV Org的用户名
  • SF_PASSWORD:用户名对应的密码+安全令牌(仅密码认证时需要)
  • SF_CLIENT_ID:Salesforce Connected App的客户端ID(仅JWT认证时需要)
  • SF_SERVERURL:Salesforce实例地址(比如https://login.salesforce.com)
  • 若用JWT认证,需将私钥文件server.key存放在仓库根目录

3. 触发部署操作

配置完成后,进入仓库的「Actions」页面,找到你创建的「部署至Salesforce DEV Org」工作流:

  • 点击「Run workflow」按钮
  • 确认选择master分支
  • 再次点击「Run workflow」即可触发部署流程

关键说明

  • workflow_dispatch事件是生成自定义按钮的核心,它允许手动触发工作流
  • 部署命令可根据项目结构调整:比如元数据API格式项目,使用sfdx force:mdapi:deploy命令
  • 优先使用JWT认证,避免明文存储敏感信息

内容的提问来源于stack exchange,提问作者Ted

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 20:01:11