Reusable workflows.
Find a file
Bob Vandevliet 6bd44f4d54
Some checks failed
docker-build-publish.yml / Added support for floating tags; correct GitVersion stable semver on main branch. (push) Failing after 0s
docker-build-push.yml / Added support for floating tags; correct GitVersion stable semver on main branch. (push) Failing after 0s
Added support for floating tags; correct GitVersion stable semver on main branch.
2026-03-19 11:48:31 +01:00
.github/workflows Added support for floating tags; correct GitVersion stable semver on main branch. 2026-03-19 11:48:31 +01:00
GitVersion.yml Added support for floating tags; correct GitVersion stable semver on main branch. 2026-03-19 11:48:31 +01:00
LICENSE Initial commit 2024-12-24 15:38:42 +01:00
README.md Added missing inputs to README example. 2026-03-19 07:39:06 +01:00

Actions.Shared

Reusable workflows.

Example

So far, primarily used to test, build and push (dotnet core) projects to a Docker container registry.

name: Docker publish

on:
  schedule:
    - cron: '45 0 * * *'
  push:
    branches:
      - '**'
  pull_request:
    branches:
      - '**'

permissions:
  contents: write
  packages: read
  actions: read
  security-events: write

jobs:
  analysis:
    name: Run code analysis and tests
    uses: bvandevliet/Actions.Shared/.github/workflows/dotnet-analysis.yml@master
    with:
      DOTNET_VERSION: 10
      skipTrivyScan: true
  gitversion:
    needs: [analysis]
    name: Execute GitVersion and create tag
    uses: bvandevliet/Actions.Shared/.github/workflows/git-version.yml@master
  build-publish:
    needs: [analysis,gitversion]
    name: Build and publish
    uses: bvandevliet/Actions.Shared/.github/workflows/docker-build-publish.yml@master
    strategy:
      matrix:
        project:
          - my.project.1
          - my.project.2
    with:
      CSPROJ_NAME: ${{ matrix.project }}
      DOTNET_VERSION: 10
      IMAGE_NAME: ${{ github.repository_owner }}/${{ matrix.project }}
      majorMinorPatch: ${{ needs.gitversion.outputs.majorMinorPatch }}
      preReleaseLabel: ${{ needs.gitversion.outputs.preReleaseLabel }}
      semVer: ${{ needs.gitversion.outputs.semVer }}
      assemblySemVer: ${{ needs.gitversion.outputs.assemblySemVer }}
      assemblySemFileVer: ${{ needs.gitversion.outputs.assemblySemFileVer }}
      CR_REGISTRY: docker.io
    secrets:
      CR_USERNAME: ${{ secrets.CR_USERNAME }}
      CR_PASSWORD: ${{ secrets.CR_PASSWORD }}