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

Release QA: 4.50.0 #19192

Closed
lukeheath opened this issue May 22, 2024 · 4 comments
Closed

Release QA: 4.50.0 #19192

lukeheath opened this issue May 22, 2024 · 4 comments
Assignees
Labels
#g-endpoint-ops Endpoint ops product group #g-mdm MDM product group :release Ready to write code. Scheduled in a release. See "Making changes" in handbook.
Milestone

Comments

@lukeheath
Copy link
Member

lukeheath commented May 22, 2024

Goal: easy-to-follow test steps for checking a release manually

Important reference data

  1. fleetctl preview setup
  2. permissions documentation
  3. premium tests require license key (needs renewal) fleetctl preview --license-key=eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJGbGVldCBEZXZpY2UgTWFuYWdlbWVudCBJbmMuIiwiZXhwIjoxNjQwOTk1MjAwLCJzdWIiOiJkZXZlbG9wbWVudCIsImRldmljZXMiOjEwMCwibm90ZSI6ImZvciBkZXZlbG9wbWVudCBvbmx5IiwidGllciI6ImJhc2ljIiwiaWF0IjoxNjIyNDI2NTg2fQ.WmZ0kG4seW3IrNvULCHUPBSfFdqj38A_eiXdV_DFunMHechjHbkwtfkf1J6JQJoDyqn8raXpgbdhafDwv3rmDw
  4. premium tests require license key (active - Expires Sunday, January 1, 2023 12:00:00 AM) fleetctl preview --license-key=eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJGbGVldCBEZXZpY2UgTWFuYWdlbWVudCBJbmMuIiwiZXhwIjoxNjcyNTMxMjAwLCJzdWIiOiJGbGVldCBEZXZpY2UgTWFuYWdlbWVudCIsImRldmljZXMiOjEwMCwibm90ZSI6ImZvciBkZXZlbG9wbWVudCBvbmx5IiwidGllciI6InByZW1pdW0iLCJpYXQiOjE2NDI1MjIxODF9.EGHQjIzM73YyMbnCruswzg360DEYCsDi9uz48YcDwQHq90BabGT5PIXRiculw79emGj5sk2aKgccTd2hU5J7Jw

Smoke Tests

Smoke tests are limited to core functionality and serve as a pre-release final review. If smoke tests are failing, a release cannot proceed.

Fleet core:

Fleet version (Head to the "My account" page in the Fleet UI or run fleetctl version): 4.50.0

Web browser (e.g. Chrome 88.0.4324): Chrome, Firefox, Safari

Prerequisites

  1. fleetctl preview is set up and running the desired test version using --tag parameters.
  2. Unless you are explicitly testing older browser versions, browser is up to date.
  3. Certificate & flagfile are in place to create new host.
  4. In your browser, clear local storage using devtools.
Test nameStep instructionsExpected resultpass/fail
$Name{what a tester should do}{what a tester should see when they do that}pass/fail
Update flow
  1. remove all fleet processes/agents/etc using fleetctl preview reset for a clean slate
  2. run fleetctl preview with no tag for latest stable
  3. create a host/query to later confirm upgrade with
  4. STOP fleet-preview-server instances in containers/apps on Docker
  5. run fleetctl preview with appropriate testing tag
All previously created hosts/queries are verified to still existpass
Login flow
  1. navigate to the login page and attempt to login with both valid and invalid credentials to verify some combination of expected results.
  2. navigate to the login page and attempt to login with both valid and invalid sso credentials to verify expected results.
  1. text fields prompt when blank
  2. correct error message is "authentication failed"
  3. forget password link prompts for email
  4. valid credentials result in a successful login.
  5. valid sso credentials result in a successful login
pass
Query flowCreate, edit, run, and delete queries.
  1. permissions regarding creating/editing/deleting queries are up to date with documentation
  2. syntax errors result in error messaging
  3. queries can be run manually
pass
Host FlowVerify a new host can be added and removed following modal instructions using your own device.
  1. Host is added via command line
  2. Host serial number and date added are accurate
  3. Host is not visible after it is deleted
  4. Warning and informational modals show when expected and make sense
pass
Packs flowVerify management, operation, and logging of ["2017 packs"](https://fleetdm.com/handbook/company/why-this-way#why-does-fleet-support-query-packs).
  1. Packs successfully run on host machines after migrations
  2. New Packs can be created
  3. Packs can be edited and deleted
  4. Packs results information is logged
pass
Log destination flowVerify log destination for software, query, policy, and packs.
  1. Software, query, policy, and packs logs are successfully sent to external log destinations
  2. Software, query, policy, and packs logs are successfully sent to Filesystem log destinations
pass
My device pageVerify the end user's my device page loads successfully.
  1. Clicking the Fleet desktop item, then "My device" successfully loads the my device page.
  2. The "My device" page is populated correctly and as expected.
  3. Styling and padding appears correct.
pass
MDM enrollment flowVerify MDM enrollments, run MDM commands
  1. Erase an ADE-eligible macOS host and verify able to complete auomated enrollment flow.
  2. With Windows MDM turned On, enroll a Windows host and verify MDM is turned On for the host.
  3. Verify able to run MDM commands on both macOS and Windows hosts from the CLI.
pass
ScriptsVerify script library and execution
  1. Verify able to run a script on all host types from CLI.
  2. Verify scripts library upload/download/delete.
  3. From Host details (Windows and macOS) run a script that should PASS, verify.
  4. From Host details (Windows and macOS) run a script that should FAIL, verify.
  5. Verify UI loading state and statuses for scripts.
  6. Disable scripts globally and verify unable to run.
  7. Verify scripts display correctly in Activity feed.
pass
OS settingsVerify OS settings functionality
  1. Verify able to configure Disk encryption.
  2. Verify host enrolled with Disk encryption enforced successfully encrypts.
  3. Verify Profiles upload/download/delete (macOS & Windows).
  4. Verify profiles are delivered to host and applied.
pass
Setup experienceVerify macOS Setup experience
  1. Configure End user authentication.
  2. Upload a Boostrap package.
  3. Enroll an ADE-eligible macOS host and verify successful authentication.
  4. Verify Boostrap package is delivered.
pass
OS updatesVerify OS updates flow
  1. Configure OS updates (macOS & Windows).
  2. Verify on-device that Nudge prompt appears (macOS).
pass
Migration TestVerify Fleet can migrate to the next version with no issues.

Using the migration scripts located in fleet/test/upgrade/

  1. Run the upgrade_test.go script using the most recent stable version of Fleet and main.
  2. Upgrade test returns an 'OK' response.
pass
Migration Test with Percona XtraDB MySQL ServerVerify Fleet can migrate to the next version without issues when using a specific version of Percona XtraDB Server.

Run the instructions in tools/percona/test/README.md

NA
Release blockersVerify there are no outstanding release blocking tickets.
  1. Check this filter to view all open ~release blocker tickets.
  2. If any are found raise an alarm in the #help-engineering and #g-mdm (or #g-endpoint-ops) channels.
pass

Notes

Issues found new to this version:

Issues found that reproduce in last stable version:

What has not been tested:

Include any notes on whether issues should block release or not as needed:

@lukeheath lukeheath added #g-endpoint-ops Endpoint ops product group #g-mdm MDM product group :release Ready to write code. Scheduled in a release. See "Making changes" in handbook. labels May 22, 2024
@PezHub PezHub self-assigned this May 22, 2024
@georgekarrv
Copy link
Member

Cleared all tasks on MDM 👍

@xpkoala
Copy link
Contributor

xpkoala commented May 22, 2024

reed@reed fleet % FLEET_VERSION_A=v4.45.0 FLEET_VERSION_B=prepare-fleet-v4.50.0  go test ./test/upgrade
# github.com/fleetdm/fleet/v4/test/upgrade.test
ld: warning: ignoring duplicate libraries: '-lproc'
ok  	github.com/fleetdm/fleet/v4/test/upgrade	60.919s
reed@reed fleet % FLEET_VERSION_A=v4.46.0 FLEET_VERSION_B=prepare-fleet-v4.50.0  go test ./test/upgrade
# github.com/fleetdm/fleet/v4/test/upgrade.test
ld: warning: ignoring duplicate libraries: '-lproc'
ok  	github.com/fleetdm/fleet/v4/test/upgrade	54.930s
reed@reed fleet % FLEET_VERSION_A=v4.47.0 FLEET_VERSION_B=prepare-fleet-v4.50.0  go test ./test/upgrade
# github.com/fleetdm/fleet/v4/test/upgrade.test
ld: warning: ignoring duplicate libraries: '-lproc'
ok  	github.com/fleetdm/fleet/v4/test/upgrade	55.956s
reed@reed fleet % FLEET_VERSION_A=v4.48.0 FLEET_VERSION_B=prepare-fleet-v4.50.0  go test ./test/upgrade
# github.com/fleetdm/fleet/v4/test/upgrade.test
ld: warning: ignoring duplicate libraries: '-lproc'
ok  	github.com/fleetdm/fleet/v4/test/upgrade	55.470s
reed@reed fleet % FLEET_VERSION_A=v4.49.0 FLEET_VERSION_B=prepare-fleet-v4.50.0  go test ./test/upgrade
# github.com/fleetdm/fleet/v4/test/upgrade.test
ld: warning: ignoring duplicate libraries: '-lproc'
ok  	github.com/fleetdm/fleet/v4/test/upgrade	56.246s
reed@reed fleet % FLEET_VERSION_A=patch-fleet-v4.49.4 FLEET_VERSION_B=prepare-fleet-v4.50.0  go test ./test/upgrade
# github.com/fleetdm/fleet/v4/test/upgrade.test
ld: warning: ignoring duplicate libraries: '-lproc'
ok  	github.com/fleetdm/fleet/v4/test/upgrade	62.398s

@xpkoala
Copy link
Contributor

xpkoala commented May 22, 2024

Cleared by EOPS 👍

@lukeheath lukeheath added this to the 4.50.0 milestone May 22, 2024
@fleet-release
Copy link
Contributor

Clear steps guide us,
In the cloud city's glow, fleet
Evolves, bug-free, bright.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
#g-endpoint-ops Endpoint ops product group #g-mdm MDM product group :release Ready to write code. Scheduled in a release. See "Making changes" in handbook.
Development

No branches or pull requests

5 participants