aboutsummaryrefslogtreecommitdiff
path: root/python/reboot_ovh_cloud_instance.py
blob: de20c07c1a905789f5c129ec797c0626de664efd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# -*- encoding: utf-8 -*-
import json
try:
    from ovh import ovh
except ImportError:
    # In case it's installed globally
    import ovh
import sys
from ovh_helper import find_cloud_instance

# Credentials are stored in ~/.ovh.conf
# See ovh/README.rst
client = ovh.Client()

project, instance = find_cloud_instance(client, sys.argv[-1])

if "--rescue" in sys.argv:
    netboot_mode="rescue"
elif "--local" in sys.argv:
    netboot_mode="local"
else:
    netboot_mode=None

if netboot_mode is not None:
    result = client.post("/cloud/project/{}/instance/{}/rescueMode".format(project,
        instance["id"]), imageId=instance["imageId"], rescue=(netboot_mode == "rescue"))
    print(result)