diff --git a/.gitignore b/.gitignore
index 3f455488..d2c62c8b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,7 +13,7 @@ splunktional-temp
dist/
build/
venv-tools/
-packages/flare/stage/
+packages/flare_splunk_app/stage/
# OS files
desktop.ini
@@ -26,7 +26,7 @@ __pycache__/
local/
*local.meta
*.log
-packages/flare/src/main/resources/splunk/bin/lib
+packages/flare_splunk_app/src/main/resources/splunk/bin/lib
# Environment variables
.env
diff --git a/Makefile b/Makefile
index 93e8ad57..0199ba6a 100644
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,8 @@
# ─── Variables ───────────────────────────────────────────────────────────────
PYTHON ?= python
-STAGE := packages/flare/stage
+STAGE := packages/flare_splunk_app/stage
DIST := dist
-APP_BIN_LIB := packages/flare/src/main/resources/splunk/bin/lib
+APP_BIN_LIB := packages/flare_splunk_app src/main/resources/splunk/bin/lib
# Splunk versions declared to Splunkbase on publish. Override per release:
# make publish SPLUNK_VERSIONS=9.3,...
@@ -26,7 +26,7 @@ venv-tools: requirements.tools.txt
venv-tools/bin/pip install -r requirements.tools.txt
# ─── Build & package ─────────────────────────────────────────────────────────
-# Compile the frontend into packages/flare/stage (webpack also copies the
+# Compile the frontend into packages/flare_splunk_app/stage (webpack also copies the
# Splunk app skeleton from src/main/resources/splunk into stage).
.PHONY: build
build: node_modules
@@ -44,9 +44,9 @@ publish:
if [ -z "$$pkg" ]; then echo "No package found in $(DIST)/. Run 'make package' first."; exit 1; fi; \
echo "Publishing $$pkg to Splunkbase..."; \
curl -u $$SPLUNKBASE_CREDS --request POST \
- https://splunkbase.splunk.com/api/v1/app/7602/new_release/ \
+ https://splunkbase.splunk.com/api/v1/app/9219/new_release/ \
-F "files[]=@$$pkg" \
- -F "filename=flare.tgz" \
+ -F "filename=flare_splunk_app.tgz" \
-F "splunk_versions=$(SPLUNK_VERSIONS)" \
-F "visibility=true"
@@ -86,7 +86,7 @@ lint: node_modules venv-tools mypy format-check
.PHONY: mypy
mypy: venv-tools
- venv-tools/bin/mypy --config-file mypy.ini packages/flare
+ venv-tools/bin/mypy --config-file mypy.ini packages/flare_splunk_app
.PHONY: format
format: venv-tools node_modules
@@ -101,7 +101,7 @@ format-check: venv-tools node_modules
sl: splunk-local
# Assemble a runnable app in stage/ (frontend + vendored Python), then run it in
-# a local Splunk container (compose mounts packages/flare/stage) with a watcher.
+# a local Splunk container (compose mounts packages/flare_splunk_app/stage) with a watcher.
.PHONY: splunk-local
splunk-local: build
SKIP_TARBALL=1 ./package.sh
diff --git a/README.md b/README.md
index 5e9f0b3e..7364d491 100644
--- a/README.md
+++ b/README.md
@@ -26,7 +26,7 @@ $ pnpm run setup
You’ll have two main directories, one for the created React page and one for the created Splunk app.
- `packages/configuration`
-- `packages/flare`
+- `packages/flare_splunk_app`
## Splunk demo
@@ -34,7 +34,7 @@ Splunk demo will allow you to view your new app inside your local Splunk instanc
```bash
# navigate to your app folder
-$ cd packages/flare
+$ cd packages/flare_splunk_app
# link the app to your local Splunk instance
$ pnpm run link:app
@@ -74,7 +74,7 @@ and locally. `package.sh` is the single packaging tool; `make` orchestrates it.
| Command | What it does |
| --------------- | -------------------------------------------------------------------------------------------- |
| `make ci` | Full pipeline (what CI runs): build → package → tooling → lint → validate → test. |
-| `make build` | Compile the frontend into `packages/flare/stage/`. |
+| `make build` | Compile the frontend into `packages/flare_splunk_app/stage/`. |
| `make package` | Vendor the Python runtime deps and produce the installable app at `dist/*.tgz`. |
| `make validate` | Run Splunk AppInspect against the packaged `dist/*.tgz`. |
| `make lint` | ESLint + Stylelint + mypy + Prettier check. |
@@ -91,8 +91,8 @@ Prerequisites for `make`: Node.js `>= 22`, `pnpm` `9.x`, Python `3.9`, and Docke
$ make splunk-local
```
-This builds the app, vendors the Python dependencies into `packages/flare/stage`,
-starts a Splunk container (compose mounts `packages/flare/stage` as the app), and
+This builds the app, vendors the Python dependencies into `packages/flare_splunk_app/stage`,
+starts a Splunk container (compose mounts `packages/flare_splunk_app/stage` as the app), and
runs the webpack watcher. Open `https://localhost:8000` to view the app. This is
an alternative to the `pnpm run link:app` symlink flow above and does not require
a local Splunk installation.
diff --git a/compose.yml b/compose.yml
index 2bde4e2f..eeeaba98 100644
--- a/compose.yml
+++ b/compose.yml
@@ -12,6 +12,6 @@ services:
- SPLUNK_PASSWORD=a_password
- SPLUNK_GENERAL_TERMS=--accept-sgt-current-at-splunk-com
volumes:
- - ./packages/flare/stage:/opt/splunk/etc/apps/flare_splunk_app
+ - ./packages/flare_splunk_app/stage:/opt/splunk/etc/apps/flare_splunk_app
- ./splunk/default.yml:/tmp/defaults/default.yml
- ./logs:/opt/splunk/var/log/splunk
diff --git a/package.sh b/package.sh
index 8baad2f1..823de04b 100755
--- a/package.sh
+++ b/package.sh
@@ -20,8 +20,8 @@ mkdir -p $PACKAGE_DIR
# Identification
COMMIT_ID=$(git rev-parse --short=6 HEAD 2>/dev/null || echo "local")
APP_FOLDER="flare_splunk_app"
-REAL_SRC_DIR=$SCRIPT_DIR/packages/flare/src/main/resources/splunk
-SRC_DIR=$SCRIPT_DIR/packages/flare/stage
+REAL_SRC_DIR=$SCRIPT_DIR/packages/flare_splunk_app/src/main/resources/splunk
+SRC_DIR=$SCRIPT_DIR/packages/flare_splunk_app/stage
FULLAPP_DIR=$PACKAGE_DIR/$APP_FOLDER
echo "Building package for $APP_FOLDER (Commit: $COMMIT_ID)..."
@@ -31,8 +31,10 @@ mkdir -p $FULLAPP_DIR
# ─── SYNC src → stage ────────────────────────────────────────────────────────
# Always sync the real source into stage before packaging.
echo "Syncing src → stage..."
-# Delete old backend folders to prevent stale files, but preserve appserver/ which holds compiled frontend assets
-rm -rf "$SRC_DIR/bin" "$SRC_DIR/default" "$SRC_DIR/metadata" "$SRC_DIR/lookups"
+# Delete folders that come from src to prevent stale files, but preserve
+# appserver/static which holds the compiled frontend assets webpack emits.
+rm -rf "$SRC_DIR/bin" "$SRC_DIR/default" "$SRC_DIR/metadata" "$SRC_DIR/lookups" \
+ "$SRC_DIR/appserver/templates" "$SRC_DIR/README"
cp -R "$REAL_SRC_DIR"/. "$SRC_DIR/"
# Remove Python bytecode artifacts that shouldn't be packaged
find "$SRC_DIR" -name '__pycache__' -type d -exec rm -rf {} + 2>/dev/null || true
diff --git a/packages/flare/src/main/resources/splunk/default/data/ui/views/configuration.xml b/packages/flare/src/main/resources/splunk/default/data/ui/views/configuration.xml
deleted file mode 100644
index ba837d16..00000000
--- a/packages/flare/src/main/resources/splunk/default/data/ui/views/configuration.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/packages/flare/.babelrc.js b/packages/flare_splunk_app/.babelrc.js
similarity index 100%
rename from packages/flare/.babelrc.js
rename to packages/flare_splunk_app/.babelrc.js
diff --git a/packages/flare/.eslintrc.js b/packages/flare_splunk_app/.eslintrc.js
similarity index 100%
rename from packages/flare/.eslintrc.js
rename to packages/flare_splunk_app/.eslintrc.js
diff --git a/packages/flare/.gitignore b/packages/flare_splunk_app/.gitignore
similarity index 100%
rename from packages/flare/.gitignore
rename to packages/flare_splunk_app/.gitignore
diff --git a/packages/flare/.npmignore b/packages/flare_splunk_app/.npmignore
similarity index 100%
rename from packages/flare/.npmignore
rename to packages/flare_splunk_app/.npmignore
diff --git a/packages/flare/README b/packages/flare_splunk_app/README
similarity index 100%
rename from packages/flare/README
rename to packages/flare_splunk_app/README
diff --git a/packages/flare/bin/build.js b/packages/flare_splunk_app/bin/build.js
similarity index 100%
rename from packages/flare/bin/build.js
rename to packages/flare_splunk_app/bin/build.js
diff --git a/packages/flare/package.json b/packages/flare_splunk_app/package.json
similarity index 100%
rename from packages/flare/package.json
rename to packages/flare_splunk_app/package.json
diff --git a/packages/flare/src/main/resources/splunk/README/splunk_create.conf.spec b/packages/flare_splunk_app/src/main/resources/splunk/README/splunk_create.conf.spec
similarity index 100%
rename from packages/flare/src/main/resources/splunk/README/splunk_create.conf.spec
rename to packages/flare_splunk_app/src/main/resources/splunk/README/splunk_create.conf.spec
diff --git a/packages/flare/src/main/resources/splunk/appserver/templates/configuration.html b/packages/flare_splunk_app/src/main/resources/splunk/appserver/templates/configuration.html
similarity index 92%
rename from packages/flare/src/main/resources/splunk/appserver/templates/configuration.html
rename to packages/flare_splunk_app/src/main/resources/splunk/appserver/templates/configuration.html
index cdc9909d..7daec2e6 100644
--- a/packages/flare/src/main/resources/splunk/appserver/templates/configuration.html
+++ b/packages/flare_splunk_app/src/main/resources/splunk/appserver/templates/configuration.html
@@ -20,7 +20,7 @@
__splunkd_partials__ = ${json_decode(splunkd)};
- <% page_path = "/static/app/flare/pages/" + page + ".js" %>
+ <% page_path = "/static/app/flare_splunk_app/pages/" + page + ".js" %>