Máme vlastní modul pro Terraform, který umí vytvářet a upravovat VPS na naší infrastruktuře, nahrávat veřejné SSH klíče a spouštět příkazy přes SSH.
Terraform je nástroj pro správu infrastruktury pomocí konfiguračních souborů. Podporuje spoustu různých poskytovatelů hostingu, cloudů a podobných služeb. Nyní je možné pomocí něj konfigurovat i naše VPS.
Náš plugin pro Terraform aktuálně umí vytvářet a upravovat VPS, nahrávat veřejné SSH klíče a spouštět příkazy přes SSH. Plugin, pokyny k instalaci a ukázku použití najdete na GitHubu.
Případné chyby prosím hlaste u repozitáře. Samozřejmě se můžete také zapojit do vývoje, chtělo by to ještě dodělat podporu pro správu datasetů, mountů a určitě se toho najde více.
Terraform pluginy se nejsnadněji píšou v Golangu, takže jsme v Golangu potřebovali taky klienta k našemu API. Díky tomu, že se naše API umí samo pěkně zdokumentovat, klient pro Golang je kompletně automaticky vygenerovaný. Výsledkem je tedy generátor klientských Golang knihoven pro HaveAPI a samotný klient k našemu API, který je možné použít nezávisle na Terraformu.