mirror of
https://gitea.com/mcereda/oam.git
synced 2026-02-09 05:44:23 +00:00
chore(dblab): curl the apis to achieve greatness
This commit is contained in:
@@ -31,24 +31,69 @@ dblab instance status
|
||||
|
||||
# Create clones.
|
||||
dblab clone create --username 'dblab_user_1' --password 'secret_password' --id 'my_first_clone'
|
||||
curl -X 'POST' 'https://dblab.instance.fqdn/api/clone' -H 'Verification-Token: verification-token-here' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "protected": true, "db": { "username": "user", "password": "password", "db_name": "db" }, "id": "clone-id" }'
|
||||
|
||||
# Get clones' information.
|
||||
curl -X 'GET' 'https://dblab.instance.fqdn/api/clone/clone-id' -H 'Verification-Token: verification-token-here'
|
||||
|
||||
# Reset clones.
|
||||
curl -X 'POST' 'https://dblab.instance.fqdn/api/clone/clone-id/reset' -H 'Verification-Token: verification-token-here' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "latest": true }'
|
||||
curl -X 'POST' 'https://dblab.instance.fqdn/api/clone/clone-id/reset' -H 'Verification-Token: verification-token-here' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "latest": false, "snapshotID": "2024-09-09T12:12:13Z" }'
|
||||
|
||||
# Change clones' properties.
|
||||
curl -X 'PATCH' 'https://dblab.instance.fqdn/api/clone/clone-id' -H 'Verification-Token: verification-token-here' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "protected": false }'
|
||||
|
||||
# Delete clones.
|
||||
curl -X 'DELETE' 'https://dblab.instance.fqdn/api/clone/clone-id/reset' -H 'Verification-Token: verification-token-here'
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<!-- Uncomment if used
|
||||
<details>
|
||||
<summary>Real world use cases</summary>
|
||||
|
||||
```sh
|
||||
curl -X 'POST' 'https://dblab.company.com:1234/api/clone' \
|
||||
-H 'Verification-Token: something-something-dark-side' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{
|
||||
"id": "smth",
|
||||
"protected": true,
|
||||
"db": {
|
||||
"username": "master",
|
||||
"password": "ofPuppets",
|
||||
"db_name": "puppet"
|
||||
}
|
||||
}'
|
||||
curl 'https://dblab.company.com:1234/api/clone/smth' \
|
||||
-H 'Verification-Token: something-something-dark-side'
|
||||
curl -X 'POST' 'https://dblab.company.com:1234/api/clone/smth/reset' \
|
||||
-H 'Verification-Token: something-something-dark-side' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "latest": true }'
|
||||
curl -X 'PATCH' 'https://dblab.company.com:1234/api/clone/smth' \
|
||||
-H 'Verification-Token: something-something-dark-side' \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "protected": false }'
|
||||
curl -X 'DELETE' 'https://dblab.company.com:1234/api/clone/smth' \
|
||||
-H 'Verification-Token: something-something-dark-side'
|
||||
```
|
||||
|
||||
</details>
|
||||
-->
|
||||
|
||||
## Further readings
|
||||
|
||||
- [Database Lab]
|
||||
- [Database Lab Client CLI reference (dblab)]
|
||||
- [API reference]
|
||||
|
||||
### Sources
|
||||
|
||||
@@ -65,7 +110,8 @@ dblab clone create --username 'dblab_user_1' --password 'secret_password' --id '
|
||||
|
||||
<!-- Files -->
|
||||
<!-- Upstream -->
|
||||
[how to install and initialize database lab cli]: https://postgres.ai/docs/how-to-guides/cli/cli-install-init
|
||||
[api reference]: https://dblab.readme.io/reference/
|
||||
[database lab client cli reference (dblab)]: https://postgres.ai/docs/reference-guides/dblab-client-cli-reference
|
||||
[how to install and initialize database lab cli]: https://postgres.ai/docs/how-to-guides/cli/cli-install-init
|
||||
|
||||
<!-- Others -->
|
||||
|
||||
30
snippets/dblab.fish
Normal file
30
snippets/dblab.fish
Normal file
@@ -0,0 +1,30 @@
|
||||
#!/usr/bin/env fish
|
||||
|
||||
# Create clones
|
||||
curl -X 'POST' 'https://dblab.company.com:1234/api/clone' -H "Verification-Token: $(gopass show -o 'dblab')" \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{
|
||||
"id": "smth",
|
||||
"protected": true,
|
||||
"db": {
|
||||
"username": "master",
|
||||
"password": "ofPuppets",
|
||||
"db_name": "puppet"
|
||||
}
|
||||
}'
|
||||
|
||||
# Get clones' information
|
||||
curl 'https://dblab.company.com:1234/api/clone/smth' -H "Verification-Token: $(gopass show -o 'dblab')"
|
||||
|
||||
# Reset clones
|
||||
curl -X 'POST' 'https://dblab.company.com:1234/api/clone/smth/reset' -H "Verification-Token: $(gopass show -o 'dblab')" \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "latest": true }'
|
||||
|
||||
# Unprotect clones
|
||||
curl -X 'PATCH' 'https://dblab.company.com:1234/api/clone/smth' -H "Verification-Token: $(gopass show -o 'dblab')" \
|
||||
-H 'accept: application/json' -H 'content-type: application/json' \
|
||||
-d '{ "protected": false }'
|
||||
|
||||
# Delete clones
|
||||
curl -X 'DELETE' 'https://dblab.company.com:1234/api/clone/smth' -H "Verification-Token: $(gopass show -o 'dblab')"
|
||||
Reference in New Issue
Block a user