## Overview `dibble` is a one-stop CLI for seeding a Fleet server with test data — users, teams, policies, reports, labels, scripts, MDM profiles, software, secrets, CAs, and vulns — replacing ~8 ad-hoc seeding tools with a single binary. It makes it easy to: - **Spin up a populated dev/test server in one command** — `dibble all` plants everything with sensible, idempotent defaults. - **Skip the flag-memorization** — running `dibble` with no args launches an interactive wizard that prompts for Fleet URL, API token, theme, and which entities to seed, and offers to save the config to `~/.dibble.yaml`. - **Seed individual entity types** — `dibble users`, `dibble teams`, `dibble policies`, etc., when you only need one slice. - **Get themed, recognizable test data** — pick a theme (hitchhikers, tng, lotr, ghibli, parksrec, …) so seeded names are easy to eyeball in the UI. Hosts are intentionally out of scope — `cmd/osquery-perf` still owns that. `dibble hosts` is a thin convenience wrapper that picks a fleet, fetches its enroll secret, and prints/runs the osquery-perf invocation for you. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Dibble: a CLI tool to seed realistic test data, including an interactive wizard and subcommands for teams/users/software/policies/scripts/reports/profiles/labels/activities/enroll-secrets/hosts/vulns, plus theme-driven “cas” and “ping”. * Theme system: multiple curated themes to generate consistent seeded identities, policies, software, labels, and scripts. * **Chores** * Ignored the built dibble binary and added a Makefile build target to compile the dibble tool. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
package themes
|
|
|
|
func init() {
|
|
Register(Theme{
|
|
Name: "tng",
|
|
Display: "Star Trek: The Next Generation",
|
|
Domain: "ussenterprise.test",
|
|
Users: []Person{
|
|
{"Jean-Luc", "Picard", "picard"},
|
|
{"William", "Riker", "riker"},
|
|
{"Data", "", "data"},
|
|
{"Worf", "", "worf"},
|
|
{"Geordi", "La Forge", "geordi"},
|
|
{"Deanna", "Troi", "troi"},
|
|
{"Beverly", "Crusher", "crusher"},
|
|
{"Wesley", "Crusher", "wesley"},
|
|
},
|
|
Teams: []string{
|
|
"USS Enterprise NCC-1701-D", "Klingon Empire", "Borg Collective",
|
|
"Romulan Star Empire", "Q Continuum", "Ten Forward Staff",
|
|
},
|
|
Policies: []Named{
|
|
{"Earl Grey availability", "Replicator must offer hot tea"},
|
|
{"Prime Directive compliance", "Non-interference posture"},
|
|
{"Shields up readiness", "Default to raised when scanning"},
|
|
{"Make-it-so cadence", "Daily directive execution"},
|
|
},
|
|
Software: []Named{
|
|
{"Holodeck Programs", "Caution: program 9 caused incidents"},
|
|
{"LCARS Console", "Library Computer Access/Retrieval System"},
|
|
{"Tricorder firmware", "v1701.D"},
|
|
},
|
|
Labels: []string{
|
|
"engage-ready", "tea-earl-grey-hot",
|
|
"resistance-is-futile", "klingon-honorable",
|
|
},
|
|
Scripts: []Named{
|
|
{"raise-shields.sh", "Defensive posture"},
|
|
{"engage-warp.sh", "Set course, warp 9"},
|
|
},
|
|
})
|
|
}
|