You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
v1.122.0: namespaced config file naming with legacy fallback
The base config is now rackstack.config.json and company overrides are
<company>.rackstack.config.json, so the files stay unambiguous when the
EXE or monolithic script runs from a shared folder. Fully backward
compatible: legacy defaults.json and <company>.defaults.json are still
read whenever the new-named file is absent (per file), and the tool
keeps saving to whichever file it loaded.
- Get-RackStackConfigPath resolves the base config once at init
(prefer new name, fall back to legacy, create new name when neither
exists); the first-run wizard and defaults editor write through the
resolved path
- Get-CompanyDefaultsFiles discovers company files under both naming
schemes, deduped per company key with the new name winning; also
fixes a latent bug where the returned array nested inside callers'
@() wrappers and collapsed multiple companies into one entry
- Save picker, menus, and prompts show the actually-loaded filename
- Exit cleanup removes config files under both schemes plus company
files and crash-leftover .tmp siblings; the company-file wildcard
sweeps are gated to directories identifiable as the tool's own home
so shared folders are never glob-swept
- Example template renamed to rackstack.config.example.json and the
release asset list updated to match
- .gitignore covers both schemes; the tracked example stays tracked
- Docs, wiki-facing guides, issue templates, and the config guide
updated; company config files now documented with the fallback rules
- New test section covers resolution order, dual-name company
discovery, cleanup gating, .gitignore, and release-asset pins
description: If the bug involves config (network, agents, file-server, etc.), paste the matching defaults.json fragment. **Remove any credentials, tokens, or client secrets first.**
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ Thanks for your interest in contributing! Here's how to get started.
5
5
## Getting Started
6
6
7
7
1. Fork the repo and clone it locally
8
-
2. Copy `defaults.example.json` to `defaults.json` and fill in your environment details
8
+
2. Copy `rackstack.config.example.json` to `rackstack.config.json` and fill in your environment details (a legacy `defaults.json` is still read when present)
Never hardcode organization names, domains, contact info, or credentials in module code. Use the `$script:` variables that are loaded from `defaults.json`:
67
+
Never hardcode organization names, domains, contact info, or credentials in module code. Use the `$script:` variables that are loaded from `rackstack.config.json`:
Copy file name to clipboardExpand all lines: Changelog.md
+13Lines changed: 13 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,18 @@
1
1
# Changelog
2
2
3
+
## v1.122.0
4
+
5
+
Namespaced config-file naming. The base config is now `rackstack.config.json` and company overrides are `<company>.rackstack.config.json` -- names that stay unambiguous when the EXE runs from a shared or busy folder. Nothing breaks for existing setups: the legacy `defaults.json` and `<company>.defaults.json` names are still read whenever the new-named file is absent, and the tool keeps saving to whichever file it loaded.
6
+
7
+
- **New config names, per-file preference.** `rackstack.config.json` is used when it exists; otherwise a legacy `defaults.json` is read. The same rule applies per company file, and when both names exist for the same company the new name wins. Company selection via `_companyDefaults` is unchanged, and multiple company files are still supported.
8
+
- **New installs get the new names.** The first-run wizard and the in-tool defaults editor create `rackstack.config.json`; existing legacy files keep working in place with no migration step.
9
+
- **The example template is now `rackstack.config.example.json`** (renamed from `defaults.example.json`) and ships in releases under that name.
10
+
- **Menus and prompts show the actual loaded filename**, so a machine still running on `defaults.json` sees that name in the save picker and settings screens.
11
+
- **Uninstall/self-destruct cleans up config files under both naming schemes**, including company override files, which it previously left behind.
12
+
- **Docs, issue templates, and the config guide updated** to the new naming with the fallback behavior documented.
13
+
14
+
No module or CLI action changes (81 modules, 201 actions).
15
+
3
16
## v1.121.15
4
17
5
18
Final audit sweep — remaining fixes across the firewall/RDP, iSCSI, network-diagnostics, and session modules.
0 commit comments