diff --git a/scaleway-async/scaleway_async/instance/v1/api.py b/scaleway-async/scaleway_async/instance/v1/api.py index 8aa5e54e2..eef7bec53 100644 --- a/scaleway-async/scaleway_async/instance/v1/api.py +++ b/scaleway-async/scaleway_async/instance/v1/api.py @@ -508,11 +508,11 @@ async def _create_server( self, *, commercial_type: str, - image: str, zone: Optional[Zone] = None, name: Optional[str] = None, dynamic_ip_required: Optional[bool] = None, routed_ip_enabled: Optional[bool] = None, + image: Optional[str] = None, volumes: Optional[Dict[str, VolumeServerTemplate]] = None, enable_ipv6: Optional[bool] = None, public_ip: Optional[str] = None, @@ -530,11 +530,11 @@ async def _create_server( Create a new Instance of the specified commercial type in the specified zone. Pay attention to the volumes parameter, which takes an object which can be used in different ways to achieve different behaviors. Get more information in the [Technical Information](#technical-information) section of the introduction. :param commercial_type: Define the Instance commercial type (i.e. GP1-S). - :param image: Instance image ID or label. :param zone: Zone to target. If none is passed will use default zone from the config. :param name: Instance name. :param dynamic_ip_required: Define if a dynamic IPv4 is required for the Instance. :param routed_ip_enabled: If true, configure the Instance so it uses the new routed IP mode. + :param image: Instance image ID or label. :param volumes: Volumes attached to the server. :param enable_ipv6: True if IPv6 is enabled on the server (deprecated and always `False` when `routed_ip_enabled` is `True`). :param public_ip: ID of the reserved IP to attach to the Instance. @@ -555,7 +555,6 @@ async def _create_server( result = await api._create_server( commercial_type="example", - image="example", ) """ @@ -567,11 +566,11 @@ async def _create_server( body=marshal_CreateServerRequest( CreateServerRequest( commercial_type=commercial_type, - image=image, zone=zone, name=name or random_name(prefix="srv"), dynamic_ip_required=dynamic_ip_required, routed_ip_enabled=routed_ip_enabled, + image=image, volumes=volumes, enable_ipv6=enable_ipv6, public_ip=public_ip, diff --git a/scaleway-async/scaleway_async/instance/v1/marshalling.py b/scaleway-async/scaleway_async/instance/v1/marshalling.py index 2fb081f97..7b6821735 100644 --- a/scaleway-async/scaleway_async/instance/v1/marshalling.py +++ b/scaleway-async/scaleway_async/instance/v1/marshalling.py @@ -3023,9 +3023,6 @@ def marshal_CreateServerRequest( if request.commercial_type is not None: output["commercial_type"] = request.commercial_type - if request.image is not None: - output["image"] = request.image - if request.name is not None: output["name"] = request.name @@ -3035,6 +3032,9 @@ def marshal_CreateServerRequest( if request.routed_ip_enabled is not None: output["routed_ip_enabled"] = request.routed_ip_enabled + if request.image is not None: + output["image"] = request.image + if request.volumes is not None: output["volumes"] = { key: marshal_VolumeServerTemplate(value, defaults) diff --git a/scaleway-async/scaleway_async/instance/v1/types.py b/scaleway-async/scaleway_async/instance/v1/types.py index a31a50b14..632000891 100644 --- a/scaleway-async/scaleway_async/instance/v1/types.py +++ b/scaleway-async/scaleway_async/instance/v1/types.py @@ -1765,11 +1765,6 @@ class CreateServerRequest: Define the Instance commercial type (i.e. GP1-S). """ - image: str - """ - Instance image ID or label. - """ - zone: Optional[Zone] """ Zone to target. If none is passed will use default zone from the config. @@ -1790,6 +1785,11 @@ class CreateServerRequest: If true, configure the Instance so it uses the new routed IP mode. """ + image: Optional[str] + """ + Instance image ID or label. + """ + volumes: Optional[Dict[str, VolumeServerTemplate]] """ Volumes attached to the server. diff --git a/scaleway/scaleway/instance/v1/api.py b/scaleway/scaleway/instance/v1/api.py index 47b0545b4..33fd80f79 100644 --- a/scaleway/scaleway/instance/v1/api.py +++ b/scaleway/scaleway/instance/v1/api.py @@ -508,11 +508,11 @@ def _create_server( self, *, commercial_type: str, - image: str, zone: Optional[Zone] = None, name: Optional[str] = None, dynamic_ip_required: Optional[bool] = None, routed_ip_enabled: Optional[bool] = None, + image: Optional[str] = None, volumes: Optional[Dict[str, VolumeServerTemplate]] = None, enable_ipv6: Optional[bool] = None, public_ip: Optional[str] = None, @@ -530,11 +530,11 @@ def _create_server( Create a new Instance of the specified commercial type in the specified zone. Pay attention to the volumes parameter, which takes an object which can be used in different ways to achieve different behaviors. Get more information in the [Technical Information](#technical-information) section of the introduction. :param commercial_type: Define the Instance commercial type (i.e. GP1-S). - :param image: Instance image ID or label. :param zone: Zone to target. If none is passed will use default zone from the config. :param name: Instance name. :param dynamic_ip_required: Define if a dynamic IPv4 is required for the Instance. :param routed_ip_enabled: If true, configure the Instance so it uses the new routed IP mode. + :param image: Instance image ID or label. :param volumes: Volumes attached to the server. :param enable_ipv6: True if IPv6 is enabled on the server (deprecated and always `False` when `routed_ip_enabled` is `True`). :param public_ip: ID of the reserved IP to attach to the Instance. @@ -555,7 +555,6 @@ def _create_server( result = api._create_server( commercial_type="example", - image="example", ) """ @@ -567,11 +566,11 @@ def _create_server( body=marshal_CreateServerRequest( CreateServerRequest( commercial_type=commercial_type, - image=image, zone=zone, name=name or random_name(prefix="srv"), dynamic_ip_required=dynamic_ip_required, routed_ip_enabled=routed_ip_enabled, + image=image, volumes=volumes, enable_ipv6=enable_ipv6, public_ip=public_ip, diff --git a/scaleway/scaleway/instance/v1/marshalling.py b/scaleway/scaleway/instance/v1/marshalling.py index 2fb081f97..7b6821735 100644 --- a/scaleway/scaleway/instance/v1/marshalling.py +++ b/scaleway/scaleway/instance/v1/marshalling.py @@ -3023,9 +3023,6 @@ def marshal_CreateServerRequest( if request.commercial_type is not None: output["commercial_type"] = request.commercial_type - if request.image is not None: - output["image"] = request.image - if request.name is not None: output["name"] = request.name @@ -3035,6 +3032,9 @@ def marshal_CreateServerRequest( if request.routed_ip_enabled is not None: output["routed_ip_enabled"] = request.routed_ip_enabled + if request.image is not None: + output["image"] = request.image + if request.volumes is not None: output["volumes"] = { key: marshal_VolumeServerTemplate(value, defaults) diff --git a/scaleway/scaleway/instance/v1/types.py b/scaleway/scaleway/instance/v1/types.py index a31a50b14..632000891 100644 --- a/scaleway/scaleway/instance/v1/types.py +++ b/scaleway/scaleway/instance/v1/types.py @@ -1765,11 +1765,6 @@ class CreateServerRequest: Define the Instance commercial type (i.e. GP1-S). """ - image: str - """ - Instance image ID or label. - """ - zone: Optional[Zone] """ Zone to target. If none is passed will use default zone from the config. @@ -1790,6 +1785,11 @@ class CreateServerRequest: If true, configure the Instance so it uses the new routed IP mode. """ + image: Optional[str] + """ + Instance image ID or label. + """ + volumes: Optional[Dict[str, VolumeServerTemplate]] """ Volumes attached to the server.