Github CI Cross Repo Build

I have created a demo project showing the usage of the cross repo build of Github CI:

In its workflow file, it contains the job like this:

    uses: wildfly/wildfly/.github/workflows/shared-wildfly-build.yml@main
      wildfly-branch: "main"
      wildfly-repo: "wildfly/wildfly"

It will refer to the build file in:

The above build process can produce a wildfly-maven-repository.tar.gz file:

- name: Archive the repository
  run:  |
    cd ~
    find ./.m2/repository -type d -name "*SNAPSHOT" -print0 | xargs -0 tar -czf ~/wildfly-maven-repository.tar.gz
- uses: actions/upload-artifact@v4
    name: wildfly-maven-repository
    path: ~/wildfly-maven-repository.tar.gz
    retention-days: 5

The build process of the WildFly repo will stay in the demo project side, and here is the build process:

And in the demo project build job it needs the output of the wildfly-build job, which is wildfly-maven-repository.tar.gz, and then it will download and extract the tar.gz file:

  runs-on: ubuntu-latest
  needs: wildfly-build
    - uses: actions/checkout@v4
    - uses: actions/download-artifact@v4
        name: wildfly-maven-repository
        path: .
    - name: Extract Maven Repo
      shell: bash
      run: tar -xzf wildfly-maven-repository.tar.gz -C ~

You can see more usages of the feature here:

Note: It needs download-artifact to be upgraded into v4:

My Github Page:

Powered by Jekyll and Theme by solid

If you have any question want to ask or find bugs regarding with my blog posts, please report it here: