|
|
@@ -0,0 +1,36 @@
|
|
|
+# 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 }}"
|