| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements the command "run/schedule" that kicks in pending commands
execution.
Request:
POST /run/schedule
{
"clients": ["192.168.56.11"]
}
Reply:
200 OK
This patch also adds a simple test to cover correction of the command.
|
|
|
|
| |
This test covers correction of the command.
|
|
|
|
| |
This test covers correction of the command.
|
|
|
|
| |
This test covers correction of the command.
|
|
|
|
| |
This test covers correction of the command.
|
|
|
|
| |
This test covers correction of the command.
|
|
|
|
| |
Update restore_image.json to use id and profile fields.
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements the command "image/create" that creates an image
in a client.
Request:
POST /image/restore
{ "clients" : [ "192.168.56.11" ], "disk" : "1", "partition" : "1", "name" : "test", "repository" : "192.168.56.10", "type" : "UNICAST", "filesystem": "1", "image_id": "1"}
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements the command "image/create" that creates an image
in a client.
Request:
POST /image/create
{ "clients" : [ "192.168.2.1" ], "disk" : "1", "partition" : "1", "code" : "1", "id" : "1", "name" : "test", "repository" : "192.168.2.2" }
Reply:
200 OK
|
|
|
|
|
|
|
| |
If no payload is attached to method that requires a payload, then the API
returns a 400 status code (following RFC 7231) instead of the previous 404.
test_0001_get_clients.py is also modified to fit the new status code.
|
|
|
|
|
| |
Some tests should perform GET requests however they incorrectly use POST.
Return codes for these tests have also been fixed.
|
|
|
|
| |
This test is already performed in test_0001_get_clients.py
|
|
|
|
|
| |
This test sends a POST with no body, which is illegal, use a function
name that describes this.
|
|
|
|
|
|
|
| |
This test checks for wrong headers HTTP requests:
1. POST /clients with a content length larger than a signed int.
2. POST /clients with an auth token larger than 63 characters.
|
|
|
|
|
|
|
|
| |
This test checks for too large HTTP requests, for example:
POST /clients
with a body of 4096 bytes.
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, if you try to run the python test without the ogAdmServer
binary, it will throw an exception.
This patch adds a check to ensure the existence of the ogAdmServer binary
at the beginning of the script.
# python3 run-tests.py
You need to build the ogAdmServer binary to run these tests :-)
|
|
|
|
|
| |
Without the brackets the call works (200 response) but the ogAdmServer
does not send the WOL packets.
|
|
|
|
|
|
|
|
|
| |
This test adds four new error test cases:
1. Non existent method with POST.
2. Non existent method with GET.
3. Non existent method with POST but with wrong API token.
4. Non existent method with POST but without json.
|
|
|
|
|
|
|
| |
This test covers two two scenarios:
1. Correct usage.
2. Incorrect usage, use this command with GET (this returns http 405).
|
|
|
|
|
|
|
| |
This test covers two two scenarios:
1. Correct usage.
2. Incorrect usage, use this command with GET (this returns http 405).
|
|
|
|
|
|
|
| |
This test covers two two scenarios:
1. Correct usage.
2. Incorrect usage, use this command with GET (this returns http 405).
|
|
|
|
|
|
|
| |
This test covers two two scenarios:
1. Correct usage.
2. Incorrect usage, use this command with GET (this returns http 405).
|
|
|
|
|
|
|
| |
This test covers two two scenarios:
1. Correct usage.
2. Incorrect usage, use this command with GET (this returns http 405).
|
|
|
|
|
|
|
| |
This test covers two two scenarios:
1. Correct usage.
2. Incorrect usage, use this command with GET (this returns http 405).
|
|
|
|
| |
This should test /shell/run instead of /session
|
|
|
|
|
|
|
|
| |
* Call the tests with python module unittest. In particular, the
discover function.
* Rename tests files to meet the default requirements of discover
function.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements the command "software" that fetches the software
configuration from the clients.
Request:
POST /software
{"clients" : [ "192.168.2.1", "192.168.2.2" ]}
Reply:
200 OK
This allows to refresh the software inventory from clients.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements the command "hardware" that fetches the hardware
configuration from the clients.
Request:
POST /hardware
{"clients" : [ "192.168.2.1", "192.168.2.2" ]}
Reply:
200 OK
This allows to refresh the hardware inventory from clients.
|
|
|
|
| |
Add token parameter in REST API test infrastructure.
|
|
|
|
| |
Add APITOKEN= field to ogAdmServer.cfg to specify the REST API key.
|
|
|
|
| |
No need to explicit return call, remove it.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
This python script creates a database and starts ogAdmServer to run the
tests. This requires root to be launched:
# ./run-tests.py
From the 'tests' folder.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Forces client to fetch and run any pending command from the server,
reload its local configuration file and re-start its selection menu.
curl -X POST http://127.0.0.1:8888/refresh -d @refresh.json
Request
POST /refresh
{"clients": [ "192.168.2.1" ] }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
|
| |
Stop the menu selection on client (through POST method):
curl -X POST http://127.0.0.1:8888/stop -d @stop.json
Request
POST /stop
{"clients": [ "192.168.2.1" ] }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reboot a client (through POST method):
curl -X POST http://127.0.0.1:8888/reboot -d @reboot.json
Request
POST /reboot
{"clients": [ "192.168.2.1" ] }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
|
| |
Power off a client (through POST method):
curl -X POST http://127.0.0.1:8888/poweroff -d @poweroff.json
Request
POST /poweroff
{"clients": [ "192.168.2.1" ] }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
|
| |
Start a session on client (through POST method):
curl -X POST http://127.0.0.1:8888/session -d @session.json
Request
POST /session
{"clients": [ "192.168.2.1" ] }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fetching result from run command on client (through GET method):
curl -X POST http://127.0.0.1:8888/shell/output -d @post_shell_output.json
Request
POST /shell/output
{"clients": [ "192.168.2.1" ] }
Reply:
200 OK
{"clients": [ { "addr" : "192.168.2.1", "output" : "..." } ] }
|
|
|
|
|
|
|
|
|
|
|
|
| |
Run command on client (through POST method):
curl -X POST http://127.0.0.1:8888/shell/run -d @post_run.json
Request
POST /shell/run
{"clients": [ "192.168.2.1", "192.168.2.2" ], "run" : "ls" }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
| |
Send Wake-On-Lan to clients (through POST method):
Request:
curl -X POST http://127.0.0.1:8888/wol
{ "type" : "unicast", "clients" : [ { "addr" : "192.168.2.1", "mac" : "00AABBCCDD01" } ] }
Reply:
200 OK
|
|
|
|
|
|
|
|
|
|
|
|
| |
Request for existing clients:
curl -X GET http://127.0.0.1:8888/clients
Request:
GET /clients
Reply:
200 OK
{"clients": [ { "addr" : "192.168.2.1", "state" : "OPG" }, { "addr" : "192.168.2.2", "state" : "OFF" }]}
|
|
Add REST API for ogAdmServer, this API is exposed through port 8888 on
the system that runs the ogAdmServer. The body of the HTTP message is
expressed in JSON format.
This patch implements the command "clients" that maps to the existing
legacy "Sondeo" command, that is used by the web interface to poll
refresh the client state.
This patch also includes an initial test infrastructure using 'curl' to
send commands to the new REST API.
Request:
POST /clients
{"clients" : [ "192.168.2.1", "192.168.2.2" ]}
Reply:
200 OK
This allows to refresh the status of the list of clients.
|