v1alpha1

package
v0.0.0-...-d12e8f3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 14, 2025 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the apim v1alpha1 API group +kubebuilder:object:generate=true +groupName=apim.azure.stilas.418.cloud

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "apim.azure.stilas.418.cloud", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func ToApimProtocolSlice

func ToApimProtocolSlice(protocols []Protocol) []*apim.Protocol

Types

type APIContactInformation

type APIContactInformation struct {
	// The email address of the contact person/organization. MUST be in the format of an email address
	Email *string `json:"email,omitempty"`

	// The identifying name of the contact person/organization
	Name *string `json:"name,omitempty"`

	// The URL pointing to the contact information. MUST be in the format of a URL
	URL *string `json:"url,omitempty"`
}

func (*APIContactInformation) AzureAPIContactInformation

func (a *APIContactInformation) AzureAPIContactInformation() *apim.APIContactInformation

func (*APIContactInformation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIContactInformation.

func (*APIContactInformation) DeepCopyInto

func (in *APIContactInformation) DeepCopyInto(out *APIContactInformation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type APIType

type APIType string

APIType - Type of API.

const (
	APITypeGraphql   APIType = "graphql"
	APITypeHTTP      APIType = "http"
	APITypeWebsocket APIType = "websocket"
)

func (APIType) AzureApiType

func (a APIType) AzureApiType() *apim.APIType

type APIVersionScheme

type APIVersionScheme string
const (
	// APIVersionSetContractDetailsVersioningSchemeHeader - The API Version is passed in a HTTP header.
	APIVersionSetContractDetailsVersioningSchemeHeader APIVersionScheme = "Header"
	// APIVersionSetContractDetailsVersioningSchemeQuery - The API Version is passed in a query parameter.
	APIVersionSetContractDetailsVersioningSchemeQuery APIVersionScheme = "Query"
	// APIVersionSetContractDetailsVersioningSchemeSegment - The API Version is passed in a path segment.
	APIVersionSetContractDetailsVersioningSchemeSegment APIVersionScheme = "Segment"
)

func (*APIVersionScheme) AzureAPIVersionScheme

func (a *APIVersionScheme) AzureAPIVersionScheme() *apim.VersioningScheme

func (*APIVersionScheme) AzureAPIVersionSetContractDetailsVersioningScheme

func (a *APIVersionScheme) AzureAPIVersionSetContractDetailsVersioningScheme() *apim.APIVersionSetContractDetailsVersioningScheme

type Api

type Api struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ApiSpec   `json:"spec,omitempty"`
	Status ApiStatus `json:"status,omitempty"`
}

Api is the Schema for the apis API

func (*Api) DeepCopy

func (in *Api) DeepCopy() *Api

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Api.

func (*Api) DeepCopyInto

func (in *Api) DeepCopyInto(out *Api)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Api) DeepCopyObject

func (in *Api) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Api) GetAzureApiName

func (a *Api) GetAzureApiName() *string

func (*Api) ToApiVersions

func (a *Api) ToApiVersions() []*ApiVersion

func (*Api) ToAzureApiVersionSetContract

func (a *Api) ToAzureApiVersionSetContract() *apim.APIVersionSetContract

type ApiList

type ApiList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Api `json:"items"`
}

ApiList contains a list of Api

func (*ApiList) DeepCopy

func (in *ApiList) DeepCopy() *ApiList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiList.

func (*ApiList) DeepCopyInto

func (in *ApiList) DeepCopyInto(out *ApiList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ApiList) DeepCopyObject

func (in *ApiList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ApiPolicySpec

type ApiPolicySpec struct {
	//PolicyContent - The contents of the Policy as string.
	//+kubebuilder:validation:Required
	PolicyContent *string `json:"policyContent,omitempty"`
	//PolicyFormat - Format of the Policy in which the API is getting imported.
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:=xml
	//+kubebuilder:validation:Enum:=xml;xml-link;rawxml;rawxml-link
	PolicyFormat *PolicyFormat `json:"policyFormat,omitempty"`
}

ApiPolicySpec defines the desired state of ApiVersion

func (*ApiPolicySpec) DeepCopy

func (in *ApiPolicySpec) DeepCopy() *ApiPolicySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiPolicySpec.

func (*ApiPolicySpec) DeepCopyInto

func (in *ApiPolicySpec) DeepCopyInto(out *ApiPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ApiSpec

type ApiSpec struct {

	//DisplayName - The display name of the API. This name is used by the developer portal as the API name.
	//+kubebuilder:validation:Required
	DisplayName string `json:"displayName,omitempty"`
	//Description - Description of the API. May include its purpose, where to get more information, and other relevant information.
	//+kubebuilder:validation:Optional
	Description *string `json:"description,omitempty"`
	//VersioningScheme - Indicates the versioning scheme used for the API. Possible values include, but are not limited to, "Segment", "Query", "Header". Default value is "Segment".
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:="Segment"
	//+kubebuilder:validation:Enum:=Header;Query;Segment
	VersioningScheme APIVersionScheme `json:"versioningScheme,omitempty"`
	//Path - API prefix. The value is combined with the API version to form the URL of the API endpoint.
	//+kubebuilder:validation:Required
	Path string `json:"path,omitempty"`
	//ApiType - Type of API.
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:="http"
	//+default:value:"http"
	//+kubebuilder:validation:Enum:=graphql;http;websocket
	ApiType *APIType `json:"apiType,omitempty"`
	//Contact - Contact details of the API owner.
	//+kubebuilder:validation:Optional
	Contact *APIContactInformation `json:"contact,omitempty"`
	//Versions - A list of API versions associated with the API. If the API is specified using the OpenAPI definition, then the API version is set by the version field of the OpenAPI definition.
	//+kubebuilder:validation:Required
	Versions []ApiVersionSubSpec `json:"versions,omitempty"`
}

ApiSpec defines the desired state of Api

func (*ApiSpec) DeepCopy

func (in *ApiSpec) DeepCopy() *ApiSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiSpec.

func (*ApiSpec) DeepCopyInto

func (in *ApiSpec) DeepCopyInto(out *ApiSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ApiStatus

type ApiStatus struct {
	//ProvisioningState - The provisioning state of the API. Possible values are: Creating, Succeeded, Failed, Updating, Deleting, and Deleted.
	//+kubebuilder:validation:Optional
	ProvisioningState string `json:"provisioningState,omitempty"`
	//+kubebuilder:validation:Optional
	ApiVersionSetID string `json:"apiVersionSetID,omitempty"`
	//VersionStates - A list of API Version deployed in the API Management service.
	//+kubebuilder:validation:Optional
	VersionStates map[string]ApiVersionStatus `json:"versionStates,omitempty"`
}

ApiStatus defines the observed state of Api

func (*ApiStatus) DeepCopy

func (in *ApiStatus) DeepCopy() *ApiStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiStatus.

func (*ApiStatus) DeepCopyInto

func (in *ApiStatus) DeepCopyInto(out *ApiStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ApiVersion

type ApiVersion struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ApiVersionSpec   `json:"spec,omitempty"`
	Status ApiVersionStatus `json:"status,omitempty"`
}

ApiVersion is the Schema for the apiversions API

func (*ApiVersion) DeepCopy

func (in *ApiVersion) DeepCopy() *ApiVersion

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiVersion.

func (*ApiVersion) DeepCopyInto

func (in *ApiVersion) DeepCopyInto(out *ApiVersion)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ApiVersion) DeepCopyObject

func (in *ApiVersion) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ApiVersion) RequireUpdate

func (a *ApiVersion) RequireUpdate(new ApiVersion) bool

type ApiVersionList

type ApiVersionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ApiVersion `json:"items"`
}

ApiVersionList contains a list of ApiVersion

func (*ApiVersionList) DeepCopy

func (in *ApiVersionList) DeepCopy() *ApiVersionList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiVersionList.

func (*ApiVersionList) DeepCopyInto

func (in *ApiVersionList) DeepCopyInto(out *ApiVersionList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ApiVersionList) DeepCopyObject

func (in *ApiVersionList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ApiVersionSpec

type ApiVersionSpec struct {
	ApiVersionSetId   string                 `json:"apiVersionSetId,omitempty"`
	ApiVersionScheme  APIVersionScheme       `json:"apiVersionScheme,omitempty"`
	Path              string                 `json:"path,omitempty"`
	APIType           *APIType               `json:"apiType,omitempty"`
	Contact           *APIContactInformation `json:"contact,omitempty"`
	ApiVersionSubSpec `json:",inline"`
}

ApiVersionSpec defines the desired state of ApiVersion

func (*ApiVersionSpec) DeepCopy

func (in *ApiVersionSpec) DeepCopy() *ApiVersionSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiVersionSpec.

func (*ApiVersionSpec) DeepCopyInto

func (in *ApiVersionSpec) DeepCopyInto(out *ApiVersionSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ApiVersionStatus

type ApiVersionStatus struct {
	//ProvisioningState - The provisioning state of the API. Possible values are: Creating, Succeeded, Failed, Updating, Deleting, and Deleted.
	//+kubebuilder:validation:Optional
	ProvisioningState string `json:"provisioningState,omitempty"`
	//ResumeToken - The token used to track long-running operations.
	//+kubebuilder:validation:Optional
	ResumeToken string `json:"pollerToken,omitempty"`
	//LastAppliedSpecSha - The sha256 of the last applied spec.
	//+kubebuilder:validation:Optional
	LastAppliedSpecSha string `json:"lastAppliedSpecSha,omitempty"`
	//LastAppliedPolicySha - The sha256 of the last applied policy.
	//+kubebuilder:validation:Optional
	LastAppliedPolicySha string `json:"lastAppliedPolicySha,omitempty"`
}

ApiVersionStatus defines the observed state of ApiVersion

func (*ApiVersionStatus) DeepCopy

func (in *ApiVersionStatus) DeepCopy() *ApiVersionStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiVersionStatus.

func (*ApiVersionStatus) DeepCopyInto

func (in *ApiVersionStatus) DeepCopyInto(out *ApiVersionStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ApiVersionSubSpec

type ApiVersionSubSpec struct {
	// INSERT ADDITIONAL SPEC FIELDS - desired state of cluster
	// Important: Run "make" to regenerate code after modifying this file
	//+kubebuilder:validation:Optional
	Name *string `json:"name,omitempty"`
	//DisplayName - The display name of the API Version. This name is used by the developer portal as the API Version name.
	//+kubebuilder:validation:Required
	DisplayName string `json:"displayName,omitempty"`
	//Description - Description of the API Version. May include its purpose, where to get more information, and other relevant information.
	//+kubebuilder:validation:Optional
	Description string `json:"description,omitempty"`
	//ServiceUrl - Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.
	//+kubebuilder:validation:Optional
	ServiceUrl *string `json:"serviceUrl,omitempty"`
	//Products - Products that the API is associated with. Products are groups of APIs.
	//+kubebuilder:validation:Optional
	Products []string `json:"products,omitempty"`
	//ContentFormat - Format of the Content in which the API is getting imported.
	//+kubebuilder:validation:Required
	//+kubebuilder:default:=openapi+json
	ContentFormat *ContentFormat `json:"contentFormat,omitempty"`
	//Content - The contents of the API. The value is a string containing the content of the API.
	//+kubebuilder:validation:Required
	Content *string `json:"content,omitempty"`
	//SubscriptionRquired - Indicates if subscription is required to access the API. Default value is true.
	//+kubebuilder:validation:Required
	//+kubebuilder:default:=true
	SubscriptionRequired *bool `json:"subscriptionRequired,omitempty"`
	//Protocols - Describes protocols over which API is made available.
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:={https}
	Protocols []Protocol `json:"protocols,omitempty"`
	//IsCurrent - Indicates if API Version is the current api version.
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:=true
	IsCurrent *bool `json:"isCurrent,omitempty"`
	//Policy - The API Version Policy description.
	//+kubebuilder:validation:Optional
	Policy *ApiPolicySpec `json:"policies,omitempty"`
}

ApiVersionSubSpec defines the desired state of ApiVersion

func (*ApiVersionSubSpec) DeepCopy

func (in *ApiVersionSubSpec) DeepCopy() *ApiVersionSubSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApiVersionSubSpec.

func (*ApiVersionSubSpec) DeepCopyInto

func (in *ApiVersionSubSpec) DeepCopyInto(out *ApiVersionSubSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Backend

type Backend struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BackendSpec   `json:"spec,omitempty"`
	Status BackendStatus `json:"status,omitempty"`
}

Backend is the Schema for the backends API

func (*Backend) DeepCopy

func (in *Backend) DeepCopy() *Backend

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend.

func (*Backend) DeepCopyInto

func (in *Backend) DeepCopyInto(out *Backend)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Backend) DeepCopyObject

func (in *Backend) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BackendList

type BackendList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Backend `json:"items"`
}

BackendList contains a list of Backend

func (*BackendList) DeepCopy

func (in *BackendList) DeepCopy() *BackendList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendList.

func (*BackendList) DeepCopyInto

func (in *BackendList) DeepCopyInto(out *BackendList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BackendList) DeepCopyObject

func (in *BackendList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BackendSpec

type BackendSpec struct {

	//Title - Title of the Backend. May include its purpose, where to get more information, and other relevant information.
	//+kubebuilder:validation:Required
	Title string `json:"title,omitempty"`
	//Description - Description of the Backend. May include its purpose, where to get more information, and other relevant information.
	//+kubebuilder:validation:Optional
	Description *string `json:"description,omitempty"`
	//Url - URL of the Backend.
	//+kubebuilder:validation:Required
	Url string `json:"url,omitempty"`
	//ValidateCertificateChain - Whether to validate the certificate chain when using the backend.
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:=true
	ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty"`
	//ValidateCertificateName - Whether to validate the certificate name when using the backend.
	//+kubebuilder:validation:Optional
	//+kubebuilder:default:=true
	ValidateCertificateName *bool `json:"validateCertificateName,omitempty"`
}

BackendSpec defines the desired state of Backend

func (*BackendSpec) DeepCopy

func (in *BackendSpec) DeepCopy() *BackendSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendSpec.

func (*BackendSpec) DeepCopyInto

func (in *BackendSpec) DeepCopyInto(out *BackendSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BackendStatus

type BackendStatus struct {
	//BackendID - The identifier of the Backend.
	//+kubebuilder:validation:Optional
	BackendID string `json:"backendID,omitempty"`
	//ProvisioningState - The provisioning state of the Backend.
	//+kubebuilder:validation:Optional
	ProvisioningState string `json:"provisioningState,omitempty"`
}

BackendStatus defines the observed state of Backend

func (*BackendStatus) DeepCopy

func (in *BackendStatus) DeepCopy() *BackendStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackendStatus.

func (*BackendStatus) DeepCopyInto

func (in *BackendStatus) DeepCopyInto(out *BackendStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ContentFormat

type ContentFormat string

ContentFormat - Format of the Content in which the API is getting imported.

const (
	// ContentFormatGraphqlLink - The GraphQL API endpoint hosted on a publicly accessible internet address.
	ContentFormatGraphqlLink ContentFormat = "graphql-link"
	// ContentFormatOpenapi - The contents are inline and Content Type is a OpenAPI 3.0 YAML Document.
	ContentFormatOpenapi ContentFormat = "openapi"
	// ContentFormatOpenapiJSON - The contents are inline and Content Type is a OpenAPI 3.0 JSON Document.
	ContentFormatOpenapiJSON ContentFormat = "openapi+json"
	// ContentFormatOpenapiJSONLink - The OpenAPI 3.0 JSON document is hosted on a publicly accessible internet address.
	ContentFormatOpenapiJSONLink ContentFormat = "openapi+json-link"
	// ContentFormatOpenapiLink - The OpenAPI 3.0 YAML document is hosted on a publicly accessible internet address.
	ContentFormatOpenapiLink ContentFormat = "openapi-link"
	// ContentFormatSwaggerJSON - The contents are inline and Content Type is a OpenAPI 2.0 JSON Document.
	ContentFormatSwaggerJSON ContentFormat = "swagger-json"
	// ContentFormatSwaggerLinkJSON - The OpenAPI 2.0 JSON document is hosted on a publicly accessible internet address.
	ContentFormatSwaggerLinkJSON ContentFormat = "swagger-link-json"
	// ContentFormatWadlLinkJSON - The WADL document is hosted on a publicly accessible internet address.
	ContentFormatWadlLinkJSON ContentFormat = "wadl-link-json"
	// ContentFormatWadlXML - The contents are inline and Content type is a WADL document.
	ContentFormatWadlXML ContentFormat = "wadl-xml"
)

func (ContentFormat) AzureContentFormat

func (c ContentFormat) AzureContentFormat() *apim.ContentFormat

type PolicyFormat

type PolicyFormat string
const (
	// PolicyContentFormatRawxml - The contents are inline and Content type is a non XML encoded policy document.
	PolicyContentFormatRawxml PolicyFormat = "rawxml"
	// PolicyContentFormatRawxmlLink - The policy document is not XML encoded and is hosted on a HTTP endpoint accessible from
	// the API Management service.
	PolicyContentFormatRawxmlLink PolicyFormat = "rawxml-link"
	// PolicyContentFormatXML - The contents are inline and Content type is an XML document.
	PolicyContentFormatXML PolicyFormat = "xml"
	// PolicyContentFormatXMLLink - The policy XML document is hosted on a HTTP endpoint accessible from the API Management service.
	PolicyContentFormatXMLLink PolicyFormat = "xml-link"
)

func (*PolicyFormat) AzurePolicyFormat

func (p *PolicyFormat) AzurePolicyFormat() *apim.PolicyContentFormat

type Protocol

type Protocol string
const (
	ProtocolHTTP  Protocol = "http"
	ProtocolHTTPS Protocol = "https"
	ProtocolWs    Protocol = "ws"
	ProtocolWss   Protocol = "wss"
)

func (*Protocol) AzureProtocol

func (p *Protocol) AzureProtocol() *apim.Protocol

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳