Skip to content

Glean support#1112

Merged
eschultink merged 18 commits intorc-v0.5.18from
glean_support
Feb 25, 2026
Merged

Glean support#1112
eschultink merged 18 commits intorc-v0.5.18from
glean_support

Conversation

@aperez-worklytics
Copy link
Contributor

@aperez-worklytics aperez-worklytics commented Feb 12, 2026

Support for Glean Connector.

Adding test, docs, spec.

Fixes

paste links to issues/tasks in project management

Features

Psoxy connector

Logistics

paste links to issues/tasks in project management

Change implications

  • dependencies added/changed? yes (explain) / no
  • something important to note in future release notes?
    • NOTE in CHANGELOG.md anything that will show up in terraform plan/apply that isn't
      obviously a no-op?
    • breaking changes? if in module/example that is NOT marked alpha, requires major version
      change

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new Glean (beta) connector to the Psoxy ecosystem, wiring it into the Java rule bundle, Terraform connector specs/modules, and published documentation/examples so it can be configured and tested consistently like existing connectors.

Changes:

  • Added Glean sanitization rules + Java test coverage based on example API responses.
  • Integrated Glean into Terraform connector specs/modules, including a new glean_instance_name variable and usage in target_host.
  • Updated generated test scripts to safely print JSON bodies for POST examples.

Reviewed changes

Copilot reviewed 23 out of 23 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
java/core/src/test/java/co/worklytics/psoxy/rules/glean/GleanTests.java Adds rules test harness + invocation examples for Glean endpoints.
java/core/src/main/java/co/worklytics/psoxy/rules/glean/PrebuiltSanitizerRules.java Adds Glean prebuilt rules loader and default map entry.
java/core/src/main/java/co/worklytics/psoxy/rules/PrebuiltSanitizerRules.java Registers Glean rules into the global default rules map.
infra/modules/worklytics-connectors/variables.tf Introduces glean_instance_name input variable for deployments.
infra/modules/worklytics-connectors/main.tf Passes glean_instance_name through to connector-specs module.
infra/modules/worklytics-connector-specs/variables.tf Adds glean_instance_name variable to specs module.
infra/modules/worklytics-connector-specs/main.tf Defines the Glean connector spec (host, auth strategy, example requests, TODO instructions).
infra/modules/worklytics-connector-specs/docs/glean/instructions.tftpl Adds Terraform-rendered setup instructions for providing the Glean token.
infra/modules/gcp-psoxy-rest/test_script.tftpl Escapes quotes when printing POST example bodies in the test helper script.
infra/modules/aws-psoxy-rest/test_script.tftpl Same POST-body escaping improvement for AWS test helper script.
infra/examples-dev/gcp/misc-data-source-variables.tf Adds glean_instance_name + validation check for dev examples.
infra/examples-dev/gcp/main.tf Wires glean_instance_name into the dev GCP example module call.
infra/examples-dev/aws/misc-data-source-variables.tf Adds glean_instance_name + validation check for dev examples.
infra/examples-dev/aws/main.tf Wires glean_instance_name into the dev AWS example module call.
docs/sources/glean/glean.yaml Defines allowed endpoints + transforms/schema for Glean responses.
docs/sources/glean/example-api-responses/sanitized/list-entities-response.json Adds sanitized fixture for listentities.
docs/sources/glean/example-api-responses/sanitized/insights-response.json Adds sanitized fixture for insights.
docs/sources/glean/example-api-responses/original/list-entities-response.json Adds original fixture for listentities.
docs/sources/glean/example-api-responses/original/insights-response.json Adds original fixture for insights.
docs/sources/glean/README.md Adds connector documentation, setup, and required scopes.
docs/SUMMARY.md Adds Glean to the docs navigation.
docs/README.md Adds Glean row to the connector/scopes table (and reformats the table block).
CHANGELOG.md Notes the new Glean connector in release notes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

| Source | Details + Examples | API Permissions / Scopes |
|---------------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Asana | [sources/asana](sources/asana/README.md) | a [Service Account](https://asana.com/guide/help/premium/service-accounts) (provides full access to Workspace) |
| Claude Code *beta* | [sources/anthropic/claude-code](sources/anthropic/claude-code/README.md) | | API Key |
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

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

This Markdown table is defined as 3 columns, but the Claude Code *beta* row has an extra | API Key cell, which breaks the table rendering. Please collapse it into the third column (e.g., make the scopes cell say API Key) so all rows have the same number of columns.

Suggested change
| Claude Code *beta* | [sources/anthropic/claude-code](sources/anthropic/claude-code/README.md) | | API Key |
| Claude Code *beta* | [sources/anthropic/claude-code](sources/anthropic/claude-code/README.md) | API Key |

Copilot uses AI. Check for mistakes.
Comment on lines +14 to +20
final RulesTestSpec rulesTestSpec = RulesTestSpec.builder()
.defaultScopeId("glean")
.sourceKind("glean")
.exampleApiResponsesDirectoryPath("example-api-responses/original/")
.exampleSanitizedApiResponsesPath("example-api-responses/sanitized/")
.checkUncompressedSSMLength(false)
.build();
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

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

This method overrides RulesBaseTestCase.getRulesTestSpec; it is advisable to add an Override annotation.

Copilot uses AI. Check for mistakes.
@Getter
public class GleanTests extends JavaRulesTestBaseCase {

final RESTRules rulesUnderTest = PrebuiltSanitizerRules.GLEAN;
Copy link

Copilot AI Feb 12, 2026

Choose a reason for hiding this comment

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

This method overrides RulesBaseTestCase.getRulesUnderTest; it is advisable to add an Override annotation.

Copilot uses AI. Check for mistakes.
Copy link
Member

@eschultink eschultink left a comment

Choose a reason for hiding this comment

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

one comment

@eschultink eschultink merged commit 180a01e into rc-v0.5.18 Feb 25, 2026
48 checks passed
@eschultink eschultink deleted the glean_support branch February 25, 2026 15:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants