Continuous integration 如何使用git hub操作将新构建发送到repo?

Continuous integration 如何使用git hub操作将新构建发送到repo?,continuous-integration,appium,circleci,github-actions,Continuous Integration,Appium,Circleci,Github Actions,这有点不合常规,但我正在尝试设置一个涉及3次回购的自动化测试套件;iOS/android应用程序repos和另一个用于使用appium的python测试的应用程序。一切都是手动工作的,但现在我们想用github操作或circleci来设置它 这是我心目中理想的工作流程;我们的前端开发人员在GH上创建了一个新版本,该版本发送一个触发器,该触发器创建一个新的应用程序构建,然后触发将在该新构建上运行测试的测试repo 我已经能够通过GHA repo dispatch设置工作流,其中一个repo操作会在

这有点不合常规,但我正在尝试设置一个涉及3次回购的自动化测试套件;iOS/android应用程序repos和另一个用于使用appium的python测试的应用程序。一切都是手动工作的,但现在我们想用github操作或circleci来设置它

这是我心目中理想的工作流程;我们的前端开发人员在GH上创建了一个新版本,该版本发送一个触发器,该触发器创建一个新的应用程序构建,然后触发将在该新构建上运行测试的测试repo

我已经能够通过GHA repo dispatch设置工作流,其中一个repo操作会在不同的repo上触发某些内容,但我无法弄清楚的是如何将新构建从一个repo转移到另一个repo。有可能吗?如果不是,有没有其他方法将新的应用程序构建到我的测试repo中


我是一名初级开发人员,这是我第一次尝试建立持续集成,因此非常感谢您的帮助

要让您的测试存储库知道它应该测试什么,您可以在触发
存储库调度时将发布的git commit SHA发送给它

      - name: Repository Dispatch
        uses: peter-evans/repository-dispatch@v1
        with:
          token: ${{ secrets.PAT }}
          repository: org/test-repo
          event-type: my-event
          client-payload: '{"sha": "${{ github.sha }}"}'
然后,您可以在测试存储库工作流中签出该SHA并对其进行测试

name: Repository Dispatch
on:
  repository_dispatch:
    types: [my-event]
jobs:
  myEvent:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
        with:
          token: ${{ secrets.PAT }}
          repository: org/build-repo
          ref: ${{ github.event.client_payload.sha }}
请注意,在这两个工作流中,您都需要使用
repo
范围


通常,最好在发布构建工件之前对其进行测试。因此,您可能需要考虑稍微重新设计,以便在管道的早期运行测试。可能是在推送到主服务器上,或者在请求分支合并到主服务器之前测试它们。

要让您的测试存储库知道它应该测试什么,您可以在触发
存储库调度时将发布的git commit SHA发送给它

      - name: Repository Dispatch
        uses: peter-evans/repository-dispatch@v1
        with:
          token: ${{ secrets.PAT }}
          repository: org/test-repo
          event-type: my-event
          client-payload: '{"sha": "${{ github.sha }}"}'
然后,您可以在测试存储库工作流中签出该SHA并对其进行测试

name: Repository Dispatch
on:
  repository_dispatch:
    types: [my-event]
jobs:
  myEvent:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
        with:
          token: ${{ secrets.PAT }}
          repository: org/build-repo
          ref: ${{ github.event.client_payload.sha }}
请注意,在这两个工作流中,您都需要使用
repo
范围


通常,最好在发布构建工件之前对其进行测试。因此,您可能需要考虑稍微重新设计,以便在管道的早期运行测试。可能是在推送到主服务器上,或者在请求分支合并到主服务器之前测试它们。

谢谢!我猜它在公关、推送大师等方面也同样有效?谢谢!我猜它在公关、推送大师等方面也有类似的效果?