diff --git a/examples/postgresflex/create_instances.py b/examples/postgresflex/create_instance.py similarity index 82% rename from examples/postgresflex/create_instances.py rename to examples/postgresflex/create_instance.py index fb1bef09..74572396 100644 --- a/examples/postgresflex/create_instances.py +++ b/examples/postgresflex/create_instance.py @@ -1,13 +1,12 @@ import os +from stackit.core.configuration import Configuration from stackit.postgresflex.api.default_api import DefaultApi -from stackit.postgresflex.models.create_instance_payload import CreateInstancePayload from stackit.postgresflex.models.acl import ACL +from stackit.postgresflex.models.create_instance_payload import CreateInstancePayload from stackit.postgresflex.models.storage import Storage -from stackit.core.configuration import Configuration project_id = os.getenv("PROJECT_ID") -storage_class = "premium-perf2-stackit" # Create a new API client, that uses default authentication and configuration config = Configuration() @@ -21,10 +20,11 @@ name="example-instance", backupSchedule="0 0 1 * *", acl=ACL(items=["45.129.40.0/21", "193.148.160.0/19"]), - storage=Storage(var_class=storage_class, size=20), + storage=Storage(var_class="premium-perf2-stackit", size=20), flavorId=flavor_response.flavors[0].id, replicas=1, version="16", options={"type": "Single"}, ) -client.create_instance(project_id, create_instance_payload) +instance = client.create_instance(project_id, create_instance_payload) +print("Created instance with ID: " + instance.id) diff --git a/examples/postgresflex/delete_instances.py b/examples/postgresflex/delete_instance.py similarity index 61% rename from examples/postgresflex/delete_instances.py rename to examples/postgresflex/delete_instance.py index b92cbb19..72031fcd 100644 --- a/examples/postgresflex/delete_instances.py +++ b/examples/postgresflex/delete_instance.py @@ -1,17 +1,14 @@ import os -from stackit.postgresflex.api.default_api import DefaultApi from stackit.core.configuration import Configuration +from stackit.postgresflex.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID") +instance_id = "INSTANCE_ID" # Create a new API client, that uses default authentication and configuration config = Configuration() client = DefaultApi(config) -# List all postgresflex instances -response = client.list_instances(project_id) - -# Delete all instances -for instance in response.items: - client.delete_instance(project_id, instance.id) +# Delete an instances +client.delete_instance(project_id, instance_id) diff --git a/examples/rabbitmq/create_instances.py b/examples/rabbitmq/create_instance.py similarity index 77% rename from examples/rabbitmq/create_instances.py rename to examples/rabbitmq/create_instance.py index 1fb5b773..8173eb76 100644 --- a/examples/rabbitmq/create_instances.py +++ b/examples/rabbitmq/create_instance.py @@ -1,12 +1,10 @@ import os +from stackit.core.configuration import Configuration from stackit.rabbitmq.api.default_api import DefaultApi from stackit.rabbitmq.models.create_instance_payload import CreateInstancePayload -from stackit.core.configuration import Configuration - project_id = os.getenv("PROJECT_ID") -storage_class = "premium-perf2-stackit" # Create a new API client, that uses default authentication and configuration config = Configuration() @@ -17,7 +15,8 @@ # Create instance using the first flvaor create_instance_payload = CreateInstancePayload( - instance_name="exampleInstance", + instance_name="example-instance", plan_id=response.offerings[0].plans[0].id, ) -client.create_instance(project_id, create_instance_payload) +instance = client.create_instance(project_id, create_instance_payload) +print("Created instance with ID: " + instance.instance_id) diff --git a/examples/rabbitmq/delete_instances.py b/examples/rabbitmq/delete_instance.py similarity index 60% rename from examples/rabbitmq/delete_instances.py rename to examples/rabbitmq/delete_instance.py index 58c4428b..2361296b 100644 --- a/examples/rabbitmq/delete_instances.py +++ b/examples/rabbitmq/delete_instance.py @@ -1,17 +1,14 @@ import os -from stackit.rabbitmq.api.default_api import DefaultApi from stackit.core.configuration import Configuration +from stackit.rabbitmq.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID") +instance_id = "INSTANCE_ID" # Create a new API client, that uses default authentication and configuration config = Configuration() client = DefaultApi(config) -# List all rabbitmq instances -response = client.list_instances(project_id) - -# Delete all instances -for instance in response.instances: - client.delete_instance(project_id, instance.cf_guid) +# Delete an instance +client.delete_instance(project_id, instance_id) diff --git a/examples/redis/create_instance.py b/examples/redis/create_instance.py index b1582ef2..12427dce 100644 --- a/examples/redis/create_instance.py +++ b/examples/redis/create_instance.py @@ -1,26 +1,24 @@ import os +from stackit.core.configuration import Configuration from stackit.redis.api.default_api import DefaultApi from stackit.redis.models.create_instance_payload import CreateInstancePayload -from stackit.core.configuration import Configuration project_id = os.getenv("PROJECT_ID") config = Configuration() client = DefaultApi(config) -# check out all available offerings +# Check out all available offerings available_offerings = client.list_offerings(project_id) -# take the first available plan id +# Take the first available plan id offering_id = available_offerings.offerings[0].plans[0].id payload = CreateInstancePayload( - instance_name="Test Instance", + instance_name="test-instance", plan_id=offering_id, ) -# create the instance -response = client.create_instance(project_id, payload) -instance_id = response.instance_id - -print(f"Instance with id:{instance_id} has been created.") +# Create the instance +instance = client.create_instance(project_id, payload) +print("Created instance with ID: " + instance.instance_id) diff --git a/examples/redis/delete_instances.py b/examples/redis/delete_instance.py similarity index 50% rename from examples/redis/delete_instances.py rename to examples/redis/delete_instance.py index c92a2bc8..1498b463 100644 --- a/examples/redis/delete_instances.py +++ b/examples/redis/delete_instance.py @@ -1,17 +1,13 @@ import os -from stackit.redis.api.default_api import DefaultApi from stackit.core.configuration import Configuration - +from stackit.redis.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID") +instance_id = "INSTANCE_ID" config = Configuration() client = DefaultApi(config) -# get all instances -response = client.list_instances(project_id) - -# delete all instances -for instance in response.instances: - client.delete_instance(project_id=project_id, instance_id=instance.cf_guid) +# Delete an instance +client.delete_instance(project_id=project_id, instance_id=instance_id) diff --git a/examples/redis/list_instances.py b/examples/redis/list_instances.py index 64297569..aeea99c1 100644 --- a/examples/redis/list_instances.py +++ b/examples/redis/list_instances.py @@ -1,13 +1,12 @@ import os -from stackit.redis.api.default_api import DefaultApi from stackit.core.configuration import Configuration - +from stackit.redis.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID") config = Configuration() client = DefaultApi(config) -# get all instances +# Get all instances print(client.list_instances(project_id)) diff --git a/examples/resourcemanager/list_projects.py b/examples/resourcemanager/list_projects.py index 61f77ddf..de32c6eb 100644 --- a/examples/resourcemanager/list_projects.py +++ b/examples/resourcemanager/list_projects.py @@ -1,7 +1,7 @@ import os -from stackit.resourcemanager.api.default_api import DefaultApi from stackit.core.configuration import Configuration +from stackit.resourcemanager.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID") diff --git a/examples/ske/create_cluster.py b/examples/ske/create_cluster.py index d096d925..8658f5b3 100644 --- a/examples/ske/create_cluster.py +++ b/examples/ske/create_cluster.py @@ -1,50 +1,45 @@ import os +from stackit.core.configuration import Configuration from stackit.ske.api.default_api import DefaultApi from stackit.ske.models.create_or_update_cluster_payload import ( CreateOrUpdateClusterPayload, ) +from stackit.ske.models.image import Image from stackit.ske.models.kubernetes import Kubernetes -from stackit.ske.models.nodepool import Nodepool from stackit.ske.models.machine import Machine +from stackit.ske.models.nodepool import Nodepool from stackit.ske.models.volume import Volume -from stackit.ske.models.image import Image - -from stackit.core.configuration import Configuration - project_id = os.getenv("PROJECT_ID") -volume_type = "storage_premium_perf0" # Create a new API client, that uses default authentication and configuration config = Configuration() client = DefaultApi(config) -# Get available options -options_resonse = client.list_provider_options() - -# Create a new instance using the first option for everything -cluser_name = "cl-name" -create_instance_payload = CreateOrUpdateClusterPayload( - kubernetes=Kubernetes(version=options_resonse.kubernetes_versions[0].version), +# Create a new cluster +cluster_name = "my-cl" +create_cluster_payload = CreateOrUpdateClusterPayload( + kubernetes=Kubernetes(version="1.30.6"), nodepools=[ Nodepool( - availability_zones=[options_resonse.availability_zones[0].name], + availability_zones=["eu01-3"], machine=Machine( image=Image( - name=options_resonse.machine_images[0].name, - version=options_resonse.machine_images[0].versions[0].version, + name="ubuntu", + version="2204.20240912.0", ), - type=options_resonse.machine_types[0].name, + type="b1.2", ), maximum=3, minimum=2, name="my-nodepool", volume=Volume( size=20, - type=volume_type, + type="storage_premium_perf0", ), ) ], ) -client.create_or_update_cluster(project_id, cluser_name, create_instance_payload) +cluster = client.create_or_update_cluster(project_id, cluster_name, create_cluster_payload) +print("Created cluster with name: " + cluster.name) diff --git a/examples/ske/delete_clusters.py b/examples/ske/delete_cluster.py similarity index 62% rename from examples/ske/delete_clusters.py rename to examples/ske/delete_cluster.py index 8f09505f..6a47fc2a 100644 --- a/examples/ske/delete_clusters.py +++ b/examples/ske/delete_cluster.py @@ -1,17 +1,14 @@ import os -from stackit.ske.api.default_api import DefaultApi from stackit.core.configuration import Configuration +from stackit.ske.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID") +cluster_name = "CLUSTER_NAME" # Create a new API client, that uses default authentication and configuration config = Configuration() client = DefaultApi(config) -# List all ske clusters -response = client.list_clusters(project_id) - -# Delete all cluster -for cluster in response.items: - client.delete_cluster(project_id, cluster.name) +# Delete a cluster +client.delete_cluster(project_id, cluster_name) diff --git a/examples/ske/list_clusters.py b/examples/ske/list_clusters.py index 12fa318a..2728ce72 100644 --- a/examples/ske/list_clusters.py +++ b/examples/ske/list_clusters.py @@ -1,7 +1,7 @@ import os -from stackit.ske.api.default_api import DefaultApi from stackit.core.configuration import Configuration +from stackit.ske.api.default_api import DefaultApi project_id = os.getenv("PROJECT_ID")