This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
navody:vps:api [2016/02/09 17:00] – [Dokumentace API] verze 2.0 Aither | navody:vps:api [2016/10/25 06:44] – api v3.0, haveapi-webui, ncurses Aither | ||
---|---|---|---|
Line 10: | Line 10: | ||
===== Dokumentace API ===== | ===== Dokumentace API ===== | ||
Dokumentace API, tzn. seznam objektů, možných akcí, vstupních a výstupních | Dokumentace API, tzn. seznam objektů, možných akcí, vstupních a výstupních | ||
- | parametrů je k vidění na https:// | + | parametrů je k vidění na https:// |
Bez přihlášení se zobrazuje seznam všech objektů, tj. i těch, se kterými můžou | Bez přihlášení se zobrazuje seznam všech objektů, tj. i těch, se kterými můžou | ||
Line 27: | Line 27: | ||
* PHP - https:// | * PHP - https:// | ||
* JavaScript - https:// | * JavaScript - https:// | ||
+ | * Webové rozhraní z HaveAPI - https:// | ||
+ | * Souborový systém založený na FUSE - https:// | ||
Ukázka použití je vždy v '' | Ukázka použití je vždy v '' | ||
Line 58: | Line 60: | ||
[[https:// | [[https:// | ||
Pro správnou funkci vyžaduje Ruby >= 2.0 a nainstalované hlavičkové soubory | Pro správnou funkci vyžaduje Ruby >= 2.0 a nainstalované hlavičkové soubory | ||
- | Ruby a OpenSSL (většinou balíčky s příponou '' | + | Ruby, OpenSSL |
< | < | ||
Line 75: | Line 77: | ||
$ gem install vpsfree-client | $ gem install vpsfree-client | ||
</ | </ | ||
+ | |||
+ | ==== Instalace ve Windows 10 využitím Ubuntu Linux subsystem ==== | ||
+ | |||
+ | === Instalace Ubuntu (Linux subsystemu Windows 10) === | ||
+ | |||
+ | - ve Windows 10 povolit developer mode, nechat nainstalovat | ||
+ | - přes Programy a funkce otevřít přidání součástí Windows, úplně dole zvolit Linux subsystem, nechat nainstalovat a restartovat počítač | ||
+ | - po restartu jako admin spustit v nabídce Start bash | ||
+ | - vytvořit Unix username a heslo | ||
+ | - stisknout y a nechat nainstalovat základ Ubuntu | ||
+ | |||
+ | === Instalace závislostí === | ||
+ | |||
+ | <code bash> | ||
+ | sudo apt-get install ruby2.0 ruby2.0-dev libssl-dev make g++ | ||
+ | </ | ||
+ | |||
+ | === Quick & Dirty fix pro nastavení ruby2.0 jako výchozího namísto 1.9 === | ||
+ | |||
+ | <code bash> | ||
+ | sudo rm / | ||
+ | sudo ln -s / | ||
+ | sudo ln -s / | ||
+ | sudo ln -s / | ||
+ | sudo ln -s / | ||
+ | sudo ln -s / | ||
+ | sudo gem update --system | ||
+ | sudo gem pristine --all | ||
+ | </ | ||
+ | |||
+ | Zdroj: http:// | ||
+ | |||
+ | === Instalace vpsfree-client === | ||
+ | |||
+ | <code bash> | ||
+ | sudo gem install vpsfree-client | ||
+ | </ | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
Po instalaci by v '' | Po instalaci by v '' | ||
Line 388: | Line 431: | ||
* '' | * '' | ||
* '' | * '' | ||
+ | |||
+ | ===== Aktualizace ===== | ||
+ | |||
+ | Pro využití nových vlastností je potřeba klienta občas aktualizovat, | ||
+ | provede příkazem | ||
+ | |||
+ | < | ||
+ | $ gem update vpsfree-client | ||
+ | </ | ||
+ | |||
+ | Následně můžeme odstranit starou verzi: | ||
+ | |||
+ | < | ||
+ | $ gem cleanup vpsfree-client | ||
+ | </ | ||
+ | |||
+ | Tento příkaz odstraní pouze staré verze gemu '' | ||
+ | závislosti zůstanou. Pro odstranění všech starých gemů použijte příkaz | ||
+ | |||
+ | < | ||
+ | $ gem cleanup -n # vypíše, které gemy by smazal | ||
+ | $ gem cleanup | ||
+ | </ | ||
+ | |||
+ | ===== Souborový systém ====== | ||
+ | '' | ||
+ | API jako souborový systém z userspace. Objekty, akce a jejich parametry můžeme | ||
+ | procházet jako adresáře a soubory v libovolném programu. Instaluje se stejným způsobem | ||
+ | jako CLI, má jen jiný název: | ||
+ | |||
+ | < | ||
+ | $ gem install haveapi-fs | ||
+ | </ | ||
+ | |||
+ | ==== Použití ==== | ||
+ | Použití '' | ||
+ | [[https:// | ||
+ | zkratce. | ||
+ | |||
+ | < | ||
+ | $ haveapi-fs https:// | ||
+ | Username: mujlogin | ||
+ | Password: | ||
+ | |||
+ | $ cd / | ||
+ | $ ls -1 | ||
+ | auth_token | ||
+ | cluster | ||
+ | cluster_resource | ||
+ | dataset | ||
+ | dataset_plan | ||
+ | dns_resolver | ||
+ | environment | ||
+ | help.html | ||
+ | help.man | ||
+ | help.md | ||
+ | help.txt | ||
+ | ip_address | ||
+ | language | ||
+ | location | ||
+ | mail_template | ||
+ | migration_plan | ||
+ | node | ||
+ | object_history | ||
+ | os_template | ||
+ | snapshot_download | ||
+ | transaction | ||
+ | transaction_chain | ||
+ | user | ||
+ | user_session | ||
+ | vps | ||
+ | vps_config | ||
+ | </ | ||
+ | |||
+ | V každém adresáři se nachází soubory '' | ||
+ | aktuální adresář obsahuje. | ||
+ | |||
+ | < | ||
+ | $ cat vps/ | ||
+ | moje-vps | ||
+ | |||
+ | $ echo lepsi-hostname > vps/ | ||
+ | $ echo 1 > vps/ | ||
+ | $ cat vps/ | ||
+ | 1 | ||
+ | $ cat vps/ | ||
+ | lepsi-hostname | ||
+ | </ | ||
+ | |||
+ | Z ukázky výše lze vidět, že jednotlivé atributy objektů lze měnit jednoduše | ||
+ | zapsáním do souboru. Akce uložení se vyvolá zapsáním jedničky, případně je to | ||
+ | i spustitelný soubor, takže jej můžeme spustit. | ||
+ | |||
+ | Pro přehlednější vytváření/ | ||
+ | '' | ||
+ | hash a po uložení a uzavření souboru se příslušná akce provede. | ||
+ | |||
+ | Tímto způsobem lze provést jakoukoli operaci v API. | ||
===== Ukázky použití ===== | ===== Ukázky použití ===== | ||
Následují skripty demonstrují možnosti využití API. Tyto skripty lze | Následují skripty demonstrují možnosti využití API. Tyto skripty lze | ||
spouštět odkudkoli -- manuálně, z cronu, apod. | spouštět odkudkoli -- manuálně, z cronu, apod. | ||
+ | |||
+ | < | ||
+ | Ač jsou tyto ukázky stále validní, klient v CLI už obsahuje | ||
+ | [[navody: | ||
+ | ještě jednodušší. | ||
+ | </ | ||
==== Každodenní stahování záloh VPS ==== | ==== Každodenní stahování záloh VPS ==== | ||
Line 486: | Line 633: | ||
end | end | ||
</ | </ | ||
+ | |||