Files
firezone/rust/gui-client/docs/intended_behavior.md
Reactor Scram 2416d4f45c docs(client): update Linux and Windows Client docs (#5007)
Closes #4995
Closes #4925
Closes #4997
Closes #5047 
Supersedes #4965 and #5004.

NOT changing:

- Page description for other Clients. That is still "Firezone
Documentation"

Need these Clients:

- Windows GUI
- Linux headless 
- Linux GUI

to have these things documented: (with exact terms)

- Prerequisites
- Installation
- Usage
  - Signing in
  - Accessing a Resource
  - Signing out
  - Quitting
- Upgrading
- Diagnostic logs
- Uninstalling
- Troubleshooting
  - DNS not reverted after exit
  - DNS Resource not accessible
- Known issues

```[tasklist]
### Before merging
- [x] Test Windows GUI instructions
- [x] Add troubleshooting for #5027
- [x] Fill in troubleshooting sections
- [x] Test Linux GUI instructions
- [x] Linux headless - Make sure SIGTERM or Ctrl+C or whatever reverts resolv.conf
- [x] Test Linux Headless instructions
- [x] Page descriptions should be "How to install and use the Firezone $OS $UI client."
- [x] ~~Linux headless - Confirm behaviors and default values of all env vars~~ (skipping - The ones that are used are exercised)
- [x] Grep for TODOs
- [x] Change "un-install" to "uninstall"
- [x] Capitalize "Client" where needed
- [x] Change "IPC service" to "Tunnel service" or something
- [x] Change "SplitDNS" to "Split DNS"
- [ ] Wait for next Client release to be cut
```

---------

Signed-off-by: Jamil <jamilbk@users.noreply.github.com>
Signed-off-by: Reactor Scram <ReactorScram@users.noreply.github.com>
Co-authored-by: Jamil Bou Kheir <jamilbk@users.noreply.github.com>
2024-05-22 20:22:46 +00:00

3.5 KiB

Intended Behavior

A less exhaustive version of Manual Testing

Smoke test checklist (Ubuntu)

Keep this synchronized with the Linux GUI docs in /website/src/app/kb/user-guides/linux-gui-client

Best performed on a clean VM

  1. Run scripts/firezone-client-gui-install.sh
  2. Expect "Reboot to finish..." message
  3. Run the Firezone GUI
  4. Expect an error saying that you are not a member of the group firezone-client
  5. Reboot
  6. Expect groups to include "firezone-client"
  7. Run the Firezone GUI
  8. Expect the "Welcome to Firezone." screen
  9. Open the Settings window and change to staging if needed
  10. Click "Sign in"
  11. Expect a browser to open
  12. Sign in
  13. Expect Firefox to show "Allow this site to open the link with Firezone?" modal
  14. Check "Always..." and click "Open link"
  15. Expect a keyring dialog to pop up
  16. Enter 'password' for testing purposes
  17. Expect "Firezone connected" notification
  18. Browse to https://ifconfig.net
  19. Expect to see the gateway's IP and location
  20. Quit Firezone
  21. Refresh the page
  22. Expect to see your own IP and location
  23. Reboot
  24. Run the Firezone GUI
  25. Expect a keyring dialog to pop up
  26. Enter 'password' to unlock the stored token
  27. Expect "Firezone connected" notification
  28. Check the IP again, expect the gateway's IP
  29. Export the logs
  30. Expect the zip file to start with "firezone_logs_"
  31. Expect zipinfo to show a single directory in the root of the zip, to prevent zip bombing
  32. Expect two subdirectories in the zip, "connlib", and "app", with 3 and 2 files respectively, totalling 5 files

Smoke test checklist (Windows)

Keep this synchronized with the Windows GUI docs in /website/src/app/kb/user-guides/windows-client

x86_64 only, see issue #2992. Best performed on a clean VM.

  1. Run the MSI installer and ensure "Launch Firezone" is checked at the end
  2. Expect the "Welcome to Firezone." screen
  3. Open the Settings window and change to staging if needed
  4. Click "Sign in"
  5. Expect a browser to open
  6. Sign in
  7. Expect the browser to show "This site is trying to open Firezone." modal
  8. Check "Always allow..." and click "Open"
  9. Expect "Firezone connected" notification
  10. Browse to https://ifconfig.net
  11. Expect to see the gateway's IP and location
  12. Quit Firezone
  13. Refresh the page
  14. Expect to see your own IP and location
  15. Reboot
  16. Browse to https://ifconfig.net (For issue #4899)
  17. Expect to see your own IP and location
  18. Run the Firezone GUI
  19. Expect "Firezone connected" notification
  20. Check the IP again, expect the gateway's IP
  21. Export the logs
  22. Expect the zip file to start with "firezone_logs_"
  23. Expect the zip to contain a single directory in the root of the zip, to prevent zip bombing
  24. Expect two subdirectories in the zip, "connlib", and "app", with 2 files each, totalling 4 files

Upgrade checklist (Linux)

  1. Close the Firezone GUI
  2. Run scripts/firezone-client-gui-install.sh $NEW_DEB
  3. Run the Firezone GUI

Upgrade checklist (Windows)

  1. Close the Firezone GUI
  2. Run the new MSI
  3. Run the Firezone GUI

Un-install checklist (Linux)

  1. Close the Firezone GUI
  2. Run sudo apt-get remove firezone-client-gui

Un-install checklist (Windows)

  1. Quit the Firezone GUI
  2. Go to "Add or Remove Programs"
  3. Search for Firezone and click "Uninstall"

Settings tab

  • Pressing Enter on a text field immediately saves and applies the settings
  • Log level changes take effect on the next app start
  • Auth base URL and API URL changes take effect on the next sign-in

Refs: