devcontainers / ci

A GitHub Action and Azure DevOps Task designed to simplify using Dev Containers (https://containers.dev) in CI/CD systems.
MIT License
334 stars 51 forks source link

Enable publishing updates to non-latest major.minor tags for GitHub action #232

Open stuartleeks opened 1 year ago

stuartleeks commented 1 year ago

As identified in #223, there is currently a gap in the automated releases for this repo.

Versioning for the GitHub action uses tags in the repo. When someone references devcontainers/ci@vX.Y the workflow runner will look for the vX.Y tag in the repo to fetch. For the Azure DevOps task, the code is packaged as a VSIX file and submitted to the store. The version of the extension matches the version used in the GitHub release tag. In addition to the extension version, tasks within an extension have their own versions (and there can be multiple versions of a task in sepearate folders in the extension - see here).

So, for Azure DevOps tasks a breaking change can be handled by creating a new task version in a folder alongside the existing task. We can publish updates to either task version in a new extension published from main.

The capability that we want to enable is releasing versions of the GitHub action prior to the latest major.minor version (e.g. new versions of v0.2)

The current versioning process:

Proposed versioning process:

stuartleeks commented 1 year ago

@chrmarti - I'd value your input on this

lawrencegripper commented 1 year ago

I think I hit some variant of this today, on the Actions marketplace I can only see v2 of the action

https://github.com/marketplace/actions/devcontainers-ci

image

All the docs and release in the repo suggest @0.3 should be used.

stuartleeks commented 1 year ago

Thanks for flagging. I went to the latest release and clicked the Edit icon. That showed a tick in the "Publish this Action to the GitHub Marketplace" checkbox. I changed nothing and clicked Update in the hope that it might trigger the action to be updated in marketplace, but now it's now showing at all! :-(