diff --git a/.github/_ci.yml b/.github/_ci.yml new file mode 100644 index 0000000..acfbf7b --- /dev/null +++ b/.github/_ci.yml @@ -0,0 +1,48 @@ +# yq '. | explode(.)' .github/_ci.yml >| .github/workflows/ci.yml +name: CI For CloudFlare Dynamic DNS client + +on: + pull_request: + branches: + - master + push: + branches: + - master + +permissions: + contents: read + +concurrency: + group: std-${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + discover: + outputs: + hits: ${{ steps.discovery.outputs.hits }} + runs-on: ubuntu-latest + steps: + - uses: nixbuild/nix-quick-install-action@v25 + - uses: DeterminateSystems/magic-nix-cache-action@v2 + - uses: divnix/std-action/discover@main + id: discovery + + packages: &job + needs: discover + name: ${{ matrix.target.jobName }} + runs-on: ubuntu-latest + if: fromJSON(needs.discover.outputs.hits).packages.build != '' + strategy: + matrix: + target: ${{ fromJSON(needs.discover.outputs.hits).packages.build }} + steps: + - uses: nixbuild/nix-quick-install-action@v25 + - uses: DeterminateSystems/magic-nix-cache-action@v2 + - uses: divnix/std-action/run@main + + shells: + <<: *job + if: fromJSON(needs.discover.outputs.hits).shells.build != '' + strategy: + matrix: + target: ${{ fromJSON(needs.discover.outputs.hits).shells.build }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..7d9c33a --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,48 @@ +# yq '. | explode(.)' .github/_ci.yml >| .github/workflows/ci.yml +name: CI For CloudFlare Dynamic DNS client +on: + pull_request: + branches: + - master + push: + branches: + - master +permissions: + contents: read +concurrency: + group: std-${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true +jobs: + discover: + outputs: + hits: ${{ steps.discovery.outputs.hits }} + runs-on: ubuntu-latest + steps: + - uses: nixbuild/nix-quick-install-action@v25 + - uses: DeterminateSystems/magic-nix-cache-action@v2 + - uses: divnix/std-action/discover@main + id: discovery + packages: + needs: discover + name: ${{ matrix.target.jobName }} + runs-on: ubuntu-latest + if: fromJSON(needs.discover.outputs.hits).packages.build != '' + strategy: + matrix: + target: ${{ fromJSON(needs.discover.outputs.hits).packages.build }} + steps: + - uses: nixbuild/nix-quick-install-action@v25 + - uses: DeterminateSystems/magic-nix-cache-action@v2 + - uses: divnix/std-action/run@main + shells: + needs: discover + name: ${{ matrix.target.jobName }} + runs-on: ubuntu-latest + steps: + - uses: nixbuild/nix-quick-install-action@v25 + - uses: DeterminateSystems/magic-nix-cache-action@v2 + - uses: divnix/std-action/run@main + if: fromJSON(needs.discover.outputs.hits).shells.build != '' + strategy: + matrix: + target: ${{ fromJSON(needs.discover.outputs.hits).shells.build }}