From 2bed0a700e2f9a1218b08a8725afca570c3c6803 Mon Sep 17 00:00:00 2001 From: kumarb24 Date: Fri, 4 Jul 2025 13:35:49 +0530 Subject: [PATCH 1/5] Added some domain for CORS access control --- .../observability/AccessControlsFilter.java | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java b/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java index 52d2055a..3751ecbd 100644 --- a/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java +++ b/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java @@ -26,6 +26,7 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; +import java.util.Set; import java.util.logging.Logger; /** @@ -65,12 +66,23 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse resp = (HttpServletResponse) response; - resp.addHeader("Access-Control-Allow-Credentials", "true"); - resp.addHeader("Access-Control-Allow-Origin", "https://observability.browserstack.com"); - resp.addHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT"); - resp.addHeader("Access-Control-Allow-Headers", "*"); - resp.addHeader("Access-Control-Expose-Headers", "*"); - resp.addHeader("Access-Control-Max-Age", "999"); + Set allowedOrigins = Set.of( + "https://observability.browserstack.com", + "https://automation.browserstack.com", + "https://automate.browserstack.com", + "https://app-automate.browserstack.com", + "https://test-management.browserstack.com" + ); + + String origin = req.getHeader("Origin"); + if (origin != null && allowedOrigins.contains(origin)) { + resp.addHeader("Access-Control-Allow-Credentials", "true"); + resp.addHeader("Access-Control-Allow-Origin", origin); + resp.addHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT"); + resp.addHeader("Access-Control-Allow-Headers", "*"); + resp.addHeader("Access-Control-Expose-Headers", "*"); + resp.addHeader("Access-Control-Max-Age", "999"); + } if (req.getMethod().equals(PREFLIGHT_REQUEST)) { resp.setStatus(200); From ac205d8368213cb686fbfd16c3d26761bbd5e8c7 Mon Sep 17 00:00:00 2001 From: kumarb24 Date: Fri, 4 Jul 2025 16:21:14 +0530 Subject: [PATCH 2/5] Added some domain for CORS access control --- .../ci/jenkins/observability/AccessControlsFilter.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java b/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java index 3751ecbd..5f0b01f9 100644 --- a/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java +++ b/src/main/java/com/browserstack/automate/ci/jenkins/observability/AccessControlsFilter.java @@ -23,10 +23,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.ObjectStreamException; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.logging.Logger; /** @@ -66,13 +63,13 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse resp = (HttpServletResponse) response; - Set allowedOrigins = Set.of( + Set allowedOrigins = new HashSet(Arrays.asList( "https://observability.browserstack.com", "https://automation.browserstack.com", "https://automate.browserstack.com", "https://app-automate.browserstack.com", "https://test-management.browserstack.com" - ); + )); String origin = req.getHeader("Origin"); if (origin != null && allowedOrigins.contains(origin)) { From d13124c9865fa0e01264c176e4a3c734dbc5831b Mon Sep 17 00:00:00 2001 From: kumarb24 Date: Fri, 4 Jul 2025 16:21:48 +0530 Subject: [PATCH 3/5] [maven-release-plugin] prepare release browserstack-integration-1.2.18 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 7bea2dbe..ae76a814 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ browserstack-integration - 1.2.18-SNAPSHOT + 1.2.18 hpi BrowserStack @@ -34,7 +34,7 @@ scm:git:ssh://github.com/jenkinsci/browserstack-integration-plugin.git scm:git:ssh://git@github.com/jenkinsci/browserstack-integration-plugin.git https://github.com/jenkinsci/browserstack-integration-plugin - HEAD + browserstack-integration-1.2.18