|
|
|
@ -1,3 +1,4 @@ |
|
|
|
|
import 'dart:convert'; |
|
|
|
|
import 'dart:io'; |
|
|
|
|
|
|
|
|
|
import 'package:dio/dio.dart'; |
|
|
|
@ -40,17 +41,9 @@ class HetznerApi extends ApiMap { |
|
|
|
|
@required User rootUser, |
|
|
|
|
@required String domainName, |
|
|
|
|
}) async { |
|
|
|
|
var data = { |
|
|
|
|
"name": "selfprivacy-server", |
|
|
|
|
"server_type": "cx11", |
|
|
|
|
"start_after_create": true, |
|
|
|
|
"image": "ubuntu-20.04", |
|
|
|
|
"ssh_keys": ["ilchub"], |
|
|
|
|
"volumes": [], |
|
|
|
|
"networks": [], |
|
|
|
|
'user-data': |
|
|
|
|
'#cloud-config\\nruncmd:\\n- curl https://git.selfprivacy.org/ilchub/selfprivacy-nixos-infect/raw/branch/master/nixos-infect | PROVIDER=hetzner NIX_CHANNEL=nixos-20.09 DOMAIN=$domainName USER=${rootUser.login} PASSWORD=${rootUser.password} HASHED_PASSWORD=${rootUser.hashPassword} bash 2>&1 | tee /tmp/infect.log' |
|
|
|
|
}; |
|
|
|
|
var data = jsonDecode( |
|
|
|
|
'''{"name":"selfprivacy-server","server_type":"cx11","start_after_create":true,"image":"ubuntu-20.04", "volumes":[],"networks":[],"user_data":"#cloud-config\\nruncmd:\\n- curl https://git.selfprivacy.org/ilchub/selfprivacy-nixos-infect/raw/branch/master/nixos-infect | PROVIDER=hetzner NIX_CHANNEL=nixos-20.09 DOMAIN=$domainName USER=${rootUser.login} PASSWORD=${rootUser.password} HASHED_PASSWORD=${rootUser.hashPassword} bash 2>&1 | tee /tmp/infect.log","labels":{},"automount":false}'''); |
|
|
|
|
|
|
|
|
|
Response response = await loggedClient.post( |
|
|
|
|
rootAddress, |
|
|
|
|
data: data, |
|
|
|
|