Skip to content

Commit

Permalink
feat: Fabric 4.17 spec update (#32)
Browse files Browse the repository at this point in the history
* Update Fabric API Spec to version 4.17
* Remove uneeded patch files

## Changes in SDK

### Enhancements

* Additional methods ->
  - Methods added for Cloud Router Actions
- Methods added for Cloud Router Connections advertisedRoutes and
receivedRoutes searching
  - Methods for Precision Time PUT endpoint
  - Methods added for Stream Subscriptions Product
  - Methods added for Streams Product


* Additional models ->
  - Models added for Cloud Router Actions Product
  - ServiceToken model used for API Responses
- Models added for Stream Subscriptions Product and for Streams Product
    - Asset Enum
    - ActionRequest
    - ActionResponse
    - ActionState
    - ActionType
    - ActionsSearchExpression
    - ActionsSearchFilter
    - ActionsSearchFilters
    - ActionsSearchOrFilter
    - ActionsSearchRequest
    - ActionsSearchResponse
    - ActionsSearchSortBy
    - ActionsSearchSortCriteria
    - ActionsSearchSortDirection
    - ConnectionRouteEntryFilter
    - ConnectionRouteEntryFilters
    - ConnectionRouteEntryOrFilter
    - ConnectionRouteEntrySimpleExpression
    - ConnectionRouteEntrySortBy
    - ConnectionRouteEntrySortDirection
    - ConnectionRouteSearchRequest
    - ConnectionRouteSortCriteria
    - ConnectionRouteTableEntry
    - ConnectionRouteTableEntryConnection
    - ConnectionRouteTableEntrySearchResponse
    - ConnectionRouteTableEntryState
    - GetAllStreamAssetResponse
    - GetAllStreamResponse
    - GetAllStreamSubscriptionResponse
    - GetSubscriptionsInStreamResponse
    - Operation
    - Package
    - PackageCode
    - PackageType
    - Stream
    - StreamAsset
    - StreamAssetAttachmentStatus
    - StreamAssetFilter
    - StreamAssetFilters
    - StreamAssetOrFilter
    - StreamAssetPutRequest
    - StreamAssetSearchRequest
    - StreamAssetSimpleExpression
    - StreamAssetSortBy
    - StreamAssetSortCriteria
    - StreamAssetSortDirection
    - StreamFilter
    - StreamFilterOrFilter
    - StreamFilterSimpleExpression
    - StreamGetSubscriptions
    - StreamGetSubscriptionsType
    - StreamPostRequest
    - StreamPostRequestType
    - StreamPutRequest
    - StreamSubscription
    - StreamSubscriptionFilter
    - StreamSubscriptionPostRequest
    - StreamSubscriptionPostRequestType
    - StreamSubscriptionPutRequest
    - StreamSubscriptionSink
    - StreamSubscriptionSinkCredential
    - StreamSubscriptionSinkSetting
    - StreamSubscriptionSinkType
    - StreamSubscriptionState
    - StreamSubscriptionType
    - StreamTarget
  - BulkPortRequest added to replace BulkPort in request methods  
  - PhysicalPortSettings 
  - PortBMMRType
  - PortConnectivitySourceType
  - PortRequest 
  - PortServiceType
  - PrecisionTimeOrder
  - PrecisionTimePackageCode
  - PrecisionTimeServiceResponseState
  - PrecisionTimeServiceResponseType
  - LogAnnounceInterval
  - LogSyncInterval
  - LogDelayReqInterval
  - RouterActionsConnection
  - SimplifiedTokenNetwork
  - SimplifiedTokenNetworkScope
  - SimplifiedTokenNetworkType
  - SimplifiedVirtualDevice
  - SimplifiedVirtualDeviceType
  - SubscriptionState
  - ValidateConnectionResponse
  - VirtualConnectionSide
  - VirtualConnectionTimeServiceResponse
  - VirtualDeviceInterface
  
* Models extended ->
  - ApiGetServiceTokenByUuidRequest added offset and limit attributes
- AccessPointSelector added VirtualDevice, Interface, and Network as
attributes
- bgp_connection_ipv4 and bgp_connection_ipv6 added RoutesMax attribute
  - PhysicalPort added UUID, Settings, and Interface attributes
  - PortOperation added EvplVCCount, FgVCCount, and AccessVCCount
  - PortPurchaseOrder added Type attribute
  - ServiceToken added IssuerSide attribute
  - ServiceTokenConnection added AllowCustomBandwidth
  - SimplifiedMetadataEntity
 
* Constants added ->
- AccessPointSelectType added ACCESSPOINTSELECTORTYPE_VD and
ACCESSPOINTSELECTORTYPE_NETWORK
  - CLOUDROUTERACCESSPOINTSTATE_REPROVISIONING added
  - PORTOPERATIONOPERATIONALSTATUS_PARTIAL added
  - PortOrderPurchaseOrderType added
  - PhysicalPortsType added
- PRECISIONTIMECHANGEOPERATIONOP_ADD and
PRECISIONTIMECHANGEOPERATIONOP_REMOVE added
  - Additional PRECISIONTIMECHANGEOPERATIONPATHs for changes
  - Additional SERVICETOKENCONNECTIONTYPEs
  - ServiceTokenIssuerSide added
  - SERVICETOKENTYPE_EPL_TOKEN added
  - VirtualDeviceInterfaceType

### Breaking Changes

* Methods changed ->
  - Ports Method signature changes because of model renames; 
    - BulkPort used instead of AllPortsResponse
    - BulkPortRequest used instead of BulkPort
  - Precision Time Method signature changes because of model renames
- Service Tokens method signature changes because addition of
ServiceToken model
- CloudRouterChangeOperation now uses PrecisionTimeChangeOperationOp
instead of ServiceTokenChangeOperationOp for changes
- NetworkChangeOperation now uses PrecisionTimeChangeOperationOp instead
of ServiceTokenChangeOperationOp for changes
- ServiceTokenOperation now uses PrecisionTimeChangeOperationOp instead
of ServiceTokenChangeOperationOp for changes

* Models changed ->
  - ApiCreatePortRequest; Port renamed to PortRequest
  - PortResponse renamed to Port
- PrecisionTimeServiceCreateResponse renamed to
PrecisionTimeServiceResponse
- AccessPointSelector LinkProtocol attribute changed from LinkProtocol
type to SimplifiedLinkProtocol type
  - AllPortsResponse uses []Port instead of []PortResponse
- ConnectionResponse uses []ValidateConnectionResponse instead of
[]BaseConnection
- Ipv4 attributes Primary, Secondary, and NetworkMask are required
attributes
  - MD5 renamed Id -> KeyNumber and Password -> Key
  - Port model no longer has required fields
- PrecisionTimeServiceRequest split AdvanceConfiguration into
NtpAdvanceConfiguration and PtpAdvanceConfiguration
    - FabricConnectionUuid changed to VirtualConnectionUuid as well
- PrecisionTimeServiceResponse split AdvanceConfiguration into
NtpAdvanceConfiguration and PtpAdvanceConfiguration
- FabricConnectionUuid changed to VirtualConnectionTimeServiceResponse
  - PTPAdvanceConfiguration uses explicit types for:
    - LogAnnounceInterval
    - LogSyncInterval
    - LogDelayReqInterval
  - RouteTableEntry
  - SimplifiedPort:
    - Removed CvpId and modified int32 to int64 on integer attributes
    - Added Package
  - SubscriptionAsset
  - SubscriptionResponse
  - FabricConnectionUuid renamed to VirtualConnectionUuid


* Models Deleted ->
  - Account model removed in favor of SimplifiedAccount
- AdvanceConfiguration model removed in favor of bringing NTP and PTP to
a higher level for Precision Time
- PortResponse deleted in favor of modified Port model (no required
fields)
- BaseConnection deleted in favor of modified ValidateConnectionResponse
  - CLOUDROUTERACCESSPOINTSTATE_LOCKED deleted
  - LinkProtocol deleted in favor of SimplifiedLinkProtocol
  - LinkProtocolDot1q deleted
  - LinkProtocolEVPN_VXLan deleted
  - LinkProtocolIpv4Ipv6Config deleted
  - LinkProtocol QINQ deleted
  - LinkProtocolUntagged deleted
  - LinkProtocolVXLan deleted
  - PortResponseBMMRType
  - PortResponseConnectivitySourceType
  - PortResponsePhysicalPortsType
  - PortResponseServiceType
  - PrecisionTimePackageRequest
  - PrecisionTimeServiceCreateResponse
  - PrecisionTimeServiceCreateResponseState
  - PrecisionTimeServiceCreateResponseType
  - SimplifiedAccountPortResponse deleted in favor of SimplifiedAccount
  - SubscriptionAssetType
  - SubscriptionStatus deleted in favor of SubscriptionState
  • Loading branch information
thogarty authored Oct 16, 2024
2 parents c895c75 + 7279a63 commit 0c20974
Show file tree
Hide file tree
Showing 1,222 changed files with 37,011 additions and 9,157 deletions.
2 changes: 1 addition & 1 deletion Makefile.fabricv4
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
include Makefile

PACKAGE_NAME=fabricv4
SPEC_BASE_URL:=https://api.swaggerhub.com/apis/equinix-api/fabric/4.15
SPEC_BASE_URL:=https://api.swaggerhub.com/apis/equinix-api/fabric/4.17
SPEC_ROOT_FILE:=swagger.yaml

QUALIFIED_PACKAGE_NAME=equinix.services.${PACKAGE_NAME}
Expand Down
122 changes: 96 additions & 26 deletions equinix/services/fabricv4/__init__.py

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions equinix/services/fabricv4/api/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,6 @@
from equinix.services.fabricv4.api.service_profiles_api import ServiceProfilesApi
from equinix.services.fabricv4.api.service_tokens_api import ServiceTokensApi
from equinix.services.fabricv4.api.statistics_api import StatisticsApi
from equinix.services.fabricv4.api.stream_subscriptions_api import StreamSubscriptionsApi
from equinix.services.fabricv4.api.streams_api import StreamsApi

1,635 changes: 1,423 additions & 212 deletions equinix/services/fabricv4/api/cloud_routers_api.py

Large diffs are not rendered by default.

5 changes: 2 additions & 3 deletions equinix/services/fabricv4/api/connections_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
"""
Equinix Fabric API v4
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
The version of the OpenAPI document: 4.15
Contact: [email protected]
The version of the OpenAPI document: 4.17
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
Expand Down
5 changes: 2 additions & 3 deletions equinix/services/fabricv4/api/health_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
"""
Equinix Fabric API v4
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
The version of the OpenAPI document: 4.15
Contact: [email protected]
The version of the OpenAPI document: 4.17
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
"""
Equinix Fabric API v4
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
The version of the OpenAPI document: 4.15
Contact: [email protected]
The version of the OpenAPI document: 4.17
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
Expand Down
5 changes: 2 additions & 3 deletions equinix/services/fabricv4/api/metros_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
"""
Equinix Fabric API v4
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
The version of the OpenAPI document: 4.15
Contact: [email protected]
The version of the OpenAPI document: 4.17
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
Expand Down
5 changes: 2 additions & 3 deletions equinix/services/fabricv4/api/networks_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
"""
Equinix Fabric API v4
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
Equinix Fabric is an advanced software-defined interconnection solution that enables you to directly, securely and dynamically connect to distributed infrastructure and digital ecosystems on platform Equinix via a single port, Customers can use Fabric to connect to: </br> 1. Cloud Service Providers - Clouds, network and other service providers. </br> 2. Enterprises - Other Equinix customers, vendors and partners. </br> 3. Myself - Another customer instance deployed at Equinix. </br> </br> <b>Integrations (SDKs, Tools) links:</b> </br> <a href=\"https://deploy.equinix.com/labs/fabric-java\\\">Fabric Java SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-go\\\">Fabric Go SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/equinix-sdk-python\\\">Fabric Python SDK</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-provider-equinix\\\">Equinix Terraform Provider</a> </br> <a href=\"https://deploy.equinix.com/labs/terraform-equinix-fabric\\\">Fabric Terraform Modules</a> </br> <a href=\"https://deploy.equinix.com/labs/pulumi-provider-equinix/\">Equinix Pulumi Provider</a> </br>
The version of the OpenAPI document: 4.15
Contact: [email protected]
The version of the OpenAPI document: 4.17
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
Expand Down
Loading

0 comments on commit 0c20974

Please sign in to comment.