opentmi-client
Project description
Python Client library for OpenTMI
This is the Python client library for OpenTMI.
installation
To install, simply use pip:
$ pip install --upgrade opentmi-client
See the Developers Guide if you want to develop this library.
Command Line Interface
Library provides Command line Interface to communicate with OpenTMI -backend
$ opentmi --help
usage: opentmi [-h] [-v] [-s] [--host HOST] [--user USER]
[--password PASSWORD] [--token TOKEN]
[--token_service TOKEN_SERVICE] [-p PORT]
<subcommand> ...
optional arguments:
-h, --help show this help message and exit
-v verbose level... repeat up to three times.
-s, --silent Silent - only errors will be printed
--host HOST OpenTMI host, default: localhost
--user USER username
--password PASSWORD password
--token TOKEN Authentication token
--token_service TOKEN_SERVICE
Optional authentication service
-p PORT, --port PORT OpenTMI port
subcommand:
<subcommand> sub-command help
version Display version information
list List something
store Create something
example:
opentmi --host localhost --port 3000 --list --testcases 1
Python API
from opentmi_client import OpenTmiClient, Result, Event
client = Client("https://127.0.0.1")
client.login_with_access_token("my-github-access-token")
# post result
result = Result()
result.tcid = "test-case-a"
result.verdict = "pass"
client.post_result(result)
# post event
event = Event()
event.msgid = "ALLOCATED"
event.priority.level = "info",
event.ref.resource = "5697740f956cd2fd35c69062"
client.post_event(event)
See more examples from here.
Server side Result schema can be found from here. and Test case schema is available here.
notes
tcid-field have to be unique for each test cases.- There is couple mandatory fields by default:
tcidandexec.verdict. Allowed values for result verdict is:pass,fail,inconclusive,blockedanderror.upload_results()-function also create test case document if it doesn't exists in database.
Authentication
There are multiple options to authenticate:
- use
Client.login(<username>, <password>) - use
Client.login_with_access_token(<token>, [<service>])- service are optional and supported values depend on server support.
By default
githubis in use.
- service are optional and supported values depend on server support.
By default
- Use environment variables (tries login automatically when constructor is called):
- Using username and password:
OPENTMI_USERNAMEandOPENTMI_PASSWORDor - Using github access token:
OPENTMI_GITHUB_ACCESS_TOKEN
- Using username and password:
- use token in host like
http://<token>@localhost
LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file opentmi_client-0.12.0.tar.gz.
File metadata
- Download URL: opentmi_client-0.12.0.tar.gz
- Upload date:
- Size: 33.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f126c58fcf2e96b36dd13f40d4f94623637dc13261ba86778b2a3d7b13484302
|
|
| MD5 |
f4f595a2fa772d170f6ee5dcdaad5639
|
|
| BLAKE2b-256 |
7d23fc33d1103d67f46d2f8b702d25197331c298412fe331d9207c8a68a903e7
|
File details
Details for the file opentmi_client-0.12.0-py3-none-any.whl.
File metadata
- Download URL: opentmi_client-0.12.0-py3-none-any.whl
- Upload date:
- Size: 39.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
017f4833b1bc6b1e919b40e8ea2471b2cb480537a8577590f44b0a6d754c3b99
|
|
| MD5 |
46ebeb71ff736085a7fc23f53da376f3
|
|
| BLAKE2b-256 |
de27d67bfb5e3984f6c6d98236cf343ff4304d269a005564ca983d92512a51af
|