+++ /dev/null
-# Make the flake discoverable on https://flakestry.dev
-name: "Publish a flake to flakestry"
-on:
- push:
- tags:
- - "v?[0-9]+.[0-9]+.[0-9]+"
- - "v?[0-9]+.[0-9]+"
- workflow_dispatch:
- inputs:
- tag:
- description: "The existing tag to publish"
- type: "string"
- required: true
-jobs:
- publish-flake:
- runs-on: ubuntu-latest
- permissions:
- id-token: "write"
- contents: "read"
- steps:
- - uses: flakestry/flakestry-publish@main
- with:
- version: "${{ inputs.tag || github.ref_name }}"
--- /dev/null
+# Make the flake discoverable on https://flakestry.dev and https://flakehub.com/flakes
+name: "Publish a flake to flakestry & flakehub"
+on:
+ push:
+ tags:
+ - "*"
+ workflow_dispatch:
+ inputs:
+ tag:
+ description: "The existing tag to publish"
+ type: "string"
+ required: true
+jobs:
+ flakestry-publish:
+ runs-on: ubuntu-latest
+ permissions:
+ id-token: "write"
+ contents: "read"
+ steps:
+ - uses: flakestry/flakestry-publish@main
+ with:
+ version: "${{ inputs.tag || github.ref_name }}"
+ flakehub-publish:
+ runs-on: "ubuntu-latest"
+ permissions:
+ id-token: "write"
+ contents: "read"
+ steps:
+ - uses: "actions/checkout@v4"
+ with:
+ ref: "${{ (inputs.tag != null) && format('refs/tags/{0}', inputs.tag) || '' }}"
+ - uses: "DeterminateSystems/nix-installer-action@main"
+ - uses: "DeterminateSystems/flakehub-push@main"
+ with:
+ visibility: "public"
+ tag: "${{ inputs.tag }}"