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

Setup experience guide: document current behavior #24736

Merged
merged 2 commits into from
Dec 13, 2024

Conversation

noahtalerman
Copy link
Member

@noahtalerman noahtalerman commented Dec 12, 2024

Document current behavior.

Planning future improvements here: #24508 (comment)

Planning future improvements here:
@noahtalerman noahtalerman marked this pull request as ready for review December 12, 2024 23:31
@noahtalerman
Copy link
Member Author

Hey @jahzielv can you please sanity check me here for accuracy?

@Drew-P-drawers as someone who lives further from the code, can you please check for clarity / understandability?

Drew-P-drawers
Drew-P-drawers previously approved these changes Dec 12, 2024
@@ -178,6 +178,8 @@ If you configure software and/or a script for setup experience, users will see a

This window shows the status of the software installations as well as the script exectution. Once all steps have completed, the window can be closed and Setup Assistant will proceed as usual.

> Currently, software set to [automatic install](https://fleetdm.com/guides/automatic-software-install-in-fleet) is also installed during Setup Assistant but won't appear in the window. All software, automatic and setup experience, isn't installed in any particular order. The script always runs after setup experience software is installed.
Copy link
Contributor

Choose a reason for hiding this comment

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

@noahtalerman this sounds right to me, but I would like to double check

All software, automatic and setup experience, isn't installed in any particular order

Can I get back to you tomorrow morning on this?

Copy link
Member Author

Choose a reason for hiding this comment

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

@jahzielv sounds good 👍

Heads up that I updated the language in this commit.

Is there a good spot on the Setup experience page in the UI so IT admins are aware?

Copy link
Contributor

Choose a reason for hiding this comment

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

@noahtalerman dug into the details this morning. It's a little complicated 😅

TL;DR - technically there is no particular order that software will be installed. In most situations though, automatic install software will install before setup experience software. I think the "no order" language is best since it's the truth/least confusing. I'll leave it up to you if we want to get more into the weeds.

The only order we enforce re: software installations is here, where we list the software installations that are pending. This list, ordered by creation time, is what gets sent to Orbit so it knows what software to install.

If setup experience is supposed to be run, we currently pause all software installations until after swiftDialog is installed on the host (see here).

We also do not create a software installation request for setup experience software until swiftDialog is installed on the host (see here).

Downloading and installing swiftDialog can take a while, and on top of that Orbit only re-checks the config every 30s, so in practice the host's queries (including the automatic install policy queries) will have run long before swiftDialog is in place and the above checks pass.

Since pending software installations are listed in order of creation (like noted at the top), and since in practice the automatic policy installation requests will be created before the setup experience installation requests (because we're waiting on swiftDialog), in practice automatic installations will run before setup experience ones.

But this order isn't enforced by code, it's just happening because typically time to download swiftDialog < time to run policies.

Copy link
Contributor

Choose a reason for hiding this comment

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

Is there a good spot on the Setup experience page in the UI so IT admins are aware?

Could we add a link to the doc updated in this PR under/next to this one? Maybe something like Learn about how Fleet installs software on hosts?

Screenshot 2024-12-13 at 9 40 34 AM

@noahtalerman
Copy link
Member Author

Screenshot 2024-12-13 at 9 53 01 AM

I think let's add a tooltip on the Setup experience page (underline under "installed during setup"):

Software order will vary.

@noahtalerman noahtalerman merged commit 36c6585 into main Dec 13, 2024
5 checks passed
@noahtalerman noahtalerman deleted the noahtalerman-patch-13 branch December 13, 2024 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants