v1alpha1

package
v0.11.2 Latest Latest
Warning

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

Go to latest
Published: Nov 10, 2025 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=remote.artifactory.jfrog.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "remote.artifactory.jfrog.crossplane.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	AlpineRepository_Kind             = "AlpineRepository"
	AlpineRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: AlpineRepository_Kind}.String()
	AlpineRepository_KindAPIVersion   = AlpineRepository_Kind + "." + CRDGroupVersion.String()
	AlpineRepository_GroupVersionKind = CRDGroupVersion.WithKind(AlpineRepository_Kind)
)

Repository type metadata.

View Source
var (
	AnsibleRepository_Kind             = "AnsibleRepository"
	AnsibleRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: AnsibleRepository_Kind}.String()
	AnsibleRepository_KindAPIVersion   = AnsibleRepository_Kind + "." + CRDGroupVersion.String()
	AnsibleRepository_GroupVersionKind = CRDGroupVersion.WithKind(AnsibleRepository_Kind)
)

Repository type metadata.

View Source
var (
	BowerRepository_Kind             = "BowerRepository"
	BowerRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: BowerRepository_Kind}.String()
	BowerRepository_KindAPIVersion   = BowerRepository_Kind + "." + CRDGroupVersion.String()
	BowerRepository_GroupVersionKind = CRDGroupVersion.WithKind(BowerRepository_Kind)
)

Repository type metadata.

View Source
var (
	CargoRepository_Kind             = "CargoRepository"
	CargoRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CargoRepository_Kind}.String()
	CargoRepository_KindAPIVersion   = CargoRepository_Kind + "." + CRDGroupVersion.String()
	CargoRepository_GroupVersionKind = CRDGroupVersion.WithKind(CargoRepository_Kind)
)

Repository type metadata.

View Source
var (
	ChefRepository_Kind             = "ChefRepository"
	ChefRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ChefRepository_Kind}.String()
	ChefRepository_KindAPIVersion   = ChefRepository_Kind + "." + CRDGroupVersion.String()
	ChefRepository_GroupVersionKind = CRDGroupVersion.WithKind(ChefRepository_Kind)
)

Repository type metadata.

View Source
var (
	CocoaPodsRepository_Kind             = "CocoaPodsRepository"
	CocoaPodsRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CocoaPodsRepository_Kind}.String()
	CocoaPodsRepository_KindAPIVersion   = CocoaPodsRepository_Kind + "." + CRDGroupVersion.String()
	CocoaPodsRepository_GroupVersionKind = CRDGroupVersion.WithKind(CocoaPodsRepository_Kind)
)

Repository type metadata.

View Source
var (
	ComposerRepository_Kind             = "ComposerRepository"
	ComposerRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ComposerRepository_Kind}.String()
	ComposerRepository_KindAPIVersion   = ComposerRepository_Kind + "." + CRDGroupVersion.String()
	ComposerRepository_GroupVersionKind = CRDGroupVersion.WithKind(ComposerRepository_Kind)
)

Repository type metadata.

View Source
var (
	ConanRepository_Kind             = "ConanRepository"
	ConanRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ConanRepository_Kind}.String()
	ConanRepository_KindAPIVersion   = ConanRepository_Kind + "." + CRDGroupVersion.String()
	ConanRepository_GroupVersionKind = CRDGroupVersion.WithKind(ConanRepository_Kind)
)

Repository type metadata.

View Source
var (
	CondaRepository_Kind             = "CondaRepository"
	CondaRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CondaRepository_Kind}.String()
	CondaRepository_KindAPIVersion   = CondaRepository_Kind + "." + CRDGroupVersion.String()
	CondaRepository_GroupVersionKind = CRDGroupVersion.WithKind(CondaRepository_Kind)
)

Repository type metadata.

View Source
var (
	CRANRepository_Kind             = "CRANRepository"
	CRANRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CRANRepository_Kind}.String()
	CRANRepository_KindAPIVersion   = CRANRepository_Kind + "." + CRDGroupVersion.String()
	CRANRepository_GroupVersionKind = CRDGroupVersion.WithKind(CRANRepository_Kind)
)

Repository type metadata.

View Source
var (
	DebianRepository_Kind             = "DebianRepository"
	DebianRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DebianRepository_Kind}.String()
	DebianRepository_KindAPIVersion   = DebianRepository_Kind + "." + CRDGroupVersion.String()
	DebianRepository_GroupVersionKind = CRDGroupVersion.WithKind(DebianRepository_Kind)
)

Repository type metadata.

View Source
var (
	DockerRepository_Kind             = "DockerRepository"
	DockerRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DockerRepository_Kind}.String()
	DockerRepository_KindAPIVersion   = DockerRepository_Kind + "." + CRDGroupVersion.String()
	DockerRepository_GroupVersionKind = CRDGroupVersion.WithKind(DockerRepository_Kind)
)

Repository type metadata.

View Source
var (
	GemsRepository_Kind             = "GemsRepository"
	GemsRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GemsRepository_Kind}.String()
	GemsRepository_KindAPIVersion   = GemsRepository_Kind + "." + CRDGroupVersion.String()
	GemsRepository_GroupVersionKind = CRDGroupVersion.WithKind(GemsRepository_Kind)
)

Repository type metadata.

View Source
var (
	GenericRepository_Kind             = "GenericRepository"
	GenericRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GenericRepository_Kind}.String()
	GenericRepository_KindAPIVersion   = GenericRepository_Kind + "." + CRDGroupVersion.String()
	GenericRepository_GroupVersionKind = CRDGroupVersion.WithKind(GenericRepository_Kind)
)

Repository type metadata.

View Source
var (
	GitLFSRepository_Kind             = "GitLFSRepository"
	GitLFSRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GitLFSRepository_Kind}.String()
	GitLFSRepository_KindAPIVersion   = GitLFSRepository_Kind + "." + CRDGroupVersion.String()
	GitLFSRepository_GroupVersionKind = CRDGroupVersion.WithKind(GitLFSRepository_Kind)
)

Repository type metadata.

View Source
var (
	GoRepository_Kind             = "GoRepository"
	GoRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GoRepository_Kind}.String()
	GoRepository_KindAPIVersion   = GoRepository_Kind + "." + CRDGroupVersion.String()
	GoRepository_GroupVersionKind = CRDGroupVersion.WithKind(GoRepository_Kind)
)

Repository type metadata.

View Source
var (
	GradleRepository_Kind             = "GradleRepository"
	GradleRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GradleRepository_Kind}.String()
	GradleRepository_KindAPIVersion   = GradleRepository_Kind + "." + CRDGroupVersion.String()
	GradleRepository_GroupVersionKind = CRDGroupVersion.WithKind(GradleRepository_Kind)
)

Repository type metadata.

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	HelmOCIRepository_Kind             = "HelmOCIRepository"
	HelmOCIRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: HelmOCIRepository_Kind}.String()
	HelmOCIRepository_KindAPIVersion   = HelmOCIRepository_Kind + "." + CRDGroupVersion.String()
	HelmOCIRepository_GroupVersionKind = CRDGroupVersion.WithKind(HelmOCIRepository_Kind)
)

Repository type metadata.

View Source
var (
	HelmRepository_Kind             = "HelmRepository"
	HelmRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: HelmRepository_Kind}.String()
	HelmRepository_KindAPIVersion   = HelmRepository_Kind + "." + CRDGroupVersion.String()
	HelmRepository_GroupVersionKind = CRDGroupVersion.WithKind(HelmRepository_Kind)
)

Repository type metadata.

View Source
var (
	HuggingFaceMLRepository_Kind             = "HuggingFaceMLRepository"
	HuggingFaceMLRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: HuggingFaceMLRepository_Kind}.String()
	HuggingFaceMLRepository_KindAPIVersion   = HuggingFaceMLRepository_Kind + "." + CRDGroupVersion.String()
	HuggingFaceMLRepository_GroupVersionKind = CRDGroupVersion.WithKind(HuggingFaceMLRepository_Kind)
)

Repository type metadata.

View Source
var (
	IvyRepository_Kind             = "IvyRepository"
	IvyRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: IvyRepository_Kind}.String()
	IvyRepository_KindAPIVersion   = IvyRepository_Kind + "." + CRDGroupVersion.String()
	IvyRepository_GroupVersionKind = CRDGroupVersion.WithKind(IvyRepository_Kind)
)

Repository type metadata.

View Source
var (
	MavenRepository_Kind             = "MavenRepository"
	MavenRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: MavenRepository_Kind}.String()
	MavenRepository_KindAPIVersion   = MavenRepository_Kind + "." + CRDGroupVersion.String()
	MavenRepository_GroupVersionKind = CRDGroupVersion.WithKind(MavenRepository_Kind)
)

Repository type metadata.

View Source
var (
	NPMRepository_Kind             = "NPMRepository"
	NPMRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NPMRepository_Kind}.String()
	NPMRepository_KindAPIVersion   = NPMRepository_Kind + "." + CRDGroupVersion.String()
	NPMRepository_GroupVersionKind = CRDGroupVersion.WithKind(NPMRepository_Kind)
)

Repository type metadata.

View Source
var (
	NuGetRepository_Kind             = "NuGetRepository"
	NuGetRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NuGetRepository_Kind}.String()
	NuGetRepository_KindAPIVersion   = NuGetRepository_Kind + "." + CRDGroupVersion.String()
	NuGetRepository_GroupVersionKind = CRDGroupVersion.WithKind(NuGetRepository_Kind)
)

Repository type metadata.

View Source
var (
	OCIRepository_Kind             = "OCIRepository"
	OCIRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: OCIRepository_Kind}.String()
	OCIRepository_KindAPIVersion   = OCIRepository_Kind + "." + CRDGroupVersion.String()
	OCIRepository_GroupVersionKind = CRDGroupVersion.WithKind(OCIRepository_Kind)
)

Repository type metadata.

View Source
var (
	OPKGRepository_Kind             = "OPKGRepository"
	OPKGRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: OPKGRepository_Kind}.String()
	OPKGRepository_KindAPIVersion   = OPKGRepository_Kind + "." + CRDGroupVersion.String()
	OPKGRepository_GroupVersionKind = CRDGroupVersion.WithKind(OPKGRepository_Kind)
)

Repository type metadata.

View Source
var (
	P2Repository_Kind             = "P2Repository"
	P2Repository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: P2Repository_Kind}.String()
	P2Repository_KindAPIVersion   = P2Repository_Kind + "." + CRDGroupVersion.String()
	P2Repository_GroupVersionKind = CRDGroupVersion.WithKind(P2Repository_Kind)
)

Repository type metadata.

View Source
var (
	PubRepository_Kind             = "PubRepository"
	PubRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: PubRepository_Kind}.String()
	PubRepository_KindAPIVersion   = PubRepository_Kind + "." + CRDGroupVersion.String()
	PubRepository_GroupVersionKind = CRDGroupVersion.WithKind(PubRepository_Kind)
)

Repository type metadata.

View Source
var (
	PuppetRepository_Kind             = "PuppetRepository"
	PuppetRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: PuppetRepository_Kind}.String()
	PuppetRepository_KindAPIVersion   = PuppetRepository_Kind + "." + CRDGroupVersion.String()
	PuppetRepository_GroupVersionKind = CRDGroupVersion.WithKind(PuppetRepository_Kind)
)

Repository type metadata.

View Source
var (
	PyPIRepository_Kind             = "PyPIRepository"
	PyPIRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: PyPIRepository_Kind}.String()
	PyPIRepository_KindAPIVersion   = PyPIRepository_Kind + "." + CRDGroupVersion.String()
	PyPIRepository_GroupVersionKind = CRDGroupVersion.WithKind(PyPIRepository_Kind)
)

Repository type metadata.

View Source
var (
	RPMRepository_Kind             = "RPMRepository"
	RPMRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: RPMRepository_Kind}.String()
	RPMRepository_KindAPIVersion   = RPMRepository_Kind + "." + CRDGroupVersion.String()
	RPMRepository_GroupVersionKind = CRDGroupVersion.WithKind(RPMRepository_Kind)
)

Repository type metadata.

View Source
var (
	SBTRepository_Kind             = "SBTRepository"
	SBTRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SBTRepository_Kind}.String()
	SBTRepository_KindAPIVersion   = SBTRepository_Kind + "." + CRDGroupVersion.String()
	SBTRepository_GroupVersionKind = CRDGroupVersion.WithKind(SBTRepository_Kind)
)

Repository type metadata.

View Source
var (
	SwiftRepository_Kind             = "SwiftRepository"
	SwiftRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SwiftRepository_Kind}.String()
	SwiftRepository_KindAPIVersion   = SwiftRepository_Kind + "." + CRDGroupVersion.String()
	SwiftRepository_GroupVersionKind = CRDGroupVersion.WithKind(SwiftRepository_Kind)
)

Repository type metadata.

View Source
var (
	TerraformRepository_Kind             = "TerraformRepository"
	TerraformRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: TerraformRepository_Kind}.String()
	TerraformRepository_KindAPIVersion   = TerraformRepository_Kind + "." + CRDGroupVersion.String()
	TerraformRepository_GroupVersionKind = CRDGroupVersion.WithKind(TerraformRepository_Kind)
)

Repository type metadata.

View Source
var (
	VCSRepository_Kind             = "VCSRepository"
	VCSRepository_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: VCSRepository_Kind}.String()
	VCSRepository_KindAPIVersion   = VCSRepository_Kind + "." + CRDGroupVersion.String()
	VCSRepository_GroupVersionKind = CRDGroupVersion.WithKind(VCSRepository_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AlpineRepository

type AlpineRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   AlpineRepositorySpec   `json:"spec"`
	Status AlpineRepositoryStatus `json:"status,omitempty"`
}

AlpineRepository is the Schema for the AlpineRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*AlpineRepository) DeepCopy

func (in *AlpineRepository) DeepCopy() *AlpineRepository

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

func (*AlpineRepository) DeepCopyInto

func (in *AlpineRepository) DeepCopyInto(out *AlpineRepository)

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

func (*AlpineRepository) DeepCopyObject

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

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

func (*AlpineRepository) GetCondition

func (mg *AlpineRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this AlpineRepository.

func (*AlpineRepository) GetConnectionDetailsMapping

func (tr *AlpineRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this AlpineRepository

func (*AlpineRepository) GetDeletionPolicy

func (mg *AlpineRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this AlpineRepository.

func (*AlpineRepository) GetID

func (tr *AlpineRepository) GetID() string

GetID returns ID of underlying Terraform resource of this AlpineRepository

func (*AlpineRepository) GetInitParameters

func (tr *AlpineRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this AlpineRepository

func (*AlpineRepository) GetManagementPolicies

func (mg *AlpineRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this AlpineRepository.

func (*AlpineRepository) GetMergedParameters

func (tr *AlpineRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this AlpineRepository

func (*AlpineRepository) GetObservation

func (tr *AlpineRepository) GetObservation() (map[string]any, error)

GetObservation of this AlpineRepository

func (*AlpineRepository) GetParameters

func (tr *AlpineRepository) GetParameters() (map[string]any, error)

GetParameters of this AlpineRepository

func (*AlpineRepository) GetProviderConfigReference

func (mg *AlpineRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this AlpineRepository.

func (*AlpineRepository) GetTerraformResourceType

func (mg *AlpineRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this AlpineRepository

func (*AlpineRepository) GetTerraformSchemaVersion

func (tr *AlpineRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*AlpineRepository) GetWriteConnectionSecretToReference

func (mg *AlpineRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this AlpineRepository.

func (*AlpineRepository) Hub

func (tr *AlpineRepository) Hub()

Hub marks this type as a conversion hub.

func (*AlpineRepository) LateInitialize

func (tr *AlpineRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this AlpineRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*AlpineRepository) SetConditions

func (mg *AlpineRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this AlpineRepository.

func (*AlpineRepository) SetDeletionPolicy

func (mg *AlpineRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this AlpineRepository.

func (*AlpineRepository) SetManagementPolicies

func (mg *AlpineRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this AlpineRepository.

func (*AlpineRepository) SetObservation

func (tr *AlpineRepository) SetObservation(obs map[string]any) error

SetObservation for this AlpineRepository

func (*AlpineRepository) SetParameters

func (tr *AlpineRepository) SetParameters(params map[string]any) error

SetParameters for this AlpineRepository

func (*AlpineRepository) SetProviderConfigReference

func (mg *AlpineRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this AlpineRepository.

func (*AlpineRepository) SetWriteConnectionSecretToReference

func (mg *AlpineRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this AlpineRepository.

type AlpineRepositoryInitParameters

type AlpineRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []ContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*AlpineRepositoryInitParameters) DeepCopy

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

func (*AlpineRepositoryInitParameters) DeepCopyInto

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

type AlpineRepositoryList

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

AlpineRepositoryList contains a list of AlpineRepositorys

func (*AlpineRepositoryList) DeepCopy

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

func (*AlpineRepositoryList) DeepCopyInto

func (in *AlpineRepositoryList) DeepCopyInto(out *AlpineRepositoryList)

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

func (*AlpineRepositoryList) DeepCopyObject

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

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

func (*AlpineRepositoryList) GetItems

func (l *AlpineRepositoryList) GetItems() []resource.Managed

GetItems of this AlpineRepositoryList.

type AlpineRepositoryObservation

type AlpineRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []ContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*AlpineRepositoryObservation) DeepCopy

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

func (*AlpineRepositoryObservation) DeepCopyInto

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

type AlpineRepositoryParameters

type AlpineRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []ContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*AlpineRepositoryParameters) DeepCopy

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

func (*AlpineRepositoryParameters) DeepCopyInto

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

type AlpineRepositorySpec

type AlpineRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     AlpineRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider AlpineRepositoryInitParameters `json:"initProvider,omitempty"`
}

AlpineRepositorySpec defines the desired state of AlpineRepository

func (*AlpineRepositorySpec) DeepCopy

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

func (*AlpineRepositorySpec) DeepCopyInto

func (in *AlpineRepositorySpec) DeepCopyInto(out *AlpineRepositorySpec)

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

type AlpineRepositoryStatus

type AlpineRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        AlpineRepositoryObservation `json:"atProvider,omitempty"`
}

AlpineRepositoryStatus defines the observed state of AlpineRepository.

func (*AlpineRepositoryStatus) DeepCopy

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

func (*AlpineRepositoryStatus) DeepCopyInto

func (in *AlpineRepositoryStatus) DeepCopyInto(out *AlpineRepositoryStatus)

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

type AnsibleRepository

type AnsibleRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AnsibleRepositorySpec   `json:"spec"`
	Status            AnsibleRepositoryStatus `json:"status,omitempty"`
}

AnsibleRepository is the Schema for the AnsibleRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*AnsibleRepository) DeepCopy

func (in *AnsibleRepository) DeepCopy() *AnsibleRepository

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

func (*AnsibleRepository) DeepCopyInto

func (in *AnsibleRepository) DeepCopyInto(out *AnsibleRepository)

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

func (*AnsibleRepository) DeepCopyObject

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

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

func (*AnsibleRepository) GetCondition

func (mg *AnsibleRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this AnsibleRepository.

func (*AnsibleRepository) GetConnectionDetailsMapping

func (tr *AnsibleRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this AnsibleRepository

func (*AnsibleRepository) GetDeletionPolicy

func (mg *AnsibleRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this AnsibleRepository.

func (*AnsibleRepository) GetID

func (tr *AnsibleRepository) GetID() string

GetID returns ID of underlying Terraform resource of this AnsibleRepository

func (*AnsibleRepository) GetInitParameters

func (tr *AnsibleRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this AnsibleRepository

func (*AnsibleRepository) GetManagementPolicies

func (mg *AnsibleRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this AnsibleRepository.

func (*AnsibleRepository) GetMergedParameters

func (tr *AnsibleRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this AnsibleRepository

func (*AnsibleRepository) GetObservation

func (tr *AnsibleRepository) GetObservation() (map[string]any, error)

GetObservation of this AnsibleRepository

func (*AnsibleRepository) GetParameters

func (tr *AnsibleRepository) GetParameters() (map[string]any, error)

GetParameters of this AnsibleRepository

func (*AnsibleRepository) GetProviderConfigReference

func (mg *AnsibleRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this AnsibleRepository.

func (*AnsibleRepository) GetTerraformResourceType

func (mg *AnsibleRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this AnsibleRepository

func (*AnsibleRepository) GetTerraformSchemaVersion

func (tr *AnsibleRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*AnsibleRepository) GetWriteConnectionSecretToReference

func (mg *AnsibleRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this AnsibleRepository.

func (*AnsibleRepository) Hub

func (tr *AnsibleRepository) Hub()

Hub marks this type as a conversion hub.

func (*AnsibleRepository) LateInitialize

func (tr *AnsibleRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this AnsibleRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*AnsibleRepository) SetConditions

func (mg *AnsibleRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this AnsibleRepository.

func (*AnsibleRepository) SetDeletionPolicy

func (mg *AnsibleRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this AnsibleRepository.

func (*AnsibleRepository) SetManagementPolicies

func (mg *AnsibleRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this AnsibleRepository.

func (*AnsibleRepository) SetObservation

func (tr *AnsibleRepository) SetObservation(obs map[string]any) error

SetObservation for this AnsibleRepository

func (*AnsibleRepository) SetParameters

func (tr *AnsibleRepository) SetParameters(params map[string]any) error

SetParameters for this AnsibleRepository

func (*AnsibleRepository) SetProviderConfigReference

func (mg *AnsibleRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this AnsibleRepository.

func (*AnsibleRepository) SetWriteConnectionSecretToReference

func (mg *AnsibleRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this AnsibleRepository.

type AnsibleRepositoryContentSynchronisationInitParameters

type AnsibleRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*AnsibleRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*AnsibleRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type AnsibleRepositoryContentSynchronisationObservation

type AnsibleRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*AnsibleRepositoryContentSynchronisationObservation) DeepCopy

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

func (*AnsibleRepositoryContentSynchronisationObservation) DeepCopyInto

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

type AnsibleRepositoryContentSynchronisationParameters

type AnsibleRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*AnsibleRepositoryContentSynchronisationParameters) DeepCopy

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

func (*AnsibleRepositoryContentSynchronisationParameters) DeepCopyInto

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

type AnsibleRepositoryInitParameters

type AnsibleRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []AnsibleRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://galaxy.ansible.com'
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*AnsibleRepositoryInitParameters) DeepCopy

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

func (*AnsibleRepositoryInitParameters) DeepCopyInto

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

type AnsibleRepositoryList

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

AnsibleRepositoryList contains a list of AnsibleRepositorys

func (*AnsibleRepositoryList) DeepCopy

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

func (*AnsibleRepositoryList) DeepCopyInto

func (in *AnsibleRepositoryList) DeepCopyInto(out *AnsibleRepositoryList)

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

func (*AnsibleRepositoryList) DeepCopyObject

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

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

func (*AnsibleRepositoryList) GetItems

func (l *AnsibleRepositoryList) GetItems() []resource.Managed

GetItems of this AnsibleRepositoryList.

type AnsibleRepositoryObservation

type AnsibleRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []AnsibleRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://galaxy.ansible.com'
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*AnsibleRepositoryObservation) DeepCopy

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

func (*AnsibleRepositoryObservation) DeepCopyInto

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

type AnsibleRepositoryParameters

type AnsibleRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []AnsibleRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://galaxy.ansible.com'
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*AnsibleRepositoryParameters) DeepCopy

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

func (*AnsibleRepositoryParameters) DeepCopyInto

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

type AnsibleRepositorySpec

type AnsibleRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     AnsibleRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider AnsibleRepositoryInitParameters `json:"initProvider,omitempty"`
}

AnsibleRepositorySpec defines the desired state of AnsibleRepository

func (*AnsibleRepositorySpec) DeepCopy

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

func (*AnsibleRepositorySpec) DeepCopyInto

func (in *AnsibleRepositorySpec) DeepCopyInto(out *AnsibleRepositorySpec)

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

type AnsibleRepositoryStatus

type AnsibleRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        AnsibleRepositoryObservation `json:"atProvider,omitempty"`
}

AnsibleRepositoryStatus defines the observed state of AnsibleRepository.

func (*AnsibleRepositoryStatus) DeepCopy

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

func (*AnsibleRepositoryStatus) DeepCopyInto

func (in *AnsibleRepositoryStatus) DeepCopyInto(out *AnsibleRepositoryStatus)

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

type BowerRepository

type BowerRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   BowerRepositorySpec   `json:"spec"`
	Status BowerRepositoryStatus `json:"status,omitempty"`
}

BowerRepository is the Schema for the BowerRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*BowerRepository) DeepCopy

func (in *BowerRepository) DeepCopy() *BowerRepository

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

func (*BowerRepository) DeepCopyInto

func (in *BowerRepository) DeepCopyInto(out *BowerRepository)

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

func (*BowerRepository) DeepCopyObject

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

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

func (*BowerRepository) GetCondition

func (mg *BowerRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this BowerRepository.

func (*BowerRepository) GetConnectionDetailsMapping

func (tr *BowerRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this BowerRepository

func (*BowerRepository) GetDeletionPolicy

func (mg *BowerRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this BowerRepository.

func (*BowerRepository) GetID

func (tr *BowerRepository) GetID() string

GetID returns ID of underlying Terraform resource of this BowerRepository

func (*BowerRepository) GetInitParameters

func (tr *BowerRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this BowerRepository

func (*BowerRepository) GetManagementPolicies

func (mg *BowerRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this BowerRepository.

func (*BowerRepository) GetMergedParameters

func (tr *BowerRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this BowerRepository

func (*BowerRepository) GetObservation

func (tr *BowerRepository) GetObservation() (map[string]any, error)

GetObservation of this BowerRepository

func (*BowerRepository) GetParameters

func (tr *BowerRepository) GetParameters() (map[string]any, error)

GetParameters of this BowerRepository

func (*BowerRepository) GetProviderConfigReference

func (mg *BowerRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this BowerRepository.

func (*BowerRepository) GetTerraformResourceType

func (mg *BowerRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this BowerRepository

func (*BowerRepository) GetTerraformSchemaVersion

func (tr *BowerRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*BowerRepository) GetWriteConnectionSecretToReference

func (mg *BowerRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this BowerRepository.

func (*BowerRepository) Hub

func (tr *BowerRepository) Hub()

Hub marks this type as a conversion hub.

func (*BowerRepository) LateInitialize

func (tr *BowerRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this BowerRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*BowerRepository) SetConditions

func (mg *BowerRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this BowerRepository.

func (*BowerRepository) SetDeletionPolicy

func (mg *BowerRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this BowerRepository.

func (*BowerRepository) SetManagementPolicies

func (mg *BowerRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this BowerRepository.

func (*BowerRepository) SetObservation

func (tr *BowerRepository) SetObservation(obs map[string]any) error

SetObservation for this BowerRepository

func (*BowerRepository) SetParameters

func (tr *BowerRepository) SetParameters(params map[string]any) error

SetParameters for this BowerRepository

func (*BowerRepository) SetProviderConfigReference

func (mg *BowerRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this BowerRepository.

func (*BowerRepository) SetWriteConnectionSecretToReference

func (mg *BowerRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this BowerRepository.

type BowerRepositoryContentSynchronisationInitParameters

type BowerRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*BowerRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*BowerRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type BowerRepositoryContentSynchronisationObservation

type BowerRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*BowerRepositoryContentSynchronisationObservation) DeepCopy

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

func (*BowerRepositoryContentSynchronisationObservation) DeepCopyInto

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

type BowerRepositoryContentSynchronisationParameters

type BowerRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*BowerRepositoryContentSynchronisationParameters) DeepCopy

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

func (*BowerRepositoryContentSynchronisationParameters) DeepCopyInto

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

type BowerRepositoryInitParameters

type BowerRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Proxy remote Bower repository. Default value is 'https://registry.bower.io'.
	BowerRegistryURL *string `json:"bowerRegistryUrl,omitempty" tf:"bower_registry_url,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []BowerRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*BowerRepositoryInitParameters) DeepCopy

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

func (*BowerRepositoryInitParameters) DeepCopyInto

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

type BowerRepositoryList

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

BowerRepositoryList contains a list of BowerRepositorys

func (*BowerRepositoryList) DeepCopy

func (in *BowerRepositoryList) DeepCopy() *BowerRepositoryList

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

func (*BowerRepositoryList) DeepCopyInto

func (in *BowerRepositoryList) DeepCopyInto(out *BowerRepositoryList)

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

func (*BowerRepositoryList) DeepCopyObject

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

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

func (*BowerRepositoryList) GetItems

func (l *BowerRepositoryList) GetItems() []resource.Managed

GetItems of this BowerRepositoryList.

type BowerRepositoryObservation

type BowerRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Proxy remote Bower repository. Default value is 'https://registry.bower.io'.
	BowerRegistryURL *string `json:"bowerRegistryUrl,omitempty" tf:"bower_registry_url,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []BowerRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*BowerRepositoryObservation) DeepCopy

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

func (*BowerRepositoryObservation) DeepCopyInto

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

type BowerRepositoryParameters

type BowerRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Proxy remote Bower repository. Default value is 'https://registry.bower.io'.
	// +kubebuilder:validation:Optional
	BowerRegistryURL *string `json:"bowerRegistryUrl,omitempty" tf:"bower_registry_url,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []BowerRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	// +kubebuilder:validation:Optional
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	// +kubebuilder:validation:Optional
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*BowerRepositoryParameters) DeepCopy

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

func (*BowerRepositoryParameters) DeepCopyInto

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

type BowerRepositorySpec

type BowerRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     BowerRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider BowerRepositoryInitParameters `json:"initProvider,omitempty"`
}

BowerRepositorySpec defines the desired state of BowerRepository

func (*BowerRepositorySpec) DeepCopy

func (in *BowerRepositorySpec) DeepCopy() *BowerRepositorySpec

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

func (*BowerRepositorySpec) DeepCopyInto

func (in *BowerRepositorySpec) DeepCopyInto(out *BowerRepositorySpec)

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

type BowerRepositoryStatus

type BowerRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        BowerRepositoryObservation `json:"atProvider,omitempty"`
}

BowerRepositoryStatus defines the observed state of BowerRepository.

func (*BowerRepositoryStatus) DeepCopy

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

func (*BowerRepositoryStatus) DeepCopyInto

func (in *BowerRepositoryStatus) DeepCopyInto(out *BowerRepositoryStatus)

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

type CRANRepository

type CRANRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   CRANRepositorySpec   `json:"spec"`
	Status CRANRepositoryStatus `json:"status,omitempty"`
}

CRANRepository is the Schema for the CRANRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*CRANRepository) DeepCopy

func (in *CRANRepository) DeepCopy() *CRANRepository

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

func (*CRANRepository) DeepCopyInto

func (in *CRANRepository) DeepCopyInto(out *CRANRepository)

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

func (*CRANRepository) DeepCopyObject

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

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

func (*CRANRepository) GetCondition

func (mg *CRANRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this CRANRepository.

func (*CRANRepository) GetConnectionDetailsMapping

func (tr *CRANRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this CRANRepository

func (*CRANRepository) GetDeletionPolicy

func (mg *CRANRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this CRANRepository.

func (*CRANRepository) GetID

func (tr *CRANRepository) GetID() string

GetID returns ID of underlying Terraform resource of this CRANRepository

func (*CRANRepository) GetInitParameters

func (tr *CRANRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this CRANRepository

func (*CRANRepository) GetManagementPolicies

func (mg *CRANRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this CRANRepository.

func (*CRANRepository) GetMergedParameters

func (tr *CRANRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this CRANRepository

func (*CRANRepository) GetObservation

func (tr *CRANRepository) GetObservation() (map[string]any, error)

GetObservation of this CRANRepository

func (*CRANRepository) GetParameters

func (tr *CRANRepository) GetParameters() (map[string]any, error)

GetParameters of this CRANRepository

func (*CRANRepository) GetProviderConfigReference

func (mg *CRANRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this CRANRepository.

func (*CRANRepository) GetTerraformResourceType

func (mg *CRANRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CRANRepository

func (*CRANRepository) GetTerraformSchemaVersion

func (tr *CRANRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CRANRepository) GetWriteConnectionSecretToReference

func (mg *CRANRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this CRANRepository.

func (*CRANRepository) Hub

func (tr *CRANRepository) Hub()

Hub marks this type as a conversion hub.

func (*CRANRepository) LateInitialize

func (tr *CRANRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this CRANRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*CRANRepository) SetConditions

func (mg *CRANRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this CRANRepository.

func (*CRANRepository) SetDeletionPolicy

func (mg *CRANRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this CRANRepository.

func (*CRANRepository) SetManagementPolicies

func (mg *CRANRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this CRANRepository.

func (*CRANRepository) SetObservation

func (tr *CRANRepository) SetObservation(obs map[string]any) error

SetObservation for this CRANRepository

func (*CRANRepository) SetParameters

func (tr *CRANRepository) SetParameters(params map[string]any) error

SetParameters for this CRANRepository

func (*CRANRepository) SetProviderConfigReference

func (mg *CRANRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this CRANRepository.

func (*CRANRepository) SetWriteConnectionSecretToReference

func (mg *CRANRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this CRANRepository.

type CRANRepositoryContentSynchronisationInitParameters

type CRANRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CRANRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*CRANRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type CRANRepositoryContentSynchronisationObservation

type CRANRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CRANRepositoryContentSynchronisationObservation) DeepCopy

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

func (*CRANRepositoryContentSynchronisationObservation) DeepCopyInto

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

type CRANRepositoryContentSynchronisationParameters

type CRANRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CRANRepositoryContentSynchronisationParameters) DeepCopy

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

func (*CRANRepositoryContentSynchronisationParameters) DeepCopyInto

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

type CRANRepositoryInitParameters

type CRANRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CRANRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CRANRepositoryInitParameters) DeepCopy

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

func (*CRANRepositoryInitParameters) DeepCopyInto

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

type CRANRepositoryList

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

CRANRepositoryList contains a list of CRANRepositorys

func (*CRANRepositoryList) DeepCopy

func (in *CRANRepositoryList) DeepCopy() *CRANRepositoryList

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

func (*CRANRepositoryList) DeepCopyInto

func (in *CRANRepositoryList) DeepCopyInto(out *CRANRepositoryList)

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

func (*CRANRepositoryList) DeepCopyObject

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

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

func (*CRANRepositoryList) GetItems

func (l *CRANRepositoryList) GetItems() []resource.Managed

GetItems of this CRANRepositoryList.

type CRANRepositoryObservation

type CRANRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CRANRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CRANRepositoryObservation) DeepCopy

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

func (*CRANRepositoryObservation) DeepCopyInto

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

type CRANRepositoryParameters

type CRANRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []CRANRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CRANRepositoryParameters) DeepCopy

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

func (*CRANRepositoryParameters) DeepCopyInto

func (in *CRANRepositoryParameters) DeepCopyInto(out *CRANRepositoryParameters)

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

type CRANRepositorySpec

type CRANRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     CRANRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider CRANRepositoryInitParameters `json:"initProvider,omitempty"`
}

CRANRepositorySpec defines the desired state of CRANRepository

func (*CRANRepositorySpec) DeepCopy

func (in *CRANRepositorySpec) DeepCopy() *CRANRepositorySpec

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

func (*CRANRepositorySpec) DeepCopyInto

func (in *CRANRepositorySpec) DeepCopyInto(out *CRANRepositorySpec)

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

type CRANRepositoryStatus

type CRANRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        CRANRepositoryObservation `json:"atProvider,omitempty"`
}

CRANRepositoryStatus defines the observed state of CRANRepository.

func (*CRANRepositoryStatus) DeepCopy

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

func (*CRANRepositoryStatus) DeepCopyInto

func (in *CRANRepositoryStatus) DeepCopyInto(out *CRANRepositoryStatus)

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

type CargoRepository

type CargoRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   CargoRepositorySpec   `json:"spec"`
	Status CargoRepositoryStatus `json:"status,omitempty"`
}

CargoRepository is the Schema for the CargoRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*CargoRepository) DeepCopy

func (in *CargoRepository) DeepCopy() *CargoRepository

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

func (*CargoRepository) DeepCopyInto

func (in *CargoRepository) DeepCopyInto(out *CargoRepository)

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

func (*CargoRepository) DeepCopyObject

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

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

func (*CargoRepository) GetCondition

func (mg *CargoRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this CargoRepository.

func (*CargoRepository) GetConnectionDetailsMapping

func (tr *CargoRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this CargoRepository

func (*CargoRepository) GetDeletionPolicy

func (mg *CargoRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this CargoRepository.

func (*CargoRepository) GetID

func (tr *CargoRepository) GetID() string

GetID returns ID of underlying Terraform resource of this CargoRepository

func (*CargoRepository) GetInitParameters

func (tr *CargoRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this CargoRepository

func (*CargoRepository) GetManagementPolicies

func (mg *CargoRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this CargoRepository.

func (*CargoRepository) GetMergedParameters

func (tr *CargoRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this CargoRepository

func (*CargoRepository) GetObservation

func (tr *CargoRepository) GetObservation() (map[string]any, error)

GetObservation of this CargoRepository

func (*CargoRepository) GetParameters

func (tr *CargoRepository) GetParameters() (map[string]any, error)

GetParameters of this CargoRepository

func (*CargoRepository) GetProviderConfigReference

func (mg *CargoRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this CargoRepository.

func (*CargoRepository) GetTerraformResourceType

func (mg *CargoRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CargoRepository

func (*CargoRepository) GetTerraformSchemaVersion

func (tr *CargoRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CargoRepository) GetWriteConnectionSecretToReference

func (mg *CargoRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this CargoRepository.

func (*CargoRepository) Hub

func (tr *CargoRepository) Hub()

Hub marks this type as a conversion hub.

func (*CargoRepository) LateInitialize

func (tr *CargoRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this CargoRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*CargoRepository) SetConditions

func (mg *CargoRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this CargoRepository.

func (*CargoRepository) SetDeletionPolicy

func (mg *CargoRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this CargoRepository.

func (*CargoRepository) SetManagementPolicies

func (mg *CargoRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this CargoRepository.

func (*CargoRepository) SetObservation

func (tr *CargoRepository) SetObservation(obs map[string]any) error

SetObservation for this CargoRepository

func (*CargoRepository) SetParameters

func (tr *CargoRepository) SetParameters(params map[string]any) error

SetParameters for this CargoRepository

func (*CargoRepository) SetProviderConfigReference

func (mg *CargoRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this CargoRepository.

func (*CargoRepository) SetWriteConnectionSecretToReference

func (mg *CargoRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this CargoRepository.

type CargoRepositoryContentSynchronisationInitParameters

type CargoRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CargoRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*CargoRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type CargoRepositoryContentSynchronisationObservation

type CargoRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CargoRepositoryContentSynchronisationObservation) DeepCopy

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

func (*CargoRepositoryContentSynchronisationObservation) DeepCopyInto

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

type CargoRepositoryContentSynchronisationParameters

type CargoRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CargoRepositoryContentSynchronisationParameters) DeepCopy

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

func (*CargoRepositoryContentSynchronisationParameters) DeepCopyInto

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

type CargoRepositoryInitParameters

type CargoRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// (On the UI: Anonymous download and search) Cargo client does not send credentials when performing download and search for crates. Enable this to allow anonymous access to these resources (only), note that this will override the security anonymous access option.
	AnonymousAccess *bool `json:"anonymousAccess,omitempty" tf:"anonymous_access,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CargoRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable internal index support based on Cargo sparse index specifications, instead of the default git index. Default value is `false`.
	EnableSparseIndex *bool `json:"enableSparseIndex,omitempty" tf:"enable_sparse_index,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// This is the index url, expected to be a git repository. Default value in UI is 'https://index.crates.io/'
	GitRegistryURL *string `json:"gitRegistryUrl,omitempty" tf:"git_registry_url,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CargoRepositoryInitParameters) DeepCopy

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

func (*CargoRepositoryInitParameters) DeepCopyInto

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

type CargoRepositoryList

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

CargoRepositoryList contains a list of CargoRepositorys

func (*CargoRepositoryList) DeepCopy

func (in *CargoRepositoryList) DeepCopy() *CargoRepositoryList

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

func (*CargoRepositoryList) DeepCopyInto

func (in *CargoRepositoryList) DeepCopyInto(out *CargoRepositoryList)

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

func (*CargoRepositoryList) DeepCopyObject

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

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

func (*CargoRepositoryList) GetItems

func (l *CargoRepositoryList) GetItems() []resource.Managed

GetItems of this CargoRepositoryList.

type CargoRepositoryObservation

type CargoRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// (On the UI: Anonymous download and search) Cargo client does not send credentials when performing download and search for crates. Enable this to allow anonymous access to these resources (only), note that this will override the security anonymous access option.
	AnonymousAccess *bool `json:"anonymousAccess,omitempty" tf:"anonymous_access,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CargoRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable internal index support based on Cargo sparse index specifications, instead of the default git index. Default value is `false`.
	EnableSparseIndex *bool `json:"enableSparseIndex,omitempty" tf:"enable_sparse_index,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// This is the index url, expected to be a git repository. Default value in UI is 'https://index.crates.io/'
	GitRegistryURL *string `json:"gitRegistryUrl,omitempty" tf:"git_registry_url,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CargoRepositoryObservation) DeepCopy

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

func (*CargoRepositoryObservation) DeepCopyInto

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

type CargoRepositoryParameters

type CargoRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// (On the UI: Anonymous download and search) Cargo client does not send credentials when performing download and search for crates. Enable this to allow anonymous access to these resources (only), note that this will override the security anonymous access option.
	// +kubebuilder:validation:Optional
	AnonymousAccess *bool `json:"anonymousAccess,omitempty" tf:"anonymous_access,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []CargoRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable internal index support based on Cargo sparse index specifications, instead of the default git index. Default value is `false`.
	// +kubebuilder:validation:Optional
	EnableSparseIndex *bool `json:"enableSparseIndex,omitempty" tf:"enable_sparse_index,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// This is the index url, expected to be a git repository. Default value in UI is 'https://index.crates.io/'
	// +kubebuilder:validation:Optional
	GitRegistryURL *string `json:"gitRegistryUrl,omitempty" tf:"git_registry_url,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CargoRepositoryParameters) DeepCopy

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

func (*CargoRepositoryParameters) DeepCopyInto

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

type CargoRepositorySpec

type CargoRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     CargoRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider CargoRepositoryInitParameters `json:"initProvider,omitempty"`
}

CargoRepositorySpec defines the desired state of CargoRepository

func (*CargoRepositorySpec) DeepCopy

func (in *CargoRepositorySpec) DeepCopy() *CargoRepositorySpec

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

func (*CargoRepositorySpec) DeepCopyInto

func (in *CargoRepositorySpec) DeepCopyInto(out *CargoRepositorySpec)

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

type CargoRepositoryStatus

type CargoRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        CargoRepositoryObservation `json:"atProvider,omitempty"`
}

CargoRepositoryStatus defines the observed state of CargoRepository.

func (*CargoRepositoryStatus) DeepCopy

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

func (*CargoRepositoryStatus) DeepCopyInto

func (in *CargoRepositoryStatus) DeepCopyInto(out *CargoRepositoryStatus)

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

type ChefRepository

type ChefRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   ChefRepositorySpec   `json:"spec"`
	Status ChefRepositoryStatus `json:"status,omitempty"`
}

ChefRepository is the Schema for the ChefRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*ChefRepository) DeepCopy

func (in *ChefRepository) DeepCopy() *ChefRepository

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

func (*ChefRepository) DeepCopyInto

func (in *ChefRepository) DeepCopyInto(out *ChefRepository)

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

func (*ChefRepository) DeepCopyObject

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

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

func (*ChefRepository) GetCondition

func (mg *ChefRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ChefRepository.

func (*ChefRepository) GetConnectionDetailsMapping

func (tr *ChefRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ChefRepository

func (*ChefRepository) GetDeletionPolicy

func (mg *ChefRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ChefRepository.

func (*ChefRepository) GetID

func (tr *ChefRepository) GetID() string

GetID returns ID of underlying Terraform resource of this ChefRepository

func (*ChefRepository) GetInitParameters

func (tr *ChefRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this ChefRepository

func (*ChefRepository) GetManagementPolicies

func (mg *ChefRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ChefRepository.

func (*ChefRepository) GetMergedParameters

func (tr *ChefRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ChefRepository

func (*ChefRepository) GetObservation

func (tr *ChefRepository) GetObservation() (map[string]any, error)

GetObservation of this ChefRepository

func (*ChefRepository) GetParameters

func (tr *ChefRepository) GetParameters() (map[string]any, error)

GetParameters of this ChefRepository

func (*ChefRepository) GetProviderConfigReference

func (mg *ChefRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ChefRepository.

func (*ChefRepository) GetTerraformResourceType

func (mg *ChefRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ChefRepository

func (*ChefRepository) GetTerraformSchemaVersion

func (tr *ChefRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ChefRepository) GetWriteConnectionSecretToReference

func (mg *ChefRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ChefRepository.

func (*ChefRepository) Hub

func (tr *ChefRepository) Hub()

Hub marks this type as a conversion hub.

func (*ChefRepository) LateInitialize

func (tr *ChefRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ChefRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*ChefRepository) SetConditions

func (mg *ChefRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this ChefRepository.

func (*ChefRepository) SetDeletionPolicy

func (mg *ChefRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ChefRepository.

func (*ChefRepository) SetManagementPolicies

func (mg *ChefRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ChefRepository.

func (*ChefRepository) SetObservation

func (tr *ChefRepository) SetObservation(obs map[string]any) error

SetObservation for this ChefRepository

func (*ChefRepository) SetParameters

func (tr *ChefRepository) SetParameters(params map[string]any) error

SetParameters for this ChefRepository

func (*ChefRepository) SetProviderConfigReference

func (mg *ChefRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ChefRepository.

func (*ChefRepository) SetWriteConnectionSecretToReference

func (mg *ChefRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ChefRepository.

type ChefRepositoryContentSynchronisationInitParameters

type ChefRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ChefRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*ChefRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type ChefRepositoryContentSynchronisationObservation

type ChefRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ChefRepositoryContentSynchronisationObservation) DeepCopy

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

func (*ChefRepositoryContentSynchronisationObservation) DeepCopyInto

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

type ChefRepositoryContentSynchronisationParameters

type ChefRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ChefRepositoryContentSynchronisationParameters) DeepCopy

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

func (*ChefRepositoryContentSynchronisationParameters) DeepCopyInto

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

type ChefRepositoryInitParameters

type ChefRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []ChefRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ChefRepositoryInitParameters) DeepCopy

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

func (*ChefRepositoryInitParameters) DeepCopyInto

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

type ChefRepositoryList

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

ChefRepositoryList contains a list of ChefRepositorys

func (*ChefRepositoryList) DeepCopy

func (in *ChefRepositoryList) DeepCopy() *ChefRepositoryList

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

func (*ChefRepositoryList) DeepCopyInto

func (in *ChefRepositoryList) DeepCopyInto(out *ChefRepositoryList)

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

func (*ChefRepositoryList) DeepCopyObject

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

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

func (*ChefRepositoryList) GetItems

func (l *ChefRepositoryList) GetItems() []resource.Managed

GetItems of this ChefRepositoryList.

type ChefRepositoryObservation

type ChefRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []ChefRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ChefRepositoryObservation) DeepCopy

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

func (*ChefRepositoryObservation) DeepCopyInto

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

type ChefRepositoryParameters

type ChefRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []ChefRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ChefRepositoryParameters) DeepCopy

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

func (*ChefRepositoryParameters) DeepCopyInto

func (in *ChefRepositoryParameters) DeepCopyInto(out *ChefRepositoryParameters)

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

type ChefRepositorySpec

type ChefRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ChefRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ChefRepositoryInitParameters `json:"initProvider,omitempty"`
}

ChefRepositorySpec defines the desired state of ChefRepository

func (*ChefRepositorySpec) DeepCopy

func (in *ChefRepositorySpec) DeepCopy() *ChefRepositorySpec

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

func (*ChefRepositorySpec) DeepCopyInto

func (in *ChefRepositorySpec) DeepCopyInto(out *ChefRepositorySpec)

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

type ChefRepositoryStatus

type ChefRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ChefRepositoryObservation `json:"atProvider,omitempty"`
}

ChefRepositoryStatus defines the observed state of ChefRepository.

func (*ChefRepositoryStatus) DeepCopy

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

func (*ChefRepositoryStatus) DeepCopyInto

func (in *ChefRepositoryStatus) DeepCopyInto(out *ChefRepositoryStatus)

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

type CocoaPodsRepository

type CocoaPodsRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   CocoaPodsRepositorySpec   `json:"spec"`
	Status CocoaPodsRepositoryStatus `json:"status,omitempty"`
}

CocoaPodsRepository is the Schema for the CocoaPodsRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*CocoaPodsRepository) DeepCopy

func (in *CocoaPodsRepository) DeepCopy() *CocoaPodsRepository

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

func (*CocoaPodsRepository) DeepCopyInto

func (in *CocoaPodsRepository) DeepCopyInto(out *CocoaPodsRepository)

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

func (*CocoaPodsRepository) DeepCopyObject

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

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

func (*CocoaPodsRepository) GetCondition

func (mg *CocoaPodsRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this CocoaPodsRepository.

func (*CocoaPodsRepository) GetConnectionDetailsMapping

func (tr *CocoaPodsRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this CocoaPodsRepository

func (*CocoaPodsRepository) GetDeletionPolicy

func (mg *CocoaPodsRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this CocoaPodsRepository.

func (*CocoaPodsRepository) GetID

func (tr *CocoaPodsRepository) GetID() string

GetID returns ID of underlying Terraform resource of this CocoaPodsRepository

func (*CocoaPodsRepository) GetInitParameters

func (tr *CocoaPodsRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this CocoaPodsRepository

func (*CocoaPodsRepository) GetManagementPolicies

func (mg *CocoaPodsRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this CocoaPodsRepository.

func (*CocoaPodsRepository) GetMergedParameters

func (tr *CocoaPodsRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this CocoaPodsRepository

func (*CocoaPodsRepository) GetObservation

func (tr *CocoaPodsRepository) GetObservation() (map[string]any, error)

GetObservation of this CocoaPodsRepository

func (*CocoaPodsRepository) GetParameters

func (tr *CocoaPodsRepository) GetParameters() (map[string]any, error)

GetParameters of this CocoaPodsRepository

func (*CocoaPodsRepository) GetProviderConfigReference

func (mg *CocoaPodsRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this CocoaPodsRepository.

func (*CocoaPodsRepository) GetTerraformResourceType

func (mg *CocoaPodsRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CocoaPodsRepository

func (*CocoaPodsRepository) GetTerraformSchemaVersion

func (tr *CocoaPodsRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CocoaPodsRepository) GetWriteConnectionSecretToReference

func (mg *CocoaPodsRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this CocoaPodsRepository.

func (*CocoaPodsRepository) Hub

func (tr *CocoaPodsRepository) Hub()

Hub marks this type as a conversion hub.

func (*CocoaPodsRepository) LateInitialize

func (tr *CocoaPodsRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this CocoaPodsRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*CocoaPodsRepository) SetConditions

func (mg *CocoaPodsRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this CocoaPodsRepository.

func (*CocoaPodsRepository) SetDeletionPolicy

func (mg *CocoaPodsRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this CocoaPodsRepository.

func (*CocoaPodsRepository) SetManagementPolicies

func (mg *CocoaPodsRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this CocoaPodsRepository.

func (*CocoaPodsRepository) SetObservation

func (tr *CocoaPodsRepository) SetObservation(obs map[string]any) error

SetObservation for this CocoaPodsRepository

func (*CocoaPodsRepository) SetParameters

func (tr *CocoaPodsRepository) SetParameters(params map[string]any) error

SetParameters for this CocoaPodsRepository

func (*CocoaPodsRepository) SetProviderConfigReference

func (mg *CocoaPodsRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this CocoaPodsRepository.

func (*CocoaPodsRepository) SetWriteConnectionSecretToReference

func (mg *CocoaPodsRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this CocoaPodsRepository.

type CocoaPodsRepositoryContentSynchronisationInitParameters

type CocoaPodsRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CocoaPodsRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*CocoaPodsRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type CocoaPodsRepositoryContentSynchronisationObservation

type CocoaPodsRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CocoaPodsRepositoryContentSynchronisationObservation) DeepCopy

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

func (*CocoaPodsRepositoryContentSynchronisationObservation) DeepCopyInto

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

type CocoaPodsRepositoryContentSynchronisationParameters

type CocoaPodsRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CocoaPodsRepositoryContentSynchronisationParameters) DeepCopy

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

func (*CocoaPodsRepositoryContentSynchronisationParameters) DeepCopyInto

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

type CocoaPodsRepositoryInitParameters

type CocoaPodsRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CocoaPodsRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Proxy remote CocoaPods Specs repositories. Default value is 'https://github.com/CocoaPods/Specs'.
	PodsSpecsRepoURL *string `json:"podsSpecsRepoUrl,omitempty" tf:"pods_specs_repo_url,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CocoaPodsRepositoryInitParameters) DeepCopy

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

func (*CocoaPodsRepositoryInitParameters) DeepCopyInto

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

type CocoaPodsRepositoryList

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

CocoaPodsRepositoryList contains a list of CocoaPodsRepositorys

func (*CocoaPodsRepositoryList) DeepCopy

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

func (*CocoaPodsRepositoryList) DeepCopyInto

func (in *CocoaPodsRepositoryList) DeepCopyInto(out *CocoaPodsRepositoryList)

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

func (*CocoaPodsRepositoryList) DeepCopyObject

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

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

func (*CocoaPodsRepositoryList) GetItems

func (l *CocoaPodsRepositoryList) GetItems() []resource.Managed

GetItems of this CocoaPodsRepositoryList.

type CocoaPodsRepositoryObservation

type CocoaPodsRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CocoaPodsRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Proxy remote CocoaPods Specs repositories. Default value is 'https://github.com/CocoaPods/Specs'.
	PodsSpecsRepoURL *string `json:"podsSpecsRepoUrl,omitempty" tf:"pods_specs_repo_url,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CocoaPodsRepositoryObservation) DeepCopy

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

func (*CocoaPodsRepositoryObservation) DeepCopyInto

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

type CocoaPodsRepositoryParameters

type CocoaPodsRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []CocoaPodsRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Proxy remote CocoaPods Specs repositories. Default value is 'https://github.com/CocoaPods/Specs'.
	// +kubebuilder:validation:Optional
	PodsSpecsRepoURL *string `json:"podsSpecsRepoUrl,omitempty" tf:"pods_specs_repo_url,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	// +kubebuilder:validation:Optional
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	// +kubebuilder:validation:Optional
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CocoaPodsRepositoryParameters) DeepCopy

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

func (*CocoaPodsRepositoryParameters) DeepCopyInto

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

type CocoaPodsRepositorySpec

type CocoaPodsRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     CocoaPodsRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider CocoaPodsRepositoryInitParameters `json:"initProvider,omitempty"`
}

CocoaPodsRepositorySpec defines the desired state of CocoaPodsRepository

func (*CocoaPodsRepositorySpec) DeepCopy

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

func (*CocoaPodsRepositorySpec) DeepCopyInto

func (in *CocoaPodsRepositorySpec) DeepCopyInto(out *CocoaPodsRepositorySpec)

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

type CocoaPodsRepositoryStatus

type CocoaPodsRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        CocoaPodsRepositoryObservation `json:"atProvider,omitempty"`
}

CocoaPodsRepositoryStatus defines the observed state of CocoaPodsRepository.

func (*CocoaPodsRepositoryStatus) DeepCopy

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

func (*CocoaPodsRepositoryStatus) DeepCopyInto

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

type ComposerRepository

type ComposerRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   ComposerRepositorySpec   `json:"spec"`
	Status ComposerRepositoryStatus `json:"status,omitempty"`
}

ComposerRepository is the Schema for the ComposerRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*ComposerRepository) DeepCopy

func (in *ComposerRepository) DeepCopy() *ComposerRepository

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

func (*ComposerRepository) DeepCopyInto

func (in *ComposerRepository) DeepCopyInto(out *ComposerRepository)

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

func (*ComposerRepository) DeepCopyObject

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

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

func (*ComposerRepository) GetCondition

func (mg *ComposerRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ComposerRepository.

func (*ComposerRepository) GetConnectionDetailsMapping

func (tr *ComposerRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ComposerRepository

func (*ComposerRepository) GetDeletionPolicy

func (mg *ComposerRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ComposerRepository.

func (*ComposerRepository) GetID

func (tr *ComposerRepository) GetID() string

GetID returns ID of underlying Terraform resource of this ComposerRepository

func (*ComposerRepository) GetInitParameters

func (tr *ComposerRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this ComposerRepository

func (*ComposerRepository) GetManagementPolicies

func (mg *ComposerRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ComposerRepository.

func (*ComposerRepository) GetMergedParameters

func (tr *ComposerRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ComposerRepository

func (*ComposerRepository) GetObservation

func (tr *ComposerRepository) GetObservation() (map[string]any, error)

GetObservation of this ComposerRepository

func (*ComposerRepository) GetParameters

func (tr *ComposerRepository) GetParameters() (map[string]any, error)

GetParameters of this ComposerRepository

func (*ComposerRepository) GetProviderConfigReference

func (mg *ComposerRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ComposerRepository.

func (*ComposerRepository) GetTerraformResourceType

func (mg *ComposerRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ComposerRepository

func (*ComposerRepository) GetTerraformSchemaVersion

func (tr *ComposerRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ComposerRepository) GetWriteConnectionSecretToReference

func (mg *ComposerRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ComposerRepository.

func (*ComposerRepository) Hub

func (tr *ComposerRepository) Hub()

Hub marks this type as a conversion hub.

func (*ComposerRepository) LateInitialize

func (tr *ComposerRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ComposerRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*ComposerRepository) SetConditions

func (mg *ComposerRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this ComposerRepository.

func (*ComposerRepository) SetDeletionPolicy

func (mg *ComposerRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ComposerRepository.

func (*ComposerRepository) SetManagementPolicies

func (mg *ComposerRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ComposerRepository.

func (*ComposerRepository) SetObservation

func (tr *ComposerRepository) SetObservation(obs map[string]any) error

SetObservation for this ComposerRepository

func (*ComposerRepository) SetParameters

func (tr *ComposerRepository) SetParameters(params map[string]any) error

SetParameters for this ComposerRepository

func (*ComposerRepository) SetProviderConfigReference

func (mg *ComposerRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ComposerRepository.

func (*ComposerRepository) SetWriteConnectionSecretToReference

func (mg *ComposerRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ComposerRepository.

type ComposerRepositoryContentSynchronisationInitParameters

type ComposerRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ComposerRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*ComposerRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type ComposerRepositoryContentSynchronisationObservation

type ComposerRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ComposerRepositoryContentSynchronisationObservation) DeepCopy

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

func (*ComposerRepositoryContentSynchronisationObservation) DeepCopyInto

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

type ComposerRepositoryContentSynchronisationParameters

type ComposerRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ComposerRepositoryContentSynchronisationParameters) DeepCopy

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

func (*ComposerRepositoryContentSynchronisationParameters) DeepCopyInto

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

type ComposerRepositoryInitParameters

type ComposerRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// Proxy remote Composer repository. Default value is 'https://packagist.org'.
	ComposerRegistryURL *string `json:"composerRegistryUrl,omitempty" tf:"composer_registry_url,omitempty"`

	ContentSynchronisation []ComposerRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ComposerRepositoryInitParameters) DeepCopy

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

func (*ComposerRepositoryInitParameters) DeepCopyInto

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

type ComposerRepositoryList

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

ComposerRepositoryList contains a list of ComposerRepositorys

func (*ComposerRepositoryList) DeepCopy

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

func (*ComposerRepositoryList) DeepCopyInto

func (in *ComposerRepositoryList) DeepCopyInto(out *ComposerRepositoryList)

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

func (*ComposerRepositoryList) DeepCopyObject

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

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

func (*ComposerRepositoryList) GetItems

func (l *ComposerRepositoryList) GetItems() []resource.Managed

GetItems of this ComposerRepositoryList.

type ComposerRepositoryObservation

type ComposerRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// Proxy remote Composer repository. Default value is 'https://packagist.org'.
	ComposerRegistryURL *string `json:"composerRegistryUrl,omitempty" tf:"composer_registry_url,omitempty"`

	ContentSynchronisation []ComposerRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ComposerRepositoryObservation) DeepCopy

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

func (*ComposerRepositoryObservation) DeepCopyInto

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

type ComposerRepositoryParameters

type ComposerRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// Proxy remote Composer repository. Default value is 'https://packagist.org'.
	// +kubebuilder:validation:Optional
	ComposerRegistryURL *string `json:"composerRegistryUrl,omitempty" tf:"composer_registry_url,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []ComposerRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	// +kubebuilder:validation:Optional
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	// +kubebuilder:validation:Optional
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ComposerRepositoryParameters) DeepCopy

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

func (*ComposerRepositoryParameters) DeepCopyInto

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

type ComposerRepositorySpec

type ComposerRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ComposerRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ComposerRepositoryInitParameters `json:"initProvider,omitempty"`
}

ComposerRepositorySpec defines the desired state of ComposerRepository

func (*ComposerRepositorySpec) DeepCopy

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

func (*ComposerRepositorySpec) DeepCopyInto

func (in *ComposerRepositorySpec) DeepCopyInto(out *ComposerRepositorySpec)

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

type ComposerRepositoryStatus

type ComposerRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ComposerRepositoryObservation `json:"atProvider,omitempty"`
}

ComposerRepositoryStatus defines the observed state of ComposerRepository.

func (*ComposerRepositoryStatus) DeepCopy

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

func (*ComposerRepositoryStatus) DeepCopyInto

func (in *ComposerRepositoryStatus) DeepCopyInto(out *ComposerRepositoryStatus)

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

type ConanRepository

type ConanRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   ConanRepositorySpec   `json:"spec"`
	Status ConanRepositoryStatus `json:"status,omitempty"`
}

ConanRepository is the Schema for the ConanRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*ConanRepository) DeepCopy

func (in *ConanRepository) DeepCopy() *ConanRepository

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

func (*ConanRepository) DeepCopyInto

func (in *ConanRepository) DeepCopyInto(out *ConanRepository)

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

func (*ConanRepository) DeepCopyObject

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

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

func (*ConanRepository) GetCondition

func (mg *ConanRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ConanRepository.

func (*ConanRepository) GetConnectionDetailsMapping

func (tr *ConanRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ConanRepository

func (*ConanRepository) GetDeletionPolicy

func (mg *ConanRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ConanRepository.

func (*ConanRepository) GetID

func (tr *ConanRepository) GetID() string

GetID returns ID of underlying Terraform resource of this ConanRepository

func (*ConanRepository) GetInitParameters

func (tr *ConanRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this ConanRepository

func (*ConanRepository) GetManagementPolicies

func (mg *ConanRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ConanRepository.

func (*ConanRepository) GetMergedParameters

func (tr *ConanRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ConanRepository

func (*ConanRepository) GetObservation

func (tr *ConanRepository) GetObservation() (map[string]any, error)

GetObservation of this ConanRepository

func (*ConanRepository) GetParameters

func (tr *ConanRepository) GetParameters() (map[string]any, error)

GetParameters of this ConanRepository

func (*ConanRepository) GetProviderConfigReference

func (mg *ConanRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ConanRepository.

func (*ConanRepository) GetTerraformResourceType

func (mg *ConanRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ConanRepository

func (*ConanRepository) GetTerraformSchemaVersion

func (tr *ConanRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ConanRepository) GetWriteConnectionSecretToReference

func (mg *ConanRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ConanRepository.

func (*ConanRepository) Hub

func (tr *ConanRepository) Hub()

Hub marks this type as a conversion hub.

func (*ConanRepository) LateInitialize

func (tr *ConanRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ConanRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*ConanRepository) SetConditions

func (mg *ConanRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this ConanRepository.

func (*ConanRepository) SetDeletionPolicy

func (mg *ConanRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ConanRepository.

func (*ConanRepository) SetManagementPolicies

func (mg *ConanRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ConanRepository.

func (*ConanRepository) SetObservation

func (tr *ConanRepository) SetObservation(obs map[string]any) error

SetObservation for this ConanRepository

func (*ConanRepository) SetParameters

func (tr *ConanRepository) SetParameters(params map[string]any) error

SetParameters for this ConanRepository

func (*ConanRepository) SetProviderConfigReference

func (mg *ConanRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ConanRepository.

func (*ConanRepository) SetWriteConnectionSecretToReference

func (mg *ConanRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ConanRepository.

type ConanRepositoryContentSynchronisationInitParameters

type ConanRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ConanRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*ConanRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type ConanRepositoryContentSynchronisationObservation

type ConanRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ConanRepositoryContentSynchronisationObservation) DeepCopy

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

func (*ConanRepositoryContentSynchronisationObservation) DeepCopyInto

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

type ConanRepositoryContentSynchronisationParameters

type ConanRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ConanRepositoryContentSynchronisationParameters) DeepCopy

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

func (*ConanRepositoryContentSynchronisationParameters) DeepCopyInto

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

type ConanRepositoryInitParameters

type ConanRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []ConanRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Force basic authentication credentials in order to use this repository. Default value is 'false'.
	ForceConanAuthentication *bool `json:"forceConanAuthentication,omitempty" tf:"force_conan_authentication,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ConanRepositoryInitParameters) DeepCopy

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

func (*ConanRepositoryInitParameters) DeepCopyInto

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

type ConanRepositoryList

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

ConanRepositoryList contains a list of ConanRepositorys

func (*ConanRepositoryList) DeepCopy

func (in *ConanRepositoryList) DeepCopy() *ConanRepositoryList

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

func (*ConanRepositoryList) DeepCopyInto

func (in *ConanRepositoryList) DeepCopyInto(out *ConanRepositoryList)

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

func (*ConanRepositoryList) DeepCopyObject

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

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

func (*ConanRepositoryList) GetItems

func (l *ConanRepositoryList) GetItems() []resource.Managed

GetItems of this ConanRepositoryList.

type ConanRepositoryObservation

type ConanRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []ConanRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Force basic authentication credentials in order to use this repository. Default value is 'false'.
	ForceConanAuthentication *bool `json:"forceConanAuthentication,omitempty" tf:"force_conan_authentication,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ConanRepositoryObservation) DeepCopy

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

func (*ConanRepositoryObservation) DeepCopyInto

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

type ConanRepositoryParameters

type ConanRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []ConanRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Force basic authentication credentials in order to use this repository. Default value is 'false'.
	// +kubebuilder:validation:Optional
	ForceConanAuthentication *bool `json:"forceConanAuthentication,omitempty" tf:"force_conan_authentication,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*ConanRepositoryParameters) DeepCopy

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

func (*ConanRepositoryParameters) DeepCopyInto

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

type ConanRepositorySpec

type ConanRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ConanRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ConanRepositoryInitParameters `json:"initProvider,omitempty"`
}

ConanRepositorySpec defines the desired state of ConanRepository

func (*ConanRepositorySpec) DeepCopy

func (in *ConanRepositorySpec) DeepCopy() *ConanRepositorySpec

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

func (*ConanRepositorySpec) DeepCopyInto

func (in *ConanRepositorySpec) DeepCopyInto(out *ConanRepositorySpec)

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

type ConanRepositoryStatus

type ConanRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ConanRepositoryObservation `json:"atProvider,omitempty"`
}

ConanRepositoryStatus defines the observed state of ConanRepository.

func (*ConanRepositoryStatus) DeepCopy

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

func (*ConanRepositoryStatus) DeepCopyInto

func (in *ConanRepositoryStatus) DeepCopyInto(out *ConanRepositoryStatus)

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

type CondaRepository

type CondaRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   CondaRepositorySpec   `json:"spec"`
	Status CondaRepositoryStatus `json:"status,omitempty"`
}

CondaRepository is the Schema for the CondaRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*CondaRepository) DeepCopy

func (in *CondaRepository) DeepCopy() *CondaRepository

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

func (*CondaRepository) DeepCopyInto

func (in *CondaRepository) DeepCopyInto(out *CondaRepository)

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

func (*CondaRepository) DeepCopyObject

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

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

func (*CondaRepository) GetCondition

func (mg *CondaRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this CondaRepository.

func (*CondaRepository) GetConnectionDetailsMapping

func (tr *CondaRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this CondaRepository

func (*CondaRepository) GetDeletionPolicy

func (mg *CondaRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this CondaRepository.

func (*CondaRepository) GetID

func (tr *CondaRepository) GetID() string

GetID returns ID of underlying Terraform resource of this CondaRepository

func (*CondaRepository) GetInitParameters

func (tr *CondaRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this CondaRepository

func (*CondaRepository) GetManagementPolicies

func (mg *CondaRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this CondaRepository.

func (*CondaRepository) GetMergedParameters

func (tr *CondaRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this CondaRepository

func (*CondaRepository) GetObservation

func (tr *CondaRepository) GetObservation() (map[string]any, error)

GetObservation of this CondaRepository

func (*CondaRepository) GetParameters

func (tr *CondaRepository) GetParameters() (map[string]any, error)

GetParameters of this CondaRepository

func (*CondaRepository) GetProviderConfigReference

func (mg *CondaRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this CondaRepository.

func (*CondaRepository) GetTerraformResourceType

func (mg *CondaRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CondaRepository

func (*CondaRepository) GetTerraformSchemaVersion

func (tr *CondaRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CondaRepository) GetWriteConnectionSecretToReference

func (mg *CondaRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this CondaRepository.

func (*CondaRepository) Hub

func (tr *CondaRepository) Hub()

Hub marks this type as a conversion hub.

func (*CondaRepository) LateInitialize

func (tr *CondaRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this CondaRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*CondaRepository) SetConditions

func (mg *CondaRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this CondaRepository.

func (*CondaRepository) SetDeletionPolicy

func (mg *CondaRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this CondaRepository.

func (*CondaRepository) SetManagementPolicies

func (mg *CondaRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this CondaRepository.

func (*CondaRepository) SetObservation

func (tr *CondaRepository) SetObservation(obs map[string]any) error

SetObservation for this CondaRepository

func (*CondaRepository) SetParameters

func (tr *CondaRepository) SetParameters(params map[string]any) error

SetParameters for this CondaRepository

func (*CondaRepository) SetProviderConfigReference

func (mg *CondaRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this CondaRepository.

func (*CondaRepository) SetWriteConnectionSecretToReference

func (mg *CondaRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this CondaRepository.

type CondaRepositoryContentSynchronisationInitParameters

type CondaRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CondaRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*CondaRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type CondaRepositoryContentSynchronisationObservation

type CondaRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CondaRepositoryContentSynchronisationObservation) DeepCopy

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

func (*CondaRepositoryContentSynchronisationObservation) DeepCopyInto

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

type CondaRepositoryContentSynchronisationParameters

type CondaRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*CondaRepositoryContentSynchronisationParameters) DeepCopy

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

func (*CondaRepositoryContentSynchronisationParameters) DeepCopyInto

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

type CondaRepositoryInitParameters

type CondaRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CondaRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CondaRepositoryInitParameters) DeepCopy

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

func (*CondaRepositoryInitParameters) DeepCopyInto

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

type CondaRepositoryList

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

CondaRepositoryList contains a list of CondaRepositorys

func (*CondaRepositoryList) DeepCopy

func (in *CondaRepositoryList) DeepCopy() *CondaRepositoryList

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

func (*CondaRepositoryList) DeepCopyInto

func (in *CondaRepositoryList) DeepCopyInto(out *CondaRepositoryList)

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

func (*CondaRepositoryList) DeepCopyObject

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

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

func (*CondaRepositoryList) GetItems

func (l *CondaRepositoryList) GetItems() []resource.Managed

GetItems of this CondaRepositoryList.

type CondaRepositoryObservation

type CondaRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []CondaRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CondaRepositoryObservation) DeepCopy

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

func (*CondaRepositoryObservation) DeepCopyInto

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

type CondaRepositoryParameters

type CondaRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []CondaRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*CondaRepositoryParameters) DeepCopy

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

func (*CondaRepositoryParameters) DeepCopyInto

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

type CondaRepositorySpec

type CondaRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     CondaRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider CondaRepositoryInitParameters `json:"initProvider,omitempty"`
}

CondaRepositorySpec defines the desired state of CondaRepository

func (*CondaRepositorySpec) DeepCopy

func (in *CondaRepositorySpec) DeepCopy() *CondaRepositorySpec

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

func (*CondaRepositorySpec) DeepCopyInto

func (in *CondaRepositorySpec) DeepCopyInto(out *CondaRepositorySpec)

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

type CondaRepositoryStatus

type CondaRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        CondaRepositoryObservation `json:"atProvider,omitempty"`
}

CondaRepositoryStatus defines the observed state of CondaRepository.

func (*CondaRepositoryStatus) DeepCopy

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

func (*CondaRepositoryStatus) DeepCopyInto

func (in *CondaRepositoryStatus) DeepCopyInto(out *CondaRepositoryStatus)

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

type ContentSynchronisationInitParameters

type ContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ContentSynchronisationInitParameters) DeepCopy

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

func (*ContentSynchronisationInitParameters) DeepCopyInto

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

type ContentSynchronisationObservation

type ContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ContentSynchronisationObservation) DeepCopy

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

func (*ContentSynchronisationObservation) DeepCopyInto

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

type ContentSynchronisationParameters

type ContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*ContentSynchronisationParameters) DeepCopy

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

func (*ContentSynchronisationParameters) DeepCopyInto

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

type DebianRepository

type DebianRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   DebianRepositorySpec   `json:"spec"`
	Status DebianRepositoryStatus `json:"status,omitempty"`
}

DebianRepository is the Schema for the DebianRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*DebianRepository) DeepCopy

func (in *DebianRepository) DeepCopy() *DebianRepository

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

func (*DebianRepository) DeepCopyInto

func (in *DebianRepository) DeepCopyInto(out *DebianRepository)

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

func (*DebianRepository) DeepCopyObject

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

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

func (*DebianRepository) GetCondition

func (mg *DebianRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this DebianRepository.

func (*DebianRepository) GetConnectionDetailsMapping

func (tr *DebianRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this DebianRepository

func (*DebianRepository) GetDeletionPolicy

func (mg *DebianRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this DebianRepository.

func (*DebianRepository) GetID

func (tr *DebianRepository) GetID() string

GetID returns ID of underlying Terraform resource of this DebianRepository

func (*DebianRepository) GetInitParameters

func (tr *DebianRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this DebianRepository

func (*DebianRepository) GetManagementPolicies

func (mg *DebianRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this DebianRepository.

func (*DebianRepository) GetMergedParameters

func (tr *DebianRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this DebianRepository

func (*DebianRepository) GetObservation

func (tr *DebianRepository) GetObservation() (map[string]any, error)

GetObservation of this DebianRepository

func (*DebianRepository) GetParameters

func (tr *DebianRepository) GetParameters() (map[string]any, error)

GetParameters of this DebianRepository

func (*DebianRepository) GetProviderConfigReference

func (mg *DebianRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this DebianRepository.

func (*DebianRepository) GetTerraformResourceType

func (mg *DebianRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DebianRepository

func (*DebianRepository) GetTerraformSchemaVersion

func (tr *DebianRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DebianRepository) GetWriteConnectionSecretToReference

func (mg *DebianRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this DebianRepository.

func (*DebianRepository) Hub

func (tr *DebianRepository) Hub()

Hub marks this type as a conversion hub.

func (*DebianRepository) LateInitialize

func (tr *DebianRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this DebianRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*DebianRepository) SetConditions

func (mg *DebianRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this DebianRepository.

func (*DebianRepository) SetDeletionPolicy

func (mg *DebianRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this DebianRepository.

func (*DebianRepository) SetManagementPolicies

func (mg *DebianRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this DebianRepository.

func (*DebianRepository) SetObservation

func (tr *DebianRepository) SetObservation(obs map[string]any) error

SetObservation for this DebianRepository

func (*DebianRepository) SetParameters

func (tr *DebianRepository) SetParameters(params map[string]any) error

SetParameters for this DebianRepository

func (*DebianRepository) SetProviderConfigReference

func (mg *DebianRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this DebianRepository.

func (*DebianRepository) SetWriteConnectionSecretToReference

func (mg *DebianRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this DebianRepository.

type DebianRepositoryContentSynchronisationInitParameters

type DebianRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*DebianRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*DebianRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type DebianRepositoryContentSynchronisationObservation

type DebianRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*DebianRepositoryContentSynchronisationObservation) DeepCopy

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

func (*DebianRepositoryContentSynchronisationObservation) DeepCopyInto

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

type DebianRepositoryContentSynchronisationParameters

type DebianRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*DebianRepositoryContentSynchronisationParameters) DeepCopy

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

func (*DebianRepositoryContentSynchronisationParameters) DeepCopyInto

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

type DebianRepositoryInitParameters

type DebianRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []DebianRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*DebianRepositoryInitParameters) DeepCopy

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

func (*DebianRepositoryInitParameters) DeepCopyInto

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

type DebianRepositoryList

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

DebianRepositoryList contains a list of DebianRepositorys

func (*DebianRepositoryList) DeepCopy

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

func (*DebianRepositoryList) DeepCopyInto

func (in *DebianRepositoryList) DeepCopyInto(out *DebianRepositoryList)

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

func (*DebianRepositoryList) DeepCopyObject

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

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

func (*DebianRepositoryList) GetItems

func (l *DebianRepositoryList) GetItems() []resource.Managed

GetItems of this DebianRepositoryList.

type DebianRepositoryObservation

type DebianRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []DebianRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*DebianRepositoryObservation) DeepCopy

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

func (*DebianRepositoryObservation) DeepCopyInto

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

type DebianRepositoryParameters

type DebianRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []DebianRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*DebianRepositoryParameters) DeepCopy

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

func (*DebianRepositoryParameters) DeepCopyInto

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

type DebianRepositorySpec

type DebianRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     DebianRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider DebianRepositoryInitParameters `json:"initProvider,omitempty"`
}

DebianRepositorySpec defines the desired state of DebianRepository

func (*DebianRepositorySpec) DeepCopy

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

func (*DebianRepositorySpec) DeepCopyInto

func (in *DebianRepositorySpec) DeepCopyInto(out *DebianRepositorySpec)

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

type DebianRepositoryStatus

type DebianRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        DebianRepositoryObservation `json:"atProvider,omitempty"`
}

DebianRepositoryStatus defines the observed state of DebianRepository.

func (*DebianRepositoryStatus) DeepCopy

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

func (*DebianRepositoryStatus) DeepCopyInto

func (in *DebianRepositoryStatus) DeepCopyInto(out *DebianRepositoryStatus)

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

type DockerRepository

type DockerRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   DockerRepositorySpec   `json:"spec"`
	Status DockerRepositoryStatus `json:"status,omitempty"`
}

DockerRepository is the Schema for the DockerRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*DockerRepository) DeepCopy

func (in *DockerRepository) DeepCopy() *DockerRepository

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

func (*DockerRepository) DeepCopyInto

func (in *DockerRepository) DeepCopyInto(out *DockerRepository)

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

func (*DockerRepository) DeepCopyObject

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

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

func (*DockerRepository) GetCondition

func (mg *DockerRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this DockerRepository.

func (*DockerRepository) GetConnectionDetailsMapping

func (tr *DockerRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this DockerRepository

func (*DockerRepository) GetDeletionPolicy

func (mg *DockerRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this DockerRepository.

func (*DockerRepository) GetID

func (tr *DockerRepository) GetID() string

GetID returns ID of underlying Terraform resource of this DockerRepository

func (*DockerRepository) GetInitParameters

func (tr *DockerRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this DockerRepository

func (*DockerRepository) GetManagementPolicies

func (mg *DockerRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this DockerRepository.

func (*DockerRepository) GetMergedParameters

func (tr *DockerRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this DockerRepository

func (*DockerRepository) GetObservation

func (tr *DockerRepository) GetObservation() (map[string]any, error)

GetObservation of this DockerRepository

func (*DockerRepository) GetParameters

func (tr *DockerRepository) GetParameters() (map[string]any, error)

GetParameters of this DockerRepository

func (*DockerRepository) GetProviderConfigReference

func (mg *DockerRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this DockerRepository.

func (*DockerRepository) GetTerraformResourceType

func (mg *DockerRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DockerRepository

func (*DockerRepository) GetTerraformSchemaVersion

func (tr *DockerRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DockerRepository) GetWriteConnectionSecretToReference

func (mg *DockerRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this DockerRepository.

func (*DockerRepository) Hub

func (tr *DockerRepository) Hub()

Hub marks this type as a conversion hub.

func (*DockerRepository) LateInitialize

func (tr *DockerRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this DockerRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*DockerRepository) SetConditions

func (mg *DockerRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this DockerRepository.

func (*DockerRepository) SetDeletionPolicy

func (mg *DockerRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this DockerRepository.

func (*DockerRepository) SetManagementPolicies

func (mg *DockerRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this DockerRepository.

func (*DockerRepository) SetObservation

func (tr *DockerRepository) SetObservation(obs map[string]any) error

SetObservation for this DockerRepository

func (*DockerRepository) SetParameters

func (tr *DockerRepository) SetParameters(params map[string]any) error

SetParameters for this DockerRepository

func (*DockerRepository) SetProviderConfigReference

func (mg *DockerRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this DockerRepository.

func (*DockerRepository) SetWriteConnectionSecretToReference

func (mg *DockerRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this DockerRepository.

type DockerRepositoryContentSynchronisationInitParameters

type DockerRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*DockerRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*DockerRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type DockerRepositoryContentSynchronisationObservation

type DockerRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*DockerRepositoryContentSynchronisationObservation) DeepCopy

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

func (*DockerRepositoryContentSynchronisationObservation) DeepCopyInto

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

type DockerRepositoryContentSynchronisationParameters

type DockerRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*DockerRepositoryContentSynchronisationParameters) DeepCopy

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

func (*DockerRepositoryContentSynchronisationParameters) DeepCopyInto

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

type DockerRepositoryInitParameters

type DockerRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// When set, Artifactory will block the pulling of Docker images with manifest v2 schema 1 from the remote repository (i.e. the upstream). It will be possible to pull images with manifest v2 schema 1 that exist in the cache.
	BlockPushingSchema1 *bool `json:"blockPushingSchema1,omitempty" tf:"block_pushing_schema1,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []DockerRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Also known as 'Foreign Layers Caching' on the UI, default is `false`.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// An allow list of Ant-style path patterns that determine which remote VCS roots Artifactory will follow to download remote modules from, when presented with 'go-import' meta tags in the remote repository response. This attribute must be set together with `external_dependencies_enabled = true`
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*DockerRepositoryInitParameters) DeepCopy

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

func (*DockerRepositoryInitParameters) DeepCopyInto

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

type DockerRepositoryList

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

DockerRepositoryList contains a list of DockerRepositorys

func (*DockerRepositoryList) DeepCopy

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

func (*DockerRepositoryList) DeepCopyInto

func (in *DockerRepositoryList) DeepCopyInto(out *DockerRepositoryList)

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

func (*DockerRepositoryList) DeepCopyObject

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

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

func (*DockerRepositoryList) GetItems

func (l *DockerRepositoryList) GetItems() []resource.Managed

GetItems of this DockerRepositoryList.

type DockerRepositoryObservation

type DockerRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// When set, Artifactory will block the pulling of Docker images with manifest v2 schema 1 from the remote repository (i.e. the upstream). It will be possible to pull images with manifest v2 schema 1 that exist in the cache.
	BlockPushingSchema1 *bool `json:"blockPushingSchema1,omitempty" tf:"block_pushing_schema1,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []DockerRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Also known as 'Foreign Layers Caching' on the UI, default is `false`.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// An allow list of Ant-style path patterns that determine which remote VCS roots Artifactory will follow to download remote modules from, when presented with 'go-import' meta tags in the remote repository response. This attribute must be set together with `external_dependencies_enabled = true`
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*DockerRepositoryObservation) DeepCopy

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

func (*DockerRepositoryObservation) DeepCopyInto

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

type DockerRepositoryParameters

type DockerRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// When set, Artifactory will block the pulling of Docker images with manifest v2 schema 1 from the remote repository (i.e. the upstream). It will be possible to pull images with manifest v2 schema 1 that exist in the cache.
	// +kubebuilder:validation:Optional
	BlockPushingSchema1 *bool `json:"blockPushingSchema1,omitempty" tf:"block_pushing_schema1,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []DockerRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	// +kubebuilder:validation:Optional
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Also known as 'Foreign Layers Caching' on the UI, default is `false`.
	// +kubebuilder:validation:Optional
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// An allow list of Ant-style path patterns that determine which remote VCS roots Artifactory will follow to download remote modules from, when presented with 'go-import' meta tags in the remote repository response. This attribute must be set together with `external_dependencies_enabled = true`
	// +kubebuilder:validation:Optional
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	// +kubebuilder:validation:Optional
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*DockerRepositoryParameters) DeepCopy

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

func (*DockerRepositoryParameters) DeepCopyInto

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

type DockerRepositorySpec

type DockerRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     DockerRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider DockerRepositoryInitParameters `json:"initProvider,omitempty"`
}

DockerRepositorySpec defines the desired state of DockerRepository

func (*DockerRepositorySpec) DeepCopy

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

func (*DockerRepositorySpec) DeepCopyInto

func (in *DockerRepositorySpec) DeepCopyInto(out *DockerRepositorySpec)

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

type DockerRepositoryStatus

type DockerRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        DockerRepositoryObservation `json:"atProvider,omitempty"`
}

DockerRepositoryStatus defines the observed state of DockerRepository.

func (*DockerRepositoryStatus) DeepCopy

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

func (*DockerRepositoryStatus) DeepCopyInto

func (in *DockerRepositoryStatus) DeepCopyInto(out *DockerRepositoryStatus)

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

type GemsRepository

type GemsRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   GemsRepositorySpec   `json:"spec"`
	Status GemsRepositoryStatus `json:"status,omitempty"`
}

GemsRepository is the Schema for the GemsRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*GemsRepository) DeepCopy

func (in *GemsRepository) DeepCopy() *GemsRepository

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

func (*GemsRepository) DeepCopyInto

func (in *GemsRepository) DeepCopyInto(out *GemsRepository)

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

func (*GemsRepository) DeepCopyObject

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

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

func (*GemsRepository) GetCondition

func (mg *GemsRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this GemsRepository.

func (*GemsRepository) GetConnectionDetailsMapping

func (tr *GemsRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this GemsRepository

func (*GemsRepository) GetDeletionPolicy

func (mg *GemsRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this GemsRepository.

func (*GemsRepository) GetID

func (tr *GemsRepository) GetID() string

GetID returns ID of underlying Terraform resource of this GemsRepository

func (*GemsRepository) GetInitParameters

func (tr *GemsRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this GemsRepository

func (*GemsRepository) GetManagementPolicies

func (mg *GemsRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this GemsRepository.

func (*GemsRepository) GetMergedParameters

func (tr *GemsRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this GemsRepository

func (*GemsRepository) GetObservation

func (tr *GemsRepository) GetObservation() (map[string]any, error)

GetObservation of this GemsRepository

func (*GemsRepository) GetParameters

func (tr *GemsRepository) GetParameters() (map[string]any, error)

GetParameters of this GemsRepository

func (*GemsRepository) GetProviderConfigReference

func (mg *GemsRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this GemsRepository.

func (*GemsRepository) GetTerraformResourceType

func (mg *GemsRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GemsRepository

func (*GemsRepository) GetTerraformSchemaVersion

func (tr *GemsRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GemsRepository) GetWriteConnectionSecretToReference

func (mg *GemsRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this GemsRepository.

func (*GemsRepository) Hub

func (tr *GemsRepository) Hub()

Hub marks this type as a conversion hub.

func (*GemsRepository) LateInitialize

func (tr *GemsRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this GemsRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*GemsRepository) SetConditions

func (mg *GemsRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this GemsRepository.

func (*GemsRepository) SetDeletionPolicy

func (mg *GemsRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this GemsRepository.

func (*GemsRepository) SetManagementPolicies

func (mg *GemsRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this GemsRepository.

func (*GemsRepository) SetObservation

func (tr *GemsRepository) SetObservation(obs map[string]any) error

SetObservation for this GemsRepository

func (*GemsRepository) SetParameters

func (tr *GemsRepository) SetParameters(params map[string]any) error

SetParameters for this GemsRepository

func (*GemsRepository) SetProviderConfigReference

func (mg *GemsRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this GemsRepository.

func (*GemsRepository) SetWriteConnectionSecretToReference

func (mg *GemsRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this GemsRepository.

type GemsRepositoryContentSynchronisationInitParameters

type GemsRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GemsRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*GemsRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type GemsRepositoryContentSynchronisationObservation

type GemsRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GemsRepositoryContentSynchronisationObservation) DeepCopy

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

func (*GemsRepositoryContentSynchronisationObservation) DeepCopyInto

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

type GemsRepositoryContentSynchronisationParameters

type GemsRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GemsRepositoryContentSynchronisationParameters) DeepCopy

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

func (*GemsRepositoryContentSynchronisationParameters) DeepCopyInto

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

type GemsRepositoryInitParameters

type GemsRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GemsRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GemsRepositoryInitParameters) DeepCopy

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

func (*GemsRepositoryInitParameters) DeepCopyInto

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

type GemsRepositoryList

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

GemsRepositoryList contains a list of GemsRepositorys

func (*GemsRepositoryList) DeepCopy

func (in *GemsRepositoryList) DeepCopy() *GemsRepositoryList

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

func (*GemsRepositoryList) DeepCopyInto

func (in *GemsRepositoryList) DeepCopyInto(out *GemsRepositoryList)

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

func (*GemsRepositoryList) DeepCopyObject

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

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

func (*GemsRepositoryList) GetItems

func (l *GemsRepositoryList) GetItems() []resource.Managed

GetItems of this GemsRepositoryList.

type GemsRepositoryObservation

type GemsRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GemsRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GemsRepositoryObservation) DeepCopy

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

func (*GemsRepositoryObservation) DeepCopyInto

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

type GemsRepositoryParameters

type GemsRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []GemsRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	// +kubebuilder:validation:Optional
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	// +kubebuilder:validation:Optional
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GemsRepositoryParameters) DeepCopy

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

func (*GemsRepositoryParameters) DeepCopyInto

func (in *GemsRepositoryParameters) DeepCopyInto(out *GemsRepositoryParameters)

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

type GemsRepositorySpec

type GemsRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     GemsRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider GemsRepositoryInitParameters `json:"initProvider,omitempty"`
}

GemsRepositorySpec defines the desired state of GemsRepository

func (*GemsRepositorySpec) DeepCopy

func (in *GemsRepositorySpec) DeepCopy() *GemsRepositorySpec

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

func (*GemsRepositorySpec) DeepCopyInto

func (in *GemsRepositorySpec) DeepCopyInto(out *GemsRepositorySpec)

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

type GemsRepositoryStatus

type GemsRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        GemsRepositoryObservation `json:"atProvider,omitempty"`
}

GemsRepositoryStatus defines the observed state of GemsRepository.

func (*GemsRepositoryStatus) DeepCopy

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

func (*GemsRepositoryStatus) DeepCopyInto

func (in *GemsRepositoryStatus) DeepCopyInto(out *GemsRepositoryStatus)

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

type GenericRepository

type GenericRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   GenericRepositorySpec   `json:"spec"`
	Status GenericRepositoryStatus `json:"status,omitempty"`
}

GenericRepository is the Schema for the GenericRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*GenericRepository) DeepCopy

func (in *GenericRepository) DeepCopy() *GenericRepository

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

func (*GenericRepository) DeepCopyInto

func (in *GenericRepository) DeepCopyInto(out *GenericRepository)

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

func (*GenericRepository) DeepCopyObject

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

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

func (*GenericRepository) GetCondition

func (mg *GenericRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this GenericRepository.

func (*GenericRepository) GetConnectionDetailsMapping

func (tr *GenericRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this GenericRepository

func (*GenericRepository) GetDeletionPolicy

func (mg *GenericRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this GenericRepository.

func (*GenericRepository) GetID

func (tr *GenericRepository) GetID() string

GetID returns ID of underlying Terraform resource of this GenericRepository

func (*GenericRepository) GetInitParameters

func (tr *GenericRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this GenericRepository

func (*GenericRepository) GetManagementPolicies

func (mg *GenericRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this GenericRepository.

func (*GenericRepository) GetMergedParameters

func (tr *GenericRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this GenericRepository

func (*GenericRepository) GetObservation

func (tr *GenericRepository) GetObservation() (map[string]any, error)

GetObservation of this GenericRepository

func (*GenericRepository) GetParameters

func (tr *GenericRepository) GetParameters() (map[string]any, error)

GetParameters of this GenericRepository

func (*GenericRepository) GetProviderConfigReference

func (mg *GenericRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this GenericRepository.

func (*GenericRepository) GetTerraformResourceType

func (mg *GenericRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GenericRepository

func (*GenericRepository) GetTerraformSchemaVersion

func (tr *GenericRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GenericRepository) GetWriteConnectionSecretToReference

func (mg *GenericRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this GenericRepository.

func (*GenericRepository) Hub

func (tr *GenericRepository) Hub()

Hub marks this type as a conversion hub.

func (*GenericRepository) LateInitialize

func (tr *GenericRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this GenericRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*GenericRepository) SetConditions

func (mg *GenericRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this GenericRepository.

func (*GenericRepository) SetDeletionPolicy

func (mg *GenericRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this GenericRepository.

func (*GenericRepository) SetManagementPolicies

func (mg *GenericRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this GenericRepository.

func (*GenericRepository) SetObservation

func (tr *GenericRepository) SetObservation(obs map[string]any) error

SetObservation for this GenericRepository

func (*GenericRepository) SetParameters

func (tr *GenericRepository) SetParameters(params map[string]any) error

SetParameters for this GenericRepository

func (*GenericRepository) SetProviderConfigReference

func (mg *GenericRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this GenericRepository.

func (*GenericRepository) SetWriteConnectionSecretToReference

func (mg *GenericRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this GenericRepository.

type GenericRepositoryContentSynchronisationInitParameters

type GenericRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GenericRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*GenericRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type GenericRepositoryContentSynchronisationObservation

type GenericRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GenericRepositoryContentSynchronisationObservation) DeepCopy

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

func (*GenericRepositoryContentSynchronisationObservation) DeepCopyInto

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

type GenericRepositoryContentSynchronisationParameters

type GenericRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GenericRepositoryContentSynchronisationParameters) DeepCopy

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

func (*GenericRepositoryContentSynchronisationParameters) DeepCopyInto

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

type GenericRepositoryInitParameters

type GenericRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GenericRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GenericRepositoryInitParameters) DeepCopy

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

func (*GenericRepositoryInitParameters) DeepCopyInto

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

type GenericRepositoryList

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

GenericRepositoryList contains a list of GenericRepositorys

func (*GenericRepositoryList) DeepCopy

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

func (*GenericRepositoryList) DeepCopyInto

func (in *GenericRepositoryList) DeepCopyInto(out *GenericRepositoryList)

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

func (*GenericRepositoryList) DeepCopyObject

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

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

func (*GenericRepositoryList) GetItems

func (l *GenericRepositoryList) GetItems() []resource.Managed

GetItems of this GenericRepositoryList.

type GenericRepositoryObservation

type GenericRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GenericRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GenericRepositoryObservation) DeepCopy

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

func (*GenericRepositoryObservation) DeepCopyInto

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

type GenericRepositoryParameters

type GenericRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []GenericRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	// +kubebuilder:validation:Optional
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	// +kubebuilder:validation:Optional
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GenericRepositoryParameters) DeepCopy

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

func (*GenericRepositoryParameters) DeepCopyInto

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

type GenericRepositorySpec

type GenericRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     GenericRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider GenericRepositoryInitParameters `json:"initProvider,omitempty"`
}

GenericRepositorySpec defines the desired state of GenericRepository

func (*GenericRepositorySpec) DeepCopy

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

func (*GenericRepositorySpec) DeepCopyInto

func (in *GenericRepositorySpec) DeepCopyInto(out *GenericRepositorySpec)

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

type GenericRepositoryStatus

type GenericRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        GenericRepositoryObservation `json:"atProvider,omitempty"`
}

GenericRepositoryStatus defines the observed state of GenericRepository.

func (*GenericRepositoryStatus) DeepCopy

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

func (*GenericRepositoryStatus) DeepCopyInto

func (in *GenericRepositoryStatus) DeepCopyInto(out *GenericRepositoryStatus)

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

type GitLFSRepository

type GitLFSRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   GitLFSRepositorySpec   `json:"spec"`
	Status GitLFSRepositoryStatus `json:"status,omitempty"`
}

GitLFSRepository is the Schema for the GitLFSRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*GitLFSRepository) DeepCopy

func (in *GitLFSRepository) DeepCopy() *GitLFSRepository

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

func (*GitLFSRepository) DeepCopyInto

func (in *GitLFSRepository) DeepCopyInto(out *GitLFSRepository)

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

func (*GitLFSRepository) DeepCopyObject

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

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

func (*GitLFSRepository) GetCondition

func (mg *GitLFSRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this GitLFSRepository.

func (*GitLFSRepository) GetConnectionDetailsMapping

func (tr *GitLFSRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this GitLFSRepository

func (*GitLFSRepository) GetDeletionPolicy

func (mg *GitLFSRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this GitLFSRepository.

func (*GitLFSRepository) GetID

func (tr *GitLFSRepository) GetID() string

GetID returns ID of underlying Terraform resource of this GitLFSRepository

func (*GitLFSRepository) GetInitParameters

func (tr *GitLFSRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this GitLFSRepository

func (*GitLFSRepository) GetManagementPolicies

func (mg *GitLFSRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this GitLFSRepository.

func (*GitLFSRepository) GetMergedParameters

func (tr *GitLFSRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this GitLFSRepository

func (*GitLFSRepository) GetObservation

func (tr *GitLFSRepository) GetObservation() (map[string]any, error)

GetObservation of this GitLFSRepository

func (*GitLFSRepository) GetParameters

func (tr *GitLFSRepository) GetParameters() (map[string]any, error)

GetParameters of this GitLFSRepository

func (*GitLFSRepository) GetProviderConfigReference

func (mg *GitLFSRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this GitLFSRepository.

func (*GitLFSRepository) GetTerraformResourceType

func (mg *GitLFSRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GitLFSRepository

func (*GitLFSRepository) GetTerraformSchemaVersion

func (tr *GitLFSRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GitLFSRepository) GetWriteConnectionSecretToReference

func (mg *GitLFSRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this GitLFSRepository.

func (*GitLFSRepository) Hub

func (tr *GitLFSRepository) Hub()

Hub marks this type as a conversion hub.

func (*GitLFSRepository) LateInitialize

func (tr *GitLFSRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this GitLFSRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*GitLFSRepository) SetConditions

func (mg *GitLFSRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this GitLFSRepository.

func (*GitLFSRepository) SetDeletionPolicy

func (mg *GitLFSRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this GitLFSRepository.

func (*GitLFSRepository) SetManagementPolicies

func (mg *GitLFSRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this GitLFSRepository.

func (*GitLFSRepository) SetObservation

func (tr *GitLFSRepository) SetObservation(obs map[string]any) error

SetObservation for this GitLFSRepository

func (*GitLFSRepository) SetParameters

func (tr *GitLFSRepository) SetParameters(params map[string]any) error

SetParameters for this GitLFSRepository

func (*GitLFSRepository) SetProviderConfigReference

func (mg *GitLFSRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this GitLFSRepository.

func (*GitLFSRepository) SetWriteConnectionSecretToReference

func (mg *GitLFSRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this GitLFSRepository.

type GitLFSRepositoryContentSynchronisationInitParameters

type GitLFSRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GitLFSRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*GitLFSRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type GitLFSRepositoryContentSynchronisationObservation

type GitLFSRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GitLFSRepositoryContentSynchronisationObservation) DeepCopy

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

func (*GitLFSRepositoryContentSynchronisationObservation) DeepCopyInto

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

type GitLFSRepositoryContentSynchronisationParameters

type GitLFSRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GitLFSRepositoryContentSynchronisationParameters) DeepCopy

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

func (*GitLFSRepositoryContentSynchronisationParameters) DeepCopyInto

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

type GitLFSRepositoryInitParameters

type GitLFSRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GitLFSRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GitLFSRepositoryInitParameters) DeepCopy

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

func (*GitLFSRepositoryInitParameters) DeepCopyInto

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

type GitLFSRepositoryList

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

GitLFSRepositoryList contains a list of GitLFSRepositorys

func (*GitLFSRepositoryList) DeepCopy

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

func (*GitLFSRepositoryList) DeepCopyInto

func (in *GitLFSRepositoryList) DeepCopyInto(out *GitLFSRepositoryList)

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

func (*GitLFSRepositoryList) DeepCopyObject

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

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

func (*GitLFSRepositoryList) GetItems

func (l *GitLFSRepositoryList) GetItems() []resource.Managed

GetItems of this GitLFSRepositoryList.

type GitLFSRepositoryObservation

type GitLFSRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GitLFSRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GitLFSRepositoryObservation) DeepCopy

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

func (*GitLFSRepositoryObservation) DeepCopyInto

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

type GitLFSRepositoryParameters

type GitLFSRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []GitLFSRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GitLFSRepositoryParameters) DeepCopy

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

func (*GitLFSRepositoryParameters) DeepCopyInto

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

type GitLFSRepositorySpec

type GitLFSRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     GitLFSRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider GitLFSRepositoryInitParameters `json:"initProvider,omitempty"`
}

GitLFSRepositorySpec defines the desired state of GitLFSRepository

func (*GitLFSRepositorySpec) DeepCopy

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

func (*GitLFSRepositorySpec) DeepCopyInto

func (in *GitLFSRepositorySpec) DeepCopyInto(out *GitLFSRepositorySpec)

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

type GitLFSRepositoryStatus

type GitLFSRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        GitLFSRepositoryObservation `json:"atProvider,omitempty"`
}

GitLFSRepositoryStatus defines the observed state of GitLFSRepository.

func (*GitLFSRepositoryStatus) DeepCopy

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

func (*GitLFSRepositoryStatus) DeepCopyInto

func (in *GitLFSRepositoryStatus) DeepCopyInto(out *GitLFSRepositoryStatus)

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

type GoRepository

type GoRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   GoRepositorySpec   `json:"spec"`
	Status GoRepositoryStatus `json:"status,omitempty"`
}

GoRepository is the Schema for the GoRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*GoRepository) DeepCopy

func (in *GoRepository) DeepCopy() *GoRepository

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

func (*GoRepository) DeepCopyInto

func (in *GoRepository) DeepCopyInto(out *GoRepository)

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

func (*GoRepository) DeepCopyObject

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

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

func (*GoRepository) GetCondition

func (mg *GoRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this GoRepository.

func (*GoRepository) GetConnectionDetailsMapping

func (tr *GoRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this GoRepository

func (*GoRepository) GetDeletionPolicy

func (mg *GoRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this GoRepository.

func (*GoRepository) GetID

func (tr *GoRepository) GetID() string

GetID returns ID of underlying Terraform resource of this GoRepository

func (*GoRepository) GetInitParameters

func (tr *GoRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this GoRepository

func (*GoRepository) GetManagementPolicies

func (mg *GoRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this GoRepository.

func (*GoRepository) GetMergedParameters

func (tr *GoRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this GoRepository

func (*GoRepository) GetObservation

func (tr *GoRepository) GetObservation() (map[string]any, error)

GetObservation of this GoRepository

func (*GoRepository) GetParameters

func (tr *GoRepository) GetParameters() (map[string]any, error)

GetParameters of this GoRepository

func (*GoRepository) GetProviderConfigReference

func (mg *GoRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this GoRepository.

func (*GoRepository) GetTerraformResourceType

func (mg *GoRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GoRepository

func (*GoRepository) GetTerraformSchemaVersion

func (tr *GoRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GoRepository) GetWriteConnectionSecretToReference

func (mg *GoRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this GoRepository.

func (*GoRepository) Hub

func (tr *GoRepository) Hub()

Hub marks this type as a conversion hub.

func (*GoRepository) LateInitialize

func (tr *GoRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this GoRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*GoRepository) SetConditions

func (mg *GoRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this GoRepository.

func (*GoRepository) SetDeletionPolicy

func (mg *GoRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this GoRepository.

func (*GoRepository) SetManagementPolicies

func (mg *GoRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this GoRepository.

func (*GoRepository) SetObservation

func (tr *GoRepository) SetObservation(obs map[string]any) error

SetObservation for this GoRepository

func (*GoRepository) SetParameters

func (tr *GoRepository) SetParameters(params map[string]any) error

SetParameters for this GoRepository

func (*GoRepository) SetProviderConfigReference

func (mg *GoRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this GoRepository.

func (*GoRepository) SetWriteConnectionSecretToReference

func (mg *GoRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this GoRepository.

type GoRepositoryContentSynchronisationInitParameters

type GoRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GoRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*GoRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type GoRepositoryContentSynchronisationObservation

type GoRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GoRepositoryContentSynchronisationObservation) DeepCopy

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

func (*GoRepositoryContentSynchronisationObservation) DeepCopyInto

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

type GoRepositoryContentSynchronisationParameters

type GoRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GoRepositoryContentSynchronisationParameters) DeepCopy

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

func (*GoRepositoryContentSynchronisationParameters) DeepCopyInto

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

type GoRepositoryInitParameters

type GoRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GoRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub (`GITHUB`), GitHub Enterprise (`GITHUBENTERPRISE`), BitBucket Cloud (`BITBUCKET`), BitBucket Server (`STASH`), GitLab (`GITLAB`), or a remote Artifactory instance (`ARTIFACTORY`). Default value is `ARTIFACTORY`.
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GoRepositoryInitParameters) DeepCopy

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

func (*GoRepositoryInitParameters) DeepCopyInto

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

type GoRepositoryList

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

GoRepositoryList contains a list of GoRepositorys

func (*GoRepositoryList) DeepCopy

func (in *GoRepositoryList) DeepCopy() *GoRepositoryList

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

func (*GoRepositoryList) DeepCopyInto

func (in *GoRepositoryList) DeepCopyInto(out *GoRepositoryList)

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

func (*GoRepositoryList) DeepCopyObject

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

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

func (*GoRepositoryList) GetItems

func (l *GoRepositoryList) GetItems() []resource.Managed

GetItems of this GoRepositoryList.

type GoRepositoryObservation

type GoRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GoRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub (`GITHUB`), GitHub Enterprise (`GITHUBENTERPRISE`), BitBucket Cloud (`BITBUCKET`), BitBucket Server (`STASH`), GitLab (`GITLAB`), or a remote Artifactory instance (`ARTIFACTORY`). Default value is `ARTIFACTORY`.
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GoRepositoryObservation) DeepCopy

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

func (*GoRepositoryObservation) DeepCopyInto

func (in *GoRepositoryObservation) DeepCopyInto(out *GoRepositoryObservation)

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

type GoRepositoryParameters

type GoRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []GoRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// When set, if query params are included in the request to Artifactory, they will be passed on to the remote repository.
	// +kubebuilder:validation:Optional
	PropagateQueryParams *bool `json:"propagateQueryParams,omitempty" tf:"propagate_query_params,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// When set to `true`, Artifactory retrieves the SHA256 from the remote server if it is not cached in the remote repo.
	// +kubebuilder:validation:Optional
	RetrieveSha256FromServer *bool `json:"retrieveSha256FromServer,omitempty" tf:"retrieve_sha256_from_server,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub (`GITHUB`), GitHub Enterprise (`GITHUBENTERPRISE`), BitBucket Cloud (`BITBUCKET`), BitBucket Server (`STASH`), GitLab (`GITLAB`), or a remote Artifactory instance (`ARTIFACTORY`). Default value is `ARTIFACTORY`.
	// +kubebuilder:validation:Optional
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GoRepositoryParameters) DeepCopy

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

func (*GoRepositoryParameters) DeepCopyInto

func (in *GoRepositoryParameters) DeepCopyInto(out *GoRepositoryParameters)

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

type GoRepositorySpec

type GoRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     GoRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider GoRepositoryInitParameters `json:"initProvider,omitempty"`
}

GoRepositorySpec defines the desired state of GoRepository

func (*GoRepositorySpec) DeepCopy

func (in *GoRepositorySpec) DeepCopy() *GoRepositorySpec

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

func (*GoRepositorySpec) DeepCopyInto

func (in *GoRepositorySpec) DeepCopyInto(out *GoRepositorySpec)

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

type GoRepositoryStatus

type GoRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        GoRepositoryObservation `json:"atProvider,omitempty"`
}

GoRepositoryStatus defines the observed state of GoRepository.

func (*GoRepositoryStatus) DeepCopy

func (in *GoRepositoryStatus) DeepCopy() *GoRepositoryStatus

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

func (*GoRepositoryStatus) DeepCopyInto

func (in *GoRepositoryStatus) DeepCopyInto(out *GoRepositoryStatus)

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

type GradleRepository

type GradleRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   GradleRepositorySpec   `json:"spec"`
	Status GradleRepositoryStatus `json:"status,omitempty"`
}

GradleRepository is the Schema for the GradleRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*GradleRepository) DeepCopy

func (in *GradleRepository) DeepCopy() *GradleRepository

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

func (*GradleRepository) DeepCopyInto

func (in *GradleRepository) DeepCopyInto(out *GradleRepository)

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

func (*GradleRepository) DeepCopyObject

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

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

func (*GradleRepository) GetCondition

func (mg *GradleRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this GradleRepository.

func (*GradleRepository) GetConnectionDetailsMapping

func (tr *GradleRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this GradleRepository

func (*GradleRepository) GetDeletionPolicy

func (mg *GradleRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this GradleRepository.

func (*GradleRepository) GetID

func (tr *GradleRepository) GetID() string

GetID returns ID of underlying Terraform resource of this GradleRepository

func (*GradleRepository) GetInitParameters

func (tr *GradleRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this GradleRepository

func (*GradleRepository) GetManagementPolicies

func (mg *GradleRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this GradleRepository.

func (*GradleRepository) GetMergedParameters

func (tr *GradleRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this GradleRepository

func (*GradleRepository) GetObservation

func (tr *GradleRepository) GetObservation() (map[string]any, error)

GetObservation of this GradleRepository

func (*GradleRepository) GetParameters

func (tr *GradleRepository) GetParameters() (map[string]any, error)

GetParameters of this GradleRepository

func (*GradleRepository) GetProviderConfigReference

func (mg *GradleRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this GradleRepository.

func (*GradleRepository) GetTerraformResourceType

func (mg *GradleRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GradleRepository

func (*GradleRepository) GetTerraformSchemaVersion

func (tr *GradleRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GradleRepository) GetWriteConnectionSecretToReference

func (mg *GradleRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this GradleRepository.

func (*GradleRepository) Hub

func (tr *GradleRepository) Hub()

Hub marks this type as a conversion hub.

func (*GradleRepository) LateInitialize

func (tr *GradleRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this GradleRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*GradleRepository) SetConditions

func (mg *GradleRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this GradleRepository.

func (*GradleRepository) SetDeletionPolicy

func (mg *GradleRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this GradleRepository.

func (*GradleRepository) SetManagementPolicies

func (mg *GradleRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this GradleRepository.

func (*GradleRepository) SetObservation

func (tr *GradleRepository) SetObservation(obs map[string]any) error

SetObservation for this GradleRepository

func (*GradleRepository) SetParameters

func (tr *GradleRepository) SetParameters(params map[string]any) error

SetParameters for this GradleRepository

func (*GradleRepository) SetProviderConfigReference

func (mg *GradleRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this GradleRepository.

func (*GradleRepository) SetWriteConnectionSecretToReference

func (mg *GradleRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this GradleRepository.

type GradleRepositoryContentSynchronisationInitParameters

type GradleRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GradleRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*GradleRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type GradleRepositoryContentSynchronisationObservation

type GradleRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GradleRepositoryContentSynchronisationObservation) DeepCopy

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

func (*GradleRepositoryContentSynchronisationObservation) DeepCopyInto

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

type GradleRepositoryContentSynchronisationParameters

type GradleRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*GradleRepositoryContentSynchronisationParameters) DeepCopy

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

func (*GradleRepositoryContentSynchronisationParameters) DeepCopyInto

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

type GradleRepositoryInitParameters

type GradleRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GradleRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GradleRepositoryInitParameters) DeepCopy

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

func (*GradleRepositoryInitParameters) DeepCopyInto

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

type GradleRepositoryList

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

GradleRepositoryList contains a list of GradleRepositorys

func (*GradleRepositoryList) DeepCopy

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

func (*GradleRepositoryList) DeepCopyInto

func (in *GradleRepositoryList) DeepCopyInto(out *GradleRepositoryList)

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

func (*GradleRepositoryList) DeepCopyObject

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

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

func (*GradleRepositoryList) GetItems

func (l *GradleRepositoryList) GetItems() []resource.Managed

GetItems of this GradleRepositoryList.

type GradleRepositoryObservation

type GradleRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []GradleRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GradleRepositoryObservation) DeepCopy

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

func (*GradleRepositoryObservation) DeepCopyInto

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

type GradleRepositoryParameters

type GradleRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []GradleRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	// +kubebuilder:validation:Optional
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	// +kubebuilder:validation:Optional
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	// +kubebuilder:validation:Optional
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	// +kubebuilder:validation:Optional
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*GradleRepositoryParameters) DeepCopy

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

func (*GradleRepositoryParameters) DeepCopyInto

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

type GradleRepositorySpec

type GradleRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     GradleRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider GradleRepositoryInitParameters `json:"initProvider,omitempty"`
}

GradleRepositorySpec defines the desired state of GradleRepository

func (*GradleRepositorySpec) DeepCopy

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

func (*GradleRepositorySpec) DeepCopyInto

func (in *GradleRepositorySpec) DeepCopyInto(out *GradleRepositorySpec)

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

type GradleRepositoryStatus

type GradleRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        GradleRepositoryObservation `json:"atProvider,omitempty"`
}

GradleRepositoryStatus defines the observed state of GradleRepository.

func (*GradleRepositoryStatus) DeepCopy

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

func (*GradleRepositoryStatus) DeepCopyInto

func (in *GradleRepositoryStatus) DeepCopyInto(out *GradleRepositoryStatus)

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

type HelmOCIRepository

type HelmOCIRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   HelmOCIRepositorySpec   `json:"spec"`
	Status HelmOCIRepositoryStatus `json:"status,omitempty"`
}

HelmOCIRepository is the Schema for the HelmOCIRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*HelmOCIRepository) DeepCopy

func (in *HelmOCIRepository) DeepCopy() *HelmOCIRepository

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

func (*HelmOCIRepository) DeepCopyInto

func (in *HelmOCIRepository) DeepCopyInto(out *HelmOCIRepository)

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

func (*HelmOCIRepository) DeepCopyObject

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

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

func (*HelmOCIRepository) GetCondition

func (mg *HelmOCIRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this HelmOCIRepository.

func (*HelmOCIRepository) GetConnectionDetailsMapping

func (tr *HelmOCIRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this HelmOCIRepository

func (*HelmOCIRepository) GetDeletionPolicy

func (mg *HelmOCIRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this HelmOCIRepository.

func (*HelmOCIRepository) GetID

func (tr *HelmOCIRepository) GetID() string

GetID returns ID of underlying Terraform resource of this HelmOCIRepository

func (*HelmOCIRepository) GetInitParameters

func (tr *HelmOCIRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this HelmOCIRepository

func (*HelmOCIRepository) GetManagementPolicies

func (mg *HelmOCIRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this HelmOCIRepository.

func (*HelmOCIRepository) GetMergedParameters

func (tr *HelmOCIRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this HelmOCIRepository

func (*HelmOCIRepository) GetObservation

func (tr *HelmOCIRepository) GetObservation() (map[string]any, error)

GetObservation of this HelmOCIRepository

func (*HelmOCIRepository) GetParameters

func (tr *HelmOCIRepository) GetParameters() (map[string]any, error)

GetParameters of this HelmOCIRepository

func (*HelmOCIRepository) GetProviderConfigReference

func (mg *HelmOCIRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this HelmOCIRepository.

func (*HelmOCIRepository) GetTerraformResourceType

func (mg *HelmOCIRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this HelmOCIRepository

func (*HelmOCIRepository) GetTerraformSchemaVersion

func (tr *HelmOCIRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*HelmOCIRepository) GetWriteConnectionSecretToReference

func (mg *HelmOCIRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this HelmOCIRepository.

func (*HelmOCIRepository) Hub

func (tr *HelmOCIRepository) Hub()

Hub marks this type as a conversion hub.

func (*HelmOCIRepository) LateInitialize

func (tr *HelmOCIRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this HelmOCIRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*HelmOCIRepository) SetConditions

func (mg *HelmOCIRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this HelmOCIRepository.

func (*HelmOCIRepository) SetDeletionPolicy

func (mg *HelmOCIRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this HelmOCIRepository.

func (*HelmOCIRepository) SetManagementPolicies

func (mg *HelmOCIRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this HelmOCIRepository.

func (*HelmOCIRepository) SetObservation

func (tr *HelmOCIRepository) SetObservation(obs map[string]any) error

SetObservation for this HelmOCIRepository

func (*HelmOCIRepository) SetParameters

func (tr *HelmOCIRepository) SetParameters(params map[string]any) error

SetParameters for this HelmOCIRepository

func (*HelmOCIRepository) SetProviderConfigReference

func (mg *HelmOCIRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this HelmOCIRepository.

func (*HelmOCIRepository) SetWriteConnectionSecretToReference

func (mg *HelmOCIRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this HelmOCIRepository.

type HelmOCIRepositoryContentSynchronisationInitParameters

type HelmOCIRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HelmOCIRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*HelmOCIRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type HelmOCIRepositoryContentSynchronisationObservation

type HelmOCIRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HelmOCIRepositoryContentSynchronisationObservation) DeepCopy

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

func (*HelmOCIRepositoryContentSynchronisationObservation) DeepCopyInto

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

type HelmOCIRepositoryContentSynchronisationParameters

type HelmOCIRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HelmOCIRepositoryContentSynchronisationParameters) DeepCopy

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

func (*HelmOCIRepositoryContentSynchronisationParameters) DeepCopyInto

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

type HelmOCIRepositoryInitParameters

type HelmOCIRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []HelmOCIRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, external dependencies are rewritten. External Dependency Rewrite in the UI.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// Optional include patterns to match external URLs. Ant-style path expressions are supported (*, **, ?). For example, specifying `**/github.com/**` will only allow downloading foreign layers from github.com host.By default, this is set to '**' in the UI, which means that foreign layers may be downloaded from any external host.This attribute must be set together with `external_dependencies_enabled = true`
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HelmOCIRepositoryInitParameters) DeepCopy

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

func (*HelmOCIRepositoryInitParameters) DeepCopyInto

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

type HelmOCIRepositoryList

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

HelmOCIRepositoryList contains a list of HelmOCIRepositorys

func (*HelmOCIRepositoryList) DeepCopy

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

func (*HelmOCIRepositoryList) DeepCopyInto

func (in *HelmOCIRepositoryList) DeepCopyInto(out *HelmOCIRepositoryList)

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

func (*HelmOCIRepositoryList) DeepCopyObject

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

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

func (*HelmOCIRepositoryList) GetItems

func (l *HelmOCIRepositoryList) GetItems() []resource.Managed

GetItems of this HelmOCIRepositoryList.

type HelmOCIRepositoryObservation

type HelmOCIRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []HelmOCIRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, external dependencies are rewritten. External Dependency Rewrite in the UI.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// Optional include patterns to match external URLs. Ant-style path expressions are supported (*, **, ?). For example, specifying `**/github.com/**` will only allow downloading foreign layers from github.com host.By default, this is set to '**' in the UI, which means that foreign layers may be downloaded from any external host.This attribute must be set together with `external_dependencies_enabled = true`
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HelmOCIRepositoryObservation) DeepCopy

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

func (*HelmOCIRepositoryObservation) DeepCopyInto

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

type HelmOCIRepositoryParameters

type HelmOCIRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []HelmOCIRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	// +kubebuilder:validation:Optional
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, external dependencies are rewritten. External Dependency Rewrite in the UI.
	// +kubebuilder:validation:Optional
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// Optional include patterns to match external URLs. Ant-style path expressions are supported (*, **, ?). For example, specifying `**/github.com/**` will only allow downloading foreign layers from github.com host.By default, this is set to '**' in the UI, which means that foreign layers may be downloaded from any external host.This attribute must be set together with `external_dependencies_enabled = true`
	// +kubebuilder:validation:Optional
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	// +kubebuilder:validation:Optional
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HelmOCIRepositoryParameters) DeepCopy

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

func (*HelmOCIRepositoryParameters) DeepCopyInto

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

type HelmOCIRepositorySpec

type HelmOCIRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     HelmOCIRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider HelmOCIRepositoryInitParameters `json:"initProvider,omitempty"`
}

HelmOCIRepositorySpec defines the desired state of HelmOCIRepository

func (*HelmOCIRepositorySpec) DeepCopy

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

func (*HelmOCIRepositorySpec) DeepCopyInto

func (in *HelmOCIRepositorySpec) DeepCopyInto(out *HelmOCIRepositorySpec)

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

type HelmOCIRepositoryStatus

type HelmOCIRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        HelmOCIRepositoryObservation `json:"atProvider,omitempty"`
}

HelmOCIRepositoryStatus defines the observed state of HelmOCIRepository.

func (*HelmOCIRepositoryStatus) DeepCopy

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

func (*HelmOCIRepositoryStatus) DeepCopyInto

func (in *HelmOCIRepositoryStatus) DeepCopyInto(out *HelmOCIRepositoryStatus)

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

type HelmRepository

type HelmRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   HelmRepositorySpec   `json:"spec"`
	Status HelmRepositoryStatus `json:"status,omitempty"`
}

HelmRepository is the Schema for the HelmRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*HelmRepository) DeepCopy

func (in *HelmRepository) DeepCopy() *HelmRepository

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

func (*HelmRepository) DeepCopyInto

func (in *HelmRepository) DeepCopyInto(out *HelmRepository)

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

func (*HelmRepository) DeepCopyObject

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

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

func (*HelmRepository) GetCondition

func (mg *HelmRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this HelmRepository.

func (*HelmRepository) GetConnectionDetailsMapping

func (tr *HelmRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this HelmRepository

func (*HelmRepository) GetDeletionPolicy

func (mg *HelmRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this HelmRepository.

func (*HelmRepository) GetID

func (tr *HelmRepository) GetID() string

GetID returns ID of underlying Terraform resource of this HelmRepository

func (*HelmRepository) GetInitParameters

func (tr *HelmRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this HelmRepository

func (*HelmRepository) GetManagementPolicies

func (mg *HelmRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this HelmRepository.

func (*HelmRepository) GetMergedParameters

func (tr *HelmRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this HelmRepository

func (*HelmRepository) GetObservation

func (tr *HelmRepository) GetObservation() (map[string]any, error)

GetObservation of this HelmRepository

func (*HelmRepository) GetParameters

func (tr *HelmRepository) GetParameters() (map[string]any, error)

GetParameters of this HelmRepository

func (*HelmRepository) GetProviderConfigReference

func (mg *HelmRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this HelmRepository.

func (*HelmRepository) GetTerraformResourceType

func (mg *HelmRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this HelmRepository

func (*HelmRepository) GetTerraformSchemaVersion

func (tr *HelmRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*HelmRepository) GetWriteConnectionSecretToReference

func (mg *HelmRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this HelmRepository.

func (*HelmRepository) Hub

func (tr *HelmRepository) Hub()

Hub marks this type as a conversion hub.

func (*HelmRepository) LateInitialize

func (tr *HelmRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this HelmRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*HelmRepository) SetConditions

func (mg *HelmRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this HelmRepository.

func (*HelmRepository) SetDeletionPolicy

func (mg *HelmRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this HelmRepository.

func (*HelmRepository) SetManagementPolicies

func (mg *HelmRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this HelmRepository.

func (*HelmRepository) SetObservation

func (tr *HelmRepository) SetObservation(obs map[string]any) error

SetObservation for this HelmRepository

func (*HelmRepository) SetParameters

func (tr *HelmRepository) SetParameters(params map[string]any) error

SetParameters for this HelmRepository

func (*HelmRepository) SetProviderConfigReference

func (mg *HelmRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this HelmRepository.

func (*HelmRepository) SetWriteConnectionSecretToReference

func (mg *HelmRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this HelmRepository.

type HelmRepositoryContentSynchronisationInitParameters

type HelmRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HelmRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*HelmRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type HelmRepositoryContentSynchronisationObservation

type HelmRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HelmRepositoryContentSynchronisationObservation) DeepCopy

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

func (*HelmRepositoryContentSynchronisationObservation) DeepCopyInto

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

type HelmRepositoryContentSynchronisationParameters

type HelmRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HelmRepositoryContentSynchronisationParameters) DeepCopy

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

func (*HelmRepositoryContentSynchronisationParameters) DeepCopyInto

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

type HelmRepositoryInitParameters

type HelmRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []HelmRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, external dependencies are rewritten. External Dependency Rewrite in the UI.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// An allow list of Ant-style path patterns that determine which remote VCS roots Artifactory will follow to download remote modules from, when presented with 'go-import' meta tags in the remote repository response.Default value in UI is empty. This attribute must be set together with `external_dependencies_enabled = true`
	// +listType=set
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// Base URL for the translation of chart source URLs in the index.yaml of virtual repos. Artifactory will only translate URLs matching the index.yamls hostname or URLs starting with this base url. Support http/https/oci protocol scheme.
	HelmChartsBaseURL *string `json:"helmChartsBaseUrl,omitempty" tf:"helm_charts_base_url,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HelmRepositoryInitParameters) DeepCopy

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

func (*HelmRepositoryInitParameters) DeepCopyInto

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

type HelmRepositoryList

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

HelmRepositoryList contains a list of HelmRepositorys

func (*HelmRepositoryList) DeepCopy

func (in *HelmRepositoryList) DeepCopy() *HelmRepositoryList

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

func (*HelmRepositoryList) DeepCopyInto

func (in *HelmRepositoryList) DeepCopyInto(out *HelmRepositoryList)

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

func (*HelmRepositoryList) DeepCopyObject

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

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

func (*HelmRepositoryList) GetItems

func (l *HelmRepositoryList) GetItems() []resource.Managed

GetItems of this HelmRepositoryList.

type HelmRepositoryObservation

type HelmRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []HelmRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, external dependencies are rewritten. External Dependency Rewrite in the UI.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// An allow list of Ant-style path patterns that determine which remote VCS roots Artifactory will follow to download remote modules from, when presented with 'go-import' meta tags in the remote repository response.Default value in UI is empty. This attribute must be set together with `external_dependencies_enabled = true`
	// +listType=set
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// Base URL for the translation of chart source URLs in the index.yaml of virtual repos. Artifactory will only translate URLs matching the index.yamls hostname or URLs starting with this base url. Support http/https/oci protocol scheme.
	HelmChartsBaseURL *string `json:"helmChartsBaseUrl,omitempty" tf:"helm_charts_base_url,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HelmRepositoryObservation) DeepCopy

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

func (*HelmRepositoryObservation) DeepCopyInto

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

type HelmRepositoryParameters

type HelmRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []HelmRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, external dependencies are rewritten. External Dependency Rewrite in the UI.
	// +kubebuilder:validation:Optional
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// An allow list of Ant-style path patterns that determine which remote VCS roots Artifactory will follow to download remote modules from, when presented with 'go-import' meta tags in the remote repository response.Default value in UI is empty. This attribute must be set together with `external_dependencies_enabled = true`
	// +kubebuilder:validation:Optional
	// +listType=set
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// Base URL for the translation of chart source URLs in the index.yaml of virtual repos. Artifactory will only translate URLs matching the index.yamls hostname or URLs starting with this base url. Support http/https/oci protocol scheme.
	// +kubebuilder:validation:Optional
	HelmChartsBaseURL *string `json:"helmChartsBaseUrl,omitempty" tf:"helm_charts_base_url,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HelmRepositoryParameters) DeepCopy

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

func (*HelmRepositoryParameters) DeepCopyInto

func (in *HelmRepositoryParameters) DeepCopyInto(out *HelmRepositoryParameters)

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

type HelmRepositorySpec

type HelmRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     HelmRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider HelmRepositoryInitParameters `json:"initProvider,omitempty"`
}

HelmRepositorySpec defines the desired state of HelmRepository

func (*HelmRepositorySpec) DeepCopy

func (in *HelmRepositorySpec) DeepCopy() *HelmRepositorySpec

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

func (*HelmRepositorySpec) DeepCopyInto

func (in *HelmRepositorySpec) DeepCopyInto(out *HelmRepositorySpec)

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

type HelmRepositoryStatus

type HelmRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        HelmRepositoryObservation `json:"atProvider,omitempty"`
}

HelmRepositoryStatus defines the observed state of HelmRepository.

func (*HelmRepositoryStatus) DeepCopy

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

func (*HelmRepositoryStatus) DeepCopyInto

func (in *HelmRepositoryStatus) DeepCopyInto(out *HelmRepositoryStatus)

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

type HuggingFaceMLRepository

type HuggingFaceMLRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              HuggingFaceMLRepositorySpec   `json:"spec"`
	Status            HuggingFaceMLRepositoryStatus `json:"status,omitempty"`
}

HuggingFaceMLRepository is the Schema for the HuggingFaceMLRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*HuggingFaceMLRepository) DeepCopy

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

func (*HuggingFaceMLRepository) DeepCopyInto

func (in *HuggingFaceMLRepository) DeepCopyInto(out *HuggingFaceMLRepository)

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

func (*HuggingFaceMLRepository) DeepCopyObject

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

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

func (*HuggingFaceMLRepository) GetCondition

GetCondition of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) GetConnectionDetailsMapping

func (tr *HuggingFaceMLRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetDeletionPolicy

func (mg *HuggingFaceMLRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) GetID

func (tr *HuggingFaceMLRepository) GetID() string

GetID returns ID of underlying Terraform resource of this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetInitParameters

func (tr *HuggingFaceMLRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetManagementPolicies

func (mg *HuggingFaceMLRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) GetMergedParameters

func (tr *HuggingFaceMLRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetObservation

func (tr *HuggingFaceMLRepository) GetObservation() (map[string]any, error)

GetObservation of this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetParameters

func (tr *HuggingFaceMLRepository) GetParameters() (map[string]any, error)

GetParameters of this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetProviderConfigReference

func (mg *HuggingFaceMLRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) GetTerraformResourceType

func (mg *HuggingFaceMLRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) GetTerraformSchemaVersion

func (tr *HuggingFaceMLRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*HuggingFaceMLRepository) GetWriteConnectionSecretToReference

func (mg *HuggingFaceMLRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) Hub

func (tr *HuggingFaceMLRepository) Hub()

Hub marks this type as a conversion hub.

func (*HuggingFaceMLRepository) LateInitialize

func (tr *HuggingFaceMLRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this HuggingFaceMLRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*HuggingFaceMLRepository) SetConditions

func (mg *HuggingFaceMLRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) SetDeletionPolicy

func (mg *HuggingFaceMLRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) SetManagementPolicies

func (mg *HuggingFaceMLRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) SetObservation

func (tr *HuggingFaceMLRepository) SetObservation(obs map[string]any) error

SetObservation for this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) SetParameters

func (tr *HuggingFaceMLRepository) SetParameters(params map[string]any) error

SetParameters for this HuggingFaceMLRepository

func (*HuggingFaceMLRepository) SetProviderConfigReference

func (mg *HuggingFaceMLRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this HuggingFaceMLRepository.

func (*HuggingFaceMLRepository) SetWriteConnectionSecretToReference

func (mg *HuggingFaceMLRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this HuggingFaceMLRepository.

type HuggingFaceMLRepositoryContentSynchronisationInitParameters

type HuggingFaceMLRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HuggingFaceMLRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*HuggingFaceMLRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type HuggingFaceMLRepositoryContentSynchronisationObservation

type HuggingFaceMLRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HuggingFaceMLRepositoryContentSynchronisationObservation) DeepCopy

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

func (*HuggingFaceMLRepositoryContentSynchronisationObservation) DeepCopyInto

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

type HuggingFaceMLRepositoryContentSynchronisationParameters

type HuggingFaceMLRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*HuggingFaceMLRepositoryContentSynchronisationParameters) DeepCopy

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

func (*HuggingFaceMLRepositoryContentSynchronisationParameters) DeepCopyInto

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

type HuggingFaceMLRepositoryInitParameters

type HuggingFaceMLRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []HuggingFaceMLRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://huggingface.co'
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HuggingFaceMLRepositoryInitParameters) DeepCopy

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

func (*HuggingFaceMLRepositoryInitParameters) DeepCopyInto

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

type HuggingFaceMLRepositoryList

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

HuggingFaceMLRepositoryList contains a list of HuggingFaceMLRepositorys

func (*HuggingFaceMLRepositoryList) DeepCopy

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

func (*HuggingFaceMLRepositoryList) DeepCopyInto

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

func (*HuggingFaceMLRepositoryList) DeepCopyObject

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

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

func (*HuggingFaceMLRepositoryList) GetItems

GetItems of this HuggingFaceMLRepositoryList.

type HuggingFaceMLRepositoryObservation

type HuggingFaceMLRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []HuggingFaceMLRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://huggingface.co'
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HuggingFaceMLRepositoryObservation) DeepCopy

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

func (*HuggingFaceMLRepositoryObservation) DeepCopyInto

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

type HuggingFaceMLRepositoryParameters

type HuggingFaceMLRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []HuggingFaceMLRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://huggingface.co'
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*HuggingFaceMLRepositoryParameters) DeepCopy

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

func (*HuggingFaceMLRepositoryParameters) DeepCopyInto

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

type HuggingFaceMLRepositorySpec

type HuggingFaceMLRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     HuggingFaceMLRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider HuggingFaceMLRepositoryInitParameters `json:"initProvider,omitempty"`
}

HuggingFaceMLRepositorySpec defines the desired state of HuggingFaceMLRepository

func (*HuggingFaceMLRepositorySpec) DeepCopy

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

func (*HuggingFaceMLRepositorySpec) DeepCopyInto

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

type HuggingFaceMLRepositoryStatus

type HuggingFaceMLRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        HuggingFaceMLRepositoryObservation `json:"atProvider,omitempty"`
}

HuggingFaceMLRepositoryStatus defines the observed state of HuggingFaceMLRepository.

func (*HuggingFaceMLRepositoryStatus) DeepCopy

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

func (*HuggingFaceMLRepositoryStatus) DeepCopyInto

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

type IvyRepository

type IvyRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   IvyRepositorySpec   `json:"spec"`
	Status IvyRepositoryStatus `json:"status,omitempty"`
}

IvyRepository is the Schema for the IvyRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*IvyRepository) DeepCopy

func (in *IvyRepository) DeepCopy() *IvyRepository

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

func (*IvyRepository) DeepCopyInto

func (in *IvyRepository) DeepCopyInto(out *IvyRepository)

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

func (*IvyRepository) DeepCopyObject

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

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

func (*IvyRepository) GetCondition

func (mg *IvyRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this IvyRepository.

func (*IvyRepository) GetConnectionDetailsMapping

func (tr *IvyRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this IvyRepository

func (*IvyRepository) GetDeletionPolicy

func (mg *IvyRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this IvyRepository.

func (*IvyRepository) GetID

func (tr *IvyRepository) GetID() string

GetID returns ID of underlying Terraform resource of this IvyRepository

func (*IvyRepository) GetInitParameters

func (tr *IvyRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this IvyRepository

func (*IvyRepository) GetManagementPolicies

func (mg *IvyRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this IvyRepository.

func (*IvyRepository) GetMergedParameters

func (tr *IvyRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this IvyRepository

func (*IvyRepository) GetObservation

func (tr *IvyRepository) GetObservation() (map[string]any, error)

GetObservation of this IvyRepository

func (*IvyRepository) GetParameters

func (tr *IvyRepository) GetParameters() (map[string]any, error)

GetParameters of this IvyRepository

func (*IvyRepository) GetProviderConfigReference

func (mg *IvyRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this IvyRepository.

func (*IvyRepository) GetTerraformResourceType

func (mg *IvyRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this IvyRepository

func (*IvyRepository) GetTerraformSchemaVersion

func (tr *IvyRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*IvyRepository) GetWriteConnectionSecretToReference

func (mg *IvyRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this IvyRepository.

func (*IvyRepository) Hub

func (tr *IvyRepository) Hub()

Hub marks this type as a conversion hub.

func (*IvyRepository) LateInitialize

func (tr *IvyRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this IvyRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*IvyRepository) SetConditions

func (mg *IvyRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this IvyRepository.

func (*IvyRepository) SetDeletionPolicy

func (mg *IvyRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this IvyRepository.

func (*IvyRepository) SetManagementPolicies

func (mg *IvyRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this IvyRepository.

func (*IvyRepository) SetObservation

func (tr *IvyRepository) SetObservation(obs map[string]any) error

SetObservation for this IvyRepository

func (*IvyRepository) SetParameters

func (tr *IvyRepository) SetParameters(params map[string]any) error

SetParameters for this IvyRepository

func (*IvyRepository) SetProviderConfigReference

func (mg *IvyRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this IvyRepository.

func (*IvyRepository) SetWriteConnectionSecretToReference

func (mg *IvyRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this IvyRepository.

type IvyRepositoryContentSynchronisationInitParameters

type IvyRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*IvyRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*IvyRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type IvyRepositoryContentSynchronisationObservation

type IvyRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*IvyRepositoryContentSynchronisationObservation) DeepCopy

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

func (*IvyRepositoryContentSynchronisationObservation) DeepCopyInto

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

type IvyRepositoryContentSynchronisationParameters

type IvyRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*IvyRepositoryContentSynchronisationParameters) DeepCopy

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

func (*IvyRepositoryContentSynchronisationParameters) DeepCopyInto

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

type IvyRepositoryInitParameters

type IvyRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []IvyRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*IvyRepositoryInitParameters) DeepCopy

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

func (*IvyRepositoryInitParameters) DeepCopyInto

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

type IvyRepositoryList

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

IvyRepositoryList contains a list of IvyRepositorys

func (*IvyRepositoryList) DeepCopy

func (in *IvyRepositoryList) DeepCopy() *IvyRepositoryList

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

func (*IvyRepositoryList) DeepCopyInto

func (in *IvyRepositoryList) DeepCopyInto(out *IvyRepositoryList)

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

func (*IvyRepositoryList) DeepCopyObject

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

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

func (*IvyRepositoryList) GetItems

func (l *IvyRepositoryList) GetItems() []resource.Managed

GetItems of this IvyRepositoryList.

type IvyRepositoryObservation

type IvyRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []IvyRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*IvyRepositoryObservation) DeepCopy

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

func (*IvyRepositoryObservation) DeepCopyInto

func (in *IvyRepositoryObservation) DeepCopyInto(out *IvyRepositoryObservation)

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

type IvyRepositoryParameters

type IvyRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []IvyRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	// +kubebuilder:validation:Optional
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	// +kubebuilder:validation:Optional
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	// +kubebuilder:validation:Optional
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	// +kubebuilder:validation:Optional
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*IvyRepositoryParameters) DeepCopy

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

func (*IvyRepositoryParameters) DeepCopyInto

func (in *IvyRepositoryParameters) DeepCopyInto(out *IvyRepositoryParameters)

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

type IvyRepositorySpec

type IvyRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     IvyRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider IvyRepositoryInitParameters `json:"initProvider,omitempty"`
}

IvyRepositorySpec defines the desired state of IvyRepository

func (*IvyRepositorySpec) DeepCopy

func (in *IvyRepositorySpec) DeepCopy() *IvyRepositorySpec

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

func (*IvyRepositorySpec) DeepCopyInto

func (in *IvyRepositorySpec) DeepCopyInto(out *IvyRepositorySpec)

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

type IvyRepositoryStatus

type IvyRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        IvyRepositoryObservation `json:"atProvider,omitempty"`
}

IvyRepositoryStatus defines the observed state of IvyRepository.

func (*IvyRepositoryStatus) DeepCopy

func (in *IvyRepositoryStatus) DeepCopy() *IvyRepositoryStatus

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

func (*IvyRepositoryStatus) DeepCopyInto

func (in *IvyRepositoryStatus) DeepCopyInto(out *IvyRepositoryStatus)

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

type MavenRepository

type MavenRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   MavenRepositorySpec   `json:"spec"`
	Status MavenRepositoryStatus `json:"status,omitempty"`
}

MavenRepository is the Schema for the MavenRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*MavenRepository) DeepCopy

func (in *MavenRepository) DeepCopy() *MavenRepository

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

func (*MavenRepository) DeepCopyInto

func (in *MavenRepository) DeepCopyInto(out *MavenRepository)

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

func (*MavenRepository) DeepCopyObject

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

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

func (*MavenRepository) GetCondition

func (mg *MavenRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this MavenRepository.

func (*MavenRepository) GetConnectionDetailsMapping

func (tr *MavenRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this MavenRepository

func (*MavenRepository) GetDeletionPolicy

func (mg *MavenRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this MavenRepository.

func (*MavenRepository) GetID

func (tr *MavenRepository) GetID() string

GetID returns ID of underlying Terraform resource of this MavenRepository

func (*MavenRepository) GetInitParameters

func (tr *MavenRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this MavenRepository

func (*MavenRepository) GetManagementPolicies

func (mg *MavenRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this MavenRepository.

func (*MavenRepository) GetMergedParameters

func (tr *MavenRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this MavenRepository

func (*MavenRepository) GetObservation

func (tr *MavenRepository) GetObservation() (map[string]any, error)

GetObservation of this MavenRepository

func (*MavenRepository) GetParameters

func (tr *MavenRepository) GetParameters() (map[string]any, error)

GetParameters of this MavenRepository

func (*MavenRepository) GetProviderConfigReference

func (mg *MavenRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this MavenRepository.

func (*MavenRepository) GetTerraformResourceType

func (mg *MavenRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this MavenRepository

func (*MavenRepository) GetTerraformSchemaVersion

func (tr *MavenRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*MavenRepository) GetWriteConnectionSecretToReference

func (mg *MavenRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this MavenRepository.

func (*MavenRepository) Hub

func (tr *MavenRepository) Hub()

Hub marks this type as a conversion hub.

func (*MavenRepository) LateInitialize

func (tr *MavenRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this MavenRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*MavenRepository) SetConditions

func (mg *MavenRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this MavenRepository.

func (*MavenRepository) SetDeletionPolicy

func (mg *MavenRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this MavenRepository.

func (*MavenRepository) SetManagementPolicies

func (mg *MavenRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this MavenRepository.

func (*MavenRepository) SetObservation

func (tr *MavenRepository) SetObservation(obs map[string]any) error

SetObservation for this MavenRepository

func (*MavenRepository) SetParameters

func (tr *MavenRepository) SetParameters(params map[string]any) error

SetParameters for this MavenRepository

func (*MavenRepository) SetProviderConfigReference

func (mg *MavenRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this MavenRepository.

func (*MavenRepository) SetWriteConnectionSecretToReference

func (mg *MavenRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this MavenRepository.

type MavenRepositoryContentSynchronisationInitParameters

type MavenRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*MavenRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*MavenRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type MavenRepositoryContentSynchronisationObservation

type MavenRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*MavenRepositoryContentSynchronisationObservation) DeepCopy

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

func (*MavenRepositoryContentSynchronisationObservation) DeepCopyInto

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

type MavenRepositoryContentSynchronisationParameters

type MavenRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*MavenRepositoryContentSynchronisationParameters) DeepCopy

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

func (*MavenRepositoryContentSynchronisationParameters) DeepCopyInto

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

type MavenRepositoryInitParameters

type MavenRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []MavenRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*MavenRepositoryInitParameters) DeepCopy

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

func (*MavenRepositoryInitParameters) DeepCopyInto

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

type MavenRepositoryList

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

MavenRepositoryList contains a list of MavenRepositorys

func (*MavenRepositoryList) DeepCopy

func (in *MavenRepositoryList) DeepCopy() *MavenRepositoryList

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

func (*MavenRepositoryList) DeepCopyInto

func (in *MavenRepositoryList) DeepCopyInto(out *MavenRepositoryList)

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

func (*MavenRepositoryList) DeepCopyObject

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

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

func (*MavenRepositoryList) GetItems

func (l *MavenRepositoryList) GetItems() []resource.Managed

GetItems of this MavenRepositoryList.

type MavenRepositoryObservation

type MavenRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []MavenRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*MavenRepositoryObservation) DeepCopy

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

func (*MavenRepositoryObservation) DeepCopyInto

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

type MavenRepositoryParameters

type MavenRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []MavenRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	// +kubebuilder:validation:Optional
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	// +kubebuilder:validation:Optional
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	// +kubebuilder:validation:Optional
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	// +kubebuilder:validation:Optional
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*MavenRepositoryParameters) DeepCopy

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

func (*MavenRepositoryParameters) DeepCopyInto

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

type MavenRepositorySpec

type MavenRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     MavenRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider MavenRepositoryInitParameters `json:"initProvider,omitempty"`
}

MavenRepositorySpec defines the desired state of MavenRepository

func (*MavenRepositorySpec) DeepCopy

func (in *MavenRepositorySpec) DeepCopy() *MavenRepositorySpec

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

func (*MavenRepositorySpec) DeepCopyInto

func (in *MavenRepositorySpec) DeepCopyInto(out *MavenRepositorySpec)

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

type MavenRepositoryStatus

type MavenRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        MavenRepositoryObservation `json:"atProvider,omitempty"`
}

MavenRepositoryStatus defines the observed state of MavenRepository.

func (*MavenRepositoryStatus) DeepCopy

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

func (*MavenRepositoryStatus) DeepCopyInto

func (in *MavenRepositoryStatus) DeepCopyInto(out *MavenRepositoryStatus)

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

type NPMRepository

type NPMRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NPMRepositorySpec   `json:"spec"`
	Status            NPMRepositoryStatus `json:"status,omitempty"`
}

NPMRepository is the Schema for the NPMRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*NPMRepository) DeepCopy

func (in *NPMRepository) DeepCopy() *NPMRepository

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

func (*NPMRepository) DeepCopyInto

func (in *NPMRepository) DeepCopyInto(out *NPMRepository)

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

func (*NPMRepository) DeepCopyObject

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

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

func (*NPMRepository) GetCondition

func (mg *NPMRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this NPMRepository.

func (*NPMRepository) GetConnectionDetailsMapping

func (tr *NPMRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this NPMRepository

func (*NPMRepository) GetDeletionPolicy

func (mg *NPMRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this NPMRepository.

func (*NPMRepository) GetID

func (tr *NPMRepository) GetID() string

GetID returns ID of underlying Terraform resource of this NPMRepository

func (*NPMRepository) GetInitParameters

func (tr *NPMRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this NPMRepository

func (*NPMRepository) GetManagementPolicies

func (mg *NPMRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this NPMRepository.

func (*NPMRepository) GetMergedParameters

func (tr *NPMRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this NPMRepository

func (*NPMRepository) GetObservation

func (tr *NPMRepository) GetObservation() (map[string]any, error)

GetObservation of this NPMRepository

func (*NPMRepository) GetParameters

func (tr *NPMRepository) GetParameters() (map[string]any, error)

GetParameters of this NPMRepository

func (*NPMRepository) GetProviderConfigReference

func (mg *NPMRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this NPMRepository.

func (*NPMRepository) GetTerraformResourceType

func (mg *NPMRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NPMRepository

func (*NPMRepository) GetTerraformSchemaVersion

func (tr *NPMRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NPMRepository) GetWriteConnectionSecretToReference

func (mg *NPMRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this NPMRepository.

func (*NPMRepository) Hub

func (tr *NPMRepository) Hub()

Hub marks this type as a conversion hub.

func (*NPMRepository) LateInitialize

func (tr *NPMRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this NPMRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*NPMRepository) SetConditions

func (mg *NPMRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this NPMRepository.

func (*NPMRepository) SetDeletionPolicy

func (mg *NPMRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this NPMRepository.

func (*NPMRepository) SetManagementPolicies

func (mg *NPMRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this NPMRepository.

func (*NPMRepository) SetObservation

func (tr *NPMRepository) SetObservation(obs map[string]any) error

SetObservation for this NPMRepository

func (*NPMRepository) SetParameters

func (tr *NPMRepository) SetParameters(params map[string]any) error

SetParameters for this NPMRepository

func (*NPMRepository) SetProviderConfigReference

func (mg *NPMRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this NPMRepository.

func (*NPMRepository) SetWriteConnectionSecretToReference

func (mg *NPMRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this NPMRepository.

type NPMRepositoryContentSynchronisationInitParameters

type NPMRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*NPMRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*NPMRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type NPMRepositoryContentSynchronisationObservation

type NPMRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*NPMRepositoryContentSynchronisationObservation) DeepCopy

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

func (*NPMRepositoryContentSynchronisationObservation) DeepCopyInto

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

type NPMRepositoryContentSynchronisationParameters

type NPMRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*NPMRepositoryContentSynchronisationParameters) DeepCopy

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

func (*NPMRepositoryContentSynchronisationParameters) DeepCopyInto

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

type NPMRepositoryInitParameters

type NPMRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []NPMRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://registry.npmjs.org/'
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*NPMRepositoryInitParameters) DeepCopy

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

func (*NPMRepositoryInitParameters) DeepCopyInto

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

type NPMRepositoryList

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

NPMRepositoryList contains a list of NPMRepositorys

func (*NPMRepositoryList) DeepCopy

func (in *NPMRepositoryList) DeepCopy() *NPMRepositoryList

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

func (*NPMRepositoryList) DeepCopyInto

func (in *NPMRepositoryList) DeepCopyInto(out *NPMRepositoryList)

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

func (*NPMRepositoryList) DeepCopyObject

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

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

func (*NPMRepositoryList) GetItems

func (l *NPMRepositoryList) GetItems() []resource.Managed

GetItems of this NPMRepositoryList.

type NPMRepositoryObservation

type NPMRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []NPMRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://registry.npmjs.org/'
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*NPMRepositoryObservation) DeepCopy

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

func (*NPMRepositoryObservation) DeepCopyInto

func (in *NPMRepositoryObservation) DeepCopyInto(out *NPMRepositoryObservation)

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

type NPMRepositoryParameters

type NPMRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []NPMRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The remote repo URL. Default to 'https://registry.npmjs.org/'
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*NPMRepositoryParameters) DeepCopy

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

func (*NPMRepositoryParameters) DeepCopyInto

func (in *NPMRepositoryParameters) DeepCopyInto(out *NPMRepositoryParameters)

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

type NPMRepositorySpec

type NPMRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NPMRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NPMRepositoryInitParameters `json:"initProvider,omitempty"`
}

NPMRepositorySpec defines the desired state of NPMRepository

func (*NPMRepositorySpec) DeepCopy

func (in *NPMRepositorySpec) DeepCopy() *NPMRepositorySpec

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

func (*NPMRepositorySpec) DeepCopyInto

func (in *NPMRepositorySpec) DeepCopyInto(out *NPMRepositorySpec)

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

type NPMRepositoryStatus

type NPMRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NPMRepositoryObservation `json:"atProvider,omitempty"`
}

NPMRepositoryStatus defines the observed state of NPMRepository.

func (*NPMRepositoryStatus) DeepCopy

func (in *NPMRepositoryStatus) DeepCopy() *NPMRepositoryStatus

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

func (*NPMRepositoryStatus) DeepCopyInto

func (in *NPMRepositoryStatus) DeepCopyInto(out *NPMRepositoryStatus)

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

type NuGetRepository

type NuGetRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   NuGetRepositorySpec   `json:"spec"`
	Status NuGetRepositoryStatus `json:"status,omitempty"`
}

NuGetRepository is the Schema for the NuGetRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*NuGetRepository) DeepCopy

func (in *NuGetRepository) DeepCopy() *NuGetRepository

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

func (*NuGetRepository) DeepCopyInto

func (in *NuGetRepository) DeepCopyInto(out *NuGetRepository)

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

func (*NuGetRepository) DeepCopyObject

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

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

func (*NuGetRepository) GetCondition

func (mg *NuGetRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this NuGetRepository.

func (*NuGetRepository) GetConnectionDetailsMapping

func (tr *NuGetRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this NuGetRepository

func (*NuGetRepository) GetDeletionPolicy

func (mg *NuGetRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this NuGetRepository.

func (*NuGetRepository) GetID

func (tr *NuGetRepository) GetID() string

GetID returns ID of underlying Terraform resource of this NuGetRepository

func (*NuGetRepository) GetInitParameters

func (tr *NuGetRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this NuGetRepository

func (*NuGetRepository) GetManagementPolicies

func (mg *NuGetRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this NuGetRepository.

func (*NuGetRepository) GetMergedParameters

func (tr *NuGetRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this NuGetRepository

func (*NuGetRepository) GetObservation

func (tr *NuGetRepository) GetObservation() (map[string]any, error)

GetObservation of this NuGetRepository

func (*NuGetRepository) GetParameters

func (tr *NuGetRepository) GetParameters() (map[string]any, error)

GetParameters of this NuGetRepository

func (*NuGetRepository) GetProviderConfigReference

func (mg *NuGetRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this NuGetRepository.

func (*NuGetRepository) GetTerraformResourceType

func (mg *NuGetRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NuGetRepository

func (*NuGetRepository) GetTerraformSchemaVersion

func (tr *NuGetRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NuGetRepository) GetWriteConnectionSecretToReference

func (mg *NuGetRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this NuGetRepository.

func (*NuGetRepository) Hub

func (tr *NuGetRepository) Hub()

Hub marks this type as a conversion hub.

func (*NuGetRepository) LateInitialize

func (tr *NuGetRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this NuGetRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*NuGetRepository) SetConditions

func (mg *NuGetRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this NuGetRepository.

func (*NuGetRepository) SetDeletionPolicy

func (mg *NuGetRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this NuGetRepository.

func (*NuGetRepository) SetManagementPolicies

func (mg *NuGetRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this NuGetRepository.

func (*NuGetRepository) SetObservation

func (tr *NuGetRepository) SetObservation(obs map[string]any) error

SetObservation for this NuGetRepository

func (*NuGetRepository) SetParameters

func (tr *NuGetRepository) SetParameters(params map[string]any) error

SetParameters for this NuGetRepository

func (*NuGetRepository) SetProviderConfigReference

func (mg *NuGetRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this NuGetRepository.

func (*NuGetRepository) SetWriteConnectionSecretToReference

func (mg *NuGetRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this NuGetRepository.

type NuGetRepositoryContentSynchronisationInitParameters

type NuGetRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*NuGetRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*NuGetRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type NuGetRepositoryContentSynchronisationObservation

type NuGetRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*NuGetRepositoryContentSynchronisationObservation) DeepCopy

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

func (*NuGetRepositoryContentSynchronisationObservation) DeepCopyInto

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

type NuGetRepositoryContentSynchronisationParameters

type NuGetRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*NuGetRepositoryContentSynchronisationParameters) DeepCopy

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

func (*NuGetRepositoryContentSynchronisationParameters) DeepCopyInto

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

type NuGetRepositoryInitParameters

type NuGetRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []NuGetRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// The context path prefix through which NuGet downloads are served. Default value is 'api/v2/package'.
	DownloadContextPath *string `json:"downloadContextPath,omitempty" tf:"download_context_path,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When proxying a remote NuGet repository, customize feed resource location using this attribute. Default value is 'api/v2'.
	FeedContextPath *string `json:"feedContextPath,omitempty" tf:"feed_context_path,omitempty"`

	// Force basic authentication credentials in order to use this repository. Default value is 'false'
	ForceNugetAuthentication *bool `json:"forceNugetAuthentication,omitempty" tf:"force_nuget_authentication,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// NuGet symbol server URL.
	SymbolServerURL *string `json:"symbolServerUrl,omitempty" tf:"symbol_server_url,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// The URL to the NuGet v3 feed. Default value is 'https://api.nuget.org/v3/index.json'.
	V3FeedURL *string `json:"v3FeedUrl,omitempty" tf:"v3_feed_url,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*NuGetRepositoryInitParameters) DeepCopy

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

func (*NuGetRepositoryInitParameters) DeepCopyInto

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

type NuGetRepositoryList

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

NuGetRepositoryList contains a list of NuGetRepositorys

func (*NuGetRepositoryList) DeepCopy

func (in *NuGetRepositoryList) DeepCopy() *NuGetRepositoryList

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

func (*NuGetRepositoryList) DeepCopyInto

func (in *NuGetRepositoryList) DeepCopyInto(out *NuGetRepositoryList)

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

func (*NuGetRepositoryList) DeepCopyObject

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

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

func (*NuGetRepositoryList) GetItems

func (l *NuGetRepositoryList) GetItems() []resource.Managed

GetItems of this NuGetRepositoryList.

type NuGetRepositoryObservation

type NuGetRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []NuGetRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// The context path prefix through which NuGet downloads are served. Default value is 'api/v2/package'.
	DownloadContextPath *string `json:"downloadContextPath,omitempty" tf:"download_context_path,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When proxying a remote NuGet repository, customize feed resource location using this attribute. Default value is 'api/v2'.
	FeedContextPath *string `json:"feedContextPath,omitempty" tf:"feed_context_path,omitempty"`

	// Force basic authentication credentials in order to use this repository. Default value is 'false'
	ForceNugetAuthentication *bool `json:"forceNugetAuthentication,omitempty" tf:"force_nuget_authentication,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// NuGet symbol server URL.
	SymbolServerURL *string `json:"symbolServerUrl,omitempty" tf:"symbol_server_url,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// The URL to the NuGet v3 feed. Default value is 'https://api.nuget.org/v3/index.json'.
	V3FeedURL *string `json:"v3FeedUrl,omitempty" tf:"v3_feed_url,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*NuGetRepositoryObservation) DeepCopy

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

func (*NuGetRepositoryObservation) DeepCopyInto

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

type NuGetRepositoryParameters

type NuGetRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []NuGetRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// The context path prefix through which NuGet downloads are served. Default value is 'api/v2/package'.
	// +kubebuilder:validation:Optional
	DownloadContextPath *string `json:"downloadContextPath,omitempty" tf:"download_context_path,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When proxying a remote NuGet repository, customize feed resource location using this attribute. Default value is 'api/v2'.
	// +kubebuilder:validation:Optional
	FeedContextPath *string `json:"feedContextPath,omitempty" tf:"feed_context_path,omitempty"`

	// Force basic authentication credentials in order to use this repository. Default value is 'false'
	// +kubebuilder:validation:Optional
	ForceNugetAuthentication *bool `json:"forceNugetAuthentication,omitempty" tf:"force_nuget_authentication,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// NuGet symbol server URL.
	// +kubebuilder:validation:Optional
	SymbolServerURL *string `json:"symbolServerUrl,omitempty" tf:"symbol_server_url,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// The URL to the NuGet v3 feed. Default value is 'https://api.nuget.org/v3/index.json'.
	// +kubebuilder:validation:Optional
	V3FeedURL *string `json:"v3FeedUrl,omitempty" tf:"v3_feed_url,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*NuGetRepositoryParameters) DeepCopy

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

func (*NuGetRepositoryParameters) DeepCopyInto

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

type NuGetRepositorySpec

type NuGetRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NuGetRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NuGetRepositoryInitParameters `json:"initProvider,omitempty"`
}

NuGetRepositorySpec defines the desired state of NuGetRepository

func (*NuGetRepositorySpec) DeepCopy

func (in *NuGetRepositorySpec) DeepCopy() *NuGetRepositorySpec

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

func (*NuGetRepositorySpec) DeepCopyInto

func (in *NuGetRepositorySpec) DeepCopyInto(out *NuGetRepositorySpec)

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

type NuGetRepositoryStatus

type NuGetRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NuGetRepositoryObservation `json:"atProvider,omitempty"`
}

NuGetRepositoryStatus defines the observed state of NuGetRepository.

func (*NuGetRepositoryStatus) DeepCopy

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

func (*NuGetRepositoryStatus) DeepCopyInto

func (in *NuGetRepositoryStatus) DeepCopyInto(out *NuGetRepositoryStatus)

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

type OCIRepository

type OCIRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   OCIRepositorySpec   `json:"spec"`
	Status OCIRepositoryStatus `json:"status,omitempty"`
}

OCIRepository is the Schema for the OCIRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*OCIRepository) DeepCopy

func (in *OCIRepository) DeepCopy() *OCIRepository

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

func (*OCIRepository) DeepCopyInto

func (in *OCIRepository) DeepCopyInto(out *OCIRepository)

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

func (*OCIRepository) DeepCopyObject

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

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

func (*OCIRepository) GetCondition

func (mg *OCIRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this OCIRepository.

func (*OCIRepository) GetConnectionDetailsMapping

func (tr *OCIRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this OCIRepository

func (*OCIRepository) GetDeletionPolicy

func (mg *OCIRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this OCIRepository.

func (*OCIRepository) GetID

func (tr *OCIRepository) GetID() string

GetID returns ID of underlying Terraform resource of this OCIRepository

func (*OCIRepository) GetInitParameters

func (tr *OCIRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this OCIRepository

func (*OCIRepository) GetManagementPolicies

func (mg *OCIRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this OCIRepository.

func (*OCIRepository) GetMergedParameters

func (tr *OCIRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this OCIRepository

func (*OCIRepository) GetObservation

func (tr *OCIRepository) GetObservation() (map[string]any, error)

GetObservation of this OCIRepository

func (*OCIRepository) GetParameters

func (tr *OCIRepository) GetParameters() (map[string]any, error)

GetParameters of this OCIRepository

func (*OCIRepository) GetProviderConfigReference

func (mg *OCIRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this OCIRepository.

func (*OCIRepository) GetTerraformResourceType

func (mg *OCIRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this OCIRepository

func (*OCIRepository) GetTerraformSchemaVersion

func (tr *OCIRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*OCIRepository) GetWriteConnectionSecretToReference

func (mg *OCIRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this OCIRepository.

func (*OCIRepository) Hub

func (tr *OCIRepository) Hub()

Hub marks this type as a conversion hub.

func (*OCIRepository) LateInitialize

func (tr *OCIRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this OCIRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*OCIRepository) SetConditions

func (mg *OCIRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this OCIRepository.

func (*OCIRepository) SetDeletionPolicy

func (mg *OCIRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this OCIRepository.

func (*OCIRepository) SetManagementPolicies

func (mg *OCIRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this OCIRepository.

func (*OCIRepository) SetObservation

func (tr *OCIRepository) SetObservation(obs map[string]any) error

SetObservation for this OCIRepository

func (*OCIRepository) SetParameters

func (tr *OCIRepository) SetParameters(params map[string]any) error

SetParameters for this OCIRepository

func (*OCIRepository) SetProviderConfigReference

func (mg *OCIRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this OCIRepository.

func (*OCIRepository) SetWriteConnectionSecretToReference

func (mg *OCIRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this OCIRepository.

type OCIRepositoryContentSynchronisationInitParameters

type OCIRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*OCIRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*OCIRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type OCIRepositoryContentSynchronisationObservation

type OCIRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*OCIRepositoryContentSynchronisationObservation) DeepCopy

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

func (*OCIRepositoryContentSynchronisationObservation) DeepCopyInto

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

type OCIRepositoryContentSynchronisationParameters

type OCIRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*OCIRepositoryContentSynchronisationParameters) DeepCopy

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

func (*OCIRepositoryContentSynchronisationParameters) DeepCopyInto

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

type OCIRepositoryInitParameters

type OCIRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []OCIRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Also known as 'Foreign Layers Caching' on the UI, default is `false`.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// Optional include patterns to match external URLs. Ant-style path expressions are supported (*, **, ?). For example, specifying `**/github.com/**` will only allow downloading foreign layers from github.com host.By default, this is set to '**' in the UI, which means that foreign layers may be downloaded from any external host.This attribute must be set together with `external_dependencies_enabled = true`
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*OCIRepositoryInitParameters) DeepCopy

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

func (*OCIRepositoryInitParameters) DeepCopyInto

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

type OCIRepositoryList

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

OCIRepositoryList contains a list of OCIRepositorys

func (*OCIRepositoryList) DeepCopy

func (in *OCIRepositoryList) DeepCopy() *OCIRepositoryList

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

func (*OCIRepositoryList) DeepCopyInto

func (in *OCIRepositoryList) DeepCopyInto(out *OCIRepositoryList)

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

func (*OCIRepositoryList) DeepCopyObject

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

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

func (*OCIRepositoryList) GetItems

func (l *OCIRepositoryList) GetItems() []resource.Managed

GetItems of this OCIRepositoryList.

type OCIRepositoryObservation

type OCIRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []OCIRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Also known as 'Foreign Layers Caching' on the UI, default is `false`.
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// Optional include patterns to match external URLs. Ant-style path expressions are supported (*, **, ?). For example, specifying `**/github.com/**` will only allow downloading foreign layers from github.com host.By default, this is set to '**' in the UI, which means that foreign layers may be downloaded from any external host.This attribute must be set together with `external_dependencies_enabled = true`
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*OCIRepositoryObservation) DeepCopy

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

func (*OCIRepositoryObservation) DeepCopyInto

func (in *OCIRepositoryObservation) DeepCopyInto(out *OCIRepositoryObservation)

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

type OCIRepositoryParameters

type OCIRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []OCIRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// Enable token (Bearer) based authentication.
	// +kubebuilder:validation:Optional
	EnableTokenAuthentication *bool `json:"enableTokenAuthentication,omitempty" tf:"enable_token_authentication,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// Also known as 'Foreign Layers Caching' on the UI, default is `false`.
	// +kubebuilder:validation:Optional
	ExternalDependenciesEnabled *bool `json:"externalDependenciesEnabled,omitempty" tf:"external_dependencies_enabled,omitempty"`

	// Optional include patterns to match external URLs. Ant-style path expressions are supported (*, **, ?). For example, specifying `**/github.com/**` will only allow downloading foreign layers from github.com host.By default, this is set to '**' in the UI, which means that foreign layers may be downloaded from any external host.This attribute must be set together with `external_dependencies_enabled = true`
	// +kubebuilder:validation:Optional
	ExternalDependenciesPatterns []*string `json:"externalDependenciesPatterns,omitempty" tf:"external_dependencies_patterns,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Use this attribute to enter your GCR, GAR Project Id to limit the scope of this remote repo to a specific project in your third-party registry. When leaving this field blank or unset, remote repositories that support project id will default to their default project as you have set up in your account.
	// +kubebuilder:validation:Optional
	ProjectID *string `json:"projectId,omitempty" tf:"project_id,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*OCIRepositoryParameters) DeepCopy

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

func (*OCIRepositoryParameters) DeepCopyInto

func (in *OCIRepositoryParameters) DeepCopyInto(out *OCIRepositoryParameters)

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

type OCIRepositorySpec

type OCIRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     OCIRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider OCIRepositoryInitParameters `json:"initProvider,omitempty"`
}

OCIRepositorySpec defines the desired state of OCIRepository

func (*OCIRepositorySpec) DeepCopy

func (in *OCIRepositorySpec) DeepCopy() *OCIRepositorySpec

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

func (*OCIRepositorySpec) DeepCopyInto

func (in *OCIRepositorySpec) DeepCopyInto(out *OCIRepositorySpec)

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

type OCIRepositoryStatus

type OCIRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        OCIRepositoryObservation `json:"atProvider,omitempty"`
}

OCIRepositoryStatus defines the observed state of OCIRepository.

func (*OCIRepositoryStatus) DeepCopy

func (in *OCIRepositoryStatus) DeepCopy() *OCIRepositoryStatus

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

func (*OCIRepositoryStatus) DeepCopyInto

func (in *OCIRepositoryStatus) DeepCopyInto(out *OCIRepositoryStatus)

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

type OPKGRepository

type OPKGRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   OPKGRepositorySpec   `json:"spec"`
	Status OPKGRepositoryStatus `json:"status,omitempty"`
}

OPKGRepository is the Schema for the OPKGRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*OPKGRepository) DeepCopy

func (in *OPKGRepository) DeepCopy() *OPKGRepository

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

func (*OPKGRepository) DeepCopyInto

func (in *OPKGRepository) DeepCopyInto(out *OPKGRepository)

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

func (*OPKGRepository) DeepCopyObject

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

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

func (*OPKGRepository) GetCondition

func (mg *OPKGRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this OPKGRepository.

func (*OPKGRepository) GetConnectionDetailsMapping

func (tr *OPKGRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this OPKGRepository

func (*OPKGRepository) GetDeletionPolicy

func (mg *OPKGRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this OPKGRepository.

func (*OPKGRepository) GetID

func (tr *OPKGRepository) GetID() string

GetID returns ID of underlying Terraform resource of this OPKGRepository

func (*OPKGRepository) GetInitParameters

func (tr *OPKGRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this OPKGRepository

func (*OPKGRepository) GetManagementPolicies

func (mg *OPKGRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this OPKGRepository.

func (*OPKGRepository) GetMergedParameters

func (tr *OPKGRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this OPKGRepository

func (*OPKGRepository) GetObservation

func (tr *OPKGRepository) GetObservation() (map[string]any, error)

GetObservation of this OPKGRepository

func (*OPKGRepository) GetParameters

func (tr *OPKGRepository) GetParameters() (map[string]any, error)

GetParameters of this OPKGRepository

func (*OPKGRepository) GetProviderConfigReference

func (mg *OPKGRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this OPKGRepository.

func (*OPKGRepository) GetTerraformResourceType

func (mg *OPKGRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this OPKGRepository

func (*OPKGRepository) GetTerraformSchemaVersion

func (tr *OPKGRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*OPKGRepository) GetWriteConnectionSecretToReference

func (mg *OPKGRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this OPKGRepository.

func (*OPKGRepository) Hub

func (tr *OPKGRepository) Hub()

Hub marks this type as a conversion hub.

func (*OPKGRepository) LateInitialize

func (tr *OPKGRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this OPKGRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*OPKGRepository) SetConditions

func (mg *OPKGRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this OPKGRepository.

func (*OPKGRepository) SetDeletionPolicy

func (mg *OPKGRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this OPKGRepository.

func (*OPKGRepository) SetManagementPolicies

func (mg *OPKGRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this OPKGRepository.

func (*OPKGRepository) SetObservation

func (tr *OPKGRepository) SetObservation(obs map[string]any) error

SetObservation for this OPKGRepository

func (*OPKGRepository) SetParameters

func (tr *OPKGRepository) SetParameters(params map[string]any) error

SetParameters for this OPKGRepository

func (*OPKGRepository) SetProviderConfigReference

func (mg *OPKGRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this OPKGRepository.

func (*OPKGRepository) SetWriteConnectionSecretToReference

func (mg *OPKGRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this OPKGRepository.

type OPKGRepositoryContentSynchronisationInitParameters

type OPKGRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*OPKGRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*OPKGRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type OPKGRepositoryContentSynchronisationObservation

type OPKGRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*OPKGRepositoryContentSynchronisationObservation) DeepCopy

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

func (*OPKGRepositoryContentSynchronisationObservation) DeepCopyInto

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

type OPKGRepositoryContentSynchronisationParameters

type OPKGRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*OPKGRepositoryContentSynchronisationParameters) DeepCopy

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

func (*OPKGRepositoryContentSynchronisationParameters) DeepCopyInto

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

type OPKGRepositoryInitParameters

type OPKGRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []OPKGRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*OPKGRepositoryInitParameters) DeepCopy

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

func (*OPKGRepositoryInitParameters) DeepCopyInto

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

type OPKGRepositoryList

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

OPKGRepositoryList contains a list of OPKGRepositorys

func (*OPKGRepositoryList) DeepCopy

func (in *OPKGRepositoryList) DeepCopy() *OPKGRepositoryList

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

func (*OPKGRepositoryList) DeepCopyInto

func (in *OPKGRepositoryList) DeepCopyInto(out *OPKGRepositoryList)

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

func (*OPKGRepositoryList) DeepCopyObject

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

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

func (*OPKGRepositoryList) GetItems

func (l *OPKGRepositoryList) GetItems() []resource.Managed

GetItems of this OPKGRepositoryList.

type OPKGRepositoryObservation

type OPKGRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []OPKGRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*OPKGRepositoryObservation) DeepCopy

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

func (*OPKGRepositoryObservation) DeepCopyInto

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

type OPKGRepositoryParameters

type OPKGRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []OPKGRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*OPKGRepositoryParameters) DeepCopy

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

func (*OPKGRepositoryParameters) DeepCopyInto

func (in *OPKGRepositoryParameters) DeepCopyInto(out *OPKGRepositoryParameters)

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

type OPKGRepositorySpec

type OPKGRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     OPKGRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider OPKGRepositoryInitParameters `json:"initProvider,omitempty"`
}

OPKGRepositorySpec defines the desired state of OPKGRepository

func (*OPKGRepositorySpec) DeepCopy

func (in *OPKGRepositorySpec) DeepCopy() *OPKGRepositorySpec

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

func (*OPKGRepositorySpec) DeepCopyInto

func (in *OPKGRepositorySpec) DeepCopyInto(out *OPKGRepositorySpec)

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

type OPKGRepositoryStatus

type OPKGRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        OPKGRepositoryObservation `json:"atProvider,omitempty"`
}

OPKGRepositoryStatus defines the observed state of OPKGRepository.

func (*OPKGRepositoryStatus) DeepCopy

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

func (*OPKGRepositoryStatus) DeepCopyInto

func (in *OPKGRepositoryStatus) DeepCopyInto(out *OPKGRepositoryStatus)

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

type P2Repository

type P2Repository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   P2RepositorySpec   `json:"spec"`
	Status P2RepositoryStatus `json:"status,omitempty"`
}

P2Repository is the Schema for the P2Repositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*P2Repository) DeepCopy

func (in *P2Repository) DeepCopy() *P2Repository

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

func (*P2Repository) DeepCopyInto

func (in *P2Repository) DeepCopyInto(out *P2Repository)

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

func (*P2Repository) DeepCopyObject

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

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

func (*P2Repository) GetCondition

func (mg *P2Repository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this P2Repository.

func (*P2Repository) GetConnectionDetailsMapping

func (tr *P2Repository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this P2Repository

func (*P2Repository) GetDeletionPolicy

func (mg *P2Repository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this P2Repository.

func (*P2Repository) GetID

func (tr *P2Repository) GetID() string

GetID returns ID of underlying Terraform resource of this P2Repository

func (*P2Repository) GetInitParameters

func (tr *P2Repository) GetInitParameters() (map[string]any, error)

GetInitParameters of this P2Repository

func (*P2Repository) GetManagementPolicies

func (mg *P2Repository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this P2Repository.

func (*P2Repository) GetMergedParameters

func (tr *P2Repository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this P2Repository

func (*P2Repository) GetObservation

func (tr *P2Repository) GetObservation() (map[string]any, error)

GetObservation of this P2Repository

func (*P2Repository) GetParameters

func (tr *P2Repository) GetParameters() (map[string]any, error)

GetParameters of this P2Repository

func (*P2Repository) GetProviderConfigReference

func (mg *P2Repository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this P2Repository.

func (*P2Repository) GetTerraformResourceType

func (mg *P2Repository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this P2Repository

func (*P2Repository) GetTerraformSchemaVersion

func (tr *P2Repository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*P2Repository) GetWriteConnectionSecretToReference

func (mg *P2Repository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this P2Repository.

func (*P2Repository) Hub

func (tr *P2Repository) Hub()

Hub marks this type as a conversion hub.

func (*P2Repository) LateInitialize

func (tr *P2Repository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this P2Repository using its observed tfState. returns True if there are any spec changes for the resource.

func (*P2Repository) SetConditions

func (mg *P2Repository) SetConditions(c ...xpv1.Condition)

SetConditions of this P2Repository.

func (*P2Repository) SetDeletionPolicy

func (mg *P2Repository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this P2Repository.

func (*P2Repository) SetManagementPolicies

func (mg *P2Repository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this P2Repository.

func (*P2Repository) SetObservation

func (tr *P2Repository) SetObservation(obs map[string]any) error

SetObservation for this P2Repository

func (*P2Repository) SetParameters

func (tr *P2Repository) SetParameters(params map[string]any) error

SetParameters for this P2Repository

func (*P2Repository) SetProviderConfigReference

func (mg *P2Repository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this P2Repository.

func (*P2Repository) SetWriteConnectionSecretToReference

func (mg *P2Repository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this P2Repository.

type P2RepositoryContentSynchronisationInitParameters

type P2RepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*P2RepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*P2RepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type P2RepositoryContentSynchronisationObservation

type P2RepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*P2RepositoryContentSynchronisationObservation) DeepCopy

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

func (*P2RepositoryContentSynchronisationObservation) DeepCopyInto

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

type P2RepositoryContentSynchronisationParameters

type P2RepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*P2RepositoryContentSynchronisationParameters) DeepCopy

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

func (*P2RepositoryContentSynchronisationParameters) DeepCopyInto

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

type P2RepositoryInitParameters

type P2RepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []P2RepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*P2RepositoryInitParameters) DeepCopy

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

func (*P2RepositoryInitParameters) DeepCopyInto

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

type P2RepositoryList

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

P2RepositoryList contains a list of P2Repositorys

func (*P2RepositoryList) DeepCopy

func (in *P2RepositoryList) DeepCopy() *P2RepositoryList

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

func (*P2RepositoryList) DeepCopyInto

func (in *P2RepositoryList) DeepCopyInto(out *P2RepositoryList)

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

func (*P2RepositoryList) DeepCopyObject

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

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

func (*P2RepositoryList) GetItems

func (l *P2RepositoryList) GetItems() []resource.Managed

GetItems of this P2RepositoryList.

type P2RepositoryObservation

type P2RepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []P2RepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*P2RepositoryObservation) DeepCopy

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

func (*P2RepositoryObservation) DeepCopyInto

func (in *P2RepositoryObservation) DeepCopyInto(out *P2RepositoryObservation)

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

type P2RepositoryParameters

type P2RepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []P2RepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*P2RepositoryParameters) DeepCopy

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

func (*P2RepositoryParameters) DeepCopyInto

func (in *P2RepositoryParameters) DeepCopyInto(out *P2RepositoryParameters)

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

type P2RepositorySpec

type P2RepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     P2RepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider P2RepositoryInitParameters `json:"initProvider,omitempty"`
}

P2RepositorySpec defines the desired state of P2Repository

func (*P2RepositorySpec) DeepCopy

func (in *P2RepositorySpec) DeepCopy() *P2RepositorySpec

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

func (*P2RepositorySpec) DeepCopyInto

func (in *P2RepositorySpec) DeepCopyInto(out *P2RepositorySpec)

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

type P2RepositoryStatus

type P2RepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        P2RepositoryObservation `json:"atProvider,omitempty"`
}

P2RepositoryStatus defines the observed state of P2Repository.

func (*P2RepositoryStatus) DeepCopy

func (in *P2RepositoryStatus) DeepCopy() *P2RepositoryStatus

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

func (*P2RepositoryStatus) DeepCopyInto

func (in *P2RepositoryStatus) DeepCopyInto(out *P2RepositoryStatus)

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

type PubRepository

type PubRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   PubRepositorySpec   `json:"spec"`
	Status PubRepositoryStatus `json:"status,omitempty"`
}

PubRepository is the Schema for the PubRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*PubRepository) DeepCopy

func (in *PubRepository) DeepCopy() *PubRepository

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

func (*PubRepository) DeepCopyInto

func (in *PubRepository) DeepCopyInto(out *PubRepository)

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

func (*PubRepository) DeepCopyObject

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

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

func (*PubRepository) GetCondition

func (mg *PubRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this PubRepository.

func (*PubRepository) GetConnectionDetailsMapping

func (tr *PubRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this PubRepository

func (*PubRepository) GetDeletionPolicy

func (mg *PubRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this PubRepository.

func (*PubRepository) GetID

func (tr *PubRepository) GetID() string

GetID returns ID of underlying Terraform resource of this PubRepository

func (*PubRepository) GetInitParameters

func (tr *PubRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this PubRepository

func (*PubRepository) GetManagementPolicies

func (mg *PubRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this PubRepository.

func (*PubRepository) GetMergedParameters

func (tr *PubRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this PubRepository

func (*PubRepository) GetObservation

func (tr *PubRepository) GetObservation() (map[string]any, error)

GetObservation of this PubRepository

func (*PubRepository) GetParameters

func (tr *PubRepository) GetParameters() (map[string]any, error)

GetParameters of this PubRepository

func (*PubRepository) GetProviderConfigReference

func (mg *PubRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this PubRepository.

func (*PubRepository) GetTerraformResourceType

func (mg *PubRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this PubRepository

func (*PubRepository) GetTerraformSchemaVersion

func (tr *PubRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*PubRepository) GetWriteConnectionSecretToReference

func (mg *PubRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this PubRepository.

func (*PubRepository) Hub

func (tr *PubRepository) Hub()

Hub marks this type as a conversion hub.

func (*PubRepository) LateInitialize

func (tr *PubRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this PubRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*PubRepository) SetConditions

func (mg *PubRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this PubRepository.

func (*PubRepository) SetDeletionPolicy

func (mg *PubRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this PubRepository.

func (*PubRepository) SetManagementPolicies

func (mg *PubRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this PubRepository.

func (*PubRepository) SetObservation

func (tr *PubRepository) SetObservation(obs map[string]any) error

SetObservation for this PubRepository

func (*PubRepository) SetParameters

func (tr *PubRepository) SetParameters(params map[string]any) error

SetParameters for this PubRepository

func (*PubRepository) SetProviderConfigReference

func (mg *PubRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this PubRepository.

func (*PubRepository) SetWriteConnectionSecretToReference

func (mg *PubRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this PubRepository.

type PubRepositoryContentSynchronisationInitParameters

type PubRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PubRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*PubRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type PubRepositoryContentSynchronisationObservation

type PubRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PubRepositoryContentSynchronisationObservation) DeepCopy

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

func (*PubRepositoryContentSynchronisationObservation) DeepCopyInto

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

type PubRepositoryContentSynchronisationParameters

type PubRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PubRepositoryContentSynchronisationParameters) DeepCopy

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

func (*PubRepositoryContentSynchronisationParameters) DeepCopyInto

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

type PubRepositoryInitParameters

type PubRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []PubRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PubRepositoryInitParameters) DeepCopy

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

func (*PubRepositoryInitParameters) DeepCopyInto

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

type PubRepositoryList

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

PubRepositoryList contains a list of PubRepositorys

func (*PubRepositoryList) DeepCopy

func (in *PubRepositoryList) DeepCopy() *PubRepositoryList

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

func (*PubRepositoryList) DeepCopyInto

func (in *PubRepositoryList) DeepCopyInto(out *PubRepositoryList)

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

func (*PubRepositoryList) DeepCopyObject

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

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

func (*PubRepositoryList) GetItems

func (l *PubRepositoryList) GetItems() []resource.Managed

GetItems of this PubRepositoryList.

type PubRepositoryObservation

type PubRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []PubRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PubRepositoryObservation) DeepCopy

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

func (*PubRepositoryObservation) DeepCopyInto

func (in *PubRepositoryObservation) DeepCopyInto(out *PubRepositoryObservation)

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

type PubRepositoryParameters

type PubRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []PubRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PubRepositoryParameters) DeepCopy

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

func (*PubRepositoryParameters) DeepCopyInto

func (in *PubRepositoryParameters) DeepCopyInto(out *PubRepositoryParameters)

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

type PubRepositorySpec

type PubRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     PubRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider PubRepositoryInitParameters `json:"initProvider,omitempty"`
}

PubRepositorySpec defines the desired state of PubRepository

func (*PubRepositorySpec) DeepCopy

func (in *PubRepositorySpec) DeepCopy() *PubRepositorySpec

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

func (*PubRepositorySpec) DeepCopyInto

func (in *PubRepositorySpec) DeepCopyInto(out *PubRepositorySpec)

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

type PubRepositoryStatus

type PubRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        PubRepositoryObservation `json:"atProvider,omitempty"`
}

PubRepositoryStatus defines the observed state of PubRepository.

func (*PubRepositoryStatus) DeepCopy

func (in *PubRepositoryStatus) DeepCopy() *PubRepositoryStatus

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

func (*PubRepositoryStatus) DeepCopyInto

func (in *PubRepositoryStatus) DeepCopyInto(out *PubRepositoryStatus)

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

type PuppetRepository

type PuppetRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   PuppetRepositorySpec   `json:"spec"`
	Status PuppetRepositoryStatus `json:"status,omitempty"`
}

PuppetRepository is the Schema for the PuppetRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*PuppetRepository) DeepCopy

func (in *PuppetRepository) DeepCopy() *PuppetRepository

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

func (*PuppetRepository) DeepCopyInto

func (in *PuppetRepository) DeepCopyInto(out *PuppetRepository)

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

func (*PuppetRepository) DeepCopyObject

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

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

func (*PuppetRepository) GetCondition

func (mg *PuppetRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this PuppetRepository.

func (*PuppetRepository) GetConnectionDetailsMapping

func (tr *PuppetRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this PuppetRepository

func (*PuppetRepository) GetDeletionPolicy

func (mg *PuppetRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this PuppetRepository.

func (*PuppetRepository) GetID

func (tr *PuppetRepository) GetID() string

GetID returns ID of underlying Terraform resource of this PuppetRepository

func (*PuppetRepository) GetInitParameters

func (tr *PuppetRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this PuppetRepository

func (*PuppetRepository) GetManagementPolicies

func (mg *PuppetRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this PuppetRepository.

func (*PuppetRepository) GetMergedParameters

func (tr *PuppetRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this PuppetRepository

func (*PuppetRepository) GetObservation

func (tr *PuppetRepository) GetObservation() (map[string]any, error)

GetObservation of this PuppetRepository

func (*PuppetRepository) GetParameters

func (tr *PuppetRepository) GetParameters() (map[string]any, error)

GetParameters of this PuppetRepository

func (*PuppetRepository) GetProviderConfigReference

func (mg *PuppetRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this PuppetRepository.

func (*PuppetRepository) GetTerraformResourceType

func (mg *PuppetRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this PuppetRepository

func (*PuppetRepository) GetTerraformSchemaVersion

func (tr *PuppetRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*PuppetRepository) GetWriteConnectionSecretToReference

func (mg *PuppetRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this PuppetRepository.

func (*PuppetRepository) Hub

func (tr *PuppetRepository) Hub()

Hub marks this type as a conversion hub.

func (*PuppetRepository) LateInitialize

func (tr *PuppetRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this PuppetRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*PuppetRepository) SetConditions

func (mg *PuppetRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this PuppetRepository.

func (*PuppetRepository) SetDeletionPolicy

func (mg *PuppetRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this PuppetRepository.

func (*PuppetRepository) SetManagementPolicies

func (mg *PuppetRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this PuppetRepository.

func (*PuppetRepository) SetObservation

func (tr *PuppetRepository) SetObservation(obs map[string]any) error

SetObservation for this PuppetRepository

func (*PuppetRepository) SetParameters

func (tr *PuppetRepository) SetParameters(params map[string]any) error

SetParameters for this PuppetRepository

func (*PuppetRepository) SetProviderConfigReference

func (mg *PuppetRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this PuppetRepository.

func (*PuppetRepository) SetWriteConnectionSecretToReference

func (mg *PuppetRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this PuppetRepository.

type PuppetRepositoryContentSynchronisationInitParameters

type PuppetRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PuppetRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*PuppetRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type PuppetRepositoryContentSynchronisationObservation

type PuppetRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PuppetRepositoryContentSynchronisationObservation) DeepCopy

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

func (*PuppetRepositoryContentSynchronisationObservation) DeepCopyInto

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

type PuppetRepositoryContentSynchronisationParameters

type PuppetRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PuppetRepositoryContentSynchronisationParameters) DeepCopy

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

func (*PuppetRepositoryContentSynchronisationParameters) DeepCopyInto

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

type PuppetRepositoryInitParameters

type PuppetRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []PuppetRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PuppetRepositoryInitParameters) DeepCopy

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

func (*PuppetRepositoryInitParameters) DeepCopyInto

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

type PuppetRepositoryList

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

PuppetRepositoryList contains a list of PuppetRepositorys

func (*PuppetRepositoryList) DeepCopy

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

func (*PuppetRepositoryList) DeepCopyInto

func (in *PuppetRepositoryList) DeepCopyInto(out *PuppetRepositoryList)

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

func (*PuppetRepositoryList) DeepCopyObject

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

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

func (*PuppetRepositoryList) GetItems

func (l *PuppetRepositoryList) GetItems() []resource.Managed

GetItems of this PuppetRepositoryList.

type PuppetRepositoryObservation

type PuppetRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []PuppetRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PuppetRepositoryObservation) DeepCopy

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

func (*PuppetRepositoryObservation) DeepCopyInto

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

type PuppetRepositoryParameters

type PuppetRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []PuppetRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PuppetRepositoryParameters) DeepCopy

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

func (*PuppetRepositoryParameters) DeepCopyInto

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

type PuppetRepositorySpec

type PuppetRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     PuppetRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider PuppetRepositoryInitParameters `json:"initProvider,omitempty"`
}

PuppetRepositorySpec defines the desired state of PuppetRepository

func (*PuppetRepositorySpec) DeepCopy

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

func (*PuppetRepositorySpec) DeepCopyInto

func (in *PuppetRepositorySpec) DeepCopyInto(out *PuppetRepositorySpec)

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

type PuppetRepositoryStatus

type PuppetRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        PuppetRepositoryObservation `json:"atProvider,omitempty"`
}

PuppetRepositoryStatus defines the observed state of PuppetRepository.

func (*PuppetRepositoryStatus) DeepCopy

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

func (*PuppetRepositoryStatus) DeepCopyInto

func (in *PuppetRepositoryStatus) DeepCopyInto(out *PuppetRepositoryStatus)

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

type PyPIRepository

type PyPIRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   PyPIRepositorySpec   `json:"spec"`
	Status PyPIRepositoryStatus `json:"status,omitempty"`
}

PyPIRepository is the Schema for the PyPIRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*PyPIRepository) DeepCopy

func (in *PyPIRepository) DeepCopy() *PyPIRepository

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

func (*PyPIRepository) DeepCopyInto

func (in *PyPIRepository) DeepCopyInto(out *PyPIRepository)

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

func (*PyPIRepository) DeepCopyObject

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

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

func (*PyPIRepository) GetCondition

func (mg *PyPIRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this PyPIRepository.

func (*PyPIRepository) GetConnectionDetailsMapping

func (tr *PyPIRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this PyPIRepository

func (*PyPIRepository) GetDeletionPolicy

func (mg *PyPIRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this PyPIRepository.

func (*PyPIRepository) GetID

func (tr *PyPIRepository) GetID() string

GetID returns ID of underlying Terraform resource of this PyPIRepository

func (*PyPIRepository) GetInitParameters

func (tr *PyPIRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this PyPIRepository

func (*PyPIRepository) GetManagementPolicies

func (mg *PyPIRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this PyPIRepository.

func (*PyPIRepository) GetMergedParameters

func (tr *PyPIRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this PyPIRepository

func (*PyPIRepository) GetObservation

func (tr *PyPIRepository) GetObservation() (map[string]any, error)

GetObservation of this PyPIRepository

func (*PyPIRepository) GetParameters

func (tr *PyPIRepository) GetParameters() (map[string]any, error)

GetParameters of this PyPIRepository

func (*PyPIRepository) GetProviderConfigReference

func (mg *PyPIRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this PyPIRepository.

func (*PyPIRepository) GetTerraformResourceType

func (mg *PyPIRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this PyPIRepository

func (*PyPIRepository) GetTerraformSchemaVersion

func (tr *PyPIRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*PyPIRepository) GetWriteConnectionSecretToReference

func (mg *PyPIRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this PyPIRepository.

func (*PyPIRepository) Hub

func (tr *PyPIRepository) Hub()

Hub marks this type as a conversion hub.

func (*PyPIRepository) LateInitialize

func (tr *PyPIRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this PyPIRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*PyPIRepository) SetConditions

func (mg *PyPIRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this PyPIRepository.

func (*PyPIRepository) SetDeletionPolicy

func (mg *PyPIRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this PyPIRepository.

func (*PyPIRepository) SetManagementPolicies

func (mg *PyPIRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this PyPIRepository.

func (*PyPIRepository) SetObservation

func (tr *PyPIRepository) SetObservation(obs map[string]any) error

SetObservation for this PyPIRepository

func (*PyPIRepository) SetParameters

func (tr *PyPIRepository) SetParameters(params map[string]any) error

SetParameters for this PyPIRepository

func (*PyPIRepository) SetProviderConfigReference

func (mg *PyPIRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this PyPIRepository.

func (*PyPIRepository) SetWriteConnectionSecretToReference

func (mg *PyPIRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this PyPIRepository.

type PyPIRepositoryContentSynchronisationInitParameters

type PyPIRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PyPIRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*PyPIRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type PyPIRepositoryContentSynchronisationObservation

type PyPIRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PyPIRepositoryContentSynchronisationObservation) DeepCopy

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

func (*PyPIRepositoryContentSynchronisationObservation) DeepCopyInto

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

type PyPIRepositoryContentSynchronisationParameters

type PyPIRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*PyPIRepositoryContentSynchronisationParameters) DeepCopy

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

func (*PyPIRepositoryContentSynchronisationParameters) DeepCopyInto

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

type PyPIRepositoryInitParameters

type PyPIRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []PyPIRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// To configure the remote repo to proxy public external PyPI repository, or a PyPI repository hosted on another Artifactory server. See JFrog Pypi documentation for the usage details. Default value is 'https://pypi.org'.
	PypiRegistryURL *string `json:"pypiRegistryUrl,omitempty" tf:"pypi_registry_url,omitempty"`

	// Usually should be left as a default for 'simple', unless the remote is a PyPI server that has custom registry suffix, like +simple in DevPI. Default value is 'simple'.
	PypiRepositorySuffix *string `json:"pypiRepositorySuffix,omitempty" tf:"pypi_repository_suffix,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PyPIRepositoryInitParameters) DeepCopy

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

func (*PyPIRepositoryInitParameters) DeepCopyInto

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

type PyPIRepositoryList

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

PyPIRepositoryList contains a list of PyPIRepositorys

func (*PyPIRepositoryList) DeepCopy

func (in *PyPIRepositoryList) DeepCopy() *PyPIRepositoryList

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

func (*PyPIRepositoryList) DeepCopyInto

func (in *PyPIRepositoryList) DeepCopyInto(out *PyPIRepositoryList)

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

func (*PyPIRepositoryList) DeepCopyObject

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

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

func (*PyPIRepositoryList) GetItems

func (l *PyPIRepositoryList) GetItems() []resource.Managed

GetItems of this PyPIRepositoryList.

type PyPIRepositoryObservation

type PyPIRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []PyPIRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// To configure the remote repo to proxy public external PyPI repository, or a PyPI repository hosted on another Artifactory server. See JFrog Pypi documentation for the usage details. Default value is 'https://pypi.org'.
	PypiRegistryURL *string `json:"pypiRegistryUrl,omitempty" tf:"pypi_registry_url,omitempty"`

	// Usually should be left as a default for 'simple', unless the remote is a PyPI server that has custom registry suffix, like +simple in DevPI. Default value is 'simple'.
	PypiRepositorySuffix *string `json:"pypiRepositorySuffix,omitempty" tf:"pypi_repository_suffix,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PyPIRepositoryObservation) DeepCopy

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

func (*PyPIRepositoryObservation) DeepCopyInto

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

type PyPIRepositoryParameters

type PyPIRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []PyPIRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Enable repository to be protected by the Curation service.
	// +kubebuilder:validation:Optional
	Curated *bool `json:"curated,omitempty" tf:"curated,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// To configure the remote repo to proxy public external PyPI repository, or a PyPI repository hosted on another Artifactory server. See JFrog Pypi documentation for the usage details. Default value is 'https://pypi.org'.
	// +kubebuilder:validation:Optional
	PypiRegistryURL *string `json:"pypiRegistryUrl,omitempty" tf:"pypi_registry_url,omitempty"`

	// Usually should be left as a default for 'simple', unless the remote is a PyPI server that has custom registry suffix, like +simple in DevPI. Default value is 'simple'.
	// +kubebuilder:validation:Optional
	PypiRepositorySuffix *string `json:"pypiRepositorySuffix,omitempty" tf:"pypi_repository_suffix,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*PyPIRepositoryParameters) DeepCopy

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

func (*PyPIRepositoryParameters) DeepCopyInto

func (in *PyPIRepositoryParameters) DeepCopyInto(out *PyPIRepositoryParameters)

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

type PyPIRepositorySpec

type PyPIRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     PyPIRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider PyPIRepositoryInitParameters `json:"initProvider,omitempty"`
}

PyPIRepositorySpec defines the desired state of PyPIRepository

func (*PyPIRepositorySpec) DeepCopy

func (in *PyPIRepositorySpec) DeepCopy() *PyPIRepositorySpec

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

func (*PyPIRepositorySpec) DeepCopyInto

func (in *PyPIRepositorySpec) DeepCopyInto(out *PyPIRepositorySpec)

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

type PyPIRepositoryStatus

type PyPIRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        PyPIRepositoryObservation `json:"atProvider,omitempty"`
}

PyPIRepositoryStatus defines the observed state of PyPIRepository.

func (*PyPIRepositoryStatus) DeepCopy

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

func (*PyPIRepositoryStatus) DeepCopyInto

func (in *PyPIRepositoryStatus) DeepCopyInto(out *PyPIRepositoryStatus)

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

type RPMRepository

type RPMRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   RPMRepositorySpec   `json:"spec"`
	Status RPMRepositoryStatus `json:"status,omitempty"`
}

RPMRepository is the Schema for the RPMRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*RPMRepository) DeepCopy

func (in *RPMRepository) DeepCopy() *RPMRepository

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

func (*RPMRepository) DeepCopyInto

func (in *RPMRepository) DeepCopyInto(out *RPMRepository)

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

func (*RPMRepository) DeepCopyObject

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

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

func (*RPMRepository) GetCondition

func (mg *RPMRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this RPMRepository.

func (*RPMRepository) GetConnectionDetailsMapping

func (tr *RPMRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this RPMRepository

func (*RPMRepository) GetDeletionPolicy

func (mg *RPMRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this RPMRepository.

func (*RPMRepository) GetID

func (tr *RPMRepository) GetID() string

GetID returns ID of underlying Terraform resource of this RPMRepository

func (*RPMRepository) GetInitParameters

func (tr *RPMRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this RPMRepository

func (*RPMRepository) GetManagementPolicies

func (mg *RPMRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this RPMRepository.

func (*RPMRepository) GetMergedParameters

func (tr *RPMRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this RPMRepository

func (*RPMRepository) GetObservation

func (tr *RPMRepository) GetObservation() (map[string]any, error)

GetObservation of this RPMRepository

func (*RPMRepository) GetParameters

func (tr *RPMRepository) GetParameters() (map[string]any, error)

GetParameters of this RPMRepository

func (*RPMRepository) GetProviderConfigReference

func (mg *RPMRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this RPMRepository.

func (*RPMRepository) GetTerraformResourceType

func (mg *RPMRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this RPMRepository

func (*RPMRepository) GetTerraformSchemaVersion

func (tr *RPMRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*RPMRepository) GetWriteConnectionSecretToReference

func (mg *RPMRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this RPMRepository.

func (*RPMRepository) Hub

func (tr *RPMRepository) Hub()

Hub marks this type as a conversion hub.

func (*RPMRepository) LateInitialize

func (tr *RPMRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this RPMRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*RPMRepository) SetConditions

func (mg *RPMRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this RPMRepository.

func (*RPMRepository) SetDeletionPolicy

func (mg *RPMRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this RPMRepository.

func (*RPMRepository) SetManagementPolicies

func (mg *RPMRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this RPMRepository.

func (*RPMRepository) SetObservation

func (tr *RPMRepository) SetObservation(obs map[string]any) error

SetObservation for this RPMRepository

func (*RPMRepository) SetParameters

func (tr *RPMRepository) SetParameters(params map[string]any) error

SetParameters for this RPMRepository

func (*RPMRepository) SetProviderConfigReference

func (mg *RPMRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this RPMRepository.

func (*RPMRepository) SetWriteConnectionSecretToReference

func (mg *RPMRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this RPMRepository.

type RPMRepositoryContentSynchronisationInitParameters

type RPMRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*RPMRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*RPMRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type RPMRepositoryContentSynchronisationObservation

type RPMRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*RPMRepositoryContentSynchronisationObservation) DeepCopy

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

func (*RPMRepositoryContentSynchronisationObservation) DeepCopyInto

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

type RPMRepositoryContentSynchronisationParameters

type RPMRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*RPMRepositoryContentSynchronisationParameters) DeepCopy

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

func (*RPMRepositoryContentSynchronisationParameters) DeepCopyInto

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

type RPMRepositoryInitParameters

type RPMRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []RPMRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*RPMRepositoryInitParameters) DeepCopy

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

func (*RPMRepositoryInitParameters) DeepCopyInto

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

type RPMRepositoryList

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

RPMRepositoryList contains a list of RPMRepositorys

func (*RPMRepositoryList) DeepCopy

func (in *RPMRepositoryList) DeepCopy() *RPMRepositoryList

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

func (*RPMRepositoryList) DeepCopyInto

func (in *RPMRepositoryList) DeepCopyInto(out *RPMRepositoryList)

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

func (*RPMRepositoryList) DeepCopyObject

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

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

func (*RPMRepositoryList) GetItems

func (l *RPMRepositoryList) GetItems() []resource.Managed

GetItems of this RPMRepositoryList.

type RPMRepositoryObservation

type RPMRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []RPMRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*RPMRepositoryObservation) DeepCopy

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

func (*RPMRepositoryObservation) DeepCopyInto

func (in *RPMRepositoryObservation) DeepCopyInto(out *RPMRepositoryObservation)

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

type RPMRepositoryParameters

type RPMRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []RPMRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*RPMRepositoryParameters) DeepCopy

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

func (*RPMRepositoryParameters) DeepCopyInto

func (in *RPMRepositoryParameters) DeepCopyInto(out *RPMRepositoryParameters)

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

type RPMRepositorySpec

type RPMRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     RPMRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider RPMRepositoryInitParameters `json:"initProvider,omitempty"`
}

RPMRepositorySpec defines the desired state of RPMRepository

func (*RPMRepositorySpec) DeepCopy

func (in *RPMRepositorySpec) DeepCopy() *RPMRepositorySpec

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

func (*RPMRepositorySpec) DeepCopyInto

func (in *RPMRepositorySpec) DeepCopyInto(out *RPMRepositorySpec)

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

type RPMRepositoryStatus

type RPMRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        RPMRepositoryObservation `json:"atProvider,omitempty"`
}

RPMRepositoryStatus defines the observed state of RPMRepository.

func (*RPMRepositoryStatus) DeepCopy

func (in *RPMRepositoryStatus) DeepCopy() *RPMRepositoryStatus

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

func (*RPMRepositoryStatus) DeepCopyInto

func (in *RPMRepositoryStatus) DeepCopyInto(out *RPMRepositoryStatus)

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

type SBTRepository

type SBTRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   SBTRepositorySpec   `json:"spec"`
	Status SBTRepositoryStatus `json:"status,omitempty"`
}

SBTRepository is the Schema for the SBTRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*SBTRepository) DeepCopy

func (in *SBTRepository) DeepCopy() *SBTRepository

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

func (*SBTRepository) DeepCopyInto

func (in *SBTRepository) DeepCopyInto(out *SBTRepository)

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

func (*SBTRepository) DeepCopyObject

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

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

func (*SBTRepository) GetCondition

func (mg *SBTRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this SBTRepository.

func (*SBTRepository) GetConnectionDetailsMapping

func (tr *SBTRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this SBTRepository

func (*SBTRepository) GetDeletionPolicy

func (mg *SBTRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this SBTRepository.

func (*SBTRepository) GetID

func (tr *SBTRepository) GetID() string

GetID returns ID of underlying Terraform resource of this SBTRepository

func (*SBTRepository) GetInitParameters

func (tr *SBTRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this SBTRepository

func (*SBTRepository) GetManagementPolicies

func (mg *SBTRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this SBTRepository.

func (*SBTRepository) GetMergedParameters

func (tr *SBTRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this SBTRepository

func (*SBTRepository) GetObservation

func (tr *SBTRepository) GetObservation() (map[string]any, error)

GetObservation of this SBTRepository

func (*SBTRepository) GetParameters

func (tr *SBTRepository) GetParameters() (map[string]any, error)

GetParameters of this SBTRepository

func (*SBTRepository) GetProviderConfigReference

func (mg *SBTRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this SBTRepository.

func (*SBTRepository) GetTerraformResourceType

func (mg *SBTRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SBTRepository

func (*SBTRepository) GetTerraformSchemaVersion

func (tr *SBTRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SBTRepository) GetWriteConnectionSecretToReference

func (mg *SBTRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this SBTRepository.

func (*SBTRepository) Hub

func (tr *SBTRepository) Hub()

Hub marks this type as a conversion hub.

func (*SBTRepository) LateInitialize

func (tr *SBTRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this SBTRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*SBTRepository) SetConditions

func (mg *SBTRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this SBTRepository.

func (*SBTRepository) SetDeletionPolicy

func (mg *SBTRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this SBTRepository.

func (*SBTRepository) SetManagementPolicies

func (mg *SBTRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this SBTRepository.

func (*SBTRepository) SetObservation

func (tr *SBTRepository) SetObservation(obs map[string]any) error

SetObservation for this SBTRepository

func (*SBTRepository) SetParameters

func (tr *SBTRepository) SetParameters(params map[string]any) error

SetParameters for this SBTRepository

func (*SBTRepository) SetProviderConfigReference

func (mg *SBTRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this SBTRepository.

func (*SBTRepository) SetWriteConnectionSecretToReference

func (mg *SBTRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this SBTRepository.

type SBTRepositoryContentSynchronisationInitParameters

type SBTRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*SBTRepositoryContentSynchronisationInitParameters) DeepCopy

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

func (*SBTRepositoryContentSynchronisationInitParameters) DeepCopyInto

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

type SBTRepositoryContentSynchronisationObservation

type SBTRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*SBTRepositoryContentSynchronisationObservation) DeepCopy

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

func (*SBTRepositoryContentSynchronisationObservation) DeepCopyInto

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

type SBTRepositoryContentSynchronisationParameters

type SBTRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*SBTRepositoryContentSynchronisationParameters) DeepCopy

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

func (*SBTRepositoryContentSynchronisationParameters) DeepCopyInto

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

type SBTRepositoryInitParameters

type SBTRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []SBTRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*SBTRepositoryInitParameters) DeepCopy

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

func (*SBTRepositoryInitParameters) DeepCopyInto

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

type SBTRepositoryList

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

SBTRepositoryList contains a list of SBTRepositorys

func (*SBTRepositoryList) DeepCopy

func (in *SBTRepositoryList) DeepCopy() *SBTRepositoryList

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

func (*SBTRepositoryList) DeepCopyInto

func (in *SBTRepositoryList) DeepCopyInto(out *SBTRepositoryList)

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

func (*SBTRepositoryList) DeepCopyObject

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

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

func (*SBTRepositoryList) GetItems

func (l *SBTRepositoryList) GetItems() []resource.Managed

GetItems of this SBTRepositoryList.

type SBTRepositoryObservation

type SBTRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []SBTRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*SBTRepositoryObservation) DeepCopy

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

func (*SBTRepositoryObservation) DeepCopyInto

func (in *SBTRepositoryObservation) DeepCopyInto(out *SBTRepositoryObservation)

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

type SBTRepositoryParameters

type SBTRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []SBTRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, if a POM is requested, Artifactory attempts to fetch the corresponding jar in the background. This will accelerate first access time to the jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchJarsEagerly *bool `json:"fetchJarsEagerly,omitempty" tf:"fetch_jars_eagerly,omitempty"`

	// When set, if a binaries jar is requested, Artifactory attempts to fetch the corresponding source jar in the background. This will accelerate first access time to the source jar when it is subsequently requested. Default value is 'false'.
	// +kubebuilder:validation:Optional
	FetchSourcesEagerly *bool `json:"fetchSourcesEagerly,omitempty" tf:"fetch_sources_eagerly,omitempty"`

	// If set, Artifactory allows you to deploy release artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleReleases *bool `json:"handleReleases,omitempty" tf:"handle_releases,omitempty"`

	// If set, Artifactory allows you to deploy snapshot artifacts into this repository. Default value is 'true'.
	// +kubebuilder:validation:Optional
	HandleSnapshots *bool `json:"handleSnapshots,omitempty" tf:"handle_snapshots,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	// +kubebuilder:validation:Optional
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Reject the caching of jar files that are found to be invalid. For example, pseudo jars retrieved behind a "captive portal". Default value is 'false'.
	// +kubebuilder:validation:Optional
	RejectInvalidJars *bool `json:"rejectInvalidJars,omitempty" tf:"reject_invalid_jars,omitempty"`

	// Checking the Checksum effectively verifies the integrity of a deployed resource. The Checksum Policy determines how the system behaves when a client checksum for a remote resource is missing or conflicts with the locally calculated checksum. Default value is 'generate-if-absent'.
	// +kubebuilder:validation:Optional
	RemoteRepoChecksumPolicyType *string `json:"remoteRepoChecksumPolicyType,omitempty" tf:"remote_repo_checksum_policy_type,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// By default, the system keeps your repositories healthy by refusing POMs with incorrect coordinates (path). If the groupId:artifactId:version information inside the POM does not match the deployed path, Artifactory rejects the deployment with a "409 Conflict" error. You can disable this behavior by setting this attribute to 'true'. Default value is 'false'.
	// +kubebuilder:validation:Optional
	SuppressPomConsistencyChecks *bool `json:"suppressPomConsistencyChecks,omitempty" tf:"suppress_pom_consistency_checks,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*SBTRepositoryParameters) DeepCopy

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

func (*SBTRepositoryParameters) DeepCopyInto

func (in *SBTRepositoryParameters) DeepCopyInto(out *SBTRepositoryParameters)

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

type SBTRepositorySpec

type SBTRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SBTRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider SBTRepositoryInitParameters `json:"initProvider,omitempty"`
}

SBTRepositorySpec defines the desired state of SBTRepository

func (*SBTRepositorySpec) DeepCopy

func (in *SBTRepositorySpec) DeepCopy() *SBTRepositorySpec

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

func (*SBTRepositorySpec) DeepCopyInto

func (in *SBTRepositorySpec) DeepCopyInto(out *SBTRepositorySpec)

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

type SBTRepositoryStatus

type SBTRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SBTRepositoryObservation `json:"atProvider,omitempty"`
}

SBTRepositoryStatus defines the observed state of SBTRepository.

func (*SBTRepositoryStatus) DeepCopy

func (in *SBTRepositoryStatus) DeepCopy() *SBTRepositoryStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SBTRepositoryStatus.

func (*SBTRepositoryStatus) DeepCopyInto

func (in *SBTRepositoryStatus) DeepCopyInto(out *SBTRepositoryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepository

type SwiftRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   SwiftRepositorySpec   `json:"spec"`
	Status SwiftRepositoryStatus `json:"status,omitempty"`
}

SwiftRepository is the Schema for the SwiftRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*SwiftRepository) DeepCopy

func (in *SwiftRepository) DeepCopy() *SwiftRepository

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepository.

func (*SwiftRepository) DeepCopyInto

func (in *SwiftRepository) DeepCopyInto(out *SwiftRepository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SwiftRepository) DeepCopyObject

func (in *SwiftRepository) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SwiftRepository) GetCondition

func (mg *SwiftRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this SwiftRepository.

func (*SwiftRepository) GetConnectionDetailsMapping

func (tr *SwiftRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this SwiftRepository

func (*SwiftRepository) GetDeletionPolicy

func (mg *SwiftRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this SwiftRepository.

func (*SwiftRepository) GetID

func (tr *SwiftRepository) GetID() string

GetID returns ID of underlying Terraform resource of this SwiftRepository

func (*SwiftRepository) GetInitParameters

func (tr *SwiftRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this SwiftRepository

func (*SwiftRepository) GetManagementPolicies

func (mg *SwiftRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this SwiftRepository.

func (*SwiftRepository) GetMergedParameters

func (tr *SwiftRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this SwiftRepository

func (*SwiftRepository) GetObservation

func (tr *SwiftRepository) GetObservation() (map[string]any, error)

GetObservation of this SwiftRepository

func (*SwiftRepository) GetParameters

func (tr *SwiftRepository) GetParameters() (map[string]any, error)

GetParameters of this SwiftRepository

func (*SwiftRepository) GetProviderConfigReference

func (mg *SwiftRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this SwiftRepository.

func (*SwiftRepository) GetTerraformResourceType

func (mg *SwiftRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SwiftRepository

func (*SwiftRepository) GetTerraformSchemaVersion

func (tr *SwiftRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SwiftRepository) GetWriteConnectionSecretToReference

func (mg *SwiftRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this SwiftRepository.

func (*SwiftRepository) Hub

func (tr *SwiftRepository) Hub()

Hub marks this type as a conversion hub.

func (*SwiftRepository) LateInitialize

func (tr *SwiftRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this SwiftRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*SwiftRepository) SetConditions

func (mg *SwiftRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this SwiftRepository.

func (*SwiftRepository) SetDeletionPolicy

func (mg *SwiftRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this SwiftRepository.

func (*SwiftRepository) SetManagementPolicies

func (mg *SwiftRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this SwiftRepository.

func (*SwiftRepository) SetObservation

func (tr *SwiftRepository) SetObservation(obs map[string]any) error

SetObservation for this SwiftRepository

func (*SwiftRepository) SetParameters

func (tr *SwiftRepository) SetParameters(params map[string]any) error

SetParameters for this SwiftRepository

func (*SwiftRepository) SetProviderConfigReference

func (mg *SwiftRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this SwiftRepository.

func (*SwiftRepository) SetWriteConnectionSecretToReference

func (mg *SwiftRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this SwiftRepository.

type SwiftRepositoryContentSynchronisationInitParameters

type SwiftRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*SwiftRepositoryContentSynchronisationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryContentSynchronisationInitParameters.

func (*SwiftRepositoryContentSynchronisationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositoryContentSynchronisationObservation

type SwiftRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*SwiftRepositoryContentSynchronisationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryContentSynchronisationObservation.

func (*SwiftRepositoryContentSynchronisationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositoryContentSynchronisationParameters

type SwiftRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*SwiftRepositoryContentSynchronisationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryContentSynchronisationParameters.

func (*SwiftRepositoryContentSynchronisationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositoryInitParameters

type SwiftRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []SwiftRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*SwiftRepositoryInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryInitParameters.

func (*SwiftRepositoryInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositoryList

type SwiftRepositoryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SwiftRepository `json:"items"`
}

SwiftRepositoryList contains a list of SwiftRepositorys

func (*SwiftRepositoryList) DeepCopy

func (in *SwiftRepositoryList) DeepCopy() *SwiftRepositoryList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryList.

func (*SwiftRepositoryList) DeepCopyInto

func (in *SwiftRepositoryList) DeepCopyInto(out *SwiftRepositoryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SwiftRepositoryList) DeepCopyObject

func (in *SwiftRepositoryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SwiftRepositoryList) GetItems

func (l *SwiftRepositoryList) GetItems() []resource.Managed

GetItems of this SwiftRepositoryList.

type SwiftRepositoryObservation

type SwiftRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []SwiftRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*SwiftRepositoryObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryObservation.

func (*SwiftRepositoryObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositoryParameters

type SwiftRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []SwiftRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*SwiftRepositoryParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryParameters.

func (*SwiftRepositoryParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositorySpec

type SwiftRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SwiftRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider SwiftRepositoryInitParameters `json:"initProvider,omitempty"`
}

SwiftRepositorySpec defines the desired state of SwiftRepository

func (*SwiftRepositorySpec) DeepCopy

func (in *SwiftRepositorySpec) DeepCopy() *SwiftRepositorySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositorySpec.

func (*SwiftRepositorySpec) DeepCopyInto

func (in *SwiftRepositorySpec) DeepCopyInto(out *SwiftRepositorySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SwiftRepositoryStatus

type SwiftRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SwiftRepositoryObservation `json:"atProvider,omitempty"`
}

SwiftRepositoryStatus defines the observed state of SwiftRepository.

func (*SwiftRepositoryStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SwiftRepositoryStatus.

func (*SwiftRepositoryStatus) DeepCopyInto

func (in *SwiftRepositoryStatus) DeepCopyInto(out *SwiftRepositoryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepository

type TerraformRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   TerraformRepositorySpec   `json:"spec"`
	Status TerraformRepositoryStatus `json:"status,omitempty"`
}

TerraformRepository is the Schema for the TerraformRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*TerraformRepository) DeepCopy

func (in *TerraformRepository) DeepCopy() *TerraformRepository

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepository.

func (*TerraformRepository) DeepCopyInto

func (in *TerraformRepository) DeepCopyInto(out *TerraformRepository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformRepository) DeepCopyObject

func (in *TerraformRepository) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TerraformRepository) GetCondition

func (mg *TerraformRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this TerraformRepository.

func (*TerraformRepository) GetConnectionDetailsMapping

func (tr *TerraformRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this TerraformRepository

func (*TerraformRepository) GetDeletionPolicy

func (mg *TerraformRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this TerraformRepository.

func (*TerraformRepository) GetID

func (tr *TerraformRepository) GetID() string

GetID returns ID of underlying Terraform resource of this TerraformRepository

func (*TerraformRepository) GetInitParameters

func (tr *TerraformRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this TerraformRepository

func (*TerraformRepository) GetManagementPolicies

func (mg *TerraformRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this TerraformRepository.

func (*TerraformRepository) GetMergedParameters

func (tr *TerraformRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this TerraformRepository

func (*TerraformRepository) GetObservation

func (tr *TerraformRepository) GetObservation() (map[string]any, error)

GetObservation of this TerraformRepository

func (*TerraformRepository) GetParameters

func (tr *TerraformRepository) GetParameters() (map[string]any, error)

GetParameters of this TerraformRepository

func (*TerraformRepository) GetProviderConfigReference

func (mg *TerraformRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this TerraformRepository.

func (*TerraformRepository) GetTerraformResourceType

func (mg *TerraformRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this TerraformRepository

func (*TerraformRepository) GetTerraformSchemaVersion

func (tr *TerraformRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*TerraformRepository) GetWriteConnectionSecretToReference

func (mg *TerraformRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this TerraformRepository.

func (*TerraformRepository) Hub

func (tr *TerraformRepository) Hub()

Hub marks this type as a conversion hub.

func (*TerraformRepository) LateInitialize

func (tr *TerraformRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this TerraformRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*TerraformRepository) SetConditions

func (mg *TerraformRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this TerraformRepository.

func (*TerraformRepository) SetDeletionPolicy

func (mg *TerraformRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this TerraformRepository.

func (*TerraformRepository) SetManagementPolicies

func (mg *TerraformRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this TerraformRepository.

func (*TerraformRepository) SetObservation

func (tr *TerraformRepository) SetObservation(obs map[string]any) error

SetObservation for this TerraformRepository

func (*TerraformRepository) SetParameters

func (tr *TerraformRepository) SetParameters(params map[string]any) error

SetParameters for this TerraformRepository

func (*TerraformRepository) SetProviderConfigReference

func (mg *TerraformRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this TerraformRepository.

func (*TerraformRepository) SetWriteConnectionSecretToReference

func (mg *TerraformRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this TerraformRepository.

type TerraformRepositoryContentSynchronisationInitParameters

type TerraformRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*TerraformRepositoryContentSynchronisationInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryContentSynchronisationInitParameters.

func (*TerraformRepositoryContentSynchronisationInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryContentSynchronisationObservation

type TerraformRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*TerraformRepositoryContentSynchronisationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryContentSynchronisationObservation.

func (*TerraformRepositoryContentSynchronisationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryContentSynchronisationParameters

type TerraformRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*TerraformRepositoryContentSynchronisationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryContentSynchronisationParameters.

func (*TerraformRepositoryContentSynchronisationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryInitParameters

type TerraformRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.io, registry.opentofu.org), this must be set to `true` as Artifactory automatically enforces this setting. For tf.app.wiz.io, this is required only for Artifactory 7.122.0 and later. Defaults to `false`.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []TerraformRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The base URL of the Provider's storage API. Default value in UI is https://releases.hashicorp.com
	TerraformProvidersURL *string `json:"terraformProvidersUrl,omitempty" tf:"terraform_providers_url,omitempty"`

	// The base URL of the registry API. Default value in UI is https://registry.io
	TerraformRegistryURL *string `json:"terraformRegistryUrl,omitempty" tf:"terraform_registry_url,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*TerraformRepositoryInitParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryInitParameters.

func (*TerraformRepositoryInitParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryList

type TerraformRepositoryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TerraformRepository `json:"items"`
}

TerraformRepositoryList contains a list of TerraformRepositorys

func (*TerraformRepositoryList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryList.

func (*TerraformRepositoryList) DeepCopyInto

func (in *TerraformRepositoryList) DeepCopyInto(out *TerraformRepositoryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformRepositoryList) DeepCopyObject

func (in *TerraformRepositoryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TerraformRepositoryList) GetItems

func (l *TerraformRepositoryList) GetItems() []resource.Managed

GetItems of this TerraformRepositoryList.

type TerraformRepositoryObservation

type TerraformRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.io, registry.opentofu.org), this must be set to `true` as Artifactory automatically enforces this setting. For tf.app.wiz.io, this is required only for Artifactory 7.122.0 and later. Defaults to `false`.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []TerraformRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The base URL of the Provider's storage API. Default value in UI is https://releases.hashicorp.com
	TerraformProvidersURL *string `json:"terraformProvidersUrl,omitempty" tf:"terraform_providers_url,omitempty"`

	// The base URL of the registry API. Default value in UI is https://registry.io
	TerraformRegistryURL *string `json:"terraformRegistryUrl,omitempty" tf:"terraform_registry_url,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*TerraformRepositoryObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryObservation.

func (*TerraformRepositoryObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryParameters

type TerraformRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.io, registry.opentofu.org), this must be set to `true` as Artifactory automatically enforces this setting. For tf.app.wiz.io, this is required only for Artifactory 7.122.0 and later. Defaults to `false`.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []TerraformRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// The base URL of the Provider's storage API. Default value in UI is https://releases.hashicorp.com
	// +kubebuilder:validation:Optional
	TerraformProvidersURL *string `json:"terraformProvidersUrl,omitempty" tf:"terraform_providers_url,omitempty"`

	// The base URL of the registry API. Default value in UI is https://registry.io
	// +kubebuilder:validation:Optional
	TerraformRegistryURL *string `json:"terraformRegistryUrl,omitempty" tf:"terraform_registry_url,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*TerraformRepositoryParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryParameters.

func (*TerraformRepositoryParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositorySpec

type TerraformRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     TerraformRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider TerraformRepositoryInitParameters `json:"initProvider,omitempty"`
}

TerraformRepositorySpec defines the desired state of TerraformRepository

func (*TerraformRepositorySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositorySpec.

func (*TerraformRepositorySpec) DeepCopyInto

func (in *TerraformRepositorySpec) DeepCopyInto(out *TerraformRepositorySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryStatus

type TerraformRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        TerraformRepositoryObservation `json:"atProvider,omitempty"`
}

TerraformRepositoryStatus defines the observed state of TerraformRepository.

func (*TerraformRepositoryStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryStatus.

func (*TerraformRepositoryStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepository added in v0.11.1

type VCSRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.url) || (has(self.initProvider) && has(self.initProvider.url))",message="spec.forProvider.url is a required parameter"
	Spec   VCSRepositorySpec   `json:"spec"`
	Status VCSRepositoryStatus `json:"status,omitempty"`
}

VCSRepository is the Schema for the VCSRepositorys API. <no value> +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,artifactory}

func (*VCSRepository) DeepCopy added in v0.11.1

func (in *VCSRepository) DeepCopy() *VCSRepository

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepository.

func (*VCSRepository) DeepCopyInto added in v0.11.1

func (in *VCSRepository) DeepCopyInto(out *VCSRepository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VCSRepository) DeepCopyObject added in v0.11.1

func (in *VCSRepository) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VCSRepository) GetCondition added in v0.11.1

func (mg *VCSRepository) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this VCSRepository.

func (*VCSRepository) GetConnectionDetailsMapping added in v0.11.1

func (tr *VCSRepository) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this VCSRepository

func (*VCSRepository) GetDeletionPolicy added in v0.11.1

func (mg *VCSRepository) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this VCSRepository.

func (*VCSRepository) GetID added in v0.11.1

func (tr *VCSRepository) GetID() string

GetID returns ID of underlying Terraform resource of this VCSRepository

func (*VCSRepository) GetInitParameters added in v0.11.1

func (tr *VCSRepository) GetInitParameters() (map[string]any, error)

GetInitParameters of this VCSRepository

func (*VCSRepository) GetManagementPolicies added in v0.11.1

func (mg *VCSRepository) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this VCSRepository.

func (*VCSRepository) GetMergedParameters added in v0.11.1

func (tr *VCSRepository) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this VCSRepository

func (*VCSRepository) GetObservation added in v0.11.1

func (tr *VCSRepository) GetObservation() (map[string]any, error)

GetObservation of this VCSRepository

func (*VCSRepository) GetParameters added in v0.11.1

func (tr *VCSRepository) GetParameters() (map[string]any, error)

GetParameters of this VCSRepository

func (*VCSRepository) GetProviderConfigReference added in v0.11.1

func (mg *VCSRepository) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this VCSRepository.

func (*VCSRepository) GetTerraformResourceType added in v0.11.1

func (mg *VCSRepository) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this VCSRepository

func (*VCSRepository) GetTerraformSchemaVersion added in v0.11.1

func (tr *VCSRepository) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*VCSRepository) GetWriteConnectionSecretToReference added in v0.11.1

func (mg *VCSRepository) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this VCSRepository.

func (*VCSRepository) Hub added in v0.11.1

func (tr *VCSRepository) Hub()

Hub marks this type as a conversion hub.

func (*VCSRepository) LateInitialize added in v0.11.1

func (tr *VCSRepository) LateInitialize(attrs []byte) (bool, error)

LateInitialize this VCSRepository using its observed tfState. returns True if there are any spec changes for the resource.

func (*VCSRepository) SetConditions added in v0.11.1

func (mg *VCSRepository) SetConditions(c ...xpv1.Condition)

SetConditions of this VCSRepository.

func (*VCSRepository) SetDeletionPolicy added in v0.11.1

func (mg *VCSRepository) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this VCSRepository.

func (*VCSRepository) SetManagementPolicies added in v0.11.1

func (mg *VCSRepository) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this VCSRepository.

func (*VCSRepository) SetObservation added in v0.11.1

func (tr *VCSRepository) SetObservation(obs map[string]any) error

SetObservation for this VCSRepository

func (*VCSRepository) SetParameters added in v0.11.1

func (tr *VCSRepository) SetParameters(params map[string]any) error

SetParameters for this VCSRepository

func (*VCSRepository) SetProviderConfigReference added in v0.11.1

func (mg *VCSRepository) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this VCSRepository.

func (*VCSRepository) SetWriteConnectionSecretToReference added in v0.11.1

func (mg *VCSRepository) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this VCSRepository.

type VCSRepositoryContentSynchronisationInitParameters added in v0.11.1

type VCSRepositoryContentSynchronisationInitParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*VCSRepositoryContentSynchronisationInitParameters) DeepCopy added in v0.11.1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryContentSynchronisationInitParameters.

func (*VCSRepositoryContentSynchronisationInitParameters) DeepCopyInto added in v0.11.1

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositoryContentSynchronisationObservation added in v0.11.1

type VCSRepositoryContentSynchronisationObservation struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*VCSRepositoryContentSynchronisationObservation) DeepCopy added in v0.11.1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryContentSynchronisationObservation.

func (*VCSRepositoryContentSynchronisationObservation) DeepCopyInto added in v0.11.1

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositoryContentSynchronisationParameters added in v0.11.1

type VCSRepositoryContentSynchronisationParameters struct {

	// If set, Remote repository proxies a local or remote repository from another instance of Artifactory. Default value is 'false'.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// If set, properties for artifacts that have been cached in this repository will be updated if they are modified in the artifact hosted at the remote Artifactory instance. The trigger to synchronize the properties is download of the artifact from the remote repository cache of the local Artifactory instance. Default value is 'false'.
	// +kubebuilder:validation:Optional
	PropertiesEnabled *bool `json:"propertiesEnabled,omitempty" tf:"properties_enabled,omitempty"`

	// If set, Artifactory displays an indication on cached items if they have been deleted from the corresponding repository in the remote Artifactory instance. Default value is 'false'
	// +kubebuilder:validation:Optional
	SourceOriginAbsenceDetection *bool `json:"sourceOriginAbsenceDetection,omitempty" tf:"source_origin_absence_detection,omitempty"`

	// If set, Artifactory will notify the remote instance whenever an artifact in the Smart Remote Repository is downloaded locally so that it can update its download counter. Note that if this option is not set, there may be a discrepancy between the number of artifacts reported to have been downloaded in the different Artifactory instances of the proxy chain. Default value is 'false'.
	// +kubebuilder:validation:Optional
	StatisticsEnabled *bool `json:"statisticsEnabled,omitempty" tf:"statistics_enabled,omitempty"`
}

func (*VCSRepositoryContentSynchronisationParameters) DeepCopy added in v0.11.1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryContentSynchronisationParameters.

func (*VCSRepositoryContentSynchronisationParameters) DeepCopyInto added in v0.11.1

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositoryInitParameters added in v0.11.1

type VCSRepositoryInitParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []VCSRepositoryContentSynchronisationInitParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*VCSRepositoryInitParameters) DeepCopy added in v0.11.1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryInitParameters.

func (*VCSRepositoryInitParameters) DeepCopyInto added in v0.11.1

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositoryList added in v0.11.1

type VCSRepositoryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []VCSRepository `json:"items"`
}

VCSRepositoryList contains a list of VCSRepositorys

func (*VCSRepositoryList) DeepCopy added in v0.11.1

func (in *VCSRepositoryList) DeepCopy() *VCSRepositoryList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryList.

func (*VCSRepositoryList) DeepCopyInto added in v0.11.1

func (in *VCSRepositoryList) DeepCopyInto(out *VCSRepositoryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VCSRepositoryList) DeepCopyObject added in v0.11.1

func (in *VCSRepositoryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VCSRepositoryList) GetItems added in v0.11.1

func (l *VCSRepositoryList) GetItems() []resource.Managed

GetItems of this VCSRepositoryList.

type VCSRepositoryObservation added in v0.11.1

type VCSRepositoryObservation struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	ContentSynchronisation []VCSRepositoryContentSynchronisationObservation `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*VCSRepositoryObservation) DeepCopy added in v0.11.1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryObservation.

func (*VCSRepositoryObservation) DeepCopyInto added in v0.11.1

func (in *VCSRepositoryObservation) DeepCopyInto(out *VCSRepositoryObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositoryParameters added in v0.11.1

type VCSRepositoryParameters struct {

	// 'Lenient Host Authentication' in the UI. Allow credentials of this repository to be used on requests redirected to any other host.
	// +kubebuilder:validation:Optional
	AllowAnyHostAuth *bool `json:"allowAnyHostAuth,omitempty" tf:"allow_any_host_auth,omitempty"`

	// When set, you may view content such as HTML or Javadoc files directly from Artifactory.
	// This may not be safe and therefore requires strict content moderation to prevent malicious users from uploading content that may compromise security (e.g., cross-site scripting attacks).
	// +kubebuilder:validation:Optional
	ArchiveBrowsingEnabled *bool `json:"archiveBrowsingEnabled,omitempty" tf:"archive_browsing_enabled,omitempty"`

	// The number of seconds the repository stays in assumed offline state after a connection error. At the end of this time, an online check is attempted in order to reset the offline status. A value of 0 means the repository is never assumed offline.
	// +kubebuilder:validation:Optional
	AssumedOfflinePeriodSecs *float64 `json:"assumedOfflinePeriodSecs,omitempty" tf:"assumed_offline_period_secs,omitempty"`

	// (A.K.A 'Ignore Repository' on the UI) When set, the repository or its local cache do not participate in artifact resolution.
	// +kubebuilder:validation:Optional
	BlackedOut *bool `json:"blackedOut,omitempty" tf:"blacked_out,omitempty"`

	// If set, artifacts will fail to download if a mismatch is detected between requested and received mimetype, according to the list specified in the system properties file under blockedMismatchingMimeTypes. You can override by adding mimetypes to the override list 'mismatching_mime_types_override_list'.
	// +kubebuilder:validation:Optional
	BlockMismatchingMimeTypes *bool `json:"blockMismatchingMimeTypes,omitempty" tf:"block_mismatching_mime_types,omitempty"`

	// Before caching an artifact, Artifactory first sends a HEAD request to the remote resource. In some remote resources, HEAD requests are disallowed and therefore rejected, even though downloading the artifact is allowed. When checked, Artifactory will bypass the HEAD request and cache the artifact directly using a GET request.
	// +kubebuilder:validation:Optional
	BypassHeadRequests *bool `json:"bypassHeadRequests,omitempty" tf:"bypass_head_requests,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from AWS CloudFront. Available in Enterprise+ and Edge licenses only. Default value is 'false'
	// +kubebuilder:validation:Optional
	CdnRedirect *bool `json:"cdnRedirect,omitempty" tf:"cdn_redirect,omitempty"`

	// Client TLS certificate name.
	// +kubebuilder:validation:Optional
	ClientTLSCertificate *string `json:"clientTlsCertificate,omitempty" tf:"client_tls_certificate,omitempty"`

	// +kubebuilder:validation:Optional
	ContentSynchronisation []VCSRepositoryContentSynchronisationParameters `json:"contentSynchronisation,omitempty" tf:"content_synchronisation,omitempty"`

	// Public description.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// When set to `true`, the proxy is disabled, and not returned in the API response body. If there is a default proxy set for the Artifactory instance, it will be ignored, too. Introduced since Artifactory 7.41.7.
	// +kubebuilder:validation:Optional
	DisableProxy *bool `json:"disableProxy,omitempty" tf:"disable_proxy,omitempty"`

	// Whether to disable URL normalization. Default is `false`.
	// +kubebuilder:validation:Optional
	DisableURLNormalization *bool `json:"disableUrlNormalization,omitempty" tf:"disable_url_normalization,omitempty"`

	// When set, download requests to this repository will redirect the client to download the artifact directly from the cloud storage provider. Available in Enterprise+ and Edge licenses only. Default value is 'false'.
	// +kubebuilder:validation:Optional
	DownloadDirect *bool `json:"downloadDirect,omitempty" tf:"download_direct,omitempty"`

	// Enables cookie management if the remote repository uses cookies to manage client state.
	// +kubebuilder:validation:Optional
	EnableCookieManagement *bool `json:"enableCookieManagement,omitempty" tf:"enable_cookie_management,omitempty"`

	// List of artifact patterns to exclude when evaluating artifact requests, in the form of `x/y/**/z/*`.By default no artifacts are excluded.
	// +kubebuilder:validation:Optional
	ExcludesPattern *string `json:"excludesPattern,omitempty" tf:"excludes_pattern,omitempty"`

	// When set, Artifactory will return an error to the client that causes the build to fail if there is a failure to communicate with this repository.
	// +kubebuilder:validation:Optional
	HardFail *bool `json:"hardFail,omitempty" tf:"hard_fail,omitempty"`

	// List of comma-separated artifact patterns to include when evaluating artifact requests in the form of `x/y/**/z/*`. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (`**/*`).
	// +kubebuilder:validation:Optional
	IncludesPattern *string `json:"includesPattern,omitempty" tf:"includes_pattern,omitempty"`

	// Lists the items of remote folders in simple and list browsing. The remote content is cached according to the value of the 'Retrieval Cache Period'. Default value is 'false'. This field exists in the API but not in the UI.
	// +kubebuilder:validation:Optional
	ListRemoteFolderItems *bool `json:"listRemoteFolderItems,omitempty" tf:"list_remote_folder_items,omitempty"`

	// The local address to be used when creating connections. Useful for specifying the interface to use on systems with multiple network interfaces.
	// +kubebuilder:validation:Optional
	LocalAddress *string `json:"localAddress,omitempty" tf:"local_address,omitempty"`

	// The maximum number of unique snapshots of a single artifact to store. Once the number of snapshots exceeds this setting, older versions are removed. A value of 0 (default) indicates there is no limit, and unique snapshots are not cleaned up.
	// +kubebuilder:validation:Optional
	MaxUniqueSnapshots *float64 `json:"maxUniqueSnapshots,omitempty" tf:"max_unique_snapshots,omitempty"`

	// Metadata Retrieval Cache Timeout (Sec) in the UI.This value refers to the number of seconds to wait for retrieval from the remote before serving locally cached artifact or fail the request.
	// +kubebuilder:validation:Optional
	MetadataRetrievalTimeoutSecs *float64 `json:"metadataRetrievalTimeoutSecs,omitempty" tf:"metadata_retrieval_timeout_secs,omitempty"`

	// The set of mime types that should override the block_mismatching_mime_types setting. Eg: 'application/json,application/xml'. Default value is empty.
	// +kubebuilder:validation:Optional
	MismatchingMimeTypesOverrideList *string `json:"mismatchingMimeTypesOverrideList,omitempty" tf:"mismatching_mime_types_override_list,omitempty"`

	// Missed Retrieval Cache Period (Sec) in the UI. The number of seconds to cache artifact retrieval misses (artifact not found). A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	MissedCachePeriodSeconds *float64 `json:"missedCachePeriodSeconds,omitempty" tf:"missed_cache_period_seconds,omitempty"`

	// Internal description.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// If set, Artifactory does not try to fetch remote artifacts. Only locally-cached artifacts are retrieved.
	// +kubebuilder:validation:Optional
	Offline *bool `json:"offline,omitempty" tf:"offline,omitempty"`

	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// Setting repositories with priority will cause metadata to be merged only from repositories set with this field
	// +kubebuilder:validation:Optional
	PriorityResolution *bool `json:"priorityResolution,omitempty" tf:"priority_resolution,omitempty"`

	// Before Artifactory 7.53.1, up to 2 values (`DEV` and `PROD`) are allowed. From 7.53.1 to 7.107.1, only one value is allowed. From 7.107.1, multiple values are allowed.The attribute should only be used if the repository is already assigned to the existing project.
	// +kubebuilder:validation:Optional
	// +listType=set
	ProjectEnvironments []*string `json:"projectEnvironments,omitempty" tf:"project_environments,omitempty"`

	// Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
	// +kubebuilder:validation:Optional
	ProjectKey *string `json:"projectKey,omitempty" tf:"project_key,omitempty"`

	// List of property set name
	// +kubebuilder:validation:Optional
	// +listType=set
	PropertySets []*string `json:"propertySets,omitempty" tf:"property_sets,omitempty"`

	// Proxy key from Artifactory Proxies settings. Can't be set if `disable_proxy = true`.
	// +kubebuilder:validation:Optional
	Proxy *string `json:"proxy,omitempty" tf:"proxy,omitempty"`

	// Custom HTTP query parameters that will be automatically included in all remote resource requests. For example: `param1=val1&param2=val2&param3=val3`
	// +kubebuilder:validation:Optional
	QueryParams *string `json:"queryParams,omitempty" tf:"query_params,omitempty"`

	// Repository layout key for the remote layout mapping. Repository can be created without this attribute (or set to an empty string). Once it's set, it can't be removed by passing an empty string or removing the attribute, that will be ignored by the Artifactory API. UI shows an error message, if the user tries to remove the value.
	// +kubebuilder:validation:Optional
	RemoteRepoLayoutRef *string `json:"remoteRepoLayoutRef,omitempty" tf:"remote_repo_layout_ref,omitempty"`

	// Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
	// +kubebuilder:validation:Optional
	RepoLayoutRef *string `json:"repoLayoutRef,omitempty" tf:"repo_layout_ref,omitempty"`

	// Metadata Retrieval Cache Period (Sec) in the UI. This value refers to the number of seconds to cache metadata files before checking for newer versions on remote server. A value of 0 indicates no caching.
	// +kubebuilder:validation:Optional
	RetrievalCachePeriodSeconds *float64 `json:"retrievalCachePeriodSeconds,omitempty" tf:"retrieval_cache_period_seconds,omitempty"`

	// +kubebuilder:validation:Optional
	ShareConfiguration *bool `json:"shareConfiguration,omitempty" tf:"share_configuration,omitempty"`

	// Network timeout (in ms) to use when establishing a connection and for unanswered requests. Timing out on a network operation is considered a retrieval failure.
	// +kubebuilder:validation:Optional
	SocketTimeoutMillis *float64 `json:"socketTimeoutMillis,omitempty" tf:"socket_timeout_millis,omitempty"`

	// When set, the repository should store cached artifacts locally. When not set, artifacts are not stored locally, and direct repository-to-client streaming is used. This can be useful for multi-server setups over a high-speed LAN, with one Artifactory caching certain data on central storage, and streaming it directly to satellite pass-though Artifactory servers.
	// +kubebuilder:validation:Optional
	StoreArtifactsLocally *bool `json:"storeArtifactsLocally,omitempty" tf:"store_artifacts_locally,omitempty"`

	// When set, remote artifacts are fetched along with their properties.
	// +kubebuilder:validation:Optional
	SynchronizeProperties *bool `json:"synchronizeProperties,omitempty" tf:"synchronize_properties,omitempty"`

	// This is a URL to the remote registry. Consider using HTTPS to ensure a secure connection.
	// +kubebuilder:validation:Optional
	URL *string `json:"url,omitempty" tf:"url,omitempty"`

	// Unused Artifacts Cleanup Period (Hr) in the UI. The number of hours to wait before an artifact is deemed 'unused' and eligible for cleanup from the repository. A value of 0 means automatic cleanup of cached artifacts is disabled.
	// +kubebuilder:validation:Optional
	UnusedArtifactsCleanupPeriodHours *float64 `json:"unusedArtifactsCleanupPeriodHours,omitempty" tf:"unused_artifacts_cleanup_period_hours,omitempty"`

	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,omitempty"`

	// This attribute is used when vcs_git_provider is set to 'CUSTOM'. Provided URL will be used as proxy.
	// +kubebuilder:validation:Optional
	VcsGitDownloadURL *string `json:"vcsGitDownloadUrl,omitempty" tf:"vcs_git_download_url,omitempty"`

	// Artifactory supports proxying the following Git providers out-of-the-box: GitHub or a remote Artifactory instance. Default value is "GITHUB".
	// +kubebuilder:validation:Optional
	VcsGitProvider *string `json:"vcsGitProvider,omitempty" tf:"vcs_git_provider,omitempty"`

	// Enable Indexing In Xray. Repository will be indexed with the default retention period. You will be able to change it via Xray settings.
	// +kubebuilder:validation:Optional
	XrayIndex *bool `json:"xrayIndex,omitempty" tf:"xray_index,omitempty"`
}

func (*VCSRepositoryParameters) DeepCopy added in v0.11.1

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryParameters.

func (*VCSRepositoryParameters) DeepCopyInto added in v0.11.1

func (in *VCSRepositoryParameters) DeepCopyInto(out *VCSRepositoryParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositorySpec added in v0.11.1

type VCSRepositorySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     VCSRepositoryParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider VCSRepositoryInitParameters `json:"initProvider,omitempty"`
}

VCSRepositorySpec defines the desired state of VCSRepository

func (*VCSRepositorySpec) DeepCopy added in v0.11.1

func (in *VCSRepositorySpec) DeepCopy() *VCSRepositorySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositorySpec.

func (*VCSRepositorySpec) DeepCopyInto added in v0.11.1

func (in *VCSRepositorySpec) DeepCopyInto(out *VCSRepositorySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VCSRepositoryStatus added in v0.11.1

type VCSRepositoryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        VCSRepositoryObservation `json:"atProvider,omitempty"`
}

VCSRepositoryStatus defines the observed state of VCSRepository.

func (*VCSRepositoryStatus) DeepCopy added in v0.11.1

func (in *VCSRepositoryStatus) DeepCopy() *VCSRepositoryStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCSRepositoryStatus.

func (*VCSRepositoryStatus) DeepCopyInto added in v0.11.1

func (in *VCSRepositoryStatus) DeepCopyInto(out *VCSRepositoryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL