Skip to content

[sdk-platform-java] update_generation_config.sh does not consider existing closed PRs when checking for branch existence #12372

Open

Description

@diegomarquezp

For example: https://github.com/googleapis/java-pubsub/blob/ce7cb09ac5e86953815e2ead9ae9202e9b034ba6/.github/scripts/update_generation_config.sh#L109 is used to check whether we have an open PR with the target branch name, but unluckily java-pubsub had a closed PR with that branch name, so the whole action failed due to a git push that conflicted with the remote's contents.

An easy workaround: search for closed PRs (in this case it was this one) and run the action again.

Activity

  1. added
    type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.
    priority: p3Desirable enhancement or fix. May not be included in next release.
    on Dec 8, 2025
  2. zhumin8 commented on Dec 8, 2025

    @zhumin8
    Contributor

    Thanks for pointing out the exact logic accounting for this behavior. I feel we opened similar issues before.
    My understanding this was the intended behavior for the design, but the error should be more specific -- workflow should fail if target branch exists but not associated with a PR. I expect the current error be: fatal: A branch named 'generate-libraries-<your_base_branch>' already exists.
    For clarity, I suppose we can check explicitly and leave a bit more context in the log. I wonder if that would help?

    if [ -z "${pr_num}" ]; then
        # Check if the branch exists on the remote origin
        if git ls-remote --exit-code --heads origin "${current_branch}" >/dev/null 2>&1; then
            echo "Error: Branch '${current_branch}' exists on remote, but no open PR was found."
            echo "Please delete the remote branch or reopen the PR."
            exit 1
        fi
    
        # Safe to create the branch now
        git checkout -b "${current_branch}"
        # Push the current branch to remote so that we can compare the commits later.
        git push -u origin "${current_branch}"
    else
    

    For the time-being, the above workaround is fine.

  3. changed the title [-]`update_generation_config.sh` does not consider existing closed PRs when checking for branch existence[/-] [+][sdk-platform-java] `update_generation_config.sh` does not consider existing closed PRs when checking for branch existence[/+] on Apr 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority: p3Desirable enhancement or fix. May not be included in next release.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions