Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] Separated extended testing pipeline #4739

Merged
merged 4 commits into from
May 17, 2024
Merged

Conversation

pazone
Copy link
Contributor

@pazone pazone commented May 13, 2024

What does this PR do?

Depends on #4738
Extracting long running integration tests to a separate pipeline.
Added changeset filters to the main the new pipeline
Added notification context for integration tests

Screenshot 2024-05-15 at 17 36 31

Important: Introduces a concurrency group for each type of exteneded tests. The concurrency groups are limited to 8. That means we can run only 8 jobs of a type simultaneously

For example:

steps:
  - label: "Serverless integration test"
    key: "serverless-integration-tests"
    concurrency_group: elastic-agent-extended-testing/serverless-integration # <- concurrency group
    concurrency: 8 # <- concurrency limit
    env:
      BEAT_NAME: "elastic-agent"
    command: ...

Why is it important?

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in ./changelog/fragments using the changelog tool
  • I have added an integration test or an E2E test

Disruptive User Impact

How to test this PR locally

Related issues

Questions to ask yourself

  • How are we going to support this in production?
  • How are we going to measure its adoption?
  • How are we going to debug this?
  • What are the metrics I should take care of?
  • ...

@pazone pazone added the enhancement New feature or request label May 13, 2024
@pazone pazone requested a review from a team as a code owner May 13, 2024 13:02
@pazone pazone changed the title Separated extended testing pipeline [CI] Separated extended testing pipeline May 13, 2024
Copy link
Contributor

mergify bot commented May 13, 2024

This pull request does not have a backport label. Could you fix it @pazone? 🙏
To fixup this pull request, you need to add the backport labels for the needed
branches, such as:

  • backport-v./d./d./d is the label to automatically backport to the 8./d branch. /d is the digit

NOTE: backport-skip has been added to this pull request.

Copy link
Contributor

@pchila pchila left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@pazone I don't see anything where we add the required check for PRs to have a green build of the new pipeline... Did I miss it or you still need to add it ?

Looking at the checks for this PR I would say we definitely didn't add the required check in GH 😅

image

and the only listed buildkite build does not contain any integration testing...

If we need to merge the pipeline definition before the GH PR check then we should not remove the existing steps for integration testing until we are fully set up with the new pipeline and check

@rdner
Copy link
Member

rdner commented May 14, 2024

@pchila if I understood correctly this PR only extracts the steps into a separate pipeline and another PR #4738 is supposed to actually create resources to run it.

Once both of them are merged, we should be able to add a required check in the repository settings.

Copy link
Contributor

@pchila pchila left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to hold off merging this until we have the check for the extended testing pipeline on GH PRs

Copy link
Contributor

@pchila pchila left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll remove the request changes review, but I am still worried that some bug may be merged while there are no integration tests running since this PR is removing those steps and there will be no replacement until the new pipeline is created and the check added in the GH repo settings as pointed out by @rdner

@cmacknz
Copy link
Member

cmacknz commented May 14, 2024

Why are this and #4738 not a single PR?

@pazone pazone force-pushed the ci_extended_testing_pipeline branch from 044a386 to 71e9149 Compare May 15, 2024 13:33
@pazone
Copy link
Contributor Author

pazone commented May 15, 2024

Why are this and #4738 not a single PR?

First PR creates the new pipeline on main. Then this PR configures it.

@pazone pazone force-pushed the ci_extended_testing_pipeline branch from c3c9120 to ac81ab8 Compare May 15, 2024 15:29
@pazone
Copy link
Contributor Author

pazone commented May 15, 2024

Found a problem with packaging after extracting the pipeline. Solving it

Copy link

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pazone pazone merged commit 6380ea5 into main May 17, 2024
14 checks passed
@pazone pazone deleted the ci_extended_testing_pipeline branch May 17, 2024 18:26
mergify bot pushed a commit that referenced this pull request May 17, 2024
* Separated extended testing pipeline

* remaned to integration pipeline

* Added concurrency group and BEAT_NAME

* removed BEAT_NAME var from Serverless Beats tests

(cherry picked from commit 6380ea5)

# Conflicts:
#	.buildkite/pipeline.yml
mergify bot pushed a commit that referenced this pull request May 17, 2024
* Separated extended testing pipeline

* remaned to integration pipeline

* Added concurrency group and BEAT_NAME

* removed BEAT_NAME var from Serverless Beats tests

(cherry picked from commit 6380ea5)
pazone added a commit that referenced this pull request May 21, 2024
* Separated extended testing pipeline

* remaned to integration pipeline

* Added concurrency group and BEAT_NAME

* removed BEAT_NAME var from Serverless Beats tests

(cherry picked from commit 6380ea5)

Co-authored-by: Pavel Zorin <pavel.zorin@elastic.co>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants