elastic / elastic/fleet-server

Provide way to test packaging on PRs

Open
#7,279 0 comments 0 reactions 0 assignees View on GitHub
ci Team:Elastic-Agent-Control-Plane
Dominant language
Go
Stars
113
Forks
117
Avg merge
1d 16h
Merged PRs (30d)
112

Description

The packaging pipeline for fleet-server is pretty fragile as changes do not run on PRs.
We need a to be able to trigger packaging workflows from a PR in order to test any changes.

For example, our pipeline only triggers the packaging pipeline when it's not a PR:
https://github.com/elastic/fleet-server/blob/37dd54621aabb5daa8503891d1ee8b06fe117e94/.buildkite/pipeline.yml#L359-L366

Additionally, some parts of our pipelines only trigger on the main branch or do extra work if the branch is main (for example `package.sh` explicitly checks if the branch is set to main) - we should provide a way to ensure these paths are able to be tested manually before they reach main.

We would likely need to add a manual trigger - similar to how performance tests are invoked - in order to mimic the "main" packaging workflow

Contributor guide

Open the contributing guide

Research direction

Start by reading .buildkite/pipeline.yml around lines 359-366, then inspect package.sh and the existing performance-test invocation for a comparable manual trigger. The change is complete when packaging can be manually run from a PR and the main-branch packaging paths can be exercised before merging.

Written by the indexing model from the issue text.

Assessment

Tech stack
shell
Domain
build-system, ci-cd, release
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.