Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validate all yaml configuration keys on upload & respond to unrecognized keys with meaningful errors #26875

Open
nonpunctual opened this issue Mar 5, 2025 · 1 comment
Labels
~apple-mdm-maturity Contributes to maturity in macOS, iOS, or iPadOS MDM product category. ~csa Issue was created by or deemed important by the Customer Solutions Architect. ~dogfood Issue resulted from Fleet's product dogfooding. ~engineering-initiated Engineering-initiated story, such as a bug, refactor, or contributor experience improvement. :product Product Design department (shows up on 🦢 Drafting board)

Comments

@nonpunctual
Copy link
Contributor

nonpunctual commented Mar 5, 2025

Please see: #26450 (comment)

@noahtalerman mentioned you on #26450 GitOps not failing when unrecognized or unsupported keys are used in software files #26450 (comment)

Brock Walters: The Fleet web app should by default have awareness of every key / val that is useable in every API endpoint or config.

Noah Talerman: agreed. That said, when we shipped GitOps, we decided to only validate top-level keys to move quickly. That's why we fixed this bug with a doc update: Brock, can you please help us track a feature request? Thanks!

Problem

Fleet allows yaml configurations to be uploaded that aren't validated & don't give meaningful errors.

The Fleet web app should by default have awareness of every key / val that is useable in every API endpoint or config.

What have you tried?

Example:

calendar_event_enabled: vs. calendar_events_enabled:

The 2nd string is a real key that works. The 1st key results in a successful upload & a silent failure that does not modify configuration. Bare minimum, for a key that is not recognized by Fleet there should be a response that lets a GitOps user know there is a syntax problem.

Potential solutions

Validate all known keys in configuration uploads, not just top-level keys.

What is the expected workflow as a result of your proposal?

GitOps is easier to use.

cc @allenhouchins

@nonpunctual nonpunctual added :product Product Design department (shows up on 🦢 Drafting board) ~apple-mdm-maturity Contributes to maturity in macOS, iOS, or iPadOS MDM product category. ~csa Issue was created by or deemed important by the Customer Solutions Architect. ~dogfood Issue resulted from Fleet's product dogfooding. ~engineering-initiated Engineering-initiated story, such as a bug, refactor, or contributor experience improvement. labels Mar 5, 2025
@allenhouchins
Copy link
Member

#26450
#25691

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
~apple-mdm-maturity Contributes to maturity in macOS, iOS, or iPadOS MDM product category. ~csa Issue was created by or deemed important by the Customer Solutions Architect. ~dogfood Issue resulted from Fleet's product dogfooding. ~engineering-initiated Engineering-initiated story, such as a bug, refactor, or contributor experience improvement. :product Product Design department (shows up on 🦢 Drafting board)
Projects
None yet
Development

No branches or pull requests

2 participants