Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for VPN Gateways on VPC #161

Merged
merged 1 commit into from
Nov 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
language: go
go:
- "1.15"
- "1.22"

script:
- go test -v ./...
35 changes: 18 additions & 17 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,39 +1,40 @@
module github.com/ans-group/sdk-go

go 1.19
go 1.22.0

toolchain go1.22.9

require (
github.com/ans-group/go-durationstring v1.2.0
github.com/golang/mock v1.6.0
github.com/mitchellh/go-homedir v1.1.0
github.com/spf13/afero v1.10.0
github.com/spf13/viper v1.17.0
github.com/stretchr/testify v1.8.4
gopkg.in/go-playground/validator.v9 v9.27.0
github.com/spf13/afero v1.11.0
github.com/spf13/viper v1.19.0
github.com/stretchr/testify v1.9.0
gopkg.in/go-playground/validator.v9 v9.31.0
)

require (
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/go-playground/locales v0.12.1 // indirect
github.com/go-playground/universal-translator v0.16.0 // indirect
github.com/fsnotify/fsnotify v1.8.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/leodido/go-urn v1.1.0 // indirect
github.com/leodido/go-urn v1.4.0 // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
github.com/pelletier/go-toml/v2 v2.2.3 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/sagikazarmark/locafero v0.3.0 // indirect
github.com/sagikazarmark/locafero v0.6.0 // indirect
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
github.com/sourcegraph/conc v0.3.0 // indirect
github.com/spf13/cast v1.5.1 // indirect
github.com/spf13/cast v1.7.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect
github.com/subosito/gotenv v1.6.0 // indirect
go.uber.org/atomic v1.9.0 // indirect
go.uber.org/multierr v1.9.0 // indirect
golang.org/x/exp v0.0.0-20230905200255-921286631fa9 // indirect
golang.org/x/sys v0.12.0 // indirect
golang.org/x/text v0.13.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c // indirect
golang.org/x/sys v0.27.0 // indirect
golang.org/x/text v0.20.0 // indirect
gopkg.in/go-playground/assert.v1 v1.2.1 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
Expand Down
491 changes: 38 additions & 453 deletions go.sum

Large diffs are not rendered by default.

93 changes: 93 additions & 0 deletions pkg/service/ecloud/model.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package ecloud

import (
"fmt"

"github.com/ans-group/sdk-go/pkg/connection"
)

Expand Down Expand Up @@ -931,7 +933,7 @@
UpdatedAt connection.DateTime `json:"updated_at"`
}

// IP Address represents an eCloud VPC Network IP Address

Check notice on line 936 in pkg/service/ecloud/model.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'IPAddress ...' (with an optional leading article)
type IPAddress struct {
ID string `json:"id"`
Name string `json:"name"`
Expand Down Expand Up @@ -1028,3 +1030,94 @@
CreatedAt connection.DateTime `json:"created_at"`
UpdatedAt connection.DateTime `json:"updated_at"`
}

// VPNGateway represents a VPN gateway
type VPNGateway struct {
ID string `json:"id"`
Name string `json:"name"`
RouterID string `json:"router_id"`
SpecificationID string `json:"specification_id"`
Sync ResourceSync `json:"sync"`
Task ResourceTask `json:"task"`
CreatedAt connection.DateTime `json:"created_at"`
UpdatedAt connection.DateTime `json:"updated_at"`
}

// CreateVPNGatewayRequest represents a request to create a VPN gateway
type CreateVPNGatewayRequest struct {
Name string `json:"name,omitempty"`
RouterID string `json:"router_id"`
SpecificationID string `json:"specification_id"`
}

// PatchVPNGatewayRequest represents a request to patch a VPN gateway
type PatchVPNGatewayRequest struct {
Name string `json:"name,omitempty"`
}

// VPNGatewaySpecification represents a VPN gateway specification
type VPNGatewaySpecification struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
CreatedAt connection.DateTime `json:"created_at"`
UpdatedAt connection.DateTime `json:"updated_at"`
}

// VPNGatewayUser represents a VPN gateway user
type VPNGatewayUser struct {
ID string `json:"id"`
Name string `json:"name"`
VPNGatewayID string `json:"vpn_gateway_id"`
Username string `json:"username,omitempty"`
Sync ResourceSync `json:"sync"`
Task ResourceTask `json:"task"`
CreatedAt connection.DateTime `json:"created_at"`
UpdatedAt connection.DateTime `json:"updated_at"`
}

// CreateVPNGatewayUserRequest represents a request to create a VPN gateway user
type CreateVPNGatewayUserRequest struct {
Name string `json:"name,omitempty"`
VPNGatewayID string `json:"vpn_gateway_id"`
Username string `json:"username"`
Password string `json:"password"`
}

// PatchVPNGatewayUserRequest represents a request to patch a VPN gateway user
type PatchVPNGatewayUserRequest struct {
Name string `json:"name,omitempty"`
Password string `json:"password,omitempty"`
}

// PatchVPNGatewayUserCredentialRequest represents a request to update VPN gateway user credentials
type PatchVPNGatewayUserCredentialRequest struct {
Password string `json:"password"`
}

// VPNGatewayNotFoundError represents a VPN gateway not found error
type VPNGatewayNotFoundError struct {
ID string
}

func (e *VPNGatewayNotFoundError) Error() string {
return fmt.Sprintf("VPN gateway not found with ID [%s]", e.ID)
}

// VPNGatewaySpecificationNotFoundError represents a VPN gateway specification not found error
type VPNGatewaySpecificationNotFoundError struct {
ID string
}

func (e *VPNGatewaySpecificationNotFoundError) Error() string {
return fmt.Sprintf("VPN gateway specification not found with ID [%s]", e.ID)
}

// VPNGatewayUserNotFoundError represents a VPN gateway user not found error
type VPNGatewayUserNotFoundError struct {
ID string
}

func (e *VPNGatewayUserNotFoundError) Error() string {
return fmt.Sprintf("VPN gateway user not found with ID [%s]", e.ID)
}
37 changes: 31 additions & 6 deletions pkg/service/ecloud/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

// ECloudService is an interface for managing eCloud
type ECloudService interface {
// Virtual Machine

Check notice on line 10 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVirtualMachines ...' (with an optional leading article)
GetVirtualMachines(parameters connection.APIRequestParameters) ([]VirtualMachine, error)
GetVirtualMachinesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VirtualMachine], error)
GetVirtualMachine(vmID int) (VirtualMachine, error)
Expand All @@ -29,7 +29,7 @@
DeleteVirtualMachineTag(vmID int, tagKey string) error
CreateVirtualMachineConsoleSession(vmID int) (ConsoleSession, error)

// Solution

Check notice on line 32 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetSolutions ...' (with an optional leading article)
GetSolutions(parameters connection.APIRequestParameters) ([]Solution, error)
GetSolutionsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Solution], error)
GetSolution(solutionID int) (Solution, error)
Expand Down Expand Up @@ -58,28 +58,28 @@
PatchSolutionTag(solutionID int, tagKey string, patch PatchTagRequest) error
DeleteSolutionTag(solutionID int, tagKey string) error

// Site

Check notice on line 61 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetSites ...' (with an optional leading article)
GetSites(parameters connection.APIRequestParameters) ([]Site, error)
GetSitesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Site], error)
GetSite(siteID int) (Site, error)

// Host

Check notice on line 66 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetV1Hosts ...' (with an optional leading article)
GetV1Hosts(parameters connection.APIRequestParameters) ([]V1Host, error)
GetV1HostsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[V1Host], error)
GetV1Host(hostID int) (V1Host, error)

// Datastore

Check notice on line 71 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetDatastores ...' (with an optional leading article)
GetDatastores(parameters connection.APIRequestParameters) ([]Datastore, error)
GetDatastoresPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Datastore], error)
GetDatastore(datastoreID int) (Datastore, error)

// Firewall

Check notice on line 76 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetFirewalls ...' (with an optional leading article)
GetFirewalls(parameters connection.APIRequestParameters) ([]Firewall, error)
GetFirewallsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Firewall], error)
GetFirewall(firewallID int) (Firewall, error)
GetFirewallConfig(firewallID int) (FirewallConfig, error)

// Pod

Check notice on line 82 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetPods ...' (with an optional leading article)
GetPods(parameters connection.APIRequestParameters) ([]Pod, error)
GetPodsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Pod], error)
GetPod(podID int) (Pod, error)
Expand All @@ -92,14 +92,14 @@
GetPodAppliancesPaginated(podID int, parameters connection.APIRequestParameters) (*connection.Paginated[Appliance], error)
PodConsoleAvailable(podID int) (bool, error)

// Appliance

Check notice on line 95 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetAppliances ...' (with an optional leading article)
GetAppliances(parameters connection.APIRequestParameters) ([]Appliance, error)
GetAppliancesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Appliance], error)
GetAppliance(applianceID string) (Appliance, error)
GetApplianceParameters(applianceID string, reqParameters connection.APIRequestParameters) ([]ApplianceParameter, error)
GetApplianceParametersPaginated(applianceID string, parameters connection.APIRequestParameters) (*connection.Paginated[ApplianceParameter], error)

// Credit

Check notice on line 102 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetCredits ...' (with an optional leading article)
GetCredits(parameters connection.APIRequestParameters) ([]account.Credit, error)

GetActiveDirectoryDomains(parameters connection.APIRequestParameters) ([]ActiveDirectoryDomain, error)
Expand All @@ -108,7 +108,7 @@

// V2

// VPC

Check notice on line 111 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPCs ...' (with an optional leading article)
GetVPCs(parameters connection.APIRequestParameters) ([]VPC, error)
GetVPCsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPC], error)
GetVPC(vpcID string) (VPC, error)
Expand All @@ -123,14 +123,14 @@
GetVPCTasks(vpcID string, parameters connection.APIRequestParameters) ([]Task, error)
GetVPCTasksPaginated(vpcID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Availability zone

Check notice on line 126 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetAvailabilityZones ...' (with an optional leading article)
GetAvailabilityZones(parameters connection.APIRequestParameters) ([]AvailabilityZone, error)
GetAvailabilityZonesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[AvailabilityZone], error)
GetAvailabilityZone(azID string) (AvailabilityZone, error)
GetAvailabilityZoneIOPSTiers(azID string, parameters connection.APIRequestParameters) ([]IOPSTier, error)
GetAvailabilityZoneIOPSTiersPaginated(azID string, parameters connection.APIRequestParameters) (*connection.Paginated[IOPSTier], error)

// Network

Check notice on line 133 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetNetworks ...' (with an optional leading article)
GetNetworks(parameters connection.APIRequestParameters) ([]Network, error)
GetNetworksPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Network], error)
GetNetwork(networkID string) (Network, error)
Expand All @@ -142,14 +142,14 @@
GetNetworkTasks(networkID string, parameters connection.APIRequestParameters) ([]Task, error)
GetNetworkTasksPaginated(networkID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// DHCP

Check notice on line 145 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetDHCPs ...' (with an optional leading article)
GetDHCPs(parameters connection.APIRequestParameters) ([]DHCP, error)
GetDHCPsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[DHCP], error)
GetDHCP(dhcpID string) (DHCP, error)
GetDHCPTasks(dhcpID string, parameters connection.APIRequestParameters) ([]Task, error)
GetDHCPTasksPaginated(dhcpID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Instance

Check notice on line 152 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetInstances ...' (with an optional leading article)
GetInstances(parameters connection.APIRequestParameters) ([]Instance, error)
GetInstancesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Instance], error)
GetInstance(instanceID string) (Instance, error)
Expand Down Expand Up @@ -182,7 +182,7 @@
DecryptInstance(instanceID string) (string, error)
ExecuteInstanceScript(instanceID string, req ExecuteInstanceScriptRequest) (string, error)

// Floating IP

Check notice on line 185 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetFloatingIPs ...' (with an optional leading article)
GetFloatingIPs(parameters connection.APIRequestParameters) ([]FloatingIP, error)
GetFloatingIPsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[FloatingIP], error)
GetFloatingIP(fipID string) (FloatingIP, error)
Expand All @@ -194,7 +194,7 @@
GetFloatingIPTasks(fipID string, parameters connection.APIRequestParameters) ([]Task, error)
GetFloatingIPTasksPaginated(fipID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Firewall Policy

Check notice on line 197 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetFirewallPolicies ...' (with an optional leading article)
GetFirewallPolicies(parameters connection.APIRequestParameters) ([]FirewallPolicy, error)
GetFirewallPoliciesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[FirewallPolicy], error)
GetFirewallPolicy(policyID string) (FirewallPolicy, error)
Expand All @@ -206,7 +206,7 @@
GetFirewallPolicyTasks(policyID string, parameters connection.APIRequestParameters) ([]Task, error)
GetFirewallPolicyTasksPaginated(policyID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Firewall Rule

Check notice on line 209 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetFirewallRules ...' (with an optional leading article)
GetFirewallRules(parameters connection.APIRequestParameters) ([]FirewallRule, error)
GetFirewallRulesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[FirewallRule], error)
GetFirewallRule(ruleID string) (FirewallRule, error)
Expand All @@ -216,7 +216,7 @@
GetFirewallRuleFirewallRulePorts(firewallRuleID string, parameters connection.APIRequestParameters) ([]FirewallRulePort, error)
GetFirewallRuleFirewallRulePortsPaginated(firewallRuleID string, parameters connection.APIRequestParameters) (*connection.Paginated[FirewallRulePort], error)

// Firewall Rule Ports

Check notice on line 219 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetFirewallRulePorts ...' (with an optional leading article)
GetFirewallRulePorts(parameters connection.APIRequestParameters) ([]FirewallRulePort, error)
GetFirewallRulePortsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[FirewallRulePort], error)
GetFirewallRulePort(ruleID string) (FirewallRulePort, error)
Expand All @@ -224,7 +224,7 @@
PatchFirewallRulePort(ruleID string, req PatchFirewallRulePortRequest) (TaskReference, error)
DeleteFirewallRulePort(ruleID string) (string, error)

// Router

Check notice on line 227 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetRouters ...' (with an optional leading article)
GetRouters(parameters connection.APIRequestParameters) ([]Router, error)
GetRoutersPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Router], error)
GetRouter(routerID string) (Router, error)
Expand All @@ -241,12 +241,12 @@
GetRouterTasks(routerID string, parameters connection.APIRequestParameters) ([]Task, error)
GetRouterTasksPaginated(routerID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Region

Check notice on line 244 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetRegions ...' (with an optional leading article)
GetRegions(parameters connection.APIRequestParameters) ([]Region, error)
GetRegionsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Region], error)
GetRegion(regionID string) (Region, error)

// Volumes

Check notice on line 249 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVolumes ...' (with an optional leading article)
GetVolumes(parameters connection.APIRequestParameters) ([]Volume, error)
GetVolumesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Volume], error)
GetVolume(volumeID string) (Volume, error)
Expand All @@ -258,7 +258,7 @@
GetVolumeTasks(volumeID string, parameters connection.APIRequestParameters) ([]Task, error)
GetVolumeTasksPaginated(volumeID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// NICs

Check notice on line 261 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetNICs ...' (with an optional leading article)
GetNICs(parameters connection.APIRequestParameters) ([]NIC, error)
GetNICsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[NIC], error)
GetNIC(nicID string) (NIC, error)
Expand All @@ -269,17 +269,17 @@
AssignNICIPAddress(nicID string, req AssignIPAddressRequest) (string, error)
UnassignNICIPAddress(nicID string, ipID string) (string, error)

// Billing metrics

Check notice on line 272 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetBillingMetrics ...' (with an optional leading article)
GetBillingMetrics(parameters connection.APIRequestParameters) ([]BillingMetric, error)
GetBillingMetricsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[BillingMetric], error)
GetBillingMetric(metricID string) (BillingMetric, error)

// Router throughputs

Check notice on line 277 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetRouterThroughputs ...' (with an optional leading article)
GetRouterThroughputs(parameters connection.APIRequestParameters) ([]RouterThroughput, error)
GetRouterThroughputsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[RouterThroughput], error)
GetRouterThroughput(metricID string) (RouterThroughput, error)

// Image

Check notice on line 282 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetImages ...' (with an optional leading article)
GetImages(parameters connection.APIRequestParameters) ([]Image, error)
GetImagesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Image], error)
GetImage(imageID string) (Image, error)
Expand All @@ -290,12 +290,12 @@
GetImageMetadata(imageID string, parameters connection.APIRequestParameters) ([]ImageMetadata, error)
GetImageMetadataPaginated(imageID string, parameters connection.APIRequestParameters) (*connection.Paginated[ImageMetadata], error)

// HostSpecs

Check notice on line 293 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetHostSpecs ...' (with an optional leading article)
GetHostSpecs(parameters connection.APIRequestParameters) ([]HostSpec, error)
GetHostSpecsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[HostSpec], error)
GetHostSpec(specID string) (HostSpec, error)

// HostGroups

Check notice on line 298 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetHostGroups ...' (with an optional leading article)
GetHostGroups(parameters connection.APIRequestParameters) ([]HostGroup, error)
GetHostGroupsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[HostGroup], error)
GetHostGroup(hostGroupID string) (HostGroup, error)
Expand All @@ -305,7 +305,7 @@
GetHostGroupTasks(hostGroupID string, parameters connection.APIRequestParameters) ([]Task, error)
GetHostGroupTasksPaginated(hostGroupID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Hosts

Check notice on line 308 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetHosts ...' (with an optional leading article)
GetHosts(parameters connection.APIRequestParameters) ([]Host, error)
GetHostsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Host], error)
GetHost(hostID string) (Host, error)
Expand All @@ -315,7 +315,7 @@
GetHostTasks(hostID string, parameters connection.APIRequestParameters) ([]Task, error)
GetHostTasksPaginated(hostID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// SSHKeyPairs

Check notice on line 318 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetSSHKeyPairs ...' (with an optional leading article)
GetSSHKeyPairs(parameters connection.APIRequestParameters) ([]SSHKeyPair, error)
GetSSHKeyPairsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[SSHKeyPair], error)
GetSSHKeyPair(keypairID string) (SSHKeyPair, error)
Expand All @@ -323,12 +323,12 @@
PatchSSHKeyPair(keypairID string, patch PatchSSHKeyPairRequest) error
DeleteSSHKeyPair(keypairID string) error

// Tasks

Check notice on line 326 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetTasks ...' (with an optional leading article)
GetTasks(parameters connection.APIRequestParameters) ([]Task, error)
GetTasksPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)
GetTask(taskID string) (Task, error)

// Network Policy

Check notice on line 331 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetNetworkPolicies ...' (with an optional leading article)
GetNetworkPolicies(parameters connection.APIRequestParameters) ([]NetworkPolicy, error)
GetNetworkPoliciesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[NetworkPolicy], error)
GetNetworkPolicy(policyID string) (NetworkPolicy, error)
Expand All @@ -340,7 +340,7 @@
GetNetworkPolicyTasks(policyID string, parameters connection.APIRequestParameters) ([]Task, error)
GetNetworkPolicyTasksPaginated(policyID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// Network Rule

Check notice on line 343 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetNetworkRules ...' (with an optional leading article)
GetNetworkRules(parameters connection.APIRequestParameters) ([]NetworkRule, error)
GetNetworkRulesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[NetworkRule], error)
GetNetworkRule(ruleID string) (NetworkRule, error)
Expand All @@ -350,7 +350,7 @@
GetNetworkRuleNetworkRulePorts(networkRuleID string, parameters connection.APIRequestParameters) ([]NetworkRulePort, error)
GetNetworkRuleNetworkRulePortsPaginated(networkRuleID string, parameters connection.APIRequestParameters) (*connection.Paginated[NetworkRulePort], error)

// Network Rule Ports

Check notice on line 353 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetNetworkRulePorts ...' (with an optional leading article)
GetNetworkRulePorts(parameters connection.APIRequestParameters) ([]NetworkRulePort, error)
GetNetworkRulePortsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[NetworkRulePort], error)
GetNetworkRulePort(ruleID string) (NetworkRulePort, error)
Expand All @@ -358,7 +358,7 @@
PatchNetworkRulePort(ruleID string, req PatchNetworkRulePortRequest) (TaskReference, error)
DeleteNetworkRulePort(ruleID string) (string, error)

//Volume Groups
// Volume Groups

Check notice on line 361 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVolumeGroups ...' (with an optional leading article)
GetVolumeGroups(parameters connection.APIRequestParameters) ([]VolumeGroup, error)
GetVolumeGroupsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VolumeGroup], error)
GetVolumeGroup(groupID string) (VolumeGroup, error)
Expand All @@ -368,7 +368,7 @@
GetVolumeGroupVolumes(groupID string, parameters connection.APIRequestParameters) ([]Volume, error)
GetVolumeGroupVolumesPaginated(groupID string, parameters connection.APIRequestParameters) (*connection.Paginated[Volume], error)

// VPN Endpoint

Check notice on line 371 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNEndpoints ...' (with an optional leading article)
GetVPNEndpoints(parameters connection.APIRequestParameters) ([]VPNEndpoint, error)
GetVPNEndpointsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNEndpoint], error)
GetVPNEndpoint(endpointID string) (VPNEndpoint, error)
Expand All @@ -376,7 +376,7 @@
PatchVPNEndpoint(endpointID string, req PatchVPNEndpointRequest) (TaskReference, error)
DeleteVPNEndpoint(endpointID string) (string, error)

// VPN Service

Check notice on line 379 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNServices ...' (with an optional leading article)
GetVPNServices(parameters connection.APIRequestParameters) ([]VPNService, error)
GetVPNServicesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNService], error)
GetVPNService(serviceID string) (VPNService, error)
Expand All @@ -384,7 +384,7 @@
PatchVPNService(serviceID string, req PatchVPNServiceRequest) (TaskReference, error)
DeleteVPNService(serviceID string) (string, error)

// VPN Session

Check notice on line 387 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNSessions ...' (with an optional leading article)
GetVPNSessions(parameters connection.APIRequestParameters) ([]VPNSession, error)
GetVPNSessionsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNSession], error)
GetVPNSession(sessionID string) (VPNSession, error)
Expand All @@ -394,12 +394,37 @@
GetVPNSessionPreSharedKey(sessionID string) (VPNSessionPreSharedKey, error)
UpdateVPNSessionPreSharedKey(sessionID string, req UpdateVPNSessionPreSharedKeyRequest) (TaskReference, error)

// VPN Profile Group

Check notice on line 397 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNProfileGroups ...' (with an optional leading article)
GetVPNProfileGroups(parameters connection.APIRequestParameters) ([]VPNProfileGroup, error)
GetVPNProfileGroupsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNProfileGroup], error)
GetVPNProfileGroup(groupID string) (VPNProfileGroup, error)

// VPN Gateways

Check notice on line 402 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNGateways ...' (with an optional leading article)
GetVPNGateways(parameters connection.APIRequestParameters) ([]VPNGateway, error)
GetVPNGatewaysPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNGateway], error)
GetVPNGateway(gatewayID string) (VPNGateway, error)
CreateVPNGateway(req CreateVPNGatewayRequest) (TaskReference, error)
PatchVPNGateway(gatewayID string, req PatchVPNGatewayRequest) (TaskReference, error)
DeleteVPNGateway(gatewayID string) (string, error)
GetVPNGatewayTasks(gatewayID string, parameters connection.APIRequestParameters) ([]Task, error)
GetVPNGatewayTasksPaginated(gatewayID string, parameters connection.APIRequestParameters) (*connection.Paginated[Task], error)

// VPN Gateway Users

Check notice on line 412 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNGatewayUsers ...' (with an optional leading article)
GetVPNGatewayUsers(parameters connection.APIRequestParameters) ([]VPNGatewayUser, error)
GetVPNGatewayUsersPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNGatewayUser], error)
GetVPNGatewayUser(userID string) (VPNGatewayUser, error)
CreateVPNGatewayUser(req CreateVPNGatewayUserRequest) (TaskReference, error)
PatchVPNGatewayUser(userID string, req PatchVPNGatewayUserRequest) (TaskReference, error)
DeleteVPNGatewayUser(userID string) (string, error)

// VPN Gateway Specifications

Check notice on line 420 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVPNGatewaySpecifications ...' (with an optional leading article)
GetVPNGatewaySpecifications(parameters connection.APIRequestParameters) ([]VPNGatewaySpecification, error)
GetVPNGatewaySpecificationsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VPNGatewaySpecification], error)
GetVPNGatewaySpecification(specificationID string) (VPNGatewaySpecification, error)
GetVPNGatewaySpecificationAvailabilityZones(specificationID string, parameters connection.APIRequestParameters) ([]AvailabilityZone, error)
GetVPNGatewaySpecificationAvailabilityZonesPaginated(specificationID string, parameters connection.APIRequestParameters) (*connection.Paginated[AvailabilityZone], error)

// Load Balancer

Check notice on line 427 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetLoadBalancers ...' (with an optional leading article)
GetLoadBalancers(parameters connection.APIRequestParameters) ([]LoadBalancer, error)
GetLoadBalancersPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[LoadBalancer], error)
GetLoadBalancer(loadbalancerID string) (LoadBalancer, error)
Expand All @@ -407,12 +432,12 @@
PatchLoadBalancer(loadbalancerID string, req PatchLoadBalancerRequest) (TaskReference, error)
DeleteLoadBalancer(loadbalancerID string) (string, error)

// Load Balancer Spec

Check notice on line 435 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetLoadBalancerSpecs ...' (with an optional leading article)
GetLoadBalancerSpecs(parameters connection.APIRequestParameters) ([]LoadBalancerSpec, error)
GetLoadBalancerSpecsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[LoadBalancerSpec], error)
GetLoadBalancerSpec(lbSpecID string) (LoadBalancerSpec, error)

// VIP

Check notice on line 440 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetVIPs ...' (with an optional leading article)
GetVIPs(parameters connection.APIRequestParameters) ([]VIP, error)
GetVIPsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[VIP], error)
GetVIP(vipID string) (VIP, error)
Expand All @@ -420,35 +445,35 @@
PatchVIP(vipID string, patch PatchVIPRequest) (TaskReference, error)
DeleteVIP(vipID string) (string, error)

//IP Addresses
// IP Addresses

Check notice on line 448 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetIPAddresses ...' (with an optional leading article)
GetIPAddresses(parameters connection.APIRequestParameters) ([]IPAddress, error)
GetIPAddressesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[IPAddress], error)
GetIPAddress(ipID string) (IPAddress, error)
CreateIPAddress(req CreateIPAddressRequest) (TaskReference, error)
PatchIPAddress(ipID string, patch PatchIPAddressRequest) (TaskReference, error)
DeleteIPAddress(ipID string) (string, error)

//Affinity Rules
// Affinity Rules

Check notice on line 456 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetAffinityRules ...' (with an optional leading article)
GetAffinityRules(parameters connection.APIRequestParameters) ([]AffinityRule, error)
GetAffinityRulesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[AffinityRule], error)
GetAffinityRule(ruleID string) (AffinityRule, error)
CreateAffinityRule(req CreateAffinityRuleRequest) (TaskReference, error)
PatchAffinityRule(ruleID string, patch PatchAffinityRuleRequest) (TaskReference, error)
DeleteAffinityRule(ruleID string) (string, error)

//Affinity Rule Members
// Affinity Rule Members

Check notice on line 464 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetAffinityRuleMembers ...' (with an optional leading article)
GetAffinityRuleMembers(ruleID string, parameters connection.APIRequestParameters) ([]AffinityRuleMember, error)
GetAffinityRuleMembersPaginated(ruleID string, parameters connection.APIRequestParameters) (*connection.Paginated[AffinityRuleMember], error)
GetAffinityRuleMember(memberID string) (AffinityRuleMember, error)
CreateAffinityRuleMember(req CreateAffinityRuleMemberRequest) (TaskReference, error)
DeleteAffinityRuleMember(memberID string) (string, error)

//Resource Tiers
// Resource Tiers

Check notice on line 471 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetResourceTiers ...' (with an optional leading article)
GetResourceTiers(parameters connection.APIRequestParameters) ([]ResourceTier, error)
GetResourceTiersPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[ResourceTier], error)
GetResourceTier(tierID string) (ResourceTier, error)

// NAT Overload Rules

Check notice on line 476 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetNATOverloadRules ...' (with an optional leading article)
GetNATOverloadRules(parameters connection.APIRequestParameters) ([]NATOverloadRule, error)
GetNATOverloadRulesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[NATOverloadRule], error)
GetNATOverloadRule(ruleID string) (NATOverloadRule, error)
Expand All @@ -456,7 +481,7 @@
PatchNATOverloadRule(ruleID string, req PatchNATOverloadRuleRequest) (TaskReference, error)
DeleteNATOverloadRule(ruleID string) (string, error)

//IOPS Tiers
// IOPS Tiers

Check notice on line 484 in pkg/service/ecloud/service.go

View workflow job for this annotation

GitHub Actions / Qodana for Go

Comment of exported element starts with the incorrect name

Comment should have the following format 'GetIOPSTiers ...' (with an optional leading article)
GetIOPSTiers(parameters connection.APIRequestParameters) ([]IOPSTier, error)
GetIOPSTiersPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[IOPSTier], error)
GetIOPSTier(iopsID string) (IOPSTier, error)
Expand Down
Loading
Loading