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

[YAML design] Update/patch software: install if it's below a minimum version #26766

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions docs/Configuration/yaml-files.md
Original file line number Diff line number Diff line change
Expand Up @@ -343,15 +343,20 @@ software:
labels_include_any:
- Engineering
- Customer Support
ensure: present
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dev note. If the user enters something other than 'present':

Error: Couldn’t ensure entered state. Currently, only ‘present’ is supported.

minimum_version: 1.2.3
app_store_apps:
- app_store_id: '1091189122'
labels_include_any:
- Product
- Marketing
minimum_version: '1.2.3'
```

Use `labels_include_any` to target hosts that have any label in the array or `labels_exclude_any` to target hosts that don't have any label in the array. Only one of `labels_include_any` or `labels_exclude_any` can be specified. If neither are specified, all hosts are targeted.

Use `ensure` to specify whether software is installed. Use `present` to automatically install software on all hosts.

### packages

- `url` specifies the URL at which the software is located. Fleet will download the software and upload it to S3 (default: `""`).
Expand All @@ -360,6 +365,10 @@ Use `labels_include_any` to target hosts that have any label in the array or `la
- `uninstall_script.path` is the script Fleet will run on hosts to uninstall software. The [default script](https://github.com/fleetdm/fleet/tree/main/pkg/file/scripts) is dependent on the software type (i.e. .pkg).
- `post_install_script.path` is the script Fleet will run on hosts after the software install. There is no default.
- `self_service` specifies whether or not end users can install from **Fleet Desktop > Self-service**.
- `ensure` specifies whether software is installed. Use `present` to automatically install software on all hosts.
- `minimum_version` specifies the minimum version that should be installed. Software below the minimum version will be updated. Currently, this must be a semantic version.



#### Example

Expand All @@ -374,6 +383,8 @@ uninstall_script:
post_install_script:
path: ../lib/software/tailscale-config-script.ps1
self_service: true
ensure: present
minimum_version: 1.2.3
```

### app_store_apps
Expand All @@ -384,6 +395,11 @@ self_service: true

- `self_service` only applies to macOS, and is ignored for other platforms. For example, if the app is supported on macOS, iOS, and iPadOS, and `self_service` is set to `true`, it will be self-service on macOS workstations but not iPhones or iPads.

- `ensure` specifies whether software is installed. Use `present` to automatically install software on all hosts.

- `minimum_version` specifies the minimum version that should be installed. Software below the minimum version will be updated. Currently, this must be a semantic version.


## org_settings and team_settings

### features
Expand Down
Loading