Skip to content

feat: run modinput tests with python.version variants for Splunk 9.4#508

Open
dkaras-splunk wants to merge 8 commits into
developfrom
feat/splunk-9-4-python-version
Open

feat: run modinput tests with python.version variants for Splunk 9.4#508
dkaras-splunk wants to merge 8 commits into
developfrom
feat/splunk-9-4-python-version

Conversation

@dkaras-splunk

Copy link
Copy Markdown
Contributor
  • run-modinput-tests and run-ucc-modinput-tests jobs use new matrix_splunkModinput output (from addonfactory-test-matrix-action) which contains two entries for Splunk 9.4: serverConfPythonVersion: python3 and serverConfPythonVersion: force_python3 — resulting in two separate test runs per modinput job
  • All other test types (btool, knowledge, ui, upgrade, scripted inputs, spl2) use matrix_Splunk (standard output, no variants) — single run per Splunk version as before
  • server-conf-python-version is passed to wfe-test-runner-action only for modinput and ucc-modinput jobs; all other jobs pass empty string
  • Default values restored: k8s-manifests-branchv4.2, addonfactory-test-matrix-action@v3.1, wfe-test-runner-action@v5.2

Why

Splunk 9.4 requires explicit python.version configuration in server.conf [general]. Only modinput tests are affected — they execute scripted inputs whose Python version is controlled by this setting. Running two variants (python3 and force_python3) ensures the add-on works under both configurations.

Other test types (btool, knowledge, UI) do not interact with the Python runtime selection and do not benefit from duplicate runs.

Dependencies

Requires the following PRs to be merged and tagged first:

  • splunk/addonfactory-test-matrix-action — provides supportedSplunkModinput output
  • splunk/wfe-test-runner-action — provides server-conf-python-version input forwarding
  • splunk/ta-automation-k8s-manifests — applies python.version in the Splunk pod

Test plan

  • Verify PR to main triggers 2 modinput runs for Splunk 9.4 (python3 and force_python3)
  • Verify all other test types have 1 run per Splunk version (no duplicate 9.4 runs)
  • Verify btool server list general | grep python returns correct value in each modinput run
  • Verify non-9.4 Splunk versions are unaffected

dkaras-splunk and others added 7 commits June 24, 2026 13:47
…riants

Point addonfactory-test-matrix-action and wfe-test-runner-action to
feat/splunk-9-4-python-version branches. Set k8s-manifests-branch
default to feat/splunk-9-4-python-version. Pass serverConfPythonVersion
from the matrix to server-conf-python-version input in all 8 test jobs
(btool, knowledge, ui, modinput, ucc-modinput, upgrade, scripted-inputs, spl2).

Co-Authored-By: Claude <noreply@anthropic.com>
…lunk 9.4

- Restore default action versions (matrix-action@v3.1, wfe-test-runner@v5.2)
- Restore k8s-manifests-branch default to v4.2
- Add matrixSplunkBase (deduped, no serverConfPythonVersion) for non-modinput jobs
- Pass server-conf-python-version only for modinput and ucc-modinput tests
@dkaras-splunk dkaras-splunk requested a review from a team as a code owner June 25, 2026 10:08

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 16a61b3514

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

description: Specifies which environment to use for k8s testing. ["production", "staging"]
type: string
default: "production"
default: "staging"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Restore production as the default k8s environment

When callers omit k8s-environment (the normal reusable-workflow path), this new default sends every test run through the staging branch of the setup step, which maps to ta-staging-artifacts, argo.staging.wfe.splgdi.com, and the staging token. That means main/release consumers no longer exercise the production WFE environment unless they explicitly override the input, which is a behavior change unrelated to the Splunk 9.4 modinput matrix work.

Useful? React with 👍 / 👎.

description: "branch for k8s manifests to run the tests on"
type: string
default: "v4.2"
default: "feat/splunk-9-4-python-version"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Restore the released manifests branch by default

Default callers now pass feat/splunk-9-4-python-version through needs.setup.outputs.k8s-manifests-branch into every wfe-test-runner-action invocation, so main/release runs validate against an in-flight manifests branch instead of the released manifests. This makes the reusable workflow depend on a development branch unless every consumer remembers to override the input.

Useful? React with 👍 / 👎.

persist-credentials: false
- id: matrix
uses: splunk/addonfactory-test-matrix-action@v3.1
uses: splunk/addonfactory-test-matrix-action@feat/splunk-9-4-python-version

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Pin the matrix action back to a released ref

This reusable workflow now resolves the Splunk matrix from the feat/splunk-9-4-python-version branch, and the same feature-branch ref is used for the runner action in all test jobs. Once this workflow is consumed from main or a release tag, every add-on test run depends on a mutable development branch in another repository rather than the released action versions, so branch updates or cleanup can change or break all consumers without a workflow change here.

Useful? React with 👍 / 👎.

@dkaras-splunk dkaras-splunk force-pushed the feat/splunk-9-4-python-version branch from 16a61b3 to 1d9696d Compare June 25, 2026 10:12
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.

1 participant