Usage¶
Intentionally the usage is a simple stupid REST’ish api, in fact there is only create a new instance, delete an existing instance, list all instances and read/get the details of an instance.
Create a postgraas Instance¶
We need to send all the required parameters for the creation as an http request. This is quite convenient by creating a file e.g. my_postgraas.json:
{
"postgraas_instance_name": "my_postgraas",
"db_name": "my_db",
"db_username": "db_user",
"db_pwd": "secret"
}
and making a POST request to the collection resource with curl:
curl -H "Content-Type: application/json" -X POST --data @my_postgraas.json http://localhost:8080/api/v2/postgraas_instances
now your instance is created and as a response you get the details of your instance:
{
"postgraas_instance_id": 1,
"container_id": "193f0d94d49fa26626fdbdb583e9453f923468b01eac59207b4852831a105c03",
"db_pwd": "secret",
"host": "not imlemented yet",
"db_name": "my_db",
"db_username": "db_user",
"port": 54648
}
We are now able to connect to the database for exaple with psql:
psql -h localhost -p 54648 -U db_user my_db
Awesome, isn’t it?
List all instances¶
With a GET request to the collection resource you get a list of all instances (not only the one you created…):
curl -H "Content-Type: application/json" -X GET http://localhost:8080/api/v2/postgraas_instances
And the response is the list:
[
{
"username": "db_user",
"container_id": "193f0d94d49fa26626fdbdb583e9453f923468b01eac59207b4852831a105c03",
"db_name": "my_db",
"postgraas_instance_name": "my_postgraas",
"password": "",
"creation_timestamp": "2016-07-06T23:38:38.367493",
"id": 1,
"hostname": "not imlemented yet",
"port": "54648"
}
]
Delete an instance¶
With a DELETE request to the uri of the instance you can delete an instance:
curl -H "Content-Type: application/json" -X DELETE --data @pwd.json http://localhost:8080/api/v2/postgraas_instances/1
where the pwd.json file contains the postgres password as “db_pwd” key, e.g.:
{
"db_pwd": "secret"
}
You will get a response like this:
{
"status": "success",
"msg": "deleted postgraas instance"
}
That’s it at the moment!