Skip to content

Sub-issue: Add support for triggering pipelines on Git tags #55

@pepedinho

Description

@pepedinho

Context / Problem
Currently, Fleet only supports triggering pipelines on branch updates. This works for most continuous integration flows, but it’s limiting when workflows rely on versioned releases or tag-based deployments.

Goal
Extend the existing push trigger to also react to Git tag updates (e.g. v1.0.0, release-*).
This should allow users to define tags alongside branches in the triggers configuration of fleet.yml.


Proposed Changes

  • Update trigger parsing logic to support a tags field in addition to branches.
  • Detect and handle new or updated tags in the remote repository.
  • Ensure tags can be filtered using glob patterns (e.g. v* or release-*).
  • Make the trigger behave consistently with branch triggers (e.g., same logging and pipeline execution flow).

Example

triggers:
  push:
    branches: [main, develop]
    tags: [v*, release-*]

Acceptance Criteria

  • Pipelines can be triggered by a push on a matching tag.
  • Tag filtering works with exact matches and glob patterns.
  • Trigger origin (branch vs tag) is clearly displayed in pipeline logs.
  • Backward compatibility is preserved for branch-only configurations.

Notes / Risks

  • Ensure tag detection does not conflict with branch triggers (e.g., when a tag and a branch share the same name).
  • Properly handle annotated and lightweight tags.
  • Confirm behavior on tag deletion or re-tagging scenarios.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions