Skip to content

Refactor releaser to remove blocking wait stages and avoid CI timeouts #179

@iphydf

Description

@iphydf

The toktok-releaser currently relies on polling and waiting for external events in stages like stage_await_checks, stage_await_merged, and stage_await_master_build. These long-running loops often exceed the 15-minute time limit in certain CI environments (e.g., ubuntu-slim).

Since the releaser is idempotent and determines the next step by inspecting the repository state, we should:

  1. Remove all stages that poll the GitHub API or wait for long-running processes.
  2. Allow the script to exit once it has performed all currently possible actions.
  3. Rely on GitHub events (status check completion, PR merge, etc.) to trigger the script multiple times until the release is finalized.

Since the releaser is designed to work both from GH workflows and also from a developer's local CLI, the poll mechanism should still exist, but not be used when running in a GH workflow.

Metadata

Metadata

Assignees

No one assigned

    Labels

    cleanupInternal code cleanup, possibly affecting semantics, e.g. deleting a deprecated feature.

    Type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions