Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 12 additions & 22 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,33 +1,23 @@
# EditorConfig is awesome: https://editorconfig.org
# EditorConfig helps developers define and maintain consistent
# coding styles between different editors and IDEs
# http://editorconfig.org

# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true

# Matches multiple files with brace expansion notation
# Set default charset
[*.{js,py}]
charset = utf-8

# 4 space indentation
[*.py]
# Change these settings to your own preference
indent_style = space
indent_size = 4

# Tab indentation (no size specified)
[Makefile]
indent_style = tab
# We recommend you to keep these unchanged
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

# Indentation override for all JS under lib directory
[lib/**.js]
indent_style = space
indent_size = 4
[*.md]
trim_trailing_whitespace = false

# Matches the exact files either package.json or .travis.yml
[{package.json,.travis.yml}]
indent_style = space
[*.json]
indent_size = 2
112 changes: 61 additions & 51 deletions .github/workflows/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,55 +2,65 @@ name: Splunk Integration Build

on: [push]

permissions:
contents: read

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout codebase
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'

- name: Install Application Dependencies
run: |
make build
make venv-tools

# SEE https://github.com/actions/upload-artifact?tab=readme-ov-file#permission-loss
- name: Tar files (only way to preserve perms)
run: tar -cvf artifact.tar .

- name: Store Build Artifact
uses: actions/upload-artifact@v4
with:
name: splunk-app
path: artifact.tar

test:
runs-on: ubuntu-latest
needs: build
steps:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'

- name: Download Build Artifact
uses: actions/download-artifact@v4
with:
name: splunk-app

- name: Unpack Tar Artifact
run: tar -xvf artifact.tar

- name: Lint
run: make lint

- name: Splunk AppInspect
run: make validate

- name: Test
run: make test
build:
runs-on: ubuntu-latest
steps:
- name: Checkout codebase
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'

- name: Install pnpm
uses: pnpm/action-setup@v4

- name: Build, package, and install tooling
run: |
make package
make venv-tools

# SEE https://github.com/actions/upload-artifact?tab=readme-ov-file#permission-loss
- name: Tar files (only way to preserve perms)
run: tar -cvf artifact.tar .

- name: Store Build Artifact
uses: actions/upload-artifact@v4
with:
name: splunk-app
path: artifact.tar

test:
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
runs-on: ubuntu-latest
needs: build
steps:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'

- name: Download Build Artifact
uses: actions/download-artifact@v4
with:
name: splunk-app

- name: Unpack Tar Artifact
run: tar -xvf artifact.tar

# After unpacking so action-setup can read packageManager from package.json
- name: Install pnpm
uses: pnpm/action-setup@v4

- name: Lint
run: make lint

- name: Splunk AppInspect
run: make validate

- name: Test
run: make test
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
41 changes: 23 additions & 18 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,31 @@
name: Publish Splunk Application to Splunkbase

on:
release:
types: [published]
release:
types: [published]

permissions:
contents: read

jobs:
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout codebase
uses: actions/checkout@v4
publish:
runs-on: ubuntu-latest
steps:
- name: Checkout codebase
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install pnpm
uses: pnpm/action-setup@v4

- name: Install Application Dependencies
run: |
make build
- name: Build and package
run: |
make package

- name: Package and Publish
run: |
make package
SPLUNKBASE_CREDS='${{ secrets.SPLUNKBASE_CREDS }}' make publish
- name: Publish to Splunkbase
run: |
SPLUNKBASE_CREDS='${{ secrets.SPLUNKBASE_CREDS }}' make publish
Comment thread
github-advanced-security[bot] marked this conversation as resolved.
Fixed
38 changes: 24 additions & 14 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,24 +1,34 @@
*.DS_Store
flare.tar.gz
venv
venv-tools
packages/flare/local
packages/flare/metadata/local.meta
__pycache__/
.vscode/

packages/flare/bin/vendor/*
.DS_Store
.idea/
lerna-debug.log
node_modules
npm-debug.log
test-reports
coverage_report
yarn-error.log
pnpm-debug.log
licenses.json
functional-temp
splunktional-temp

output/
logs/
# Build output
dist/
build/
venv-tools/
packages/flare/stage/

# OS files
desktop.ini

# Python / Splunk
__pycache__/
.mypy_cache/
.pytest_cache/
*.py[cod]
local/
*local.meta
*.log
packages/flare/src/main/resources/splunk/bin/lib

# Environment variables
.env
.env.local

27 changes: 27 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Dependencies and Python tooling
node_modules/
venv-tools/
.mypy_cache/
.pytest_cache/

# Build output and CI artifacts
dist/
build/
packages/flare/stage/
packages/*/types/
packages/configuration/*.js
coverage_report/
test-reports/
functional-temp/
splunktional-temp/

# Lockfiles and generated reports
pnpm-lock.yaml
licenses.json

# Vendored Python dependencies
packages/flare/src/main/resources/splunk/bin/lib/

# Splunk runtime / local state
**/local/
*.log
6 changes: 3 additions & 3 deletions .prettierrc
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ printWidth: 100
singleQuote: true
tabWidth: 4
overrides:
- files: "*.json"
options:
tabWidth: 2
- files: '*.json'
options:
tabWidth: 2
1 change: 1 addition & 0 deletions .ruff.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ ignore = [
"E722",
"F403",
"F405",
"E402",
]

[lint.isort]
Expand Down
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Change Log

## 1.0.0 – 2026‑05‑28

- Added **tenant filter** support in the Search UI.
- Introduced **Application Logs** and **Dashboard Charts** tabs for richer visualisation of events.
- Added configuration options:
- Ingestion interval selector.
- “Ingest full event data” checkbox to toggle between metadata‑only and full payload.
- Implemented **dynamic links** from the result table to the corresponding Flare event in the Flare UI.
- Improved tenant extraction and filtering across search results and dashboards.
- Refreshed documentation to describe the new UI tabs and configuration options.
- Migrated workspace dependency management from Yarn to pnpm for improved performance and reliability.
Loading
Loading