Skip to content

CSPL-3357: Enforce Acknowledgment of Splunk General Terms (SGT) #1496

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

Open
wants to merge 11 commits into
base: feature/splunk10
Choose a base branch
from

Conversation

rlieberman-splunk
Copy link
Collaborator

This description was generated in part by GitHub Copilot.

Description

This pull request introduces changes to support a mandatory acknowledgment mechanism for the Splunk General Terms (SGT) in the Splunk Operator for Kubernetes. The updates include adding a new SPLUNK_GENERAL_TERMS environment variable, modifying deployment configurations, and updating documentation to guide users on the new requirements.

Key Changes

Configuration Updates

  • Added a new environment variable SPLUNK_GENERAL_TERMS with a default empty value in multiple configuration files, including Makefile, kustomization.yaml, and deployment manifests. This variable must be set to "--accept-current-at-splunk-com" to comply with the SGT acknowledgment mechanism. [1] [2] [3] [4] [5]

Deployment Behavior

  • Updated deployment commands and scripts to include the SPLUNK_GENERAL_TERMS variable, ensuring it is passed during deployment or artifact generation. [1] [2] [3]

Documentation Enhancements

  • Added detailed guidance in README.md and docs/Install.md on how to configure the SPLUNK_GENERAL_TERMS variable during deployment. [1] [2]
  • Introduced a new FAQ document, SplunkGeneralTermsMigration.md, explaining the motivation, impact, and migration steps for the SGT acknowledgment mechanism.

Minor Fixes

  • Corrected a typo in docs/AppFramework.md (changed "LicenceManager" to "LicenseManager").

Testing and Verification

  • Existing unit tests have been updated to set the SPLUNK_GENERAL_TERMS environment variable
  • Unit tests have been added for each CRD to test the creation failure if the SPLUNK_GENERAL_TERMS environment variable is not set
  • Manual tests to deploy the operator and multiple different svas via helm and kubectl manifest files have been completed on an aws eks cluster
  • Manual tests with the existing splunk operator and a splunk enterprise 10 version were completed to verify that the changes in this PR fix required changes for splunk 10

Related Issues

PR Checklist

  • Code changes adhere to the project's coding standards.
  • Relevant unit and integration tests are included.
  • Documentation has been updated accordingly.
  • All tests pass locally.
  • The PR description follows the project's guidelines.

@rlieberman-splunk rlieberman-splunk changed the title Cspl 3357 configmap CSPL-3357: Enforce Acknowledgment of Splunk General Terms (SGT) Apr 25, 2025
Copy link
Collaborator

@vivekr-splunk vivekr-splunk left a comment

Choose a reason for hiding this comment

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

Is there way to simplify this to say "ACCEPT_SPLUNK_GENERAL_TERMS" and value as "yes" or "no" . and in the code we can pass "--accept-current-at-splunk-com" to docker image

@@ -16,6 +16,11 @@ SPLUNK_ENTERPRISE_IMAGE ?= "docker.io/splunk/splunk:edge"
# add namespace to this
WATCH_NAMESPACE ?= ""

# SPLUNK_GENERAL_TERMS is used for the mandatory acknowledgment mechanism for
# the Splunk General Terms (SGT) https://www.splunk.com/en_us/legal/splunk-general-terms.html.
# The value must be manually set to "--accept-current-at-splunk-com"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is there way to simplify this to say "ACCEPT_SPLUNK_GENERAL_TERMS" and value as "yes" or "no" . and in the code we can pass "--accept-current-at-splunk-com" to docker image

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I am waiting to hear from the legal team, but we might need the user to manually put in the full acceptance. I will reach out and ask them.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

From Elizabeth Flemin from the legal team: "Unfortunately we need them to pass the exact argument - yes or no would go around the purpose of changing it."

if os.Getenv("SPLUNK_GENERAL_TERMS") == "--accept-current-at-splunk-com" {
return nil
}
return fmt.Errorf("SPLUNK_GENERAL_TERMS environment variable must be set to \"--accept-current-at-splunk-com\". Update the splunk-operator-controller-manager deployment")
Copy link
Collaborator

Choose a reason for hiding this comment

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

add an k8s event here

Copy link
Collaborator

Choose a reason for hiding this comment

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

can we also change the status of the CR to show the status message why its failing

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