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

[Enhancement] Run Dashboards integTest in parallel on Jenkins #2144

Closed
2 tasks done
peterzhuamazon opened this issue May 24, 2022 · 4 comments
Closed
2 tasks done

[Enhancement] Run Dashboards integTest in parallel on Jenkins #2144

peterzhuamazon opened this issue May 24, 2022 · 4 comments
Assignees
Labels
bug Something isn't working enhancement New Enhancement

Comments

@peterzhuamazon
Copy link
Member

peterzhuamazon commented May 24, 2022

Hi,

This is a build repo follow up to opensearch-project/opensearch-dashboards-functional-test#110.

  1. Add scripts / tweaks in FT repo script finder to allow components separation.
  2. Python code in build repo able to pass --component properly or add something like --test to specify specific test.
  3. Tweak jenkinsfile to consume this changes and run on Jenkins.
@peterzhuamazon
Copy link
Member Author

@gaiksaya
Copy link
Member

In order to run integration tests for dashboard plugins, the plugins need to be part of the test manifest https://github.com/opensearch-project/opensearch-build/blob/main/manifests/2.5.0/opensearch-dashboards-2.5.0-test.yml

Right now only functional-test repo is added as one of the component.

One of the approach to go forward is have functional test repo as default and then parse through the manifest to collect all the components and pass each component as -t <component> to functional test repo.

@gaiksaya
Copy link
Member

Approach:

Clone functional test repo as default and add all plugins as a single component to test manifest

In this approach, functional test repo will be cloned by default based on input manifest (branch). We will add all other components to test manifest as below. The test workflow will iterate over all the components and pass the component name as parameter to functional test repo.
This makes sure we have all the components in test manifest for accountability and single point of truth what tests are run for which component and with what test configuration.

---
schema-version: '1.0'
name: OpenSearch Dashboards
ci:
  image:
    name: opensearchstaging/ci-runner:ci-runner-rockylinux8-opensearch-dashboards-integtest-v2
components:
  - name: OpenSearch-Dashboards
    bwc-test:
      test-configs:
        - with-security
        - without-security
  - name: observabilityDashboards
    integ-test:
      test-configs:
        - with-security
        - without-security
  - name: securityDashboards
    integ-test:
      test-configs:
        - with-security
        - without-security
  - name: anomalyDetectionDashboards
     integ-test:
      test-configs:
        - with-security
        - without-security

@Divyaasm
Copy link
Collaborator

Divyaasm commented May 8, 2023

Closed via #3316 and #3465

@Divyaasm Divyaasm closed this as completed May 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New Enhancement
Projects
Development

No branches or pull requests

4 participants