TurboDocx / TurboDocx/SDK

publish-java.yml and publish-py.yml missing tag-prefix guard

Open Beginner friendly
#32 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
PHP
Stars
1
Forks
0
Avg merge
12h 19m
Merged PRs (30d)
2

Description

Problem

publish-java.yml and publish-py.yml trigger on release: [created] but don't filter by tag prefix. Every other publish workflow does:

if: startsWith(github.event.release.tag_name, 'js-sdk-v')

As a result, both workflows fire on every SDK release (5x per release wave), not just their own.

Impact observed in 0.3.0 release

  • Java: All 5 runs tried to upload com.turbodocx:turbodocx-sdk:0.3.0 concurrently. First upload (triggered by js-sdk-v0.3.0) won and validated successfully. Other 4 collided with Component ... is currently being published in another deployment and appear as red failures in Actions — noisy and misleading.
  • Python: pypa/gh-action-pypi-publish silently skips duplicates, so all 5 show green, but we're burning 4 wasted runs per release wave and only no-op by luck of the action's default behavior.

Fix

Add a tag-prefix guard to both jobs in each file, mirroring publish-js.yml, publish-php.yml, publish-go.yml:

# .github/workflows/publish-java.yml
jobs:
  publish:
    if: startsWith(github.event.release.tag_name, 'java-sdk-v')
    ...

# .github/workflows/publish-py.yml
jobs:
  publish:
    if: startsWith(github.event.release.tag_name, 'py-sdk-v')
    ...

Repro

0.3.0 release wave: https://github.com/TurboDocx/SDK/actions?query=event%3Arelease — Java fails 4x, Python runs 5x per release wave.

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

Compare .github/workflows/publish-java.yml and .github/workflows/publish-py.yml with publish-js.yml, publish-php.yml, and publish-go.yml. Add the corresponding release tag-prefix guards to both publish jobs, then verify each workflow runs only for its own SDK tag and not for other release tags.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions
Domain
ci-cd
Issue type
Bug
Difficulty
1/5
Estimated time
Under an hour
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
88/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.