Migrate to UCC framework for Splunk 10.x / Python 3.13 compatibility - #65
Merged
Merged
Conversation
Rebuild the app on the Splunk Add-on UCC framework so it installs and configures on Splunk Enterprise 10.0-10.5 and Cloud. Replace the deprecated Mako setup page with a generated UCC configuration screen, port the alert logic to slack_logic.py (stdlib urllib, no six), and store the OAuth token / webhook encrypted in storage/passwords instead of plaintext. Declare python.required = 3.9, 3.13. Existing alerts keep working unchanged. Remove the old hand-built src/ tree and Node build.
Replace the Node/yarn/slap build pipeline: CI now builds with ucc-gen and runs AppInspect from the CLI (gating on failures), and the bespoke TypeScript AppInspect action is removed. Add pyproject (ruff/black/ pytest) and a pre-commit config.
dtwersky
force-pushed
the
feature/splunk-10x-compat
branch
from
July 22, 2026 15:16
e048504 to
7cf2571
Compare
mpham-splunk
approved these changes
Jul 28, 2026
clarafeb1
approved these changes
Jul 28, 2026
This was referenced Jul 28, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Rebuilds the app on the Splunk Add-on UCC framework so it installs and configures cleanly on Splunk Enterprise 10.0–10.5 and Splunk Cloud. The alert action itself still worked on 10.x, but the old server-side Mako setup page is deprecated in 10.4 and fails on Splunk Cloud (web assets are stripped during vetting) — that page is replaced by a standard UCC configuration screen.
Existing alerts require no changes: the alert action keeps the same name (
slack) and the sameparam.*fields, and both the Slack App OAuth token and the legacy incoming webhook remain supported.Closes #64, #63, #61, #56, #55.
What changed
globalConfig.json; the config UI andalert_actions.confare generated. Source layout moved fromsrc/app(hand-built) topackage/+globalConfig.json.type="html"Mako template is gone; configuration is now a generated UCC Configuration tab (Settings + Proxy).sixshim and Python-2 code paths; uses stdliburllib. Declarespython.required = 3.9, 3.13(runs under 3.9 on 10.0/10.2, 3.13 on 10.4+).storage/passwordsand are no longer written or logged in plaintext.messageis now a required field (Message should be made a required field in the app #55); attachment fields, severity color, timestamp, and the "link to results" all carry over via the same tokens the legacy app used.yarn.lock) and the bespoke TypeScript AppInspect action; CI now builds withucc-genand runs AppInspect from the CLI.Compatibility & testing
End-to-end verified on real Splunk containers for 9.4, 10.0, 10.2, and 10.4:
Test plan (verified in containers across 9.4 / 10.0 / 10.2 / 10.4)
storage/passwords.| sendalert slack ...and a scheduled saved search); confirm delivery.