fleet/cmd/fleetctl
Scott Gress 7eebc22693
Add author ID to labels (#27055)
For #27035 

# Checklist for submitter

- [x] Changes file added for user-visible changes in `changes/`,
`orbit/changes/` or `ee/fleetd-chrome/changes`.
See [Changes
files](https://github.com/fleetdm/fleet/blob/main/docs/Contributing/Committing-Changes.md#changes-files)
for more information.
- [x] Input data is properly validated, `SELECT *` is avoided, SQL
injection is prevented (using placeholders for values in statements)
- [x] If database migrations are included, checked table schema to
confirm autoupdate
- For database migrations:
- [x] Checked schema for all modified table for columns that will
auto-update timestamps during migration.
- [x] Confirmed that updating the timestamps is acceptable, and will not
cause unwanted side effects.
- [x] Ensured the correct collation is explicitly set for character
columns (`COLLATE utf8mb4_unicode_ci`).
- [ ] Added/updated automated tests
- [x] A detailed QA plan exists on the associated ticket (if it isn't
there, work with the product group's QA engineer to add it)
- [x] Manual QA for all new/changed functionality

## Details

This PR adds an `author_id` column to the `labels` table, and adds the
associated properties to the `Label` and `LabelSpec` types. When a new
label is created via the UI or API, an author ID is set on the label if
one can be inferred from the context. Otherwise, the author ID is set to
`null`.

## Authz and Automated testing

Additional backend authorization logic is introduced in a follow-on PR,
https://github.com/fleetdm/fleet/pull/27089, because rconciling all of
the test updates between this PR and
https://github.com/fleetdm/fleet/pull/27038 was getting complicated.

## Manual Testing

* Tested in the UI by creating a new label on the Hosts page
* Tested via Gitops by merging this branch with
https://github.com/fleetdm/fleet/pull/27038 and doing `fleetctl gitops`
with a global config with `labels:` in it.
2025-03-20 16:05:16 -05:00
..
testdata Add labels to queries using gitops (#27259) 2025-03-20 15:32:52 -05:00
api.go add CLI for the new MDM cert flow (#19240) 2024-05-27 11:14:37 -03:00
api_test.go Initial fleetctl api command works with GETS and fields (#17971) 2024-05-07 11:22:05 -05:00
apply.go Add VPP install automation in GitOps (#25400) 2025-01-14 12:52:39 -06:00
apply_test.go Add author ID to labels (#27055) 2025-03-20 16:05:16 -05:00
config.go chore: remove refs to deprecated io/ioutil (#14485) 2023-10-27 15:28:54 -03:00
config_test.go Enable errcheck linter for golangci-lint (#8899) 2022-12-05 16:50:49 -06:00
convert.go chore: remove refs to deprecated io/ioutil (#14485) 2023-10-27 15:28:54 -03:00
convert_test.go Enable staticcheck Go linter. (#23487) 2024-11-05 11:16:24 -06:00
debug.go Updating golangci-lint to 1.61.0 (#22973) 2024-10-18 12:38:26 -05:00
debug_test.go Updating golangci-lint to 1.61.0 (#22973) 2024-10-18 12:38:26 -05:00
delete.go Updating golangci-lint to 1.61.0 (#22973) 2024-10-18 12:38:26 -05:00
delete_test.go Activity feed webhooks backend (#19261) 2024-05-24 11:25:27 -05:00
flags.go Get MDM Command Filters (#20154) 2024-07-09 11:06:06 -06:00
fleetctl.go Initial fleetctl api command works with GETS and fields (#17971) 2024-05-07 11:22:05 -05:00
generate.go Minor fixes from analyzing test results (#23260) 2024-10-25 15:57:51 -05:00
generate_test.go fix fleetctl generate mdm-apple-bm (#19507) 2024-06-04 18:19:09 -03:00
get.go Add printing for query labels in cli (#26957) 2025-03-18 14:05:54 -04:00
get_test.go Add labels to queries using gitops (#27259) 2025-03-20 15:32:52 -05:00
gitops.go Add labels to queries using gitops (#27259) 2025-03-20 15:32:52 -05:00
gitops_enterprise_integration_test.go GitOps support for DigiCert and Custom SCEP (#27229) 2025-03-20 11:36:00 -05:00
gitops_integration_test.go Adding secret support to profiles via gitops. (#24675) 2024-12-13 15:41:23 -06:00
gitops_test.go Add author ID to labels (#27055) 2025-03-20 16:05:16 -05:00
goquery.go fleetctl now runs saved queries (#15667) 2023-12-15 12:55:39 -06:00
hosts.go fleetctl, API, copy updates around host identifiers (#20220) 2024-07-09 10:25:01 -07:00
hosts_test.go Profiles batch activity (#21604) 2024-08-30 16:00:35 -05:00
kill_process.go Download and launch orbit for the current device when starting preview (#2437) 2021-10-15 18:23:06 -03:00
kill_process_windows.go Download and launch orbit for the current device when starting preview (#2437) 2021-10-15 18:23:06 -03:00
login.go Allow opting in users to email verification on login (#24273) 2024-12-05 08:37:10 -06:00
logout.go Use new error handling approach in other packages (#2954) 2021-11-22 09:13:26 -05:00
logout_test.go Simplify fleetctl implementation and improve testing (#3830) 2022-01-24 16:40:51 -03:00
mdm.go Allow software uninstalls, script-based lock/unlock/wipe, while scripts are globally disabled (#24815) 2024-12-30 08:32:48 -06:00
mdm_test.go Allow software uninstalls, script-based lock/unlock/wipe, while scripts are globally disabled (#24815) 2024-12-30 08:32:48 -06:00
package.go fleetctl: update package command output (#26500) 2025-03-04 13:21:07 -05:00
package_test.go Add mTLS support to fleetd (#11319) 2023-04-27 08:44:39 -03:00
preview.go Add VPP install automation in GitOps (#25400) 2025-01-14 12:52:39 -06:00
preview_test.go Validate license key if supplied before running fleetctl preview (#24627) 2024-12-11 07:57:10 -06:00
query.go Better documentation in fleetctl query command for label flag (#24556) 2024-12-09 12:47:52 -06:00
query_output.go add host_display_name to live query rows (#8251) 2022-10-17 15:52:25 +02:00
query_test.go 21855 – Paginate and filter Queries on the server, update platform filtering from compatible to targeted platforms (#24446) 2024-12-11 10:50:28 -08:00
scripts.go Bugfix: Orbit run-script copy update (#20473) 2024-07-15 12:59:32 -06:00
scripts_test.go Allow use of bash as a script interpreter (#25449) 2025-02-04 12:42:40 -05:00
session_test.go 21855 – Paginate and filter Queries on the server, update platform filtering from compatible to targeted platforms (#24446) 2024-12-11 10:50:28 -08:00
setup.go Updating golangci-lint to 1.61.0 (#22973) 2024-10-18 12:38:26 -05:00
testing_utils.go Add datastore methods for host certificates feature (#26416) 2025-02-18 17:49:02 -06:00
trigger.go Add gosimple linter (#23250) 2024-10-29 14:17:51 -05:00
trigger_test.go 🧹 friday cleanup party: substitute deprecated import of go-kit (#19774) 2024-06-17 10:27:31 -03:00
upgrade_packs.go fleetctl now runs saved queries (#15667) 2023-12-15 12:55:39 -06:00
upgrade_packs_test.go Add labels to queries using gitops (#27259) 2025-03-20 15:32:52 -05:00
user.go Allow opting in users to email verification on login (#24273) 2024-12-05 08:37:10 -06:00
users_test.go Allow opting in users to email verification on login (#24273) 2024-12-05 08:37:10 -06:00
vulnerability_data_stream.go Fix backoff in vuln stream logging (#19148) 2024-05-28 08:13:46 -06:00
vulnerability_data_stream_test.go Improvements to go tests in CI (#21545) 2024-08-26 08:55:53 -05:00