MycroftAI / mycroft-core

Mycroft Core, the Mycroft Artificial Intelligence platform.
https://mycroft.ai
Apache License 2.0
6.51k stars 1.27k forks source link

Make network tests configurable #2962

Closed krisgesling closed 3 years ago

krisgesling commented 3 years ago

Description

Previously test URIs were hardcoded. They can now be configured in mycroft.conf.

This may be required for offline or air gapped installations - or the user may just wish to decide where their test pings are going.

This also

How to test

Unit tests included. Can also set your network_tests object to alternative values and see it fail / succeed accordingly.

Contributor license agreement signed?

devops-mycroft commented 3 years ago

Voight Kampff Integration Test Failed (Results). Mycroft logs are also available: skills.log, audio.log, voice.log, bus.log, enclosure.log

j1nx commented 3 years ago

What about skipping/passing the whole internet connection check for people running locally? This PR looks like the right place to surf along with it?

krisgesling commented 3 years ago

What about skipping/passing the whole internet connection check for people running locally? This PR looks like the right place to surf along with it?

That seems like a bigger change. Are you meaning, running without a backend or completely offline? These two scenarios probably need different behaviours and UX decisions.

j1nx commented 3 years ago

What about skipping/passing the whole internet connection check for people running locally? This PR looks like the right place to surf along with it?

That seems like a bigger change. Are you meaning, running without a backend or completely offline? These two scenarios probably need different behaviours and UX decisions.

Whatever the user wants or is doing, but don't overthink it. Just make a boolean; skip, yes or no. Defaults to no. If a user wants to skip it, it just passes the connectivity check.

This is for power / development users that have their own api keys, backend, TTS, etc.

JarbasAl commented 3 years ago

What about skipping/passing the whole internet connection check for people running locally? This PR looks like the right place to surf along with it?

That seems like a bigger change. Are you meaning, running without a backend or completely offline? These two scenarios probably need different behaviours and UX decisions.

Whatever the user wants or is doing, but don't overthink it. Just make a boolean; skip, yes or no. Defaults to no. If a user wants to skip it, it just passes the connectivity check.

This is for power / development users that have their own api keys, backend, TTS, etc.

i think @j1nx means this https://github.com/HelloChatterbox/HolmesV/commit/7e40469a897ad8a3509a5e9677de492de6f457a7

krisgesling commented 3 years ago

Yeah cool, have started an issue thread (#2964) TLDR - I agree with the linked commit and don't think we should need an internet connection to load the Skills service at all.

krisgesling commented 3 years ago

Test did pass - failed on cleanup due to a file permission error. Merging.