Skip to content

Release Procedure

LinuxChata edited this page Apr 25, 2026 · 2 revisions

This document outlines the procedure for preparing and executing a new release of the Shark WebAuthn packages.

Preparing the release branch

  1. Create a release branch:

    git checkout -b release/X-Y-Z

  2. Update version in GitHub actions: Modify the following YAML files in the .github/workflows/ directory to update the version number to X.Y.Z:

    • build_nuget_packages.yml: Update the /p:Version property in the Pack step.
    • build_template.yml: Update the /p:Version property in the Pack step.
    • build_docker_image.yml: Update the Docker tags for the sample application.
  3. Commit the changes:

    git add .

    git commit -m "Release X.Y.Z"

  4. Push and raise a pull request:

    git push origin release/X-Y-Z

  5. Open a pull request on GitHub from release/X-Y-Z to main.

  6. Once the default pull request's builds are completed, the release must be manually triggered via GitHub Actions.

    a. NuGet packages:

    • Navigate to the Actions tab on GitHub.
    • Select the NuGet workflow.
    • Click Run workflow selecting the release branch.
    • This will publish the libraries to both GitHub Packages and NuGet.org.

    b. Docker Hub:

    • Select the Build Docker image workflow.
    • Click Run workflow.
    • This updates the shark-fido2-sample image on Docker Hub with the latest and vX.Y.Z tags.
  7. Update versions of the Shark Fido2 packages in templates\projects\Shark.Fido2.VisualStudio.Template\content\Shark.Fido2.Sample.VisualStudio.Template.csproj project file. Commit the changes

  8. Once the default pull request's builds are completed, the release of project template must be manually triggered via GitHub Action.

    • Navigate to the Actions tab on GitHub.
    • Select the Visual Studio Template workflow.
    • Click Run workflow selecting the release branch.
    • This will publish the project template to NuGet.org.
  9. Complete a pull request.

  10. Create GitHub release. Tag the release using the vX.Y.Z format (e.g., v1.5.0) and provide a comprehensive summary of the changes, bug fixes, and new features included.

  11. Update demonstration portal.

Verification

  1. Check NuGet: Confirm all packages are updated on NuGet.org.
  2. Check Docker: Verify the new image tag is present on Docker Hub.

Clone this wiki locally