Feature #17609

Updated by Peter Amstutz 7 months ago

This is the list of tests will do


Then once we have the list will include it to the arvados-client test

* Run the tests that can be run:
** If config.yml is available, check that
** If cypress can be run, run browser-based tests
* Warn about what can be run / cannot be run
* put everything into a diagnostics project

Ward's 3 electric rails:

* uploading through keepproxy
* running workflows
* properly configured keep-web
** uploading via webdav
** downloading via webdav and s3

Nico's tests:

* Fetching discovery document / public config
* Check hostnames, ports, certificates of service ExternalURL are valid
* Check nginx geo section

Tom's modes:

* User option to run assuming it is inside (check that things treat you as inside)
* User option to run assuming it is outside (check that things treat you as outside)


* Use healthcheck endpoints, see if some tests can be part of healthcheck
** Any check that can be done as a healthcheck, probably should be
* Needs management token
* Use healthcheck aggregator

$ arvados-client diagnostics --inside
Checking connectivity to https://api.arvados.example.com ...OK
Checking TLS certificate on https://api.arvados.example.com ...FAIL


* run @arvados-server check-config@ as early as possible.
* verbose mode that communicates as much as possible about what each test is trying to do
* be very explicit about failures