NVIDIA / NVIDIA/cuda-python

CI: Add a workflow to add a git tag via web UI

Open
#1,213 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

CI/CD enhancement
Dominant language
Cython
Stars
3.4k
Forks
329
Avg merge
1d 23h
Merged PRs (30d)
116

Description

Today before triggering the release workflow we need to create a git tag locally and push it to the remote repo, because

  1. GitHub for whatever reason does not offer a way for us to do this in the browser
  2. our release workflow needs the tag to reverse-lookup the corresponding run ID:
    https://github.com/NVIDIA/cuda-python/blob/36b8c5fa799ddd9b8c9eb8b4816258485cbeeb7c/.github/workflows/release.yml#L22-L25

However, this mixed workflow is error prone and we did accidentally pushed wrong tags in the past. We should avoid this by adding a workflow to tag (based on the commit). Then, we can consider combine this new workflow with the release workflow, so that we don't need to provide both commit and tag; just the former should be enough for everything.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading .github/workflows/release.yml at lines 22-25 to understand how the release workflow reverse-looks up a run from a tag. Then inspect the repository's existing workflow conventions and define a workflow that accepts a commit and creates its tag through GitHub's web UI; done means the release process no longer requires a locally created tag.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, github-actions
Domain
ci-cd, release
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.