knife-ionoscloud 5.1.0 → 5.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/publish.yml +4 -1
- data/docs/README.md +21 -1
- data/docs/docs_generator.rb +1 -1
- data/docs/subcommands/backupunit_create.md +4 -1
- data/docs/subcommands/backupunit_delete.md +4 -1
- data/docs/subcommands/backupunit_list.md +4 -1
- data/docs/subcommands/backupunit_ssourl.md +4 -1
- data/docs/subcommands/composite_server_create.md +4 -1
- data/docs/subcommands/contract_list.md +4 -1
- data/docs/subcommands/datacenter_create.md +4 -1
- data/docs/subcommands/datacenter_delete.md +4 -1
- data/docs/subcommands/datacenter_list.md +4 -1
- data/docs/subcommands/firewall_create.md +4 -1
- data/docs/subcommands/firewall_delete.md +3 -0
- data/docs/subcommands/firewall_list.md +4 -1
- data/docs/subcommands/group_create.md +4 -1
- data/docs/subcommands/group_delete.md +4 -1
- data/docs/subcommands/group_get.md +4 -1
- data/docs/subcommands/group_list.md +4 -1
- data/docs/subcommands/group_user_add.md +3 -0
- data/docs/subcommands/group_user_remove.md +3 -0
- data/docs/subcommands/image_list.md +4 -1
- data/docs/subcommands/ipblock_create.md +4 -1
- data/docs/subcommands/ipblock_delete.md +4 -1
- data/docs/subcommands/ipblock_list.md +4 -1
- data/docs/subcommands/ipfailover_add.md +4 -1
- data/docs/subcommands/ipfailover_remove.md +4 -1
- data/docs/subcommands/k8s_create.md +4 -1
- data/docs/subcommands/k8s_delete.md +4 -1
- data/docs/subcommands/k8s_list.md +4 -1
- data/docs/subcommands/kubeconfig_get.md +4 -1
- data/docs/subcommands/label_add.md +4 -1
- data/docs/subcommands/label_list.md +4 -1
- data/docs/subcommands/label_remove.md +3 -0
- data/docs/subcommands/lan_create.md +4 -1
- data/docs/subcommands/lan_delete.md +3 -0
- data/docs/subcommands/lan_list.md +4 -1
- data/docs/subcommands/loadbalancer_create.md +4 -1
- data/docs/subcommands/loadbalancer_delete.md +3 -0
- data/docs/subcommands/loadbalancer_get.md +4 -1
- data/docs/subcommands/loadbalancer_list.md +4 -1
- data/docs/subcommands/loadbalancer_nic_add.md +3 -0
- data/docs/subcommands/loadbalancer_nic_remove.md +3 -0
- data/docs/subcommands/location_list.md +4 -1
- data/docs/subcommands/nic_create.md +4 -1
- data/docs/subcommands/nic_delete.md +3 -0
- data/docs/subcommands/nic_list.md +4 -1
- data/docs/subcommands/node_delete.md +3 -0
- data/docs/subcommands/node_list.md +4 -1
- data/docs/subcommands/node_replace.md +3 -0
- data/docs/subcommands/nodepool_create.md +7 -1
- data/docs/subcommands/nodepool_delete.md +3 -0
- data/docs/subcommands/nodepool_list.md +4 -1
- data/docs/subcommands/pcc_create.md +4 -1
- data/docs/subcommands/pcc_delete.md +4 -1
- data/docs/subcommands/pcc_list.md +4 -1
- data/docs/subcommands/request_list.md +4 -1
- data/docs/subcommands/request_status.md +4 -1
- data/docs/subcommands/request_wait.md +4 -1
- data/docs/subcommands/resource_list.md +4 -1
- data/docs/subcommands/s3key_create.md +4 -1
- data/docs/subcommands/s3key_delete.md +3 -0
- data/docs/subcommands/s3key_list.md +4 -1
- data/docs/subcommands/server_create.md +4 -1
- data/docs/subcommands/server_delete.md +3 -0
- data/docs/subcommands/server_list.md +4 -1
- data/docs/subcommands/server_reboot.md +3 -0
- data/docs/subcommands/server_start.md +3 -0
- data/docs/subcommands/server_stop.md +3 -0
- data/docs/subcommands/share_create.md +4 -1
- data/docs/subcommands/share_delete.md +3 -0
- data/docs/subcommands/share_list.md +4 -1
- data/docs/subcommands/snapshot_create.md +4 -1
- data/docs/subcommands/snapshot_delete.md +4 -1
- data/docs/subcommands/snapshot_list.md +4 -1
- data/docs/subcommands/snapshot_restore.md +4 -1
- data/docs/subcommands/user_create.md +4 -1
- data/docs/subcommands/user_delete.md +4 -1
- data/docs/subcommands/user_list.md +4 -1
- data/docs/subcommands/user_ssourl.md +4 -1
- data/docs/subcommands/volume_attach.md +3 -0
- data/docs/subcommands/volume_create.md +10 -1
- data/docs/subcommands/volume_delete.md +3 -0
- data/docs/subcommands/volume_detach.md +3 -0
- data/docs/subcommands/volume_list.md +4 -1
- data/lib/chef/knife/ionoscloud_backupunit_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_backupunit_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_backupunit_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_backupunit_ssourl.rb +1 -0
- data/lib/chef/knife/ionoscloud_base.rb +23 -0
- data/lib/chef/knife/ionoscloud_composite_server_create.rb +3 -18
- data/lib/chef/knife/ionoscloud_contract_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_datacenter_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_datacenter_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_datacenter_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_firewall_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_firewall_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_firewall_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_group_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_group_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_group_get.rb +1 -0
- data/lib/chef/knife/ionoscloud_group_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_group_user_add.rb +1 -0
- data/lib/chef/knife/ionoscloud_group_user_remove.rb +1 -0
- data/lib/chef/knife/ionoscloud_image_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_ipblock_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_ipblock_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_ipblock_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_ipfailover_add.rb +1 -0
- data/lib/chef/knife/ionoscloud_ipfailover_remove.rb +1 -0
- data/lib/chef/knife/ionoscloud_k8s_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_k8s_delete.rb +6 -2
- data/lib/chef/knife/ionoscloud_k8s_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_kubeconfig_get.rb +1 -0
- data/lib/chef/knife/ionoscloud_label_add.rb +1 -0
- data/lib/chef/knife/ionoscloud_label_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_label_remove.rb +1 -0
- data/lib/chef/knife/ionoscloud_lan_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_lan_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_lan_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_loadbalancer_create.rb +3 -1
- data/lib/chef/knife/ionoscloud_loadbalancer_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_loadbalancer_get.rb +1 -0
- data/lib/chef/knife/ionoscloud_loadbalancer_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_loadbalancer_nic_add.rb +1 -0
- data/lib/chef/knife/ionoscloud_loadbalancer_nic_remove.rb +1 -0
- data/lib/chef/knife/ionoscloud_location_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_nic_create.rb +2 -3
- data/lib/chef/knife/ionoscloud_nic_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_nic_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_node_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_node_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_node_replace.rb +1 -0
- data/lib/chef/knife/ionoscloud_nodepool_create.rb +11 -0
- data/lib/chef/knife/ionoscloud_nodepool_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_nodepool_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_pcc_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_pcc_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_pcc_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_request_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_request_status.rb +1 -0
- data/lib/chef/knife/ionoscloud_request_wait.rb +1 -0
- data/lib/chef/knife/ionoscloud_resource_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_s3key_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_s3key_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_s3key_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_server_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_server_delete.rb +3 -2
- data/lib/chef/knife/ionoscloud_server_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_server_reboot.rb +1 -0
- data/lib/chef/knife/ionoscloud_server_start.rb +1 -0
- data/lib/chef/knife/ionoscloud_server_stop.rb +1 -0
- data/lib/chef/knife/ionoscloud_share_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_share_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_share_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_snapshot_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_snapshot_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_snapshot_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_snapshot_restore.rb +1 -0
- data/lib/chef/knife/ionoscloud_user_create.rb +1 -0
- data/lib/chef/knife/ionoscloud_user_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_user_list.rb +1 -0
- data/lib/chef/knife/ionoscloud_user_ssourl.rb +1 -0
- data/lib/chef/knife/ionoscloud_volume_attach.rb +1 -0
- data/lib/chef/knife/ionoscloud_volume_create.rb +19 -15
- data/lib/chef/knife/ionoscloud_volume_delete.rb +1 -0
- data/lib/chef/knife/ionoscloud_volume_detach.rb +1 -0
- data/lib/chef/knife/ionoscloud_volume_list.rb +1 -0
- data/lib/knife-ionoscloud/version.rb +1 -1
- data/spec/chef/knife/ionoscloud_k8s_delete_spec.rb +5 -2
- data/spec/chef/knife/ionoscloud_nodepool_create_spec.rb +1 -1
- data/spec/chef/knife/ionoscloud_volume_create_spec.rb +0 -52
- metadata +2 -2
@@ -24,6 +24,9 @@ knife ionoscloud s3key delete S3KEY_ID [S3KEY_ID] (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
@@ -24,9 +24,12 @@ knife ionoscloud s3key list (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
30
33
|
```text
|
31
|
-
knife ionoscloud s3key list --user USER_ID --username USERNAME --password PASSWORD
|
34
|
+
knife ionoscloud s3key list --user USER_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
32
35
|
```
|
@@ -49,9 +49,12 @@ knife ionoscloud server create (options)
|
|
49
49
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
50
50
|
your Ionoscloud password (required)
|
51
51
|
|
52
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
53
|
+
path to the additional config file
|
54
|
+
|
52
55
|
```
|
53
56
|
## Example
|
54
57
|
|
55
58
|
```text
|
56
|
-
knife ionoscloud server create --datacenter-id DATACENTER_ID --name NAME --cores CORES --cpu-family CPU_FAMILY --ram RAM --availability-zone AVAILABILITY_ZONE --boot-volume VOLUME_ID --boot-cdrom CDROM_ID --username USERNAME --password PASSWORD
|
59
|
+
knife ionoscloud server create --datacenter-id DATACENTER_ID --name NAME --cores CORES --cpu-family CPU_FAMILY --ram RAM --availability-zone AVAILABILITY_ZONE --boot-volume VOLUME_ID --boot-cdrom CDROM_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
57
60
|
```
|
@@ -26,6 +26,9 @@ knife ionoscloud server delete SERVER_ID [SERVER_ID] (options)
|
|
26
26
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
27
27
|
your Ionoscloud password (required)
|
28
28
|
|
29
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
30
|
+
path to the additional config file
|
31
|
+
|
29
32
|
```
|
30
33
|
## Example
|
31
34
|
|
@@ -24,9 +24,12 @@ knife ionoscloud server list (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
30
33
|
```text
|
31
|
-
knife ionoscloud server list --datacenter-id DATACENTER_ID --username USERNAME --password PASSWORD
|
34
|
+
knife ionoscloud server list --datacenter-id DATACENTER_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
32
35
|
```
|
@@ -24,6 +24,9 @@ knife ionoscloud server reboot SERVER_ID [SERVER_ID] (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
@@ -24,6 +24,9 @@ knife ionoscloud server start SERVER_ID [SERVER_ID] (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
@@ -24,6 +24,9 @@ knife ionoscloud server stop SERVER_ID [SERVER_ID] (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
@@ -34,9 +34,12 @@ knife ionoscloud share create (options)
|
|
34
34
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
35
35
|
your Ionoscloud password (required)
|
36
36
|
|
37
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
38
|
+
path to the additional config file
|
39
|
+
|
37
40
|
```
|
38
41
|
## Example
|
39
42
|
|
40
43
|
```text
|
41
|
-
knife ionoscloud share create --group-id GROUP_ID --resource-id RESOURCE_ID --edit --share --username USERNAME --password PASSWORD
|
44
|
+
knife ionoscloud share create --group-id GROUP_ID --resource-id RESOURCE_ID --edit --share --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
42
45
|
```
|
@@ -24,6 +24,9 @@ knife ionoscloud server delete SHARE_ID [SHARE_ID] (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
@@ -24,9 +24,12 @@ knife ionoscloud share list (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
30
33
|
```text
|
31
|
-
knife ionoscloud share list --group-id GROUP_ID --username USERNAME --password PASSWORD
|
34
|
+
knife ionoscloud share list --group-id GROUP_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
32
35
|
```
|
@@ -40,9 +40,12 @@ knife ionoscloud snapshot create (options)
|
|
40
40
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
41
41
|
your Ionoscloud password (required)
|
42
42
|
|
43
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
44
|
+
path to the additional config file
|
45
|
+
|
43
46
|
```
|
44
47
|
## Example
|
45
48
|
|
46
49
|
```text
|
47
|
-
knife ionoscloud snapshot create --datacenter DATACENTER_ID --volume VOLUME_ID --name SNAPSHOT_NAME --description SNAPSHOT_DESCRIPTION --sec-auth --licence LICENCE_TYPE --username USERNAME --password PASSWORD
|
50
|
+
knife ionoscloud snapshot create --datacenter DATACENTER_ID --volume VOLUME_ID --name SNAPSHOT_NAME --description SNAPSHOT_DESCRIPTION --sec-auth --licence LICENCE_TYPE --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
48
51
|
```
|
@@ -20,9 +20,12 @@ knife ionoscloud snapshot delete SNAPSHOT_ID [SNAPSHOT_ID]
|
|
20
20
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
21
21
|
your Ionoscloud password (required)
|
22
22
|
|
23
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
24
|
+
path to the additional config file
|
25
|
+
|
23
26
|
```
|
24
27
|
## Example
|
25
28
|
|
26
29
|
```text
|
27
|
-
knife ionoscloud snapshot delete SNAPSHOT_ID [SNAPSHOT_ID]--username USERNAME --password PASSWORD
|
30
|
+
knife ionoscloud snapshot delete SNAPSHOT_ID [SNAPSHOT_ID]--username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
28
31
|
```
|
@@ -20,9 +20,12 @@ knife ionoscloud snapshot list
|
|
20
20
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
21
21
|
your Ionoscloud password (required)
|
22
22
|
|
23
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
24
|
+
path to the additional config file
|
25
|
+
|
23
26
|
```
|
24
27
|
## Example
|
25
28
|
|
26
29
|
```text
|
27
|
-
knife ionoscloud snapshot list--username USERNAME --password PASSWORD
|
30
|
+
knife ionoscloud snapshot list--username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
28
31
|
```
|
@@ -32,9 +32,12 @@ knife ionoscloud snapshot restore (options)
|
|
32
32
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
33
33
|
your Ionoscloud password (required)
|
34
34
|
|
35
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
36
|
+
path to the additional config file
|
37
|
+
|
35
38
|
```
|
36
39
|
## Example
|
37
40
|
|
38
41
|
```text
|
39
|
-
knife ionoscloud snapshot restore --datacenter DATACENTER_ID --volume VOLUME_ID --snapshot SNAPSHOT_ID --username USERNAME --password PASSWORD
|
42
|
+
knife ionoscloud snapshot restore --datacenter DATACENTER_ID --volume VOLUME_ID --snapshot SNAPSHOT_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
40
43
|
```
|
@@ -42,9 +42,12 @@ knife ionoscloud user create (options)
|
|
42
42
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
43
43
|
your Ionoscloud password (required)
|
44
44
|
|
45
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
46
|
+
path to the additional config file
|
47
|
+
|
45
48
|
```
|
46
49
|
## Example
|
47
50
|
|
48
51
|
```text
|
49
|
-
knife ionoscloud user create --firstname FIRSTNAME --lastname LASTNAME --email EMAIL --password PASSWORD --admin ADMIN --sec-auth --username USERNAME --password PASSWORD
|
52
|
+
knife ionoscloud user create --firstname FIRSTNAME --lastname LASTNAME --email EMAIL --password PASSWORD --admin ADMIN --sec-auth --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
50
53
|
```
|
@@ -20,9 +20,12 @@ knife ionoscloud user delete USER_ID [USER_ID]
|
|
20
20
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
21
21
|
your Ionoscloud password (required)
|
22
22
|
|
23
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
24
|
+
path to the additional config file
|
25
|
+
|
23
26
|
```
|
24
27
|
## Example
|
25
28
|
|
26
29
|
```text
|
27
|
-
knife ionoscloud user delete USER_ID [USER_ID]--username USERNAME --password PASSWORD
|
30
|
+
knife ionoscloud user delete USER_ID [USER_ID]--username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
28
31
|
```
|
@@ -23,9 +23,12 @@ knife ionoscloud user list (options)
|
|
23
23
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
24
24
|
your Ionoscloud password (required)
|
25
25
|
|
26
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
27
|
+
path to the additional config file
|
28
|
+
|
26
29
|
```
|
27
30
|
## Example
|
28
31
|
|
29
32
|
```text
|
30
|
-
knife ionoscloud user list --group-id GROUP_ID --username USERNAME --password PASSWORD
|
33
|
+
knife ionoscloud user list --group-id GROUP_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
31
34
|
```
|
@@ -24,9 +24,12 @@ knife ionoscloud user ssourl (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
30
33
|
```text
|
31
|
-
knife ionoscloud user ssourl --user-id USER_ID --username USERNAME --password PASSWORD
|
34
|
+
knife ionoscloud user ssourl --user-id USER_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
32
35
|
```
|
@@ -28,6 +28,9 @@ knife ionoscloud volume attach VOLUME_ID [VOLUME_ID] (options)
|
|
28
28
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
29
29
|
your Ionoscloud password (required)
|
30
30
|
|
31
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
32
|
+
path to the additional config file
|
33
|
+
|
31
34
|
```
|
32
35
|
## Example
|
33
36
|
|
@@ -51,15 +51,24 @@ knife ionoscloud volume create (options)
|
|
51
51
|
availability_zone: --availability-zone AVAILABILITY_ZONE, -Z AVAILABILITY_ZONE
|
52
52
|
the volume availability zone of the server
|
53
53
|
|
54
|
+
backupunit_id: --backupunit BACKUPUNIT_ID, -B BACKUPUNIT_ID
|
55
|
+
the uuid of the Backup Unit that user has access to. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
|
56
|
+
|
57
|
+
user_data: --user-data USER_DATA, -u USER_DATA
|
58
|
+
the cloud-init configuration for the volume as base64 encoded string. The property is immutable and is only allowed to be set on a new volume creation. It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
|
59
|
+
|
54
60
|
ionoscloud_username: --username USERNAME, -u USERNAME
|
55
61
|
your Ionoscloud username (required)
|
56
62
|
|
57
63
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
58
64
|
your Ionoscloud password (required)
|
59
65
|
|
66
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
67
|
+
path to the additional config file
|
68
|
+
|
60
69
|
```
|
61
70
|
## Example
|
62
71
|
|
63
72
|
```text
|
64
|
-
knife ionoscloud volume create --datacenter-id DATACENTER_ID --name NAME --size SIZE --bus BUS --image ID --image-alias IMAGE_ALIAS --image-password PASSWORD --type TYPE --licence-type LICENCE --ssh-keys SSHKEY1,SSHKEY2,... --availability-zone AVAILABILITY_ZONE --username USERNAME --password PASSWORD
|
73
|
+
knife ionoscloud volume create --datacenter-id DATACENTER_ID --name NAME --size SIZE --bus BUS --image ID --image-alias IMAGE_ALIAS --image-password PASSWORD --type TYPE --licence-type LICENCE --ssh-keys SSHKEY1,SSHKEY2,... --availability-zone AVAILABILITY_ZONE --backupunit BACKUPUNIT_ID --user-data USER_DATA --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
65
74
|
```
|
@@ -24,6 +24,9 @@ knife ionoscloud volume delete SERVER_ID [SERVER_ID] (options)
|
|
24
24
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
25
25
|
your Ionoscloud password (required)
|
26
26
|
|
27
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
28
|
+
path to the additional config file
|
29
|
+
|
27
30
|
```
|
28
31
|
## Example
|
29
32
|
|
@@ -30,6 +30,9 @@ knife ionoscloud volume detach VOLUME_ID [VOLUME_ID] (options)
|
|
30
30
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
31
31
|
your Ionoscloud password (required)
|
32
32
|
|
33
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
34
|
+
path to the additional config file
|
35
|
+
|
33
36
|
```
|
34
37
|
## Example
|
35
38
|
|
@@ -27,9 +27,12 @@ knife ionoscloud volume list (options)
|
|
27
27
|
ionoscloud_password: --password PASSWORD, -p PASSWORD
|
28
28
|
your Ionoscloud password (required)
|
29
29
|
|
30
|
+
extra_config_file: --extra-config EXTRA_CONFIG_FILE_PATH, -e EXTRA_CONFIG_FILE_PATH
|
31
|
+
path to the additional config file
|
32
|
+
|
30
33
|
```
|
31
34
|
## Example
|
32
35
|
|
33
36
|
```text
|
34
|
-
knife ionoscloud volume list --datacenter-id DATACENTER_ID --server-id SERVER_ID --username USERNAME --password PASSWORD
|
37
|
+
knife ionoscloud volume list --datacenter-id DATACENTER_ID --server-id SERVER_ID --username USERNAME --password PASSWORD --extra-config EXTRA_CONFIG_FILE_PATH
|
35
38
|
```
|
@@ -18,6 +18,11 @@ class Chef
|
|
18
18
|
short: '-p PASSWORD',
|
19
19
|
long: '--password PASSWORD',
|
20
20
|
description: 'Your Ionoscloud password'
|
21
|
+
|
22
|
+
option :extra_config_file,
|
23
|
+
short: '-e EXTRA_CONFIG_FILE_PATH',
|
24
|
+
long: '--extra-config EXTRA_CONFIG_FILE_PATH',
|
25
|
+
description: 'Path to the additional config file'
|
21
26
|
end
|
22
27
|
end
|
23
28
|
|
@@ -37,6 +42,24 @@ class Chef
|
|
37
42
|
end
|
38
43
|
end
|
39
44
|
|
45
|
+
def handle_extra_config
|
46
|
+
return if config[:extra_config_file].nil?
|
47
|
+
|
48
|
+
available_options = options.map { |key, _| key }
|
49
|
+
ionoscloud_options = available_options[available_options.find_index(:ionoscloud_username)..]
|
50
|
+
ignored_options = []
|
51
|
+
|
52
|
+
JSON[File.read(config[:extra_config_file])].transform_keys(&:to_sym).each do |key, value|
|
53
|
+
if config.key?(key) || !ionoscloud_options.include?(key)
|
54
|
+
ignored_options << key
|
55
|
+
else
|
56
|
+
config[key] = value
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
ui.warn "The following options #{ignored_options} from the specified JSON file will be ignored." unless ignored_options.empty?
|
61
|
+
end
|
62
|
+
|
40
63
|
def api_client
|
41
64
|
api_config = Ionoscloud::Configuration.new()
|
42
65
|
|
@@ -125,25 +125,11 @@ class Chef
|
|
125
125
|
|
126
126
|
def run
|
127
127
|
$stdout.sync = true
|
128
|
+
handle_extra_config
|
128
129
|
validate_required_params(@required_options, config)
|
129
130
|
|
130
|
-
if
|
131
|
-
|
132
|
-
exit(1)
|
133
|
-
end
|
134
|
-
|
135
|
-
if !config[:ssh_keys] && !config[:image_password]
|
136
|
-
ui.error('Either \'--image-password\' or \'--ssh-keys\' parameter must be provided')
|
137
|
-
exit(1)
|
138
|
-
end
|
139
|
-
|
140
|
-
if config[:ssh_keys]
|
141
|
-
config[:ssh_keys] = config[:ssh_keys].split(',')
|
142
|
-
end
|
143
|
-
|
144
|
-
if config[:ips]
|
145
|
-
config[:ips] = config[:ips].split(',')
|
146
|
-
end
|
131
|
+
config[:ssh_keys] = config[:ssh_keys].split(',') if config[:ssh_keys] && config[:ssh_keys].instance_of?(String)
|
132
|
+
config[:ips] = config[:ips].split(',') if config[:ips] && config[:ips].instance_of?(String)
|
147
133
|
|
148
134
|
print ui.color('Creating composite server...', :magenta).to_s
|
149
135
|
|
@@ -172,7 +158,6 @@ class Chef
|
|
172
158
|
}.compact)
|
173
159
|
)
|
174
160
|
|
175
|
-
|
176
161
|
server = Ionoscloud::Server.new(
|
177
162
|
properties: Ionoscloud::ServerProperties.new({
|
178
163
|
name: config[:name],
|