diff --git a/.gitea/workflows/artifacthub-metadata.yaml b/.gitea/workflows/artifacthub-metadata.yaml new file mode 100644 index 0000000..b84b528 --- /dev/null +++ b/.gitea/workflows/artifacthub-metadata.yaml @@ -0,0 +1,47 @@ +name: Upload ArtifactHub Metadata + +on: + schedule: + - cron: '0 3 1 * *' + workflow_dispatch: + +jobs: + upload-metadata: + name: "Upload artifacthub-repo.yml to OCI registry" + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6.0.2 + - uses: oras-project/setup-oras@v1.2.1 + with: + version: 1.2.2 # renovate: datasource=github-tags depName=oras-project/oras extractVersion='^v?(?.*)$' + - name: Login to OCI registry + run: | + echo "${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}" | \ + oras login git.cryptic.systems \ + --username ${{ github.repository_owner }} \ + --password-stdin + + - name: Push artifacthub-repo.yml to git.cryptic.systems + run: | + oras push git.cryptic.systems/volker.raschek/dcmerge:artifacthub.io \ + --config /dev/null:application/vnd.cncf.artifacthub.config.v1+yaml \ + artifacthub-repo.yml:application/vnd.cncf.artifacthub.repository-metadata.layer.v1.yaml + + - name: Login to docker.io + run: | + echo "${{ secrets.DOCKER_IO_PASSWORD }}" | \ + oras login docker.io \ + --username ${{ secrets.DOCKER_IO_USERNAME }} \ + --password-stdin + + - name: Push artifacthub-repo.yml to docker.io + run: | + oras push docker.io/volkerraschek/dcmerge:artifacthub.io \ + --config /dev/null:application/vnd.cncf.artifacthub.config.v1+yaml \ + artifacthub-repo.yml:application/vnd.cncf.artifacthub.repository-metadata.layer.v1.yaml + + - name: Logout from registries + if: always() + run: | + oras logout git.cryptic.systems + oras logout docker.io