Skip to content

Publish Crate

Publish Crate #5

name: Creates.io Publish
on:
# # Publish when tagged
# push:
# tags: [ "v[0-9]+.[0-9]+.[0-9]+*" ]
# # Publish when triggered manually on GitHub UI
# workflow_dispatch:
# Run when "CI" workflow runs
workflow_run:
workflows: [ "CI" ]
types: [ completed ]
branches: [ main ]
env:
CARGO_TERM_COLOR: always
jobs:
publish:
name: Publish
runs-on: ubuntu-latest
# Run Publish only if the triggering workflow completed successfully,
# and the workflow ref was a "version tag" of the format "vX.Y.Z"
if: |
github.event.workflow_run.conclusion == 'success'
&&
github.ref == 'ref/tags/v[0-9]+.[0-9]+.[0-9]+*'
steps:
- name: Dummy echo
run: echo "Crates.io publish was triggered"
# - name: Dependencies
# run: |
# sudo apt update
# sudo apt install -y libsasl2-dev
#
# - name: Check-out
# uses: actions/checkout@v4
#
# - name: Toolchain
# uses: actions-rs/toolchain@v1
# with:
# toolchain: stable
# profile: minimal
# override: true
#
# - name: Cargo publish
# run: cargo publish --locked
# env:
# CARGO_REGISTRY_TOKEN: ${{ secrets.CRATES_IO_PUBLISH_TOKEN }}
skip-publish:
name: Skip Publish
runs-on: ubuntu-latest
if: |
github.event.workflow_run.conclusion != 'success'
||
github.ref != 'ref/tags/v[0-9]+.[0-9]+.[0-9]+*'
steps:
- run: echo "Publishing was skipped - precondition not met"