【问题标题】:Salesforce Github ActionsSalesforce Github 操作
【发布时间】:2022-11-21 18:50:27
【问题描述】:

我们是否可以配置我们的 github 操作 yml 文件,以便每当我们提交到我们的存储库时,它会自动准备空的 package.xml 文件,其中包含已提交的组件并开始部署到目标组织?

我知道当我们有 packaged.xml 文件和其中的组件时它是如何完成的,但是这里 package.xml 文件应该是空的,每当我们将更改提交到存储库时,yml 会自动准备要部署的组件基于在空的 package.xml 文件中提交,然后最终部署到组织

【问题讨论】:

    标签: github salesforce devops github-actions


    【解决方案1】:

    对于触发事件,您需要在 yml 中定义“on”。您可以从 https://github.com/trailheadapps/lwc-recipes/blob/main/.github/workflows/ci.yml 中的内容开始 - 对主分支的任何提交/拉取请求,除非它只是一个自述文件更改。并且也允许手动触发

    on:
        workflow_dispatch:
        push:
            branches:
                - main
            paths-ignore:
                - 'sfdx-project.json'
                - 'README.md'
    

    至于实际命令...

    您的 Github 存储库的格式是什么?老式元数据 api 格式(包含 package.xml、包含数十个字段、列表视图、验证规则的 Account.object)或新的源跟踪格式(Account 是一个文件夹,每个字段都有自己的小 xml 文件,最重要的目录可能是“强制应用/主要/默认”)?

    您应该能够在您的 github 操作中调用 sfdx force:source:convert -d mdapi 来创建一个名为“mdapi”的临时目录。如果您正在制作托管包,请阅读有关“-n”选项的信息。它将包含您的更改,但已从源代码转换为 mdapi 格式。

    有些事情它不会做a hand-crafted package.xml would(描述,安装后类) - 但是同样,当你制作托管包时,这些往往很重要,对于正常使用你应该没问题。

    convert之后试试sfdx force:mdapi:deploy -d mdapi -l RunLocalTests -w -1 -c(元数据格式部署,哪个目录,哪个测试,需要就等,验证就好,不要真正部署)

    有 sfdx 插件使其更智能(在 2 次提交之间部署一个增量,而不是每次都部署一个完整的项目)。 https://wiki.sfxd.org/books/sfdc-tools/page/notable-sfdx-plugins-and-resources

    【讨论】:

      猜你喜欢
      • 2020-03-10
      • 2020-05-02
      • 2021-10-01
      • 2020-08-10
      • 1970-01-01
      • 1970-01-01
      • 2020-09-19
      • 1970-01-01
      • 2020-02-04
      相关资源
      最近更新 更多