harbor

package
v3.8.4 Latest Latest
Warning

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

Go to latest
Published: Apr 4, 2023 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

A Pulumi package for creating and managing Harbor resources.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type ConfigAuth

type ConfigAuth struct {
	pulumi.CustomResourceState

	AuthMode            pulumi.StringOutput    `pulumi:"authMode"`
	LdapBaseDn          pulumi.StringPtrOutput `pulumi:"ldapBaseDn"`
	LdapFilter          pulumi.StringPtrOutput `pulumi:"ldapFilter"`
	LdapGroupAdminDn    pulumi.StringPtrOutput `pulumi:"ldapGroupAdminDn"`
	LdapGroupBaseDn     pulumi.StringPtrOutput `pulumi:"ldapGroupBaseDn"`
	LdapGroupFilter     pulumi.StringPtrOutput `pulumi:"ldapGroupFilter"`
	LdapGroupGid        pulumi.StringPtrOutput `pulumi:"ldapGroupGid"`
	LdapGroupMembership pulumi.StringPtrOutput `pulumi:"ldapGroupMembership"`
	LdapGroupScope      pulumi.StringPtrOutput `pulumi:"ldapGroupScope"`
	LdapGroupUid        pulumi.StringPtrOutput `pulumi:"ldapGroupUid"`
	LdapScope           pulumi.StringPtrOutput `pulumi:"ldapScope"`
	LdapSearchDn        pulumi.StringPtrOutput `pulumi:"ldapSearchDn"`
	LdapSearchPassword  pulumi.StringPtrOutput `pulumi:"ldapSearchPassword"`
	LdapUid             pulumi.StringPtrOutput `pulumi:"ldapUid"`
	LdapUrl             pulumi.StringPtrOutput `pulumi:"ldapUrl"`
	LdapVerifyCert      pulumi.BoolPtrOutput   `pulumi:"ldapVerifyCert"`
	OidcAdminGroup      pulumi.StringPtrOutput `pulumi:"oidcAdminGroup"`
	OidcAutoOnboard     pulumi.BoolPtrOutput   `pulumi:"oidcAutoOnboard"`
	OidcClientId        pulumi.StringPtrOutput `pulumi:"oidcClientId"`
	OidcClientSecret    pulumi.StringPtrOutput `pulumi:"oidcClientSecret"`
	OidcEndpoint        pulumi.StringPtrOutput `pulumi:"oidcEndpoint"`
	OidcGroupsClaim     pulumi.StringPtrOutput `pulumi:"oidcGroupsClaim"`
	OidcName            pulumi.StringPtrOutput `pulumi:"oidcName"`
	OidcScope           pulumi.StringPtrOutput `pulumi:"oidcScope"`
	OidcUserClaim       pulumi.StringPtrOutput `pulumi:"oidcUserClaim"`
	OidcVerifyCert      pulumi.BoolPtrOutput   `pulumi:"oidcVerifyCert"`
}

func GetConfigAuth

func GetConfigAuth(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConfigAuthState, opts ...pulumi.ResourceOption) (*ConfigAuth, error)

GetConfigAuth gets an existing ConfigAuth resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConfigAuth

func NewConfigAuth(ctx *pulumi.Context,
	name string, args *ConfigAuthArgs, opts ...pulumi.ResourceOption) (*ConfigAuth, error)

NewConfigAuth registers a new resource with the given unique name, arguments, and options.

func (*ConfigAuth) ElementType

func (*ConfigAuth) ElementType() reflect.Type

func (*ConfigAuth) ToConfigAuthOutput

func (i *ConfigAuth) ToConfigAuthOutput() ConfigAuthOutput

func (*ConfigAuth) ToConfigAuthOutputWithContext

func (i *ConfigAuth) ToConfigAuthOutputWithContext(ctx context.Context) ConfigAuthOutput

type ConfigAuthArgs

type ConfigAuthArgs struct {
	AuthMode            pulumi.StringInput
	LdapBaseDn          pulumi.StringPtrInput
	LdapFilter          pulumi.StringPtrInput
	LdapGroupAdminDn    pulumi.StringPtrInput
	LdapGroupBaseDn     pulumi.StringPtrInput
	LdapGroupFilter     pulumi.StringPtrInput
	LdapGroupGid        pulumi.StringPtrInput
	LdapGroupMembership pulumi.StringPtrInput
	LdapGroupScope      pulumi.StringPtrInput
	LdapGroupUid        pulumi.StringPtrInput
	LdapScope           pulumi.StringPtrInput
	LdapSearchDn        pulumi.StringPtrInput
	LdapSearchPassword  pulumi.StringPtrInput
	LdapUid             pulumi.StringPtrInput
	LdapUrl             pulumi.StringPtrInput
	LdapVerifyCert      pulumi.BoolPtrInput
	OidcAdminGroup      pulumi.StringPtrInput
	OidcAutoOnboard     pulumi.BoolPtrInput
	OidcClientId        pulumi.StringPtrInput
	OidcClientSecret    pulumi.StringPtrInput
	OidcEndpoint        pulumi.StringPtrInput
	OidcGroupsClaim     pulumi.StringPtrInput
	OidcName            pulumi.StringPtrInput
	OidcScope           pulumi.StringPtrInput
	OidcUserClaim       pulumi.StringPtrInput
	OidcVerifyCert      pulumi.BoolPtrInput
}

The set of arguments for constructing a ConfigAuth resource.

func (ConfigAuthArgs) ElementType

func (ConfigAuthArgs) ElementType() reflect.Type

type ConfigAuthArray

type ConfigAuthArray []ConfigAuthInput

func (ConfigAuthArray) ElementType

func (ConfigAuthArray) ElementType() reflect.Type

func (ConfigAuthArray) ToConfigAuthArrayOutput

func (i ConfigAuthArray) ToConfigAuthArrayOutput() ConfigAuthArrayOutput

func (ConfigAuthArray) ToConfigAuthArrayOutputWithContext

func (i ConfigAuthArray) ToConfigAuthArrayOutputWithContext(ctx context.Context) ConfigAuthArrayOutput

type ConfigAuthArrayInput

type ConfigAuthArrayInput interface {
	pulumi.Input

	ToConfigAuthArrayOutput() ConfigAuthArrayOutput
	ToConfigAuthArrayOutputWithContext(context.Context) ConfigAuthArrayOutput
}

ConfigAuthArrayInput is an input type that accepts ConfigAuthArray and ConfigAuthArrayOutput values. You can construct a concrete instance of `ConfigAuthArrayInput` via:

ConfigAuthArray{ ConfigAuthArgs{...} }

type ConfigAuthArrayOutput

type ConfigAuthArrayOutput struct{ *pulumi.OutputState }

func (ConfigAuthArrayOutput) ElementType

func (ConfigAuthArrayOutput) ElementType() reflect.Type

func (ConfigAuthArrayOutput) Index

func (ConfigAuthArrayOutput) ToConfigAuthArrayOutput

func (o ConfigAuthArrayOutput) ToConfigAuthArrayOutput() ConfigAuthArrayOutput

func (ConfigAuthArrayOutput) ToConfigAuthArrayOutputWithContext

func (o ConfigAuthArrayOutput) ToConfigAuthArrayOutputWithContext(ctx context.Context) ConfigAuthArrayOutput

type ConfigAuthInput

type ConfigAuthInput interface {
	pulumi.Input

	ToConfigAuthOutput() ConfigAuthOutput
	ToConfigAuthOutputWithContext(ctx context.Context) ConfigAuthOutput
}

type ConfigAuthMap

type ConfigAuthMap map[string]ConfigAuthInput

func (ConfigAuthMap) ElementType

func (ConfigAuthMap) ElementType() reflect.Type

func (ConfigAuthMap) ToConfigAuthMapOutput

func (i ConfigAuthMap) ToConfigAuthMapOutput() ConfigAuthMapOutput

func (ConfigAuthMap) ToConfigAuthMapOutputWithContext

func (i ConfigAuthMap) ToConfigAuthMapOutputWithContext(ctx context.Context) ConfigAuthMapOutput

type ConfigAuthMapInput

type ConfigAuthMapInput interface {
	pulumi.Input

	ToConfigAuthMapOutput() ConfigAuthMapOutput
	ToConfigAuthMapOutputWithContext(context.Context) ConfigAuthMapOutput
}

ConfigAuthMapInput is an input type that accepts ConfigAuthMap and ConfigAuthMapOutput values. You can construct a concrete instance of `ConfigAuthMapInput` via:

ConfigAuthMap{ "key": ConfigAuthArgs{...} }

type ConfigAuthMapOutput

type ConfigAuthMapOutput struct{ *pulumi.OutputState }

func (ConfigAuthMapOutput) ElementType

func (ConfigAuthMapOutput) ElementType() reflect.Type

func (ConfigAuthMapOutput) MapIndex

func (ConfigAuthMapOutput) ToConfigAuthMapOutput

func (o ConfigAuthMapOutput) ToConfigAuthMapOutput() ConfigAuthMapOutput

func (ConfigAuthMapOutput) ToConfigAuthMapOutputWithContext

func (o ConfigAuthMapOutput) ToConfigAuthMapOutputWithContext(ctx context.Context) ConfigAuthMapOutput

type ConfigAuthOutput

type ConfigAuthOutput struct{ *pulumi.OutputState }

func (ConfigAuthOutput) AuthMode

func (o ConfigAuthOutput) AuthMode() pulumi.StringOutput

func (ConfigAuthOutput) ElementType

func (ConfigAuthOutput) ElementType() reflect.Type

func (ConfigAuthOutput) LdapBaseDn

func (o ConfigAuthOutput) LdapBaseDn() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapFilter

func (o ConfigAuthOutput) LdapFilter() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupAdminDn

func (o ConfigAuthOutput) LdapGroupAdminDn() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupBaseDn

func (o ConfigAuthOutput) LdapGroupBaseDn() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupFilter

func (o ConfigAuthOutput) LdapGroupFilter() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupGid

func (o ConfigAuthOutput) LdapGroupGid() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupMembership

func (o ConfigAuthOutput) LdapGroupMembership() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupScope

func (o ConfigAuthOutput) LdapGroupScope() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapGroupUid

func (o ConfigAuthOutput) LdapGroupUid() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapScope

func (o ConfigAuthOutput) LdapScope() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapSearchDn

func (o ConfigAuthOutput) LdapSearchDn() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapSearchPassword

func (o ConfigAuthOutput) LdapSearchPassword() pulumi.StringPtrOutput

func (ConfigAuthOutput) LdapUid

func (ConfigAuthOutput) LdapUrl

func (ConfigAuthOutput) LdapVerifyCert

func (o ConfigAuthOutput) LdapVerifyCert() pulumi.BoolPtrOutput

func (ConfigAuthOutput) OidcAdminGroup

func (o ConfigAuthOutput) OidcAdminGroup() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcAutoOnboard

func (o ConfigAuthOutput) OidcAutoOnboard() pulumi.BoolPtrOutput

func (ConfigAuthOutput) OidcClientId

func (o ConfigAuthOutput) OidcClientId() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcClientSecret

func (o ConfigAuthOutput) OidcClientSecret() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcEndpoint

func (o ConfigAuthOutput) OidcEndpoint() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcGroupsClaim

func (o ConfigAuthOutput) OidcGroupsClaim() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcName

func (ConfigAuthOutput) OidcScope

func (o ConfigAuthOutput) OidcScope() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcUserClaim

func (o ConfigAuthOutput) OidcUserClaim() pulumi.StringPtrOutput

func (ConfigAuthOutput) OidcVerifyCert

func (o ConfigAuthOutput) OidcVerifyCert() pulumi.BoolPtrOutput

func (ConfigAuthOutput) ToConfigAuthOutput

func (o ConfigAuthOutput) ToConfigAuthOutput() ConfigAuthOutput

func (ConfigAuthOutput) ToConfigAuthOutputWithContext

func (o ConfigAuthOutput) ToConfigAuthOutputWithContext(ctx context.Context) ConfigAuthOutput

type ConfigAuthState

type ConfigAuthState struct {
	AuthMode            pulumi.StringPtrInput
	LdapBaseDn          pulumi.StringPtrInput
	LdapFilter          pulumi.StringPtrInput
	LdapGroupAdminDn    pulumi.StringPtrInput
	LdapGroupBaseDn     pulumi.StringPtrInput
	LdapGroupFilter     pulumi.StringPtrInput
	LdapGroupGid        pulumi.StringPtrInput
	LdapGroupMembership pulumi.StringPtrInput
	LdapGroupScope      pulumi.StringPtrInput
	LdapGroupUid        pulumi.StringPtrInput
	LdapScope           pulumi.StringPtrInput
	LdapSearchDn        pulumi.StringPtrInput
	LdapSearchPassword  pulumi.StringPtrInput
	LdapUid             pulumi.StringPtrInput
	LdapUrl             pulumi.StringPtrInput
	LdapVerifyCert      pulumi.BoolPtrInput
	OidcAdminGroup      pulumi.StringPtrInput
	OidcAutoOnboard     pulumi.BoolPtrInput
	OidcClientId        pulumi.StringPtrInput
	OidcClientSecret    pulumi.StringPtrInput
	OidcEndpoint        pulumi.StringPtrInput
	OidcGroupsClaim     pulumi.StringPtrInput
	OidcName            pulumi.StringPtrInput
	OidcScope           pulumi.StringPtrInput
	OidcUserClaim       pulumi.StringPtrInput
	OidcVerifyCert      pulumi.BoolPtrInput
}

func (ConfigAuthState) ElementType

func (ConfigAuthState) ElementType() reflect.Type

type ConfigEmail

type ConfigEmail struct {
	pulumi.CustomResourceState

	EmailFrom     pulumi.StringOutput    `pulumi:"emailFrom"`
	EmailHost     pulumi.StringOutput    `pulumi:"emailHost"`
	EmailInsecure pulumi.BoolPtrOutput   `pulumi:"emailInsecure"`
	EmailPassword pulumi.StringPtrOutput `pulumi:"emailPassword"`
	EmailPort     pulumi.IntPtrOutput    `pulumi:"emailPort"`
	EmailSsl      pulumi.BoolPtrOutput   `pulumi:"emailSsl"`
	EmailUsername pulumi.StringPtrOutput `pulumi:"emailUsername"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewConfigEmail(ctx, "main", &harbor.ConfigEmailArgs{
			EmailFrom: pulumi.String("dont_reply@acme.com"),
			EmailHost: pulumi.String("server.acme.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConfigEmail

func GetConfigEmail(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConfigEmailState, opts ...pulumi.ResourceOption) (*ConfigEmail, error)

GetConfigEmail gets an existing ConfigEmail resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConfigEmail

func NewConfigEmail(ctx *pulumi.Context,
	name string, args *ConfigEmailArgs, opts ...pulumi.ResourceOption) (*ConfigEmail, error)

NewConfigEmail registers a new resource with the given unique name, arguments, and options.

func (*ConfigEmail) ElementType

func (*ConfigEmail) ElementType() reflect.Type

func (*ConfigEmail) ToConfigEmailOutput

func (i *ConfigEmail) ToConfigEmailOutput() ConfigEmailOutput

func (*ConfigEmail) ToConfigEmailOutputWithContext

func (i *ConfigEmail) ToConfigEmailOutputWithContext(ctx context.Context) ConfigEmailOutput

type ConfigEmailArgs

type ConfigEmailArgs struct {
	EmailFrom     pulumi.StringInput
	EmailHost     pulumi.StringInput
	EmailInsecure pulumi.BoolPtrInput
	EmailPassword pulumi.StringPtrInput
	EmailPort     pulumi.IntPtrInput
	EmailSsl      pulumi.BoolPtrInput
	EmailUsername pulumi.StringPtrInput
}

The set of arguments for constructing a ConfigEmail resource.

func (ConfigEmailArgs) ElementType

func (ConfigEmailArgs) ElementType() reflect.Type

type ConfigEmailArray

type ConfigEmailArray []ConfigEmailInput

func (ConfigEmailArray) ElementType

func (ConfigEmailArray) ElementType() reflect.Type

func (ConfigEmailArray) ToConfigEmailArrayOutput

func (i ConfigEmailArray) ToConfigEmailArrayOutput() ConfigEmailArrayOutput

func (ConfigEmailArray) ToConfigEmailArrayOutputWithContext

func (i ConfigEmailArray) ToConfigEmailArrayOutputWithContext(ctx context.Context) ConfigEmailArrayOutput

type ConfigEmailArrayInput

type ConfigEmailArrayInput interface {
	pulumi.Input

	ToConfigEmailArrayOutput() ConfigEmailArrayOutput
	ToConfigEmailArrayOutputWithContext(context.Context) ConfigEmailArrayOutput
}

ConfigEmailArrayInput is an input type that accepts ConfigEmailArray and ConfigEmailArrayOutput values. You can construct a concrete instance of `ConfigEmailArrayInput` via:

ConfigEmailArray{ ConfigEmailArgs{...} }

type ConfigEmailArrayOutput

type ConfigEmailArrayOutput struct{ *pulumi.OutputState }

func (ConfigEmailArrayOutput) ElementType

func (ConfigEmailArrayOutput) ElementType() reflect.Type

func (ConfigEmailArrayOutput) Index

func (ConfigEmailArrayOutput) ToConfigEmailArrayOutput

func (o ConfigEmailArrayOutput) ToConfigEmailArrayOutput() ConfigEmailArrayOutput

func (ConfigEmailArrayOutput) ToConfigEmailArrayOutputWithContext

func (o ConfigEmailArrayOutput) ToConfigEmailArrayOutputWithContext(ctx context.Context) ConfigEmailArrayOutput

type ConfigEmailInput

type ConfigEmailInput interface {
	pulumi.Input

	ToConfigEmailOutput() ConfigEmailOutput
	ToConfigEmailOutputWithContext(ctx context.Context) ConfigEmailOutput
}

type ConfigEmailMap

type ConfigEmailMap map[string]ConfigEmailInput

func (ConfigEmailMap) ElementType

func (ConfigEmailMap) ElementType() reflect.Type

func (ConfigEmailMap) ToConfigEmailMapOutput

func (i ConfigEmailMap) ToConfigEmailMapOutput() ConfigEmailMapOutput

func (ConfigEmailMap) ToConfigEmailMapOutputWithContext

func (i ConfigEmailMap) ToConfigEmailMapOutputWithContext(ctx context.Context) ConfigEmailMapOutput

type ConfigEmailMapInput

type ConfigEmailMapInput interface {
	pulumi.Input

	ToConfigEmailMapOutput() ConfigEmailMapOutput
	ToConfigEmailMapOutputWithContext(context.Context) ConfigEmailMapOutput
}

ConfigEmailMapInput is an input type that accepts ConfigEmailMap and ConfigEmailMapOutput values. You can construct a concrete instance of `ConfigEmailMapInput` via:

ConfigEmailMap{ "key": ConfigEmailArgs{...} }

type ConfigEmailMapOutput

type ConfigEmailMapOutput struct{ *pulumi.OutputState }

func (ConfigEmailMapOutput) ElementType

func (ConfigEmailMapOutput) ElementType() reflect.Type

func (ConfigEmailMapOutput) MapIndex

func (ConfigEmailMapOutput) ToConfigEmailMapOutput

func (o ConfigEmailMapOutput) ToConfigEmailMapOutput() ConfigEmailMapOutput

func (ConfigEmailMapOutput) ToConfigEmailMapOutputWithContext

func (o ConfigEmailMapOutput) ToConfigEmailMapOutputWithContext(ctx context.Context) ConfigEmailMapOutput

type ConfigEmailOutput

type ConfigEmailOutput struct{ *pulumi.OutputState }

func (ConfigEmailOutput) ElementType

func (ConfigEmailOutput) ElementType() reflect.Type

func (ConfigEmailOutput) EmailFrom

func (o ConfigEmailOutput) EmailFrom() pulumi.StringOutput

func (ConfigEmailOutput) EmailHost

func (o ConfigEmailOutput) EmailHost() pulumi.StringOutput

func (ConfigEmailOutput) EmailInsecure

func (o ConfigEmailOutput) EmailInsecure() pulumi.BoolPtrOutput

func (ConfigEmailOutput) EmailPassword

func (o ConfigEmailOutput) EmailPassword() pulumi.StringPtrOutput

func (ConfigEmailOutput) EmailPort

func (o ConfigEmailOutput) EmailPort() pulumi.IntPtrOutput

func (ConfigEmailOutput) EmailSsl

func (o ConfigEmailOutput) EmailSsl() pulumi.BoolPtrOutput

func (ConfigEmailOutput) EmailUsername

func (o ConfigEmailOutput) EmailUsername() pulumi.StringPtrOutput

func (ConfigEmailOutput) ToConfigEmailOutput

func (o ConfigEmailOutput) ToConfigEmailOutput() ConfigEmailOutput

func (ConfigEmailOutput) ToConfigEmailOutputWithContext

func (o ConfigEmailOutput) ToConfigEmailOutputWithContext(ctx context.Context) ConfigEmailOutput

type ConfigEmailState

type ConfigEmailState struct {
	EmailFrom     pulumi.StringPtrInput
	EmailHost     pulumi.StringPtrInput
	EmailInsecure pulumi.BoolPtrInput
	EmailPassword pulumi.StringPtrInput
	EmailPort     pulumi.IntPtrInput
	EmailSsl      pulumi.BoolPtrInput
	EmailUsername pulumi.StringPtrInput
}

func (ConfigEmailState) ElementType

func (ConfigEmailState) ElementType() reflect.Type

type ConfigSystem

type ConfigSystem struct {
	pulumi.CustomResourceState

	ProjectCreationRestriction pulumi.StringPtrOutput `pulumi:"projectCreationRestriction"`
	ReadOnly                   pulumi.BoolPtrOutput   `pulumi:"readOnly"`
	RobotNamePrefix            pulumi.StringPtrOutput `pulumi:"robotNamePrefix"`
	RobotTokenExpiration       pulumi.IntPtrOutput    `pulumi:"robotTokenExpiration"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewConfigSystem(ctx, "main", &harbor.ConfigSystemArgs{
			ProjectCreationRestriction: pulumi.String("adminonly"),
			RobotNamePrefix:            pulumi.String("harbor@"),
			RobotTokenExpiration:       pulumi.Int(30),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConfigSystem

func GetConfigSystem(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConfigSystemState, opts ...pulumi.ResourceOption) (*ConfigSystem, error)

GetConfigSystem gets an existing ConfigSystem resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConfigSystem

func NewConfigSystem(ctx *pulumi.Context,
	name string, args *ConfigSystemArgs, opts ...pulumi.ResourceOption) (*ConfigSystem, error)

NewConfigSystem registers a new resource with the given unique name, arguments, and options.

func (*ConfigSystem) ElementType

func (*ConfigSystem) ElementType() reflect.Type

func (*ConfigSystem) ToConfigSystemOutput

func (i *ConfigSystem) ToConfigSystemOutput() ConfigSystemOutput

func (*ConfigSystem) ToConfigSystemOutputWithContext

func (i *ConfigSystem) ToConfigSystemOutputWithContext(ctx context.Context) ConfigSystemOutput

type ConfigSystemArgs

type ConfigSystemArgs struct {
	ProjectCreationRestriction pulumi.StringPtrInput
	ReadOnly                   pulumi.BoolPtrInput
	RobotNamePrefix            pulumi.StringPtrInput
	RobotTokenExpiration       pulumi.IntPtrInput
}

The set of arguments for constructing a ConfigSystem resource.

func (ConfigSystemArgs) ElementType

func (ConfigSystemArgs) ElementType() reflect.Type

type ConfigSystemArray

type ConfigSystemArray []ConfigSystemInput

func (ConfigSystemArray) ElementType

func (ConfigSystemArray) ElementType() reflect.Type

func (ConfigSystemArray) ToConfigSystemArrayOutput

func (i ConfigSystemArray) ToConfigSystemArrayOutput() ConfigSystemArrayOutput

func (ConfigSystemArray) ToConfigSystemArrayOutputWithContext

func (i ConfigSystemArray) ToConfigSystemArrayOutputWithContext(ctx context.Context) ConfigSystemArrayOutput

type ConfigSystemArrayInput

type ConfigSystemArrayInput interface {
	pulumi.Input

	ToConfigSystemArrayOutput() ConfigSystemArrayOutput
	ToConfigSystemArrayOutputWithContext(context.Context) ConfigSystemArrayOutput
}

ConfigSystemArrayInput is an input type that accepts ConfigSystemArray and ConfigSystemArrayOutput values. You can construct a concrete instance of `ConfigSystemArrayInput` via:

ConfigSystemArray{ ConfigSystemArgs{...} }

type ConfigSystemArrayOutput

type ConfigSystemArrayOutput struct{ *pulumi.OutputState }

func (ConfigSystemArrayOutput) ElementType

func (ConfigSystemArrayOutput) ElementType() reflect.Type

func (ConfigSystemArrayOutput) Index

func (ConfigSystemArrayOutput) ToConfigSystemArrayOutput

func (o ConfigSystemArrayOutput) ToConfigSystemArrayOutput() ConfigSystemArrayOutput

func (ConfigSystemArrayOutput) ToConfigSystemArrayOutputWithContext

func (o ConfigSystemArrayOutput) ToConfigSystemArrayOutputWithContext(ctx context.Context) ConfigSystemArrayOutput

type ConfigSystemInput

type ConfigSystemInput interface {
	pulumi.Input

	ToConfigSystemOutput() ConfigSystemOutput
	ToConfigSystemOutputWithContext(ctx context.Context) ConfigSystemOutput
}

type ConfigSystemMap

type ConfigSystemMap map[string]ConfigSystemInput

func (ConfigSystemMap) ElementType

func (ConfigSystemMap) ElementType() reflect.Type

func (ConfigSystemMap) ToConfigSystemMapOutput

func (i ConfigSystemMap) ToConfigSystemMapOutput() ConfigSystemMapOutput

func (ConfigSystemMap) ToConfigSystemMapOutputWithContext

func (i ConfigSystemMap) ToConfigSystemMapOutputWithContext(ctx context.Context) ConfigSystemMapOutput

type ConfigSystemMapInput

type ConfigSystemMapInput interface {
	pulumi.Input

	ToConfigSystemMapOutput() ConfigSystemMapOutput
	ToConfigSystemMapOutputWithContext(context.Context) ConfigSystemMapOutput
}

ConfigSystemMapInput is an input type that accepts ConfigSystemMap and ConfigSystemMapOutput values. You can construct a concrete instance of `ConfigSystemMapInput` via:

ConfigSystemMap{ "key": ConfigSystemArgs{...} }

type ConfigSystemMapOutput

type ConfigSystemMapOutput struct{ *pulumi.OutputState }

func (ConfigSystemMapOutput) ElementType

func (ConfigSystemMapOutput) ElementType() reflect.Type

func (ConfigSystemMapOutput) MapIndex

func (ConfigSystemMapOutput) ToConfigSystemMapOutput

func (o ConfigSystemMapOutput) ToConfigSystemMapOutput() ConfigSystemMapOutput

func (ConfigSystemMapOutput) ToConfigSystemMapOutputWithContext

func (o ConfigSystemMapOutput) ToConfigSystemMapOutputWithContext(ctx context.Context) ConfigSystemMapOutput

type ConfigSystemOutput

type ConfigSystemOutput struct{ *pulumi.OutputState }

func (ConfigSystemOutput) ElementType

func (ConfigSystemOutput) ElementType() reflect.Type

func (ConfigSystemOutput) ProjectCreationRestriction

func (o ConfigSystemOutput) ProjectCreationRestriction() pulumi.StringPtrOutput

func (ConfigSystemOutput) ReadOnly

func (ConfigSystemOutput) RobotNamePrefix

func (o ConfigSystemOutput) RobotNamePrefix() pulumi.StringPtrOutput

func (ConfigSystemOutput) RobotTokenExpiration

func (o ConfigSystemOutput) RobotTokenExpiration() pulumi.IntPtrOutput

func (ConfigSystemOutput) ToConfigSystemOutput

func (o ConfigSystemOutput) ToConfigSystemOutput() ConfigSystemOutput

func (ConfigSystemOutput) ToConfigSystemOutputWithContext

func (o ConfigSystemOutput) ToConfigSystemOutputWithContext(ctx context.Context) ConfigSystemOutput

type ConfigSystemState

type ConfigSystemState struct {
	ProjectCreationRestriction pulumi.StringPtrInput
	ReadOnly                   pulumi.BoolPtrInput
	RobotNamePrefix            pulumi.StringPtrInput
	RobotTokenExpiration       pulumi.IntPtrInput
}

func (ConfigSystemState) ElementType

func (ConfigSystemState) ElementType() reflect.Type

type GarbageCollection

type GarbageCollection struct {
	pulumi.CustomResourceState

	DeleteUntagged pulumi.BoolPtrOutput `pulumi:"deleteUntagged"`
	Schedule       pulumi.StringOutput  `pulumi:"schedule"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewGarbageCollection(ctx, "main", &harbor.GarbageCollectionArgs{
			DeleteUntagged: pulumi.Bool(true),
			Schedule:       pulumi.String("Daily"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetGarbageCollection

func GetGarbageCollection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GarbageCollectionState, opts ...pulumi.ResourceOption) (*GarbageCollection, error)

GetGarbageCollection gets an existing GarbageCollection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGarbageCollection

func NewGarbageCollection(ctx *pulumi.Context,
	name string, args *GarbageCollectionArgs, opts ...pulumi.ResourceOption) (*GarbageCollection, error)

NewGarbageCollection registers a new resource with the given unique name, arguments, and options.

func (*GarbageCollection) ElementType

func (*GarbageCollection) ElementType() reflect.Type

func (*GarbageCollection) ToGarbageCollectionOutput

func (i *GarbageCollection) ToGarbageCollectionOutput() GarbageCollectionOutput

func (*GarbageCollection) ToGarbageCollectionOutputWithContext

func (i *GarbageCollection) ToGarbageCollectionOutputWithContext(ctx context.Context) GarbageCollectionOutput

type GarbageCollectionArgs

type GarbageCollectionArgs struct {
	DeleteUntagged pulumi.BoolPtrInput
	Schedule       pulumi.StringInput
}

The set of arguments for constructing a GarbageCollection resource.

func (GarbageCollectionArgs) ElementType

func (GarbageCollectionArgs) ElementType() reflect.Type

type GarbageCollectionArray

type GarbageCollectionArray []GarbageCollectionInput

func (GarbageCollectionArray) ElementType

func (GarbageCollectionArray) ElementType() reflect.Type

func (GarbageCollectionArray) ToGarbageCollectionArrayOutput

func (i GarbageCollectionArray) ToGarbageCollectionArrayOutput() GarbageCollectionArrayOutput

func (GarbageCollectionArray) ToGarbageCollectionArrayOutputWithContext

func (i GarbageCollectionArray) ToGarbageCollectionArrayOutputWithContext(ctx context.Context) GarbageCollectionArrayOutput

type GarbageCollectionArrayInput

type GarbageCollectionArrayInput interface {
	pulumi.Input

	ToGarbageCollectionArrayOutput() GarbageCollectionArrayOutput
	ToGarbageCollectionArrayOutputWithContext(context.Context) GarbageCollectionArrayOutput
}

GarbageCollectionArrayInput is an input type that accepts GarbageCollectionArray and GarbageCollectionArrayOutput values. You can construct a concrete instance of `GarbageCollectionArrayInput` via:

GarbageCollectionArray{ GarbageCollectionArgs{...} }

type GarbageCollectionArrayOutput

type GarbageCollectionArrayOutput struct{ *pulumi.OutputState }

func (GarbageCollectionArrayOutput) ElementType

func (GarbageCollectionArrayOutput) Index

func (GarbageCollectionArrayOutput) ToGarbageCollectionArrayOutput

func (o GarbageCollectionArrayOutput) ToGarbageCollectionArrayOutput() GarbageCollectionArrayOutput

func (GarbageCollectionArrayOutput) ToGarbageCollectionArrayOutputWithContext

func (o GarbageCollectionArrayOutput) ToGarbageCollectionArrayOutputWithContext(ctx context.Context) GarbageCollectionArrayOutput

type GarbageCollectionInput

type GarbageCollectionInput interface {
	pulumi.Input

	ToGarbageCollectionOutput() GarbageCollectionOutput
	ToGarbageCollectionOutputWithContext(ctx context.Context) GarbageCollectionOutput
}

type GarbageCollectionMap

type GarbageCollectionMap map[string]GarbageCollectionInput

func (GarbageCollectionMap) ElementType

func (GarbageCollectionMap) ElementType() reflect.Type

func (GarbageCollectionMap) ToGarbageCollectionMapOutput

func (i GarbageCollectionMap) ToGarbageCollectionMapOutput() GarbageCollectionMapOutput

func (GarbageCollectionMap) ToGarbageCollectionMapOutputWithContext

func (i GarbageCollectionMap) ToGarbageCollectionMapOutputWithContext(ctx context.Context) GarbageCollectionMapOutput

type GarbageCollectionMapInput

type GarbageCollectionMapInput interface {
	pulumi.Input

	ToGarbageCollectionMapOutput() GarbageCollectionMapOutput
	ToGarbageCollectionMapOutputWithContext(context.Context) GarbageCollectionMapOutput
}

GarbageCollectionMapInput is an input type that accepts GarbageCollectionMap and GarbageCollectionMapOutput values. You can construct a concrete instance of `GarbageCollectionMapInput` via:

GarbageCollectionMap{ "key": GarbageCollectionArgs{...} }

type GarbageCollectionMapOutput

type GarbageCollectionMapOutput struct{ *pulumi.OutputState }

func (GarbageCollectionMapOutput) ElementType

func (GarbageCollectionMapOutput) ElementType() reflect.Type

func (GarbageCollectionMapOutput) MapIndex

func (GarbageCollectionMapOutput) ToGarbageCollectionMapOutput

func (o GarbageCollectionMapOutput) ToGarbageCollectionMapOutput() GarbageCollectionMapOutput

func (GarbageCollectionMapOutput) ToGarbageCollectionMapOutputWithContext

func (o GarbageCollectionMapOutput) ToGarbageCollectionMapOutputWithContext(ctx context.Context) GarbageCollectionMapOutput

type GarbageCollectionOutput

type GarbageCollectionOutput struct{ *pulumi.OutputState }

func (GarbageCollectionOutput) DeleteUntagged

func (o GarbageCollectionOutput) DeleteUntagged() pulumi.BoolPtrOutput

func (GarbageCollectionOutput) ElementType

func (GarbageCollectionOutput) ElementType() reflect.Type

func (GarbageCollectionOutput) Schedule

func (GarbageCollectionOutput) ToGarbageCollectionOutput

func (o GarbageCollectionOutput) ToGarbageCollectionOutput() GarbageCollectionOutput

func (GarbageCollectionOutput) ToGarbageCollectionOutputWithContext

func (o GarbageCollectionOutput) ToGarbageCollectionOutputWithContext(ctx context.Context) GarbageCollectionOutput

type GarbageCollectionState

type GarbageCollectionState struct {
	DeleteUntagged pulumi.BoolPtrInput
	Schedule       pulumi.StringPtrInput
}

func (GarbageCollectionState) ElementType

func (GarbageCollectionState) ElementType() reflect.Type

type Group

type Group struct {
	pulumi.CustomResourceState

	GroupName pulumi.StringOutput `pulumi:"groupName"`
	GroupType pulumi.IntOutput    `pulumi:"groupType"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewGroup(ctx, "storage-group", &harbor.GroupArgs{
			GroupName: pulumi.String("storage-group"),
			GroupType: pulumi.Int(3),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An OIDC group can be imported using the `group id` eg, `

```sh

$ pulumi import harbor:index/group:Group storage-group /usergroups/19

```

`

func GetGroup

func GetGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GroupState, opts ...pulumi.ResourceOption) (*Group, error)

GetGroup gets an existing Group resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGroup

func NewGroup(ctx *pulumi.Context,
	name string, args *GroupArgs, opts ...pulumi.ResourceOption) (*Group, error)

NewGroup registers a new resource with the given unique name, arguments, and options.

func (*Group) ElementType

func (*Group) ElementType() reflect.Type

func (*Group) ToGroupOutput

func (i *Group) ToGroupOutput() GroupOutput

func (*Group) ToGroupOutputWithContext

func (i *Group) ToGroupOutputWithContext(ctx context.Context) GroupOutput

type GroupArgs

type GroupArgs struct {
	GroupName pulumi.StringInput
	GroupType pulumi.IntInput
}

The set of arguments for constructing a Group resource.

func (GroupArgs) ElementType

func (GroupArgs) ElementType() reflect.Type

type GroupArray

type GroupArray []GroupInput

func (GroupArray) ElementType

func (GroupArray) ElementType() reflect.Type

func (GroupArray) ToGroupArrayOutput

func (i GroupArray) ToGroupArrayOutput() GroupArrayOutput

func (GroupArray) ToGroupArrayOutputWithContext

func (i GroupArray) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput

type GroupArrayInput

type GroupArrayInput interface {
	pulumi.Input

	ToGroupArrayOutput() GroupArrayOutput
	ToGroupArrayOutputWithContext(context.Context) GroupArrayOutput
}

GroupArrayInput is an input type that accepts GroupArray and GroupArrayOutput values. You can construct a concrete instance of `GroupArrayInput` via:

GroupArray{ GroupArgs{...} }

type GroupArrayOutput

type GroupArrayOutput struct{ *pulumi.OutputState }

func (GroupArrayOutput) ElementType

func (GroupArrayOutput) ElementType() reflect.Type

func (GroupArrayOutput) Index

func (GroupArrayOutput) ToGroupArrayOutput

func (o GroupArrayOutput) ToGroupArrayOutput() GroupArrayOutput

func (GroupArrayOutput) ToGroupArrayOutputWithContext

func (o GroupArrayOutput) ToGroupArrayOutputWithContext(ctx context.Context) GroupArrayOutput

type GroupInput

type GroupInput interface {
	pulumi.Input

	ToGroupOutput() GroupOutput
	ToGroupOutputWithContext(ctx context.Context) GroupOutput
}

type GroupMap

type GroupMap map[string]GroupInput

func (GroupMap) ElementType

func (GroupMap) ElementType() reflect.Type

func (GroupMap) ToGroupMapOutput

func (i GroupMap) ToGroupMapOutput() GroupMapOutput

func (GroupMap) ToGroupMapOutputWithContext

func (i GroupMap) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput

type GroupMapInput

type GroupMapInput interface {
	pulumi.Input

	ToGroupMapOutput() GroupMapOutput
	ToGroupMapOutputWithContext(context.Context) GroupMapOutput
}

GroupMapInput is an input type that accepts GroupMap and GroupMapOutput values. You can construct a concrete instance of `GroupMapInput` via:

GroupMap{ "key": GroupArgs{...} }

type GroupMapOutput

type GroupMapOutput struct{ *pulumi.OutputState }

func (GroupMapOutput) ElementType

func (GroupMapOutput) ElementType() reflect.Type

func (GroupMapOutput) MapIndex

func (GroupMapOutput) ToGroupMapOutput

func (o GroupMapOutput) ToGroupMapOutput() GroupMapOutput

func (GroupMapOutput) ToGroupMapOutputWithContext

func (o GroupMapOutput) ToGroupMapOutputWithContext(ctx context.Context) GroupMapOutput

type GroupOutput

type GroupOutput struct{ *pulumi.OutputState }

func (GroupOutput) ElementType

func (GroupOutput) ElementType() reflect.Type

func (GroupOutput) GroupName

func (o GroupOutput) GroupName() pulumi.StringOutput

func (GroupOutput) GroupType

func (o GroupOutput) GroupType() pulumi.IntOutput

func (GroupOutput) ToGroupOutput

func (o GroupOutput) ToGroupOutput() GroupOutput

func (GroupOutput) ToGroupOutputWithContext

func (o GroupOutput) ToGroupOutputWithContext(ctx context.Context) GroupOutput

type GroupState

type GroupState struct {
	GroupName pulumi.StringPtrInput
	GroupType pulumi.IntPtrInput
}

func (GroupState) ElementType

func (GroupState) ElementType() reflect.Type

type ImmutableTagRule

type ImmutableTagRule struct {
	pulumi.CustomResourceState

	// Specify if the rule is disable or not. Defaults to `false`
	Disabled  pulumi.BoolPtrOutput `pulumi:"disabled"`
	ProjectId pulumi.StringOutput  `pulumi:"projectId"`
	// For the repositories excuding.
	RepoExcluding pulumi.StringPtrOutput `pulumi:"repoExcluding"`
	// For the repositories matching.
	RepoMatching pulumi.StringPtrOutput `pulumi:"repoMatching"`
	// For the tag excuding.
	TagExcluding pulumi.StringPtrOutput `pulumi:"tagExcluding"`
	// For the tag matching.
	TagMatching pulumi.StringPtrOutput `pulumi:"tagMatching"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainProject, err := harbor.NewProject(ctx, "mainProject", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewImmutableTagRule(ctx, "mainImmutableTagRule", &harbor.ImmutableTagRuleArgs{
			ProjectId:    mainProject.ID(),
			RepoMatching: pulumi.String("**"),
			TagExcluding: pulumi.String("latest"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor immutable tag rule can be imported using the `project and immutabletagrule ids` eg, `

```sh

$ pulumi import harbor:index/immutableTagRule:ImmutableTagRule main /projects/4/immutabletagrules/25

```

`

func GetImmutableTagRule

func GetImmutableTagRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImmutableTagRuleState, opts ...pulumi.ResourceOption) (*ImmutableTagRule, error)

GetImmutableTagRule gets an existing ImmutableTagRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewImmutableTagRule

func NewImmutableTagRule(ctx *pulumi.Context,
	name string, args *ImmutableTagRuleArgs, opts ...pulumi.ResourceOption) (*ImmutableTagRule, error)

NewImmutableTagRule registers a new resource with the given unique name, arguments, and options.

func (*ImmutableTagRule) ElementType

func (*ImmutableTagRule) ElementType() reflect.Type

func (*ImmutableTagRule) ToImmutableTagRuleOutput

func (i *ImmutableTagRule) ToImmutableTagRuleOutput() ImmutableTagRuleOutput

func (*ImmutableTagRule) ToImmutableTagRuleOutputWithContext

func (i *ImmutableTagRule) ToImmutableTagRuleOutputWithContext(ctx context.Context) ImmutableTagRuleOutput

type ImmutableTagRuleArgs

type ImmutableTagRuleArgs struct {
	// Specify if the rule is disable or not. Defaults to `false`
	Disabled  pulumi.BoolPtrInput
	ProjectId pulumi.StringInput
	// For the repositories excuding.
	RepoExcluding pulumi.StringPtrInput
	// For the repositories matching.
	RepoMatching pulumi.StringPtrInput
	// For the tag excuding.
	TagExcluding pulumi.StringPtrInput
	// For the tag matching.
	TagMatching pulumi.StringPtrInput
}

The set of arguments for constructing a ImmutableTagRule resource.

func (ImmutableTagRuleArgs) ElementType

func (ImmutableTagRuleArgs) ElementType() reflect.Type

type ImmutableTagRuleArray

type ImmutableTagRuleArray []ImmutableTagRuleInput

func (ImmutableTagRuleArray) ElementType

func (ImmutableTagRuleArray) ElementType() reflect.Type

func (ImmutableTagRuleArray) ToImmutableTagRuleArrayOutput

func (i ImmutableTagRuleArray) ToImmutableTagRuleArrayOutput() ImmutableTagRuleArrayOutput

func (ImmutableTagRuleArray) ToImmutableTagRuleArrayOutputWithContext

func (i ImmutableTagRuleArray) ToImmutableTagRuleArrayOutputWithContext(ctx context.Context) ImmutableTagRuleArrayOutput

type ImmutableTagRuleArrayInput

type ImmutableTagRuleArrayInput interface {
	pulumi.Input

	ToImmutableTagRuleArrayOutput() ImmutableTagRuleArrayOutput
	ToImmutableTagRuleArrayOutputWithContext(context.Context) ImmutableTagRuleArrayOutput
}

ImmutableTagRuleArrayInput is an input type that accepts ImmutableTagRuleArray and ImmutableTagRuleArrayOutput values. You can construct a concrete instance of `ImmutableTagRuleArrayInput` via:

ImmutableTagRuleArray{ ImmutableTagRuleArgs{...} }

type ImmutableTagRuleArrayOutput

type ImmutableTagRuleArrayOutput struct{ *pulumi.OutputState }

func (ImmutableTagRuleArrayOutput) ElementType

func (ImmutableTagRuleArrayOutput) Index

func (ImmutableTagRuleArrayOutput) ToImmutableTagRuleArrayOutput

func (o ImmutableTagRuleArrayOutput) ToImmutableTagRuleArrayOutput() ImmutableTagRuleArrayOutput

func (ImmutableTagRuleArrayOutput) ToImmutableTagRuleArrayOutputWithContext

func (o ImmutableTagRuleArrayOutput) ToImmutableTagRuleArrayOutputWithContext(ctx context.Context) ImmutableTagRuleArrayOutput

type ImmutableTagRuleInput

type ImmutableTagRuleInput interface {
	pulumi.Input

	ToImmutableTagRuleOutput() ImmutableTagRuleOutput
	ToImmutableTagRuleOutputWithContext(ctx context.Context) ImmutableTagRuleOutput
}

type ImmutableTagRuleMap

type ImmutableTagRuleMap map[string]ImmutableTagRuleInput

func (ImmutableTagRuleMap) ElementType

func (ImmutableTagRuleMap) ElementType() reflect.Type

func (ImmutableTagRuleMap) ToImmutableTagRuleMapOutput

func (i ImmutableTagRuleMap) ToImmutableTagRuleMapOutput() ImmutableTagRuleMapOutput

func (ImmutableTagRuleMap) ToImmutableTagRuleMapOutputWithContext

func (i ImmutableTagRuleMap) ToImmutableTagRuleMapOutputWithContext(ctx context.Context) ImmutableTagRuleMapOutput

type ImmutableTagRuleMapInput

type ImmutableTagRuleMapInput interface {
	pulumi.Input

	ToImmutableTagRuleMapOutput() ImmutableTagRuleMapOutput
	ToImmutableTagRuleMapOutputWithContext(context.Context) ImmutableTagRuleMapOutput
}

ImmutableTagRuleMapInput is an input type that accepts ImmutableTagRuleMap and ImmutableTagRuleMapOutput values. You can construct a concrete instance of `ImmutableTagRuleMapInput` via:

ImmutableTagRuleMap{ "key": ImmutableTagRuleArgs{...} }

type ImmutableTagRuleMapOutput

type ImmutableTagRuleMapOutput struct{ *pulumi.OutputState }

func (ImmutableTagRuleMapOutput) ElementType

func (ImmutableTagRuleMapOutput) ElementType() reflect.Type

func (ImmutableTagRuleMapOutput) MapIndex

func (ImmutableTagRuleMapOutput) ToImmutableTagRuleMapOutput

func (o ImmutableTagRuleMapOutput) ToImmutableTagRuleMapOutput() ImmutableTagRuleMapOutput

func (ImmutableTagRuleMapOutput) ToImmutableTagRuleMapOutputWithContext

func (o ImmutableTagRuleMapOutput) ToImmutableTagRuleMapOutputWithContext(ctx context.Context) ImmutableTagRuleMapOutput

type ImmutableTagRuleOutput

type ImmutableTagRuleOutput struct{ *pulumi.OutputState }

func (ImmutableTagRuleOutput) Disabled

Specify if the rule is disable or not. Defaults to `false`

func (ImmutableTagRuleOutput) ElementType

func (ImmutableTagRuleOutput) ElementType() reflect.Type

func (ImmutableTagRuleOutput) ProjectId

func (ImmutableTagRuleOutput) RepoExcluding

func (o ImmutableTagRuleOutput) RepoExcluding() pulumi.StringPtrOutput

For the repositories excuding.

func (ImmutableTagRuleOutput) RepoMatching

For the repositories matching.

func (ImmutableTagRuleOutput) TagExcluding

For the tag excuding.

func (ImmutableTagRuleOutput) TagMatching

For the tag matching.

func (ImmutableTagRuleOutput) ToImmutableTagRuleOutput

func (o ImmutableTagRuleOutput) ToImmutableTagRuleOutput() ImmutableTagRuleOutput

func (ImmutableTagRuleOutput) ToImmutableTagRuleOutputWithContext

func (o ImmutableTagRuleOutput) ToImmutableTagRuleOutputWithContext(ctx context.Context) ImmutableTagRuleOutput

type ImmutableTagRuleState

type ImmutableTagRuleState struct {
	// Specify if the rule is disable or not. Defaults to `false`
	Disabled  pulumi.BoolPtrInput
	ProjectId pulumi.StringPtrInput
	// For the repositories excuding.
	RepoExcluding pulumi.StringPtrInput
	// For the repositories matching.
	RepoMatching pulumi.StringPtrInput
	// For the tag excuding.
	TagExcluding pulumi.StringPtrInput
	// For the tag matching.
	TagMatching pulumi.StringPtrInput
}

func (ImmutableTagRuleState) ElementType

func (ImmutableTagRuleState) ElementType() reflect.Type

type InterrogationServices

type InterrogationServices struct {
	pulumi.CustomResourceState

	// Sets the default interrogation service **Clair**
	DefaultScanner pulumi.StringPtrOutput `pulumi:"defaultScanner"`
	// The frequency of the vulnerability scanning is done. This can be `daily`, `weekly`, `monthly` or can be a custom cron string.
	VulnerabilityScanPolicy pulumi.StringOutput `pulumi:"vulnerabilityScanPolicy"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewInterrogationServices(ctx, "main", &harbor.InterrogationServicesArgs{
			VulnerabilityScanPolicy: pulumi.String("daily"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetInterrogationServices

func GetInterrogationServices(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InterrogationServicesState, opts ...pulumi.ResourceOption) (*InterrogationServices, error)

GetInterrogationServices gets an existing InterrogationServices resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInterrogationServices

func NewInterrogationServices(ctx *pulumi.Context,
	name string, args *InterrogationServicesArgs, opts ...pulumi.ResourceOption) (*InterrogationServices, error)

NewInterrogationServices registers a new resource with the given unique name, arguments, and options.

func (*InterrogationServices) ElementType

func (*InterrogationServices) ElementType() reflect.Type

func (*InterrogationServices) ToInterrogationServicesOutput

func (i *InterrogationServices) ToInterrogationServicesOutput() InterrogationServicesOutput

func (*InterrogationServices) ToInterrogationServicesOutputWithContext

func (i *InterrogationServices) ToInterrogationServicesOutputWithContext(ctx context.Context) InterrogationServicesOutput

type InterrogationServicesArgs

type InterrogationServicesArgs struct {
	// Sets the default interrogation service **Clair**
	DefaultScanner pulumi.StringPtrInput
	// The frequency of the vulnerability scanning is done. This can be `daily`, `weekly`, `monthly` or can be a custom cron string.
	VulnerabilityScanPolicy pulumi.StringInput
}

The set of arguments for constructing a InterrogationServices resource.

func (InterrogationServicesArgs) ElementType

func (InterrogationServicesArgs) ElementType() reflect.Type

type InterrogationServicesArray

type InterrogationServicesArray []InterrogationServicesInput

func (InterrogationServicesArray) ElementType

func (InterrogationServicesArray) ElementType() reflect.Type

func (InterrogationServicesArray) ToInterrogationServicesArrayOutput

func (i InterrogationServicesArray) ToInterrogationServicesArrayOutput() InterrogationServicesArrayOutput

func (InterrogationServicesArray) ToInterrogationServicesArrayOutputWithContext

func (i InterrogationServicesArray) ToInterrogationServicesArrayOutputWithContext(ctx context.Context) InterrogationServicesArrayOutput

type InterrogationServicesArrayInput

type InterrogationServicesArrayInput interface {
	pulumi.Input

	ToInterrogationServicesArrayOutput() InterrogationServicesArrayOutput
	ToInterrogationServicesArrayOutputWithContext(context.Context) InterrogationServicesArrayOutput
}

InterrogationServicesArrayInput is an input type that accepts InterrogationServicesArray and InterrogationServicesArrayOutput values. You can construct a concrete instance of `InterrogationServicesArrayInput` via:

InterrogationServicesArray{ InterrogationServicesArgs{...} }

type InterrogationServicesArrayOutput

type InterrogationServicesArrayOutput struct{ *pulumi.OutputState }

func (InterrogationServicesArrayOutput) ElementType

func (InterrogationServicesArrayOutput) Index

func (InterrogationServicesArrayOutput) ToInterrogationServicesArrayOutput

func (o InterrogationServicesArrayOutput) ToInterrogationServicesArrayOutput() InterrogationServicesArrayOutput

func (InterrogationServicesArrayOutput) ToInterrogationServicesArrayOutputWithContext

func (o InterrogationServicesArrayOutput) ToInterrogationServicesArrayOutputWithContext(ctx context.Context) InterrogationServicesArrayOutput

type InterrogationServicesInput

type InterrogationServicesInput interface {
	pulumi.Input

	ToInterrogationServicesOutput() InterrogationServicesOutput
	ToInterrogationServicesOutputWithContext(ctx context.Context) InterrogationServicesOutput
}

type InterrogationServicesMap

type InterrogationServicesMap map[string]InterrogationServicesInput

func (InterrogationServicesMap) ElementType

func (InterrogationServicesMap) ElementType() reflect.Type

func (InterrogationServicesMap) ToInterrogationServicesMapOutput

func (i InterrogationServicesMap) ToInterrogationServicesMapOutput() InterrogationServicesMapOutput

func (InterrogationServicesMap) ToInterrogationServicesMapOutputWithContext

func (i InterrogationServicesMap) ToInterrogationServicesMapOutputWithContext(ctx context.Context) InterrogationServicesMapOutput

type InterrogationServicesMapInput

type InterrogationServicesMapInput interface {
	pulumi.Input

	ToInterrogationServicesMapOutput() InterrogationServicesMapOutput
	ToInterrogationServicesMapOutputWithContext(context.Context) InterrogationServicesMapOutput
}

InterrogationServicesMapInput is an input type that accepts InterrogationServicesMap and InterrogationServicesMapOutput values. You can construct a concrete instance of `InterrogationServicesMapInput` via:

InterrogationServicesMap{ "key": InterrogationServicesArgs{...} }

type InterrogationServicesMapOutput

type InterrogationServicesMapOutput struct{ *pulumi.OutputState }

func (InterrogationServicesMapOutput) ElementType

func (InterrogationServicesMapOutput) MapIndex

func (InterrogationServicesMapOutput) ToInterrogationServicesMapOutput

func (o InterrogationServicesMapOutput) ToInterrogationServicesMapOutput() InterrogationServicesMapOutput

func (InterrogationServicesMapOutput) ToInterrogationServicesMapOutputWithContext

func (o InterrogationServicesMapOutput) ToInterrogationServicesMapOutputWithContext(ctx context.Context) InterrogationServicesMapOutput

type InterrogationServicesOutput

type InterrogationServicesOutput struct{ *pulumi.OutputState }

func (InterrogationServicesOutput) DefaultScanner

Sets the default interrogation service **Clair**

func (InterrogationServicesOutput) ElementType

func (InterrogationServicesOutput) ToInterrogationServicesOutput

func (o InterrogationServicesOutput) ToInterrogationServicesOutput() InterrogationServicesOutput

func (InterrogationServicesOutput) ToInterrogationServicesOutputWithContext

func (o InterrogationServicesOutput) ToInterrogationServicesOutputWithContext(ctx context.Context) InterrogationServicesOutput

func (InterrogationServicesOutput) VulnerabilityScanPolicy

func (o InterrogationServicesOutput) VulnerabilityScanPolicy() pulumi.StringOutput

The frequency of the vulnerability scanning is done. This can be `daily`, `weekly`, `monthly` or can be a custom cron string.

type InterrogationServicesState

type InterrogationServicesState struct {
	// Sets the default interrogation service **Clair**
	DefaultScanner pulumi.StringPtrInput
	// The frequency of the vulnerability scanning is done. This can be `daily`, `weekly`, `monthly` or can be a custom cron string.
	VulnerabilityScanPolicy pulumi.StringPtrInput
}

func (InterrogationServicesState) ElementType

func (InterrogationServicesState) ElementType() reflect.Type

type Label

type Label struct {
	pulumi.CustomResourceState

	Color       pulumi.StringPtrOutput `pulumi:"color"`
	Description pulumi.StringPtrOutput `pulumi:"description"`
	Name        pulumi.StringOutput    `pulumi:"name"`
	ProjectId   pulumi.StringPtrOutput `pulumi:"projectId"`
	Scope       pulumi.StringOutput    `pulumi:"scope"`
}

## Example Usage

* Create a global label within harbor ```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewLabel(ctx, "main", &harbor.LabelArgs{
			Color:       pulumi.String("#FF0000"),
			Description: pulumi.String("Description to for acceptance test"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

* Creates a label for project ```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainProject, err := harbor.NewProject(ctx, "mainProject", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewLabel(ctx, "mainLabel", &harbor.LabelArgs{
			Color:       pulumi.String("#FFFFFF"),
			Description: pulumi.String("Description for acceptance test"),
			ProjectId:   mainProject.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor label can be imported using the `label id` eg, `

```sh

$ pulumi import harbor:index/label:Label main /labels/1

```

`

func GetLabel

func GetLabel(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LabelState, opts ...pulumi.ResourceOption) (*Label, error)

GetLabel gets an existing Label resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLabel

func NewLabel(ctx *pulumi.Context,
	name string, args *LabelArgs, opts ...pulumi.ResourceOption) (*Label, error)

NewLabel registers a new resource with the given unique name, arguments, and options.

func (*Label) ElementType

func (*Label) ElementType() reflect.Type

func (*Label) ToLabelOutput

func (i *Label) ToLabelOutput() LabelOutput

func (*Label) ToLabelOutputWithContext

func (i *Label) ToLabelOutputWithContext(ctx context.Context) LabelOutput

type LabelArgs

type LabelArgs struct {
	Color       pulumi.StringPtrInput
	Description pulumi.StringPtrInput
	Name        pulumi.StringPtrInput
	ProjectId   pulumi.StringPtrInput
}

The set of arguments for constructing a Label resource.

func (LabelArgs) ElementType

func (LabelArgs) ElementType() reflect.Type

type LabelArray

type LabelArray []LabelInput

func (LabelArray) ElementType

func (LabelArray) ElementType() reflect.Type

func (LabelArray) ToLabelArrayOutput

func (i LabelArray) ToLabelArrayOutput() LabelArrayOutput

func (LabelArray) ToLabelArrayOutputWithContext

func (i LabelArray) ToLabelArrayOutputWithContext(ctx context.Context) LabelArrayOutput

type LabelArrayInput

type LabelArrayInput interface {
	pulumi.Input

	ToLabelArrayOutput() LabelArrayOutput
	ToLabelArrayOutputWithContext(context.Context) LabelArrayOutput
}

LabelArrayInput is an input type that accepts LabelArray and LabelArrayOutput values. You can construct a concrete instance of `LabelArrayInput` via:

LabelArray{ LabelArgs{...} }

type LabelArrayOutput

type LabelArrayOutput struct{ *pulumi.OutputState }

func (LabelArrayOutput) ElementType

func (LabelArrayOutput) ElementType() reflect.Type

func (LabelArrayOutput) Index

func (LabelArrayOutput) ToLabelArrayOutput

func (o LabelArrayOutput) ToLabelArrayOutput() LabelArrayOutput

func (LabelArrayOutput) ToLabelArrayOutputWithContext

func (o LabelArrayOutput) ToLabelArrayOutputWithContext(ctx context.Context) LabelArrayOutput

type LabelInput

type LabelInput interface {
	pulumi.Input

	ToLabelOutput() LabelOutput
	ToLabelOutputWithContext(ctx context.Context) LabelOutput
}

type LabelMap

type LabelMap map[string]LabelInput

func (LabelMap) ElementType

func (LabelMap) ElementType() reflect.Type

func (LabelMap) ToLabelMapOutput

func (i LabelMap) ToLabelMapOutput() LabelMapOutput

func (LabelMap) ToLabelMapOutputWithContext

func (i LabelMap) ToLabelMapOutputWithContext(ctx context.Context) LabelMapOutput

type LabelMapInput

type LabelMapInput interface {
	pulumi.Input

	ToLabelMapOutput() LabelMapOutput
	ToLabelMapOutputWithContext(context.Context) LabelMapOutput
}

LabelMapInput is an input type that accepts LabelMap and LabelMapOutput values. You can construct a concrete instance of `LabelMapInput` via:

LabelMap{ "key": LabelArgs{...} }

type LabelMapOutput

type LabelMapOutput struct{ *pulumi.OutputState }

func (LabelMapOutput) ElementType

func (LabelMapOutput) ElementType() reflect.Type

func (LabelMapOutput) MapIndex

func (LabelMapOutput) ToLabelMapOutput

func (o LabelMapOutput) ToLabelMapOutput() LabelMapOutput

func (LabelMapOutput) ToLabelMapOutputWithContext

func (o LabelMapOutput) ToLabelMapOutputWithContext(ctx context.Context) LabelMapOutput

type LabelOutput

type LabelOutput struct{ *pulumi.OutputState }

func (LabelOutput) Color

func (LabelOutput) Description

func (o LabelOutput) Description() pulumi.StringPtrOutput

func (LabelOutput) ElementType

func (LabelOutput) ElementType() reflect.Type

func (LabelOutput) Name

func (o LabelOutput) Name() pulumi.StringOutput

func (LabelOutput) ProjectId

func (o LabelOutput) ProjectId() pulumi.StringPtrOutput

func (LabelOutput) Scope

func (o LabelOutput) Scope() pulumi.StringOutput

func (LabelOutput) ToLabelOutput

func (o LabelOutput) ToLabelOutput() LabelOutput

func (LabelOutput) ToLabelOutputWithContext

func (o LabelOutput) ToLabelOutputWithContext(ctx context.Context) LabelOutput

type LabelState

type LabelState struct {
	Color       pulumi.StringPtrInput
	Description pulumi.StringPtrInput
	Name        pulumi.StringPtrInput
	ProjectId   pulumi.StringPtrInput
	Scope       pulumi.StringPtrInput
}

func (LabelState) ElementType

func (LabelState) ElementType() reflect.Type

type LookupProjectArgs

type LookupProjectArgs struct {
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getProject.

type LookupProjectOutputArgs

type LookupProjectOutputArgs struct {
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getProject.

func (LookupProjectOutputArgs) ElementType

func (LookupProjectOutputArgs) ElementType() reflect.Type

type LookupProjectResult

type LookupProjectResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                    string `pulumi:"id"`
	Name                  string `pulumi:"name"`
	ProjectId             int    `pulumi:"projectId"`
	Public                bool   `pulumi:"public"`
	VulnerabilityScanning bool   `pulumi:"vulnerabilityScanning"`
}

A collection of values returned by getProject.

func LookupProject

func LookupProject(ctx *pulumi.Context, args *LookupProjectArgs, opts ...pulumi.InvokeOption) (*LookupProjectResult, error)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := harbor.LookupProject(ctx, &harbor.LookupProjectArgs{
			Name: "library",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("projectId", main.Id)
		return nil
	})
}

```

type LookupProjectResultOutput

type LookupProjectResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getProject.

func (LookupProjectResultOutput) ElementType

func (LookupProjectResultOutput) ElementType() reflect.Type

func (LookupProjectResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupProjectResultOutput) Name

func (LookupProjectResultOutput) ProjectId

func (LookupProjectResultOutput) Public

func (LookupProjectResultOutput) ToLookupProjectResultOutput

func (o LookupProjectResultOutput) ToLookupProjectResultOutput() LookupProjectResultOutput

func (LookupProjectResultOutput) ToLookupProjectResultOutputWithContext

func (o LookupProjectResultOutput) ToLookupProjectResultOutputWithContext(ctx context.Context) LookupProjectResultOutput

func (LookupProjectResultOutput) VulnerabilityScanning

func (o LookupProjectResultOutput) VulnerabilityScanning() pulumi.BoolOutput

type LookupRegistryArgs

type LookupRegistryArgs struct {
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getRegistry.

type LookupRegistryOutputArgs

type LookupRegistryOutputArgs struct {
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getRegistry.

func (LookupRegistryOutputArgs) ElementType

func (LookupRegistryOutputArgs) ElementType() reflect.Type

type LookupRegistryResult

type LookupRegistryResult struct {
	Description string `pulumi:"description"`
	// The provider-assigned unique ID for this managed resource.
	Id         string `pulumi:"id"`
	Insecure   string `pulumi:"insecure"`
	Name       string `pulumi:"name"`
	RegistryId int    `pulumi:"registryId"`
	Status     string `pulumi:"status"`
	Type       string `pulumi:"type"`
	Url        string `pulumi:"url"`
}

A collection of values returned by getRegistry.

func LookupRegistry

func LookupRegistry(ctx *pulumi.Context, args *LookupRegistryArgs, opts ...pulumi.InvokeOption) (*LookupRegistryResult, error)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := harbor.LookupRegistry(ctx, &harbor.LookupRegistryArgs{
			Name: "test_docker_harbor",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("harborRegistryId", main.Id)
		return nil
	})
}

```

type LookupRegistryResultOutput

type LookupRegistryResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRegistry.

func (LookupRegistryResultOutput) Description

func (LookupRegistryResultOutput) ElementType

func (LookupRegistryResultOutput) ElementType() reflect.Type

func (LookupRegistryResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupRegistryResultOutput) Insecure

func (LookupRegistryResultOutput) Name

func (LookupRegistryResultOutput) RegistryId

func (LookupRegistryResultOutput) Status

func (LookupRegistryResultOutput) ToLookupRegistryResultOutput

func (o LookupRegistryResultOutput) ToLookupRegistryResultOutput() LookupRegistryResultOutput

func (LookupRegistryResultOutput) ToLookupRegistryResultOutputWithContext

func (o LookupRegistryResultOutput) ToLookupRegistryResultOutputWithContext(ctx context.Context) LookupRegistryResultOutput

func (LookupRegistryResultOutput) Type

func (LookupRegistryResultOutput) Url

type Project

type Project struct {
	pulumi.CustomResourceState

	// Project allowlist allows vulnerabilities in this list to be ignored in this project when pushing and pulling images. Should be in the format or `["CVE-123", "CVE-145"]` or `["CVE-123"]`
	CveAllowlists pulumi.StringArrayOutput `pulumi:"cveAllowlists"`
	// Prevent deployment of images with vulnerability severity equal or higher than the specified value. Images must be scanned before this takes effect. Possible values: `critical`, `high`, `medium`, `low`, `none`. (Default: `""` - empty)
	DeploymentSecurity pulumi.StringPtrOutput `pulumi:"deploymentSecurity"`
	// Enables Content Trust for project. When enabled it queries the embedded docker notary server. Can be set to `"true"` or `"false"` (Default: false)
	EnableContentTrust pulumi.BoolPtrOutput `pulumi:"enableContentTrust"`
	// A boolean that indicates all repositories should be deleted from the project so that the project can be destroyed without error. These repositories are *not* recoverable.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// The name of the project that will be created in harbor.
	Name pulumi.StringOutput `pulumi:"name"`
	// The id of the project with harbor.
	ProjectId pulumi.IntOutput `pulumi:"projectId"`
	// The project will be public accessibility. Can be set to `"true"` or `"false"` (Default: false)
	Public pulumi.StringPtrOutput `pulumi:"public"`
	// To enabled project as Proxy Cache
	RegistryId pulumi.IntOutput `pulumi:"registryId"`
	// The storage quota of the project in GB's
	StorageQuota pulumi.IntPtrOutput `pulumi:"storageQuota"`
	// Images will be scanned for vulnerabilities when push to harbor. Can be set to `"true"` or `"false"` (Default: true)
	VulnerabilityScanning pulumi.BoolPtrOutput `pulumi:"vulnerabilityScanning"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewProject(ctx, "main", &harbor.ProjectArgs{
			EnableContentTrust:    pulumi.Bool(true),
			Public:                pulumi.String("false"),
			VulnerabilityScanning: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ## Harbor project example as proxy cache

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		docker, err := harbor.NewRegistry(ctx, "docker", &harbor.RegistryArgs{
			ProviderName: pulumi.String("docker-hub"),
			EndpointUrl:  pulumi.String("https://hub.docker.com"),
		})
		if err != nil {
			return err
		}
		_, err = harbor.NewProject(ctx, "main", &harbor.ProjectArgs{
			RegistryId: docker.RegistryId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor project can be imported using the `project id` eg, `

```sh

$ pulumi import harbor:index/project:Project main /projects/1

```

`

func GetProject

func GetProject(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectState, opts ...pulumi.ResourceOption) (*Project, error)

GetProject gets an existing Project resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProject

func NewProject(ctx *pulumi.Context,
	name string, args *ProjectArgs, opts ...pulumi.ResourceOption) (*Project, error)

NewProject registers a new resource with the given unique name, arguments, and options.

func (*Project) ElementType

func (*Project) ElementType() reflect.Type

func (*Project) ToProjectOutput

func (i *Project) ToProjectOutput() ProjectOutput

func (*Project) ToProjectOutputWithContext

func (i *Project) ToProjectOutputWithContext(ctx context.Context) ProjectOutput

type ProjectArgs

type ProjectArgs struct {
	// Project allowlist allows vulnerabilities in this list to be ignored in this project when pushing and pulling images. Should be in the format or `["CVE-123", "CVE-145"]` or `["CVE-123"]`
	CveAllowlists pulumi.StringArrayInput
	// Prevent deployment of images with vulnerability severity equal or higher than the specified value. Images must be scanned before this takes effect. Possible values: `critical`, `high`, `medium`, `low`, `none`. (Default: `""` - empty)
	DeploymentSecurity pulumi.StringPtrInput
	// Enables Content Trust for project. When enabled it queries the embedded docker notary server. Can be set to `"true"` or `"false"` (Default: false)
	EnableContentTrust pulumi.BoolPtrInput
	// A boolean that indicates all repositories should be deleted from the project so that the project can be destroyed without error. These repositories are *not* recoverable.
	ForceDestroy pulumi.BoolPtrInput
	// The name of the project that will be created in harbor.
	Name pulumi.StringPtrInput
	// The project will be public accessibility. Can be set to `"true"` or `"false"` (Default: false)
	Public pulumi.StringPtrInput
	// To enabled project as Proxy Cache
	RegistryId pulumi.IntPtrInput
	// The storage quota of the project in GB's
	StorageQuota pulumi.IntPtrInput
	// Images will be scanned for vulnerabilities when push to harbor. Can be set to `"true"` or `"false"` (Default: true)
	VulnerabilityScanning pulumi.BoolPtrInput
}

The set of arguments for constructing a Project resource.

func (ProjectArgs) ElementType

func (ProjectArgs) ElementType() reflect.Type

type ProjectArray

type ProjectArray []ProjectInput

func (ProjectArray) ElementType

func (ProjectArray) ElementType() reflect.Type

func (ProjectArray) ToProjectArrayOutput

func (i ProjectArray) ToProjectArrayOutput() ProjectArrayOutput

func (ProjectArray) ToProjectArrayOutputWithContext

func (i ProjectArray) ToProjectArrayOutputWithContext(ctx context.Context) ProjectArrayOutput

type ProjectArrayInput

type ProjectArrayInput interface {
	pulumi.Input

	ToProjectArrayOutput() ProjectArrayOutput
	ToProjectArrayOutputWithContext(context.Context) ProjectArrayOutput
}

ProjectArrayInput is an input type that accepts ProjectArray and ProjectArrayOutput values. You can construct a concrete instance of `ProjectArrayInput` via:

ProjectArray{ ProjectArgs{...} }

type ProjectArrayOutput

type ProjectArrayOutput struct{ *pulumi.OutputState }

func (ProjectArrayOutput) ElementType

func (ProjectArrayOutput) ElementType() reflect.Type

func (ProjectArrayOutput) Index

func (ProjectArrayOutput) ToProjectArrayOutput

func (o ProjectArrayOutput) ToProjectArrayOutput() ProjectArrayOutput

func (ProjectArrayOutput) ToProjectArrayOutputWithContext

func (o ProjectArrayOutput) ToProjectArrayOutputWithContext(ctx context.Context) ProjectArrayOutput

type ProjectInput

type ProjectInput interface {
	pulumi.Input

	ToProjectOutput() ProjectOutput
	ToProjectOutputWithContext(ctx context.Context) ProjectOutput
}

type ProjectMap

type ProjectMap map[string]ProjectInput

func (ProjectMap) ElementType

func (ProjectMap) ElementType() reflect.Type

func (ProjectMap) ToProjectMapOutput

func (i ProjectMap) ToProjectMapOutput() ProjectMapOutput

func (ProjectMap) ToProjectMapOutputWithContext

func (i ProjectMap) ToProjectMapOutputWithContext(ctx context.Context) ProjectMapOutput

type ProjectMapInput

type ProjectMapInput interface {
	pulumi.Input

	ToProjectMapOutput() ProjectMapOutput
	ToProjectMapOutputWithContext(context.Context) ProjectMapOutput
}

ProjectMapInput is an input type that accepts ProjectMap and ProjectMapOutput values. You can construct a concrete instance of `ProjectMapInput` via:

ProjectMap{ "key": ProjectArgs{...} }

type ProjectMapOutput

type ProjectMapOutput struct{ *pulumi.OutputState }

func (ProjectMapOutput) ElementType

func (ProjectMapOutput) ElementType() reflect.Type

func (ProjectMapOutput) MapIndex

func (ProjectMapOutput) ToProjectMapOutput

func (o ProjectMapOutput) ToProjectMapOutput() ProjectMapOutput

func (ProjectMapOutput) ToProjectMapOutputWithContext

func (o ProjectMapOutput) ToProjectMapOutputWithContext(ctx context.Context) ProjectMapOutput

type ProjectMemberGroup

type ProjectMemberGroup struct {
	pulumi.CustomResourceState

	GroupId     pulumi.IntPtrOutput    `pulumi:"groupId"`
	GroupName   pulumi.StringPtrOutput `pulumi:"groupName"`
	LdapGroupDn pulumi.StringPtrOutput `pulumi:"ldapGroupDn"`
	MemberId    pulumi.IntOutput       `pulumi:"memberId"`
	ProjectId   pulumi.StringOutput    `pulumi:"projectId"`
	Role        pulumi.StringOutput    `pulumi:"role"`
	Type        pulumi.StringOutput    `pulumi:"type"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainProject, err := harbor.NewProject(ctx, "mainProject", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewProjectMemberGroup(ctx, "mainProjectMemberGroup", &harbor.ProjectMemberGroupArgs{
			ProjectId: mainProject.ID(),
			GroupName: pulumi.String("testing1"),
			Role:      pulumi.String("projectadmin"),
			Type:      pulumi.String("oidc"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor project member group can be imported using the `project id` and `member id` eg, `

```sh

$ pulumi import harbor:index/projectMemberGroup:ProjectMemberGroup main /projects/10/members/200

```

`

func GetProjectMemberGroup

func GetProjectMemberGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectMemberGroupState, opts ...pulumi.ResourceOption) (*ProjectMemberGroup, error)

GetProjectMemberGroup gets an existing ProjectMemberGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectMemberGroup

func NewProjectMemberGroup(ctx *pulumi.Context,
	name string, args *ProjectMemberGroupArgs, opts ...pulumi.ResourceOption) (*ProjectMemberGroup, error)

NewProjectMemberGroup registers a new resource with the given unique name, arguments, and options.

func (*ProjectMemberGroup) ElementType

func (*ProjectMemberGroup) ElementType() reflect.Type

func (*ProjectMemberGroup) ToProjectMemberGroupOutput

func (i *ProjectMemberGroup) ToProjectMemberGroupOutput() ProjectMemberGroupOutput

func (*ProjectMemberGroup) ToProjectMemberGroupOutputWithContext

func (i *ProjectMemberGroup) ToProjectMemberGroupOutputWithContext(ctx context.Context) ProjectMemberGroupOutput

type ProjectMemberGroupArgs

type ProjectMemberGroupArgs struct {
	GroupId     pulumi.IntPtrInput
	GroupName   pulumi.StringPtrInput
	LdapGroupDn pulumi.StringPtrInput
	ProjectId   pulumi.StringInput
	Role        pulumi.StringInput
	Type        pulumi.StringInput
}

The set of arguments for constructing a ProjectMemberGroup resource.

func (ProjectMemberGroupArgs) ElementType

func (ProjectMemberGroupArgs) ElementType() reflect.Type

type ProjectMemberGroupArray

type ProjectMemberGroupArray []ProjectMemberGroupInput

func (ProjectMemberGroupArray) ElementType

func (ProjectMemberGroupArray) ElementType() reflect.Type

func (ProjectMemberGroupArray) ToProjectMemberGroupArrayOutput

func (i ProjectMemberGroupArray) ToProjectMemberGroupArrayOutput() ProjectMemberGroupArrayOutput

func (ProjectMemberGroupArray) ToProjectMemberGroupArrayOutputWithContext

func (i ProjectMemberGroupArray) ToProjectMemberGroupArrayOutputWithContext(ctx context.Context) ProjectMemberGroupArrayOutput

type ProjectMemberGroupArrayInput

type ProjectMemberGroupArrayInput interface {
	pulumi.Input

	ToProjectMemberGroupArrayOutput() ProjectMemberGroupArrayOutput
	ToProjectMemberGroupArrayOutputWithContext(context.Context) ProjectMemberGroupArrayOutput
}

ProjectMemberGroupArrayInput is an input type that accepts ProjectMemberGroupArray and ProjectMemberGroupArrayOutput values. You can construct a concrete instance of `ProjectMemberGroupArrayInput` via:

ProjectMemberGroupArray{ ProjectMemberGroupArgs{...} }

type ProjectMemberGroupArrayOutput

type ProjectMemberGroupArrayOutput struct{ *pulumi.OutputState }

func (ProjectMemberGroupArrayOutput) ElementType

func (ProjectMemberGroupArrayOutput) Index

func (ProjectMemberGroupArrayOutput) ToProjectMemberGroupArrayOutput

func (o ProjectMemberGroupArrayOutput) ToProjectMemberGroupArrayOutput() ProjectMemberGroupArrayOutput

func (ProjectMemberGroupArrayOutput) ToProjectMemberGroupArrayOutputWithContext

func (o ProjectMemberGroupArrayOutput) ToProjectMemberGroupArrayOutputWithContext(ctx context.Context) ProjectMemberGroupArrayOutput

type ProjectMemberGroupInput

type ProjectMemberGroupInput interface {
	pulumi.Input

	ToProjectMemberGroupOutput() ProjectMemberGroupOutput
	ToProjectMemberGroupOutputWithContext(ctx context.Context) ProjectMemberGroupOutput
}

type ProjectMemberGroupMap

type ProjectMemberGroupMap map[string]ProjectMemberGroupInput

func (ProjectMemberGroupMap) ElementType

func (ProjectMemberGroupMap) ElementType() reflect.Type

func (ProjectMemberGroupMap) ToProjectMemberGroupMapOutput

func (i ProjectMemberGroupMap) ToProjectMemberGroupMapOutput() ProjectMemberGroupMapOutput

func (ProjectMemberGroupMap) ToProjectMemberGroupMapOutputWithContext

func (i ProjectMemberGroupMap) ToProjectMemberGroupMapOutputWithContext(ctx context.Context) ProjectMemberGroupMapOutput

type ProjectMemberGroupMapInput

type ProjectMemberGroupMapInput interface {
	pulumi.Input

	ToProjectMemberGroupMapOutput() ProjectMemberGroupMapOutput
	ToProjectMemberGroupMapOutputWithContext(context.Context) ProjectMemberGroupMapOutput
}

ProjectMemberGroupMapInput is an input type that accepts ProjectMemberGroupMap and ProjectMemberGroupMapOutput values. You can construct a concrete instance of `ProjectMemberGroupMapInput` via:

ProjectMemberGroupMap{ "key": ProjectMemberGroupArgs{...} }

type ProjectMemberGroupMapOutput

type ProjectMemberGroupMapOutput struct{ *pulumi.OutputState }

func (ProjectMemberGroupMapOutput) ElementType

func (ProjectMemberGroupMapOutput) MapIndex

func (ProjectMemberGroupMapOutput) ToProjectMemberGroupMapOutput

func (o ProjectMemberGroupMapOutput) ToProjectMemberGroupMapOutput() ProjectMemberGroupMapOutput

func (ProjectMemberGroupMapOutput) ToProjectMemberGroupMapOutputWithContext

func (o ProjectMemberGroupMapOutput) ToProjectMemberGroupMapOutputWithContext(ctx context.Context) ProjectMemberGroupMapOutput

type ProjectMemberGroupOutput

type ProjectMemberGroupOutput struct{ *pulumi.OutputState }

func (ProjectMemberGroupOutput) ElementType

func (ProjectMemberGroupOutput) ElementType() reflect.Type

func (ProjectMemberGroupOutput) GroupId

func (ProjectMemberGroupOutput) GroupName

func (ProjectMemberGroupOutput) LdapGroupDn

func (ProjectMemberGroupOutput) MemberId

func (ProjectMemberGroupOutput) ProjectId

func (ProjectMemberGroupOutput) Role

func (ProjectMemberGroupOutput) ToProjectMemberGroupOutput

func (o ProjectMemberGroupOutput) ToProjectMemberGroupOutput() ProjectMemberGroupOutput

func (ProjectMemberGroupOutput) ToProjectMemberGroupOutputWithContext

func (o ProjectMemberGroupOutput) ToProjectMemberGroupOutputWithContext(ctx context.Context) ProjectMemberGroupOutput

func (ProjectMemberGroupOutput) Type

type ProjectMemberGroupState

type ProjectMemberGroupState struct {
	GroupId     pulumi.IntPtrInput
	GroupName   pulumi.StringPtrInput
	LdapGroupDn pulumi.StringPtrInput
	MemberId    pulumi.IntPtrInput
	ProjectId   pulumi.StringPtrInput
	Role        pulumi.StringPtrInput
	Type        pulumi.StringPtrInput
}

func (ProjectMemberGroupState) ElementType

func (ProjectMemberGroupState) ElementType() reflect.Type

type ProjectMemberUser

type ProjectMemberUser struct {
	pulumi.CustomResourceState

	MemberId  pulumi.IntOutput    `pulumi:"memberId"`
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	Role      pulumi.StringOutput `pulumi:"role"`
	UserName  pulumi.StringOutput `pulumi:"userName"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainProject, err := harbor.NewProject(ctx, "mainProject", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewProjectMemberUser(ctx, "mainProjectMemberUser", &harbor.ProjectMemberUserArgs{
			ProjectId: mainProject.ID(),
			UserName:  pulumi.String("testing1"),
			Role:      pulumi.String("projectadmin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor project member user can be imported using the `project id` and `member id` eg, `

```sh

$ pulumi import harbor:index/projectMemberUser:ProjectMemberUser main /projects/10/members/200

```

`

func GetProjectMemberUser

func GetProjectMemberUser(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectMemberUserState, opts ...pulumi.ResourceOption) (*ProjectMemberUser, error)

GetProjectMemberUser gets an existing ProjectMemberUser resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectMemberUser

func NewProjectMemberUser(ctx *pulumi.Context,
	name string, args *ProjectMemberUserArgs, opts ...pulumi.ResourceOption) (*ProjectMemberUser, error)

NewProjectMemberUser registers a new resource with the given unique name, arguments, and options.

func (*ProjectMemberUser) ElementType

func (*ProjectMemberUser) ElementType() reflect.Type

func (*ProjectMemberUser) ToProjectMemberUserOutput

func (i *ProjectMemberUser) ToProjectMemberUserOutput() ProjectMemberUserOutput

func (*ProjectMemberUser) ToProjectMemberUserOutputWithContext

func (i *ProjectMemberUser) ToProjectMemberUserOutputWithContext(ctx context.Context) ProjectMemberUserOutput

type ProjectMemberUserArgs

type ProjectMemberUserArgs struct {
	ProjectId pulumi.StringInput
	Role      pulumi.StringInput
	UserName  pulumi.StringInput
}

The set of arguments for constructing a ProjectMemberUser resource.

func (ProjectMemberUserArgs) ElementType

func (ProjectMemberUserArgs) ElementType() reflect.Type

type ProjectMemberUserArray

type ProjectMemberUserArray []ProjectMemberUserInput

func (ProjectMemberUserArray) ElementType

func (ProjectMemberUserArray) ElementType() reflect.Type

func (ProjectMemberUserArray) ToProjectMemberUserArrayOutput

func (i ProjectMemberUserArray) ToProjectMemberUserArrayOutput() ProjectMemberUserArrayOutput

func (ProjectMemberUserArray) ToProjectMemberUserArrayOutputWithContext

func (i ProjectMemberUserArray) ToProjectMemberUserArrayOutputWithContext(ctx context.Context) ProjectMemberUserArrayOutput

type ProjectMemberUserArrayInput

type ProjectMemberUserArrayInput interface {
	pulumi.Input

	ToProjectMemberUserArrayOutput() ProjectMemberUserArrayOutput
	ToProjectMemberUserArrayOutputWithContext(context.Context) ProjectMemberUserArrayOutput
}

ProjectMemberUserArrayInput is an input type that accepts ProjectMemberUserArray and ProjectMemberUserArrayOutput values. You can construct a concrete instance of `ProjectMemberUserArrayInput` via:

ProjectMemberUserArray{ ProjectMemberUserArgs{...} }

type ProjectMemberUserArrayOutput

type ProjectMemberUserArrayOutput struct{ *pulumi.OutputState }

func (ProjectMemberUserArrayOutput) ElementType

func (ProjectMemberUserArrayOutput) Index

func (ProjectMemberUserArrayOutput) ToProjectMemberUserArrayOutput

func (o ProjectMemberUserArrayOutput) ToProjectMemberUserArrayOutput() ProjectMemberUserArrayOutput

func (ProjectMemberUserArrayOutput) ToProjectMemberUserArrayOutputWithContext

func (o ProjectMemberUserArrayOutput) ToProjectMemberUserArrayOutputWithContext(ctx context.Context) ProjectMemberUserArrayOutput

type ProjectMemberUserInput

type ProjectMemberUserInput interface {
	pulumi.Input

	ToProjectMemberUserOutput() ProjectMemberUserOutput
	ToProjectMemberUserOutputWithContext(ctx context.Context) ProjectMemberUserOutput
}

type ProjectMemberUserMap

type ProjectMemberUserMap map[string]ProjectMemberUserInput

func (ProjectMemberUserMap) ElementType

func (ProjectMemberUserMap) ElementType() reflect.Type

func (ProjectMemberUserMap) ToProjectMemberUserMapOutput

func (i ProjectMemberUserMap) ToProjectMemberUserMapOutput() ProjectMemberUserMapOutput

func (ProjectMemberUserMap) ToProjectMemberUserMapOutputWithContext

func (i ProjectMemberUserMap) ToProjectMemberUserMapOutputWithContext(ctx context.Context) ProjectMemberUserMapOutput

type ProjectMemberUserMapInput

type ProjectMemberUserMapInput interface {
	pulumi.Input

	ToProjectMemberUserMapOutput() ProjectMemberUserMapOutput
	ToProjectMemberUserMapOutputWithContext(context.Context) ProjectMemberUserMapOutput
}

ProjectMemberUserMapInput is an input type that accepts ProjectMemberUserMap and ProjectMemberUserMapOutput values. You can construct a concrete instance of `ProjectMemberUserMapInput` via:

ProjectMemberUserMap{ "key": ProjectMemberUserArgs{...} }

type ProjectMemberUserMapOutput

type ProjectMemberUserMapOutput struct{ *pulumi.OutputState }

func (ProjectMemberUserMapOutput) ElementType

func (ProjectMemberUserMapOutput) ElementType() reflect.Type

func (ProjectMemberUserMapOutput) MapIndex

func (ProjectMemberUserMapOutput) ToProjectMemberUserMapOutput

func (o ProjectMemberUserMapOutput) ToProjectMemberUserMapOutput() ProjectMemberUserMapOutput

func (ProjectMemberUserMapOutput) ToProjectMemberUserMapOutputWithContext

func (o ProjectMemberUserMapOutput) ToProjectMemberUserMapOutputWithContext(ctx context.Context) ProjectMemberUserMapOutput

type ProjectMemberUserOutput

type ProjectMemberUserOutput struct{ *pulumi.OutputState }

func (ProjectMemberUserOutput) ElementType

func (ProjectMemberUserOutput) ElementType() reflect.Type

func (ProjectMemberUserOutput) MemberId

func (ProjectMemberUserOutput) ProjectId

func (ProjectMemberUserOutput) Role

func (ProjectMemberUserOutput) ToProjectMemberUserOutput

func (o ProjectMemberUserOutput) ToProjectMemberUserOutput() ProjectMemberUserOutput

func (ProjectMemberUserOutput) ToProjectMemberUserOutputWithContext

func (o ProjectMemberUserOutput) ToProjectMemberUserOutputWithContext(ctx context.Context) ProjectMemberUserOutput

func (ProjectMemberUserOutput) UserName

type ProjectMemberUserState

type ProjectMemberUserState struct {
	MemberId  pulumi.IntPtrInput
	ProjectId pulumi.StringPtrInput
	Role      pulumi.StringPtrInput
	UserName  pulumi.StringPtrInput
}

func (ProjectMemberUserState) ElementType

func (ProjectMemberUserState) ElementType() reflect.Type

type ProjectOutput

type ProjectOutput struct{ *pulumi.OutputState }

func (ProjectOutput) CveAllowlists

func (o ProjectOutput) CveAllowlists() pulumi.StringArrayOutput

Project allowlist allows vulnerabilities in this list to be ignored in this project when pushing and pulling images. Should be in the format or `["CVE-123", "CVE-145"]` or `["CVE-123"]`

func (ProjectOutput) DeploymentSecurity

func (o ProjectOutput) DeploymentSecurity() pulumi.StringPtrOutput

Prevent deployment of images with vulnerability severity equal or higher than the specified value. Images must be scanned before this takes effect. Possible values: `critical`, `high`, `medium`, `low`, `none`. (Default: `""` - empty)

func (ProjectOutput) ElementType

func (ProjectOutput) ElementType() reflect.Type

func (ProjectOutput) EnableContentTrust

func (o ProjectOutput) EnableContentTrust() pulumi.BoolPtrOutput

Enables Content Trust for project. When enabled it queries the embedded docker notary server. Can be set to `"true"` or `"false"` (Default: false)

func (ProjectOutput) ForceDestroy

func (o ProjectOutput) ForceDestroy() pulumi.BoolPtrOutput

A boolean that indicates all repositories should be deleted from the project so that the project can be destroyed without error. These repositories are *not* recoverable.

func (ProjectOutput) Name

The name of the project that will be created in harbor.

func (ProjectOutput) ProjectId

func (o ProjectOutput) ProjectId() pulumi.IntOutput

The id of the project with harbor.

func (ProjectOutput) Public

The project will be public accessibility. Can be set to `"true"` or `"false"` (Default: false)

func (ProjectOutput) RegistryId

func (o ProjectOutput) RegistryId() pulumi.IntOutput

To enabled project as Proxy Cache

func (ProjectOutput) StorageQuota

func (o ProjectOutput) StorageQuota() pulumi.IntPtrOutput

The storage quota of the project in GB's

func (ProjectOutput) ToProjectOutput

func (o ProjectOutput) ToProjectOutput() ProjectOutput

func (ProjectOutput) ToProjectOutputWithContext

func (o ProjectOutput) ToProjectOutputWithContext(ctx context.Context) ProjectOutput

func (ProjectOutput) VulnerabilityScanning

func (o ProjectOutput) VulnerabilityScanning() pulumi.BoolPtrOutput

Images will be scanned for vulnerabilities when push to harbor. Can be set to `"true"` or `"false"` (Default: true)

type ProjectState

type ProjectState struct {
	// Project allowlist allows vulnerabilities in this list to be ignored in this project when pushing and pulling images. Should be in the format or `["CVE-123", "CVE-145"]` or `["CVE-123"]`
	CveAllowlists pulumi.StringArrayInput
	// Prevent deployment of images with vulnerability severity equal or higher than the specified value. Images must be scanned before this takes effect. Possible values: `critical`, `high`, `medium`, `low`, `none`. (Default: `""` - empty)
	DeploymentSecurity pulumi.StringPtrInput
	// Enables Content Trust for project. When enabled it queries the embedded docker notary server. Can be set to `"true"` or `"false"` (Default: false)
	EnableContentTrust pulumi.BoolPtrInput
	// A boolean that indicates all repositories should be deleted from the project so that the project can be destroyed without error. These repositories are *not* recoverable.
	ForceDestroy pulumi.BoolPtrInput
	// The name of the project that will be created in harbor.
	Name pulumi.StringPtrInput
	// The id of the project with harbor.
	ProjectId pulumi.IntPtrInput
	// The project will be public accessibility. Can be set to `"true"` or `"false"` (Default: false)
	Public pulumi.StringPtrInput
	// To enabled project as Proxy Cache
	RegistryId pulumi.IntPtrInput
	// The storage quota of the project in GB's
	StorageQuota pulumi.IntPtrInput
	// Images will be scanned for vulnerabilities when push to harbor. Can be set to `"true"` or `"false"` (Default: true)
	VulnerabilityScanning pulumi.BoolPtrInput
}

func (ProjectState) ElementType

func (ProjectState) ElementType() reflect.Type

type ProjectWebhook

type ProjectWebhook struct {
	pulumi.CustomResourceState

	// The address of the webhook
	Address pulumi.StringOutput `pulumi:"address"`
	// authentication header for you the webhook
	AuthHeader pulumi.StringPtrOutput `pulumi:"authHeader"`
	// _ (Optional, string) A description of the webhook
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// , To enable / disable the webhook. Default `true`
	Enabled pulumi.BoolPtrOutput `pulumi:"enabled"`
	// ) The type events you want to subscript to can be `DELETE_ARTIFACT`, `PULL_ARTIFACT`, `PUSH_ARTIFACT`, `DELETE_CHART`, `DOWNLOAD_CHART`, `UPLOAD_CHART`, `QUOTA_EXCEED`, `QUOTA_WARNING`, `REPLICATION`, `SCANNING_FAILED`, `SCANNING_COMPLETED`, `TAG_RETENTION`
	EventsTypes pulumi.StringArrayOutput `pulumi:"eventsTypes"`
	// The name of the webhook that will be created in harbor.
	Name pulumi.StringOutput `pulumi:"name"`
	// The notification type either `http` or `slack`
	NotifyType pulumi.StringOutput `pulumi:"notifyType"`
	// The project id of the harbor that webhook related to.
	ProjectId pulumi.StringOutput `pulumi:"projectId"`
	// checks the for validate SSL certificate.
	SkipCertVerify pulumi.BoolPtrOutput `pulumi:"skipCertVerify"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainProject, err := harbor.NewProject(ctx, "mainProject", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewProjectWebhook(ctx, "mainProjectWebhook", &harbor.ProjectWebhookArgs{
			Address:    pulumi.String("https://webhook.domain.com"),
			ProjectId:  mainProject.ID(),
			NotifyType: pulumi.String("http"),
			EventsTypes: pulumi.StringArray{
				pulumi.String("DELETE_ARTIFACT"),
				pulumi.String("PULL_ARTIFACT"),
				pulumi.String("PUSH_ARTIFACT"),
				pulumi.String("DELETE_CHART"),
				pulumi.String("DOWNLOAD_CHART"),
				pulumi.String("UPLOAD_CHART"),
				pulumi.String("QUOTA_EXCEED"),
				pulumi.String("QUOTA_WARNING"),
				pulumi.String("REPLICATION"),
				pulumi.String("SCANNING_FAILED"),
				pulumi.String("SCANNING_COMPLETED"),
				pulumi.String("TAG_RETENTION"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetProjectWebhook

func GetProjectWebhook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ProjectWebhookState, opts ...pulumi.ResourceOption) (*ProjectWebhook, error)

GetProjectWebhook gets an existing ProjectWebhook resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewProjectWebhook

func NewProjectWebhook(ctx *pulumi.Context,
	name string, args *ProjectWebhookArgs, opts ...pulumi.ResourceOption) (*ProjectWebhook, error)

NewProjectWebhook registers a new resource with the given unique name, arguments, and options.

func (*ProjectWebhook) ElementType

func (*ProjectWebhook) ElementType() reflect.Type

func (*ProjectWebhook) ToProjectWebhookOutput

func (i *ProjectWebhook) ToProjectWebhookOutput() ProjectWebhookOutput

func (*ProjectWebhook) ToProjectWebhookOutputWithContext

func (i *ProjectWebhook) ToProjectWebhookOutputWithContext(ctx context.Context) ProjectWebhookOutput

type ProjectWebhookArgs

type ProjectWebhookArgs struct {
	// The address of the webhook
	Address pulumi.StringInput
	// authentication header for you the webhook
	AuthHeader pulumi.StringPtrInput
	// _ (Optional, string) A description of the webhook
	Description pulumi.StringPtrInput
	// , To enable / disable the webhook. Default `true`
	Enabled pulumi.BoolPtrInput
	// ) The type events you want to subscript to can be `DELETE_ARTIFACT`, `PULL_ARTIFACT`, `PUSH_ARTIFACT`, `DELETE_CHART`, `DOWNLOAD_CHART`, `UPLOAD_CHART`, `QUOTA_EXCEED`, `QUOTA_WARNING`, `REPLICATION`, `SCANNING_FAILED`, `SCANNING_COMPLETED`, `TAG_RETENTION`
	EventsTypes pulumi.StringArrayInput
	// The name of the webhook that will be created in harbor.
	Name pulumi.StringPtrInput
	// The notification type either `http` or `slack`
	NotifyType pulumi.StringInput
	// The project id of the harbor that webhook related to.
	ProjectId pulumi.StringInput
	// checks the for validate SSL certificate.
	SkipCertVerify pulumi.BoolPtrInput
}

The set of arguments for constructing a ProjectWebhook resource.

func (ProjectWebhookArgs) ElementType

func (ProjectWebhookArgs) ElementType() reflect.Type

type ProjectWebhookArray

type ProjectWebhookArray []ProjectWebhookInput

func (ProjectWebhookArray) ElementType

func (ProjectWebhookArray) ElementType() reflect.Type

func (ProjectWebhookArray) ToProjectWebhookArrayOutput

func (i ProjectWebhookArray) ToProjectWebhookArrayOutput() ProjectWebhookArrayOutput

func (ProjectWebhookArray) ToProjectWebhookArrayOutputWithContext

func (i ProjectWebhookArray) ToProjectWebhookArrayOutputWithContext(ctx context.Context) ProjectWebhookArrayOutput

type ProjectWebhookArrayInput

type ProjectWebhookArrayInput interface {
	pulumi.Input

	ToProjectWebhookArrayOutput() ProjectWebhookArrayOutput
	ToProjectWebhookArrayOutputWithContext(context.Context) ProjectWebhookArrayOutput
}

ProjectWebhookArrayInput is an input type that accepts ProjectWebhookArray and ProjectWebhookArrayOutput values. You can construct a concrete instance of `ProjectWebhookArrayInput` via:

ProjectWebhookArray{ ProjectWebhookArgs{...} }

type ProjectWebhookArrayOutput

type ProjectWebhookArrayOutput struct{ *pulumi.OutputState }

func (ProjectWebhookArrayOutput) ElementType

func (ProjectWebhookArrayOutput) ElementType() reflect.Type

func (ProjectWebhookArrayOutput) Index

func (ProjectWebhookArrayOutput) ToProjectWebhookArrayOutput

func (o ProjectWebhookArrayOutput) ToProjectWebhookArrayOutput() ProjectWebhookArrayOutput

func (ProjectWebhookArrayOutput) ToProjectWebhookArrayOutputWithContext

func (o ProjectWebhookArrayOutput) ToProjectWebhookArrayOutputWithContext(ctx context.Context) ProjectWebhookArrayOutput

type ProjectWebhookInput

type ProjectWebhookInput interface {
	pulumi.Input

	ToProjectWebhookOutput() ProjectWebhookOutput
	ToProjectWebhookOutputWithContext(ctx context.Context) ProjectWebhookOutput
}

type ProjectWebhookMap

type ProjectWebhookMap map[string]ProjectWebhookInput

func (ProjectWebhookMap) ElementType

func (ProjectWebhookMap) ElementType() reflect.Type

func (ProjectWebhookMap) ToProjectWebhookMapOutput

func (i ProjectWebhookMap) ToProjectWebhookMapOutput() ProjectWebhookMapOutput

func (ProjectWebhookMap) ToProjectWebhookMapOutputWithContext

func (i ProjectWebhookMap) ToProjectWebhookMapOutputWithContext(ctx context.Context) ProjectWebhookMapOutput

type ProjectWebhookMapInput

type ProjectWebhookMapInput interface {
	pulumi.Input

	ToProjectWebhookMapOutput() ProjectWebhookMapOutput
	ToProjectWebhookMapOutputWithContext(context.Context) ProjectWebhookMapOutput
}

ProjectWebhookMapInput is an input type that accepts ProjectWebhookMap and ProjectWebhookMapOutput values. You can construct a concrete instance of `ProjectWebhookMapInput` via:

ProjectWebhookMap{ "key": ProjectWebhookArgs{...} }

type ProjectWebhookMapOutput

type ProjectWebhookMapOutput struct{ *pulumi.OutputState }

func (ProjectWebhookMapOutput) ElementType

func (ProjectWebhookMapOutput) ElementType() reflect.Type

func (ProjectWebhookMapOutput) MapIndex

func (ProjectWebhookMapOutput) ToProjectWebhookMapOutput

func (o ProjectWebhookMapOutput) ToProjectWebhookMapOutput() ProjectWebhookMapOutput

func (ProjectWebhookMapOutput) ToProjectWebhookMapOutputWithContext

func (o ProjectWebhookMapOutput) ToProjectWebhookMapOutputWithContext(ctx context.Context) ProjectWebhookMapOutput

type ProjectWebhookOutput

type ProjectWebhookOutput struct{ *pulumi.OutputState }

func (ProjectWebhookOutput) Address

The address of the webhook

func (ProjectWebhookOutput) AuthHeader

authentication header for you the webhook

func (ProjectWebhookOutput) Description

_ (Optional, string) A description of the webhook

func (ProjectWebhookOutput) ElementType

func (ProjectWebhookOutput) ElementType() reflect.Type

func (ProjectWebhookOutput) Enabled

, To enable / disable the webhook. Default `true`

func (ProjectWebhookOutput) EventsTypes

) The type events you want to subscript to can be `DELETE_ARTIFACT`, `PULL_ARTIFACT`, `PUSH_ARTIFACT`, `DELETE_CHART`, `DOWNLOAD_CHART`, `UPLOAD_CHART`, `QUOTA_EXCEED`, `QUOTA_WARNING`, `REPLICATION`, `SCANNING_FAILED`, `SCANNING_COMPLETED`, `TAG_RETENTION`

func (ProjectWebhookOutput) Name

The name of the webhook that will be created in harbor.

func (ProjectWebhookOutput) NotifyType

func (o ProjectWebhookOutput) NotifyType() pulumi.StringOutput

The notification type either `http` or `slack`

func (ProjectWebhookOutput) ProjectId

The project id of the harbor that webhook related to.

func (ProjectWebhookOutput) SkipCertVerify

func (o ProjectWebhookOutput) SkipCertVerify() pulumi.BoolPtrOutput

checks the for validate SSL certificate.

func (ProjectWebhookOutput) ToProjectWebhookOutput

func (o ProjectWebhookOutput) ToProjectWebhookOutput() ProjectWebhookOutput

func (ProjectWebhookOutput) ToProjectWebhookOutputWithContext

func (o ProjectWebhookOutput) ToProjectWebhookOutputWithContext(ctx context.Context) ProjectWebhookOutput

type ProjectWebhookState

type ProjectWebhookState struct {
	// The address of the webhook
	Address pulumi.StringPtrInput
	// authentication header for you the webhook
	AuthHeader pulumi.StringPtrInput
	// _ (Optional, string) A description of the webhook
	Description pulumi.StringPtrInput
	// , To enable / disable the webhook. Default `true`
	Enabled pulumi.BoolPtrInput
	// ) The type events you want to subscript to can be `DELETE_ARTIFACT`, `PULL_ARTIFACT`, `PUSH_ARTIFACT`, `DELETE_CHART`, `DOWNLOAD_CHART`, `UPLOAD_CHART`, `QUOTA_EXCEED`, `QUOTA_WARNING`, `REPLICATION`, `SCANNING_FAILED`, `SCANNING_COMPLETED`, `TAG_RETENTION`
	EventsTypes pulumi.StringArrayInput
	// The name of the webhook that will be created in harbor.
	Name pulumi.StringPtrInput
	// The notification type either `http` or `slack`
	NotifyType pulumi.StringPtrInput
	// The project id of the harbor that webhook related to.
	ProjectId pulumi.StringPtrInput
	// checks the for validate SSL certificate.
	SkipCertVerify pulumi.BoolPtrInput
}

func (ProjectWebhookState) ElementType

func (ProjectWebhookState) ElementType() reflect.Type

type Provider

type Provider struct {
	pulumi.ProviderResourceState

	Password pulumi.StringPtrOutput `pulumi:"password"`
	Url      pulumi.StringOutput    `pulumi:"url"`
	Username pulumi.StringPtrOutput `pulumi:"username"`
}

The provider type for the harbor package. By default, resources use package-wide configuration settings, however an explicit `Provider` instance may be created and passed during resource construction to achieve fine-grained programmatic control over provider settings. See the [documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.

func NewProvider

func NewProvider(ctx *pulumi.Context,
	name string, args *ProviderArgs, opts ...pulumi.ResourceOption) (*Provider, error)

NewProvider registers a new resource with the given unique name, arguments, and options.

func (*Provider) ElementType

func (*Provider) ElementType() reflect.Type

func (*Provider) ToProviderOutput

func (i *Provider) ToProviderOutput() ProviderOutput

func (*Provider) ToProviderOutputWithContext

func (i *Provider) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

type ProviderArgs

type ProviderArgs struct {
	ApiVersion pulumi.IntPtrInput
	Insecure   pulumi.BoolPtrInput
	Password   pulumi.StringPtrInput
	Url        pulumi.StringInput
	Username   pulumi.StringPtrInput
}

The set of arguments for constructing a Provider resource.

func (ProviderArgs) ElementType

func (ProviderArgs) ElementType() reflect.Type

type ProviderInput

type ProviderInput interface {
	pulumi.Input

	ToProviderOutput() ProviderOutput
	ToProviderOutputWithContext(ctx context.Context) ProviderOutput
}

type ProviderOutput

type ProviderOutput struct{ *pulumi.OutputState }

func (ProviderOutput) ElementType

func (ProviderOutput) ElementType() reflect.Type

func (ProviderOutput) Password

func (o ProviderOutput) Password() pulumi.StringPtrOutput

func (ProviderOutput) ToProviderOutput

func (o ProviderOutput) ToProviderOutput() ProviderOutput

func (ProviderOutput) ToProviderOutputWithContext

func (o ProviderOutput) ToProviderOutputWithContext(ctx context.Context) ProviderOutput

func (ProviderOutput) Url

func (ProviderOutput) Username

func (o ProviderOutput) Username() pulumi.StringPtrOutput

type Registry

type Registry struct {
	pulumi.CustomResourceState

	AccessId     pulumi.StringPtrOutput `pulumi:"accessId"`
	AccessSecret pulumi.StringPtrOutput `pulumi:"accessSecret"`
	Description  pulumi.StringPtrOutput `pulumi:"description"`
	EndpointUrl  pulumi.StringOutput    `pulumi:"endpointUrl"`
	Insecure     pulumi.BoolPtrOutput   `pulumi:"insecure"`
	Name         pulumi.StringOutput    `pulumi:"name"`
	ProviderName pulumi.StringOutput    `pulumi:"providerName"`
	RegistryId   pulumi.IntOutput       `pulumi:"registryId"`
	Status       pulumi.StringOutput    `pulumi:"status"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewRegistry(ctx, "main", &harbor.RegistryArgs{
			EndpointUrl:  pulumi.String("https://hub.docker.com"),
			ProviderName: pulumi.String("docker-hub"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor project can be imported using the `registry id` eg, `

```sh

$ pulumi import harbor:index/registry:Registry main /registries/7

```

`

func GetRegistry

func GetRegistry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RegistryState, opts ...pulumi.ResourceOption) (*Registry, error)

GetRegistry gets an existing Registry resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRegistry

func NewRegistry(ctx *pulumi.Context,
	name string, args *RegistryArgs, opts ...pulumi.ResourceOption) (*Registry, error)

NewRegistry registers a new resource with the given unique name, arguments, and options.

func (*Registry) ElementType

func (*Registry) ElementType() reflect.Type

func (*Registry) ToRegistryOutput

func (i *Registry) ToRegistryOutput() RegistryOutput

func (*Registry) ToRegistryOutputWithContext

func (i *Registry) ToRegistryOutputWithContext(ctx context.Context) RegistryOutput

type RegistryArgs

type RegistryArgs struct {
	AccessId     pulumi.StringPtrInput
	AccessSecret pulumi.StringPtrInput
	Description  pulumi.StringPtrInput
	EndpointUrl  pulumi.StringInput
	Insecure     pulumi.BoolPtrInput
	Name         pulumi.StringPtrInput
	ProviderName pulumi.StringInput
}

The set of arguments for constructing a Registry resource.

func (RegistryArgs) ElementType

func (RegistryArgs) ElementType() reflect.Type

type RegistryArray

type RegistryArray []RegistryInput

func (RegistryArray) ElementType

func (RegistryArray) ElementType() reflect.Type

func (RegistryArray) ToRegistryArrayOutput

func (i RegistryArray) ToRegistryArrayOutput() RegistryArrayOutput

func (RegistryArray) ToRegistryArrayOutputWithContext

func (i RegistryArray) ToRegistryArrayOutputWithContext(ctx context.Context) RegistryArrayOutput

type RegistryArrayInput

type RegistryArrayInput interface {
	pulumi.Input

	ToRegistryArrayOutput() RegistryArrayOutput
	ToRegistryArrayOutputWithContext(context.Context) RegistryArrayOutput
}

RegistryArrayInput is an input type that accepts RegistryArray and RegistryArrayOutput values. You can construct a concrete instance of `RegistryArrayInput` via:

RegistryArray{ RegistryArgs{...} }

type RegistryArrayOutput

type RegistryArrayOutput struct{ *pulumi.OutputState }

func (RegistryArrayOutput) ElementType

func (RegistryArrayOutput) ElementType() reflect.Type

func (RegistryArrayOutput) Index

func (RegistryArrayOutput) ToRegistryArrayOutput

func (o RegistryArrayOutput) ToRegistryArrayOutput() RegistryArrayOutput

func (RegistryArrayOutput) ToRegistryArrayOutputWithContext

func (o RegistryArrayOutput) ToRegistryArrayOutputWithContext(ctx context.Context) RegistryArrayOutput

type RegistryInput

type RegistryInput interface {
	pulumi.Input

	ToRegistryOutput() RegistryOutput
	ToRegistryOutputWithContext(ctx context.Context) RegistryOutput
}

type RegistryMap

type RegistryMap map[string]RegistryInput

func (RegistryMap) ElementType

func (RegistryMap) ElementType() reflect.Type

func (RegistryMap) ToRegistryMapOutput

func (i RegistryMap) ToRegistryMapOutput() RegistryMapOutput

func (RegistryMap) ToRegistryMapOutputWithContext

func (i RegistryMap) ToRegistryMapOutputWithContext(ctx context.Context) RegistryMapOutput

type RegistryMapInput

type RegistryMapInput interface {
	pulumi.Input

	ToRegistryMapOutput() RegistryMapOutput
	ToRegistryMapOutputWithContext(context.Context) RegistryMapOutput
}

RegistryMapInput is an input type that accepts RegistryMap and RegistryMapOutput values. You can construct a concrete instance of `RegistryMapInput` via:

RegistryMap{ "key": RegistryArgs{...} }

type RegistryMapOutput

type RegistryMapOutput struct{ *pulumi.OutputState }

func (RegistryMapOutput) ElementType

func (RegistryMapOutput) ElementType() reflect.Type

func (RegistryMapOutput) MapIndex

func (RegistryMapOutput) ToRegistryMapOutput

func (o RegistryMapOutput) ToRegistryMapOutput() RegistryMapOutput

func (RegistryMapOutput) ToRegistryMapOutputWithContext

func (o RegistryMapOutput) ToRegistryMapOutputWithContext(ctx context.Context) RegistryMapOutput

type RegistryOutput

type RegistryOutput struct{ *pulumi.OutputState }

func (RegistryOutput) AccessId

func (o RegistryOutput) AccessId() pulumi.StringPtrOutput

func (RegistryOutput) AccessSecret

func (o RegistryOutput) AccessSecret() pulumi.StringPtrOutput

func (RegistryOutput) Description

func (o RegistryOutput) Description() pulumi.StringPtrOutput

func (RegistryOutput) ElementType

func (RegistryOutput) ElementType() reflect.Type

func (RegistryOutput) EndpointUrl

func (o RegistryOutput) EndpointUrl() pulumi.StringOutput

func (RegistryOutput) Insecure

func (o RegistryOutput) Insecure() pulumi.BoolPtrOutput

func (RegistryOutput) Name

func (RegistryOutput) ProviderName

func (o RegistryOutput) ProviderName() pulumi.StringOutput

func (RegistryOutput) RegistryId

func (o RegistryOutput) RegistryId() pulumi.IntOutput

func (RegistryOutput) Status

func (o RegistryOutput) Status() pulumi.StringOutput

func (RegistryOutput) ToRegistryOutput

func (o RegistryOutput) ToRegistryOutput() RegistryOutput

func (RegistryOutput) ToRegistryOutputWithContext

func (o RegistryOutput) ToRegistryOutputWithContext(ctx context.Context) RegistryOutput

type RegistryState

type RegistryState struct {
	AccessId     pulumi.StringPtrInput
	AccessSecret pulumi.StringPtrInput
	Description  pulumi.StringPtrInput
	EndpointUrl  pulumi.StringPtrInput
	Insecure     pulumi.BoolPtrInput
	Name         pulumi.StringPtrInput
	ProviderName pulumi.StringPtrInput
	RegistryId   pulumi.IntPtrInput
	Status       pulumi.StringPtrInput
}

func (RegistryState) ElementType

func (RegistryState) ElementType() reflect.Type

type Replication

type Replication struct {
	pulumi.CustomResourceState

	Action               pulumi.StringOutput          `pulumi:"action"`
	Deletion             pulumi.BoolPtrOutput         `pulumi:"deletion"`
	Description          pulumi.StringPtrOutput       `pulumi:"description"`
	DestNamespace        pulumi.StringPtrOutput       `pulumi:"destNamespace"`
	DestNamespaceReplace pulumi.IntPtrOutput          `pulumi:"destNamespaceReplace"`
	Enabled              pulumi.BoolPtrOutput         `pulumi:"enabled"`
	Filters              ReplicationFilterArrayOutput `pulumi:"filters"`
	Name                 pulumi.StringOutput          `pulumi:"name"`
	Override             pulumi.BoolPtrOutput         `pulumi:"override"`
	RegistryId           pulumi.IntOutput             `pulumi:"registryId"`
	ReplicationPolicyId  pulumi.IntOutput             `pulumi:"replicationPolicyId"`
	Schedule             pulumi.StringPtrOutput       `pulumi:"schedule"`
	Speed                pulumi.IntPtrOutput          `pulumi:"speed"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := harbor.NewRegistry(ctx, "main", &harbor.RegistryArgs{
			ProviderName: pulumi.String("docker-hub"),
			EndpointUrl:  pulumi.String("https://hub.docker.com"),
		})
		if err != nil {
			return err
		}
		_, err = harbor.NewReplication(ctx, "push", &harbor.ReplicationArgs{
			Action:     pulumi.String("push"),
			RegistryId: main.RegistryId,
		})
		if err != nil {
			return err
		}
		_, err = harbor.NewReplication(ctx, "alpineReplication", &harbor.ReplicationArgs{
			Action:     pulumi.String("pull"),
			RegistryId: main.RegistryId,
			Schedule:   pulumi.String("* 0/15 * * * *"),
			Filters: harbor.ReplicationFilterArray{
				&harbor.ReplicationFilterArgs{
					Name: pulumi.String("library/alpine"),
				},
				&harbor.ReplicationFilterArgs{
					Tag: pulumi.String("3.*.*"),
				},
				&harbor.ReplicationFilterArgs{
					Resource: pulumi.String("artifact"),
				},
				&harbor.ReplicationFilterArgs{
					Labels: pulumi.StringArray{
						pulumi.String("qa"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = harbor.NewReplication(ctx, "alpineIndex/replicationReplication", &harbor.ReplicationArgs{
			Action:     pulumi.String("pull"),
			RegistryId: main.RegistryId,
			Schedule:   pulumi.String("event_based"),
			Filters: harbor.ReplicationFilterArray{
				&harbor.ReplicationFilterArgs{
					Name: pulumi.String("library/alpine"),
				},
				&harbor.ReplicationFilterArgs{
					Tag: pulumi.String("3.*.*"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor project can be imported using the `replication id` eg, `

```sh

$ pulumi import harbor:index/replication:Replication main /replication/policies/1

```

`

func GetReplication

func GetReplication(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ReplicationState, opts ...pulumi.ResourceOption) (*Replication, error)

GetReplication gets an existing Replication resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewReplication

func NewReplication(ctx *pulumi.Context,
	name string, args *ReplicationArgs, opts ...pulumi.ResourceOption) (*Replication, error)

NewReplication registers a new resource with the given unique name, arguments, and options.

func (*Replication) ElementType

func (*Replication) ElementType() reflect.Type

func (*Replication) ToReplicationOutput

func (i *Replication) ToReplicationOutput() ReplicationOutput

func (*Replication) ToReplicationOutputWithContext

func (i *Replication) ToReplicationOutputWithContext(ctx context.Context) ReplicationOutput

type ReplicationArgs

type ReplicationArgs struct {
	Action               pulumi.StringInput
	Deletion             pulumi.BoolPtrInput
	Description          pulumi.StringPtrInput
	DestNamespace        pulumi.StringPtrInput
	DestNamespaceReplace pulumi.IntPtrInput
	Enabled              pulumi.BoolPtrInput
	Filters              ReplicationFilterArrayInput
	Name                 pulumi.StringPtrInput
	Override             pulumi.BoolPtrInput
	RegistryId           pulumi.IntInput
	Schedule             pulumi.StringPtrInput
	Speed                pulumi.IntPtrInput
}

The set of arguments for constructing a Replication resource.

func (ReplicationArgs) ElementType

func (ReplicationArgs) ElementType() reflect.Type

type ReplicationArray

type ReplicationArray []ReplicationInput

func (ReplicationArray) ElementType

func (ReplicationArray) ElementType() reflect.Type

func (ReplicationArray) ToReplicationArrayOutput

func (i ReplicationArray) ToReplicationArrayOutput() ReplicationArrayOutput

func (ReplicationArray) ToReplicationArrayOutputWithContext

func (i ReplicationArray) ToReplicationArrayOutputWithContext(ctx context.Context) ReplicationArrayOutput

type ReplicationArrayInput

type ReplicationArrayInput interface {
	pulumi.Input

	ToReplicationArrayOutput() ReplicationArrayOutput
	ToReplicationArrayOutputWithContext(context.Context) ReplicationArrayOutput
}

ReplicationArrayInput is an input type that accepts ReplicationArray and ReplicationArrayOutput values. You can construct a concrete instance of `ReplicationArrayInput` via:

ReplicationArray{ ReplicationArgs{...} }

type ReplicationArrayOutput

type ReplicationArrayOutput struct{ *pulumi.OutputState }

func (ReplicationArrayOutput) ElementType

func (ReplicationArrayOutput) ElementType() reflect.Type

func (ReplicationArrayOutput) Index

func (ReplicationArrayOutput) ToReplicationArrayOutput

func (o ReplicationArrayOutput) ToReplicationArrayOutput() ReplicationArrayOutput

func (ReplicationArrayOutput) ToReplicationArrayOutputWithContext

func (o ReplicationArrayOutput) ToReplicationArrayOutputWithContext(ctx context.Context) ReplicationArrayOutput

type ReplicationFilter

type ReplicationFilter struct {
	Decoration *string  `pulumi:"decoration"`
	Labels     []string `pulumi:"labels"`
	Name       *string  `pulumi:"name"`
	Resource   *string  `pulumi:"resource"`
	Tag        *string  `pulumi:"tag"`
}

type ReplicationFilterArgs

type ReplicationFilterArgs struct {
	Decoration pulumi.StringPtrInput   `pulumi:"decoration"`
	Labels     pulumi.StringArrayInput `pulumi:"labels"`
	Name       pulumi.StringPtrInput   `pulumi:"name"`
	Resource   pulumi.StringPtrInput   `pulumi:"resource"`
	Tag        pulumi.StringPtrInput   `pulumi:"tag"`
}

func (ReplicationFilterArgs) ElementType

func (ReplicationFilterArgs) ElementType() reflect.Type

func (ReplicationFilterArgs) ToReplicationFilterOutput

func (i ReplicationFilterArgs) ToReplicationFilterOutput() ReplicationFilterOutput

func (ReplicationFilterArgs) ToReplicationFilterOutputWithContext

func (i ReplicationFilterArgs) ToReplicationFilterOutputWithContext(ctx context.Context) ReplicationFilterOutput

type ReplicationFilterArray

type ReplicationFilterArray []ReplicationFilterInput

func (ReplicationFilterArray) ElementType

func (ReplicationFilterArray) ElementType() reflect.Type

func (ReplicationFilterArray) ToReplicationFilterArrayOutput

func (i ReplicationFilterArray) ToReplicationFilterArrayOutput() ReplicationFilterArrayOutput

func (ReplicationFilterArray) ToReplicationFilterArrayOutputWithContext

func (i ReplicationFilterArray) ToReplicationFilterArrayOutputWithContext(ctx context.Context) ReplicationFilterArrayOutput

type ReplicationFilterArrayInput

type ReplicationFilterArrayInput interface {
	pulumi.Input

	ToReplicationFilterArrayOutput() ReplicationFilterArrayOutput
	ToReplicationFilterArrayOutputWithContext(context.Context) ReplicationFilterArrayOutput
}

ReplicationFilterArrayInput is an input type that accepts ReplicationFilterArray and ReplicationFilterArrayOutput values. You can construct a concrete instance of `ReplicationFilterArrayInput` via:

ReplicationFilterArray{ ReplicationFilterArgs{...} }

type ReplicationFilterArrayOutput

type ReplicationFilterArrayOutput struct{ *pulumi.OutputState }

func (ReplicationFilterArrayOutput) ElementType

func (ReplicationFilterArrayOutput) Index

func (ReplicationFilterArrayOutput) ToReplicationFilterArrayOutput

func (o ReplicationFilterArrayOutput) ToReplicationFilterArrayOutput() ReplicationFilterArrayOutput

func (ReplicationFilterArrayOutput) ToReplicationFilterArrayOutputWithContext

func (o ReplicationFilterArrayOutput) ToReplicationFilterArrayOutputWithContext(ctx context.Context) ReplicationFilterArrayOutput

type ReplicationFilterInput

type ReplicationFilterInput interface {
	pulumi.Input

	ToReplicationFilterOutput() ReplicationFilterOutput
	ToReplicationFilterOutputWithContext(context.Context) ReplicationFilterOutput
}

ReplicationFilterInput is an input type that accepts ReplicationFilterArgs and ReplicationFilterOutput values. You can construct a concrete instance of `ReplicationFilterInput` via:

ReplicationFilterArgs{...}

type ReplicationFilterOutput

type ReplicationFilterOutput struct{ *pulumi.OutputState }

func (ReplicationFilterOutput) Decoration

func (ReplicationFilterOutput) ElementType

func (ReplicationFilterOutput) ElementType() reflect.Type

func (ReplicationFilterOutput) Labels

func (ReplicationFilterOutput) Name

func (ReplicationFilterOutput) Resource

func (ReplicationFilterOutput) Tag

func (ReplicationFilterOutput) ToReplicationFilterOutput

func (o ReplicationFilterOutput) ToReplicationFilterOutput() ReplicationFilterOutput

func (ReplicationFilterOutput) ToReplicationFilterOutputWithContext

func (o ReplicationFilterOutput) ToReplicationFilterOutputWithContext(ctx context.Context) ReplicationFilterOutput

type ReplicationInput

type ReplicationInput interface {
	pulumi.Input

	ToReplicationOutput() ReplicationOutput
	ToReplicationOutputWithContext(ctx context.Context) ReplicationOutput
}

type ReplicationMap

type ReplicationMap map[string]ReplicationInput

func (ReplicationMap) ElementType

func (ReplicationMap) ElementType() reflect.Type

func (ReplicationMap) ToReplicationMapOutput

func (i ReplicationMap) ToReplicationMapOutput() ReplicationMapOutput

func (ReplicationMap) ToReplicationMapOutputWithContext

func (i ReplicationMap) ToReplicationMapOutputWithContext(ctx context.Context) ReplicationMapOutput

type ReplicationMapInput

type ReplicationMapInput interface {
	pulumi.Input

	ToReplicationMapOutput() ReplicationMapOutput
	ToReplicationMapOutputWithContext(context.Context) ReplicationMapOutput
}

ReplicationMapInput is an input type that accepts ReplicationMap and ReplicationMapOutput values. You can construct a concrete instance of `ReplicationMapInput` via:

ReplicationMap{ "key": ReplicationArgs{...} }

type ReplicationMapOutput

type ReplicationMapOutput struct{ *pulumi.OutputState }

func (ReplicationMapOutput) ElementType

func (ReplicationMapOutput) ElementType() reflect.Type

func (ReplicationMapOutput) MapIndex

func (ReplicationMapOutput) ToReplicationMapOutput

func (o ReplicationMapOutput) ToReplicationMapOutput() ReplicationMapOutput

func (ReplicationMapOutput) ToReplicationMapOutputWithContext

func (o ReplicationMapOutput) ToReplicationMapOutputWithContext(ctx context.Context) ReplicationMapOutput

type ReplicationOutput

type ReplicationOutput struct{ *pulumi.OutputState }

func (ReplicationOutput) Action

func (ReplicationOutput) Deletion

func (o ReplicationOutput) Deletion() pulumi.BoolPtrOutput

func (ReplicationOutput) Description

func (o ReplicationOutput) Description() pulumi.StringPtrOutput

func (ReplicationOutput) DestNamespace

func (o ReplicationOutput) DestNamespace() pulumi.StringPtrOutput

func (ReplicationOutput) DestNamespaceReplace

func (o ReplicationOutput) DestNamespaceReplace() pulumi.IntPtrOutput

func (ReplicationOutput) ElementType

func (ReplicationOutput) ElementType() reflect.Type

func (ReplicationOutput) Enabled

func (ReplicationOutput) Filters

func (ReplicationOutput) Name

func (ReplicationOutput) Override

func (o ReplicationOutput) Override() pulumi.BoolPtrOutput

func (ReplicationOutput) RegistryId

func (o ReplicationOutput) RegistryId() pulumi.IntOutput

func (ReplicationOutput) ReplicationPolicyId

func (o ReplicationOutput) ReplicationPolicyId() pulumi.IntOutput

func (ReplicationOutput) Schedule

func (ReplicationOutput) Speed added in v3.8.2

func (ReplicationOutput) ToReplicationOutput

func (o ReplicationOutput) ToReplicationOutput() ReplicationOutput

func (ReplicationOutput) ToReplicationOutputWithContext

func (o ReplicationOutput) ToReplicationOutputWithContext(ctx context.Context) ReplicationOutput

type ReplicationState

type ReplicationState struct {
	Action               pulumi.StringPtrInput
	Deletion             pulumi.BoolPtrInput
	Description          pulumi.StringPtrInput
	DestNamespace        pulumi.StringPtrInput
	DestNamespaceReplace pulumi.IntPtrInput
	Enabled              pulumi.BoolPtrInput
	Filters              ReplicationFilterArrayInput
	Name                 pulumi.StringPtrInput
	Override             pulumi.BoolPtrInput
	RegistryId           pulumi.IntPtrInput
	ReplicationPolicyId  pulumi.IntPtrInput
	Schedule             pulumi.StringPtrInput
	Speed                pulumi.IntPtrInput
}

func (ReplicationState) ElementType

func (ReplicationState) ElementType() reflect.Type

type RetentionPolicy

type RetentionPolicy struct {
	pulumi.CustomResourceState

	// Al collection of rule blocks as documented below.
	Rules RetentionPolicyRuleArrayOutput `pulumi:"rules"`
	// The schedule of when you would like the policy to run. This can be `hourly`, `daily`, `weekly` or can be a custom cron string.
	Schedule pulumi.StringPtrOutput `pulumi:"schedule"`
	// The project id of which you would like to apply this policy.
	Scope pulumi.StringOutput `pulumi:"scope"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		mainProject, err := harbor.NewProject(ctx, "mainProject", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewRetentionPolicy(ctx, "mainRetentionPolicy", &harbor.RetentionPolicyArgs{
			Scope:    mainProject.ID(),
			Schedule: pulumi.String("daily"),
			Rules: harbor.RetentionPolicyRuleArray{
				&harbor.RetentionPolicyRuleArgs{
					NDaysSinceLastPull: pulumi.Int(5),
					RepoMatching:       pulumi.String("**"),
					TagMatching:        pulumi.String("latest"),
				},
				&harbor.RetentionPolicyRuleArgs{
					NDaysSinceLastPush: pulumi.Int(10),
					RepoMatching:       pulumi.String("**"),
					TagMatching:        pulumi.String("latest"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Harbor retention policy can be imported using the `retention_policy id` eg, `

```sh

$ pulumi import harbor:index/retentionPolicy:RetentionPolicy main /retentions/10

```

`

func GetRetentionPolicy

func GetRetentionPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RetentionPolicyState, opts ...pulumi.ResourceOption) (*RetentionPolicy, error)

GetRetentionPolicy gets an existing RetentionPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRetentionPolicy

func NewRetentionPolicy(ctx *pulumi.Context,
	name string, args *RetentionPolicyArgs, opts ...pulumi.ResourceOption) (*RetentionPolicy, error)

NewRetentionPolicy registers a new resource with the given unique name, arguments, and options.

func (*RetentionPolicy) ElementType

func (*RetentionPolicy) ElementType() reflect.Type

func (*RetentionPolicy) ToRetentionPolicyOutput

func (i *RetentionPolicy) ToRetentionPolicyOutput() RetentionPolicyOutput

func (*RetentionPolicy) ToRetentionPolicyOutputWithContext

func (i *RetentionPolicy) ToRetentionPolicyOutputWithContext(ctx context.Context) RetentionPolicyOutput

type RetentionPolicyArgs

type RetentionPolicyArgs struct {
	// Al collection of rule blocks as documented below.
	Rules RetentionPolicyRuleArrayInput
	// The schedule of when you would like the policy to run. This can be `hourly`, `daily`, `weekly` or can be a custom cron string.
	Schedule pulumi.StringPtrInput
	// The project id of which you would like to apply this policy.
	Scope pulumi.StringInput
}

The set of arguments for constructing a RetentionPolicy resource.

func (RetentionPolicyArgs) ElementType

func (RetentionPolicyArgs) ElementType() reflect.Type

type RetentionPolicyArray

type RetentionPolicyArray []RetentionPolicyInput

func (RetentionPolicyArray) ElementType

func (RetentionPolicyArray) ElementType() reflect.Type

func (RetentionPolicyArray) ToRetentionPolicyArrayOutput

func (i RetentionPolicyArray) ToRetentionPolicyArrayOutput() RetentionPolicyArrayOutput

func (RetentionPolicyArray) ToRetentionPolicyArrayOutputWithContext

func (i RetentionPolicyArray) ToRetentionPolicyArrayOutputWithContext(ctx context.Context) RetentionPolicyArrayOutput

type RetentionPolicyArrayInput

type RetentionPolicyArrayInput interface {
	pulumi.Input

	ToRetentionPolicyArrayOutput() RetentionPolicyArrayOutput
	ToRetentionPolicyArrayOutputWithContext(context.Context) RetentionPolicyArrayOutput
}

RetentionPolicyArrayInput is an input type that accepts RetentionPolicyArray and RetentionPolicyArrayOutput values. You can construct a concrete instance of `RetentionPolicyArrayInput` via:

RetentionPolicyArray{ RetentionPolicyArgs{...} }

type RetentionPolicyArrayOutput

type RetentionPolicyArrayOutput struct{ *pulumi.OutputState }

func (RetentionPolicyArrayOutput) ElementType

func (RetentionPolicyArrayOutput) ElementType() reflect.Type

func (RetentionPolicyArrayOutput) Index

func (RetentionPolicyArrayOutput) ToRetentionPolicyArrayOutput

func (o RetentionPolicyArrayOutput) ToRetentionPolicyArrayOutput() RetentionPolicyArrayOutput

func (RetentionPolicyArrayOutput) ToRetentionPolicyArrayOutputWithContext

func (o RetentionPolicyArrayOutput) ToRetentionPolicyArrayOutputWithContext(ctx context.Context) RetentionPolicyArrayOutput

type RetentionPolicyInput

type RetentionPolicyInput interface {
	pulumi.Input

	ToRetentionPolicyOutput() RetentionPolicyOutput
	ToRetentionPolicyOutputWithContext(ctx context.Context) RetentionPolicyOutput
}

type RetentionPolicyMap

type RetentionPolicyMap map[string]RetentionPolicyInput

func (RetentionPolicyMap) ElementType

func (RetentionPolicyMap) ElementType() reflect.Type

func (RetentionPolicyMap) ToRetentionPolicyMapOutput

func (i RetentionPolicyMap) ToRetentionPolicyMapOutput() RetentionPolicyMapOutput

func (RetentionPolicyMap) ToRetentionPolicyMapOutputWithContext

func (i RetentionPolicyMap) ToRetentionPolicyMapOutputWithContext(ctx context.Context) RetentionPolicyMapOutput

type RetentionPolicyMapInput

type RetentionPolicyMapInput interface {
	pulumi.Input

	ToRetentionPolicyMapOutput() RetentionPolicyMapOutput
	ToRetentionPolicyMapOutputWithContext(context.Context) RetentionPolicyMapOutput
}

RetentionPolicyMapInput is an input type that accepts RetentionPolicyMap and RetentionPolicyMapOutput values. You can construct a concrete instance of `RetentionPolicyMapInput` via:

RetentionPolicyMap{ "key": RetentionPolicyArgs{...} }

type RetentionPolicyMapOutput

type RetentionPolicyMapOutput struct{ *pulumi.OutputState }

func (RetentionPolicyMapOutput) ElementType

func (RetentionPolicyMapOutput) ElementType() reflect.Type

func (RetentionPolicyMapOutput) MapIndex

func (RetentionPolicyMapOutput) ToRetentionPolicyMapOutput

func (o RetentionPolicyMapOutput) ToRetentionPolicyMapOutput() RetentionPolicyMapOutput

func (RetentionPolicyMapOutput) ToRetentionPolicyMapOutputWithContext

func (o RetentionPolicyMapOutput) ToRetentionPolicyMapOutputWithContext(ctx context.Context) RetentionPolicyMapOutput

type RetentionPolicyOutput

type RetentionPolicyOutput struct{ *pulumi.OutputState }

func (RetentionPolicyOutput) ElementType

func (RetentionPolicyOutput) ElementType() reflect.Type

func (RetentionPolicyOutput) Rules

Al collection of rule blocks as documented below.

func (RetentionPolicyOutput) Schedule

The schedule of when you would like the policy to run. This can be `hourly`, `daily`, `weekly` or can be a custom cron string.

func (RetentionPolicyOutput) Scope

The project id of which you would like to apply this policy.

func (RetentionPolicyOutput) ToRetentionPolicyOutput

func (o RetentionPolicyOutput) ToRetentionPolicyOutput() RetentionPolicyOutput

func (RetentionPolicyOutput) ToRetentionPolicyOutputWithContext

func (o RetentionPolicyOutput) ToRetentionPolicyOutputWithContext(ctx context.Context) RetentionPolicyOutput

type RetentionPolicyRule

type RetentionPolicyRule struct {
	// retain always.
	AlwaysRetain *bool `pulumi:"alwaysRetain"`
	// Specify if the rule is disable or not. Defaults to `false`
	Disabled *bool `pulumi:"disabled"`
	// retain the most recently pulled n artifacts.
	MostRecentlyPulled *int `pulumi:"mostRecentlyPulled"`
	// retain the most recently pushed n artifacts.
	MostRecentlyPushed *int `pulumi:"mostRecentlyPushed"`
	// retains the artifacts pulled within the lasts n days.
	NDaysSinceLastPull *int `pulumi:"nDaysSinceLastPull"`
	// retains the artifacts pushed within the lasts n days.
	NDaysSinceLastPush *int `pulumi:"nDaysSinceLastPush"`
	// For the repositories excuding.
	RepoExcluding *string `pulumi:"repoExcluding"`
	// For the repositories matching.
	RepoMatching *string `pulumi:"repoMatching"`
	// For the tag excuding.
	TagExcluding *string `pulumi:"tagExcluding"`
	// For the tag matching.
	TagMatching *string `pulumi:"tagMatching"`
	// with untagged artifacts. Defaults to `true`
	UntaggedArtifacts *bool `pulumi:"untaggedArtifacts"`
}

type RetentionPolicyRuleArgs

type RetentionPolicyRuleArgs struct {
	// retain always.
	AlwaysRetain pulumi.BoolPtrInput `pulumi:"alwaysRetain"`
	// Specify if the rule is disable or not. Defaults to `false`
	Disabled pulumi.BoolPtrInput `pulumi:"disabled"`
	// retain the most recently pulled n artifacts.
	MostRecentlyPulled pulumi.IntPtrInput `pulumi:"mostRecentlyPulled"`
	// retain the most recently pushed n artifacts.
	MostRecentlyPushed pulumi.IntPtrInput `pulumi:"mostRecentlyPushed"`
	// retains the artifacts pulled within the lasts n days.
	NDaysSinceLastPull pulumi.IntPtrInput `pulumi:"nDaysSinceLastPull"`
	// retains the artifacts pushed within the lasts n days.
	NDaysSinceLastPush pulumi.IntPtrInput `pulumi:"nDaysSinceLastPush"`
	// For the repositories excuding.
	RepoExcluding pulumi.StringPtrInput `pulumi:"repoExcluding"`
	// For the repositories matching.
	RepoMatching pulumi.StringPtrInput `pulumi:"repoMatching"`
	// For the tag excuding.
	TagExcluding pulumi.StringPtrInput `pulumi:"tagExcluding"`
	// For the tag matching.
	TagMatching pulumi.StringPtrInput `pulumi:"tagMatching"`
	// with untagged artifacts. Defaults to `true`
	UntaggedArtifacts pulumi.BoolPtrInput `pulumi:"untaggedArtifacts"`
}

func (RetentionPolicyRuleArgs) ElementType

func (RetentionPolicyRuleArgs) ElementType() reflect.Type

func (RetentionPolicyRuleArgs) ToRetentionPolicyRuleOutput

func (i RetentionPolicyRuleArgs) ToRetentionPolicyRuleOutput() RetentionPolicyRuleOutput

func (RetentionPolicyRuleArgs) ToRetentionPolicyRuleOutputWithContext

func (i RetentionPolicyRuleArgs) ToRetentionPolicyRuleOutputWithContext(ctx context.Context) RetentionPolicyRuleOutput

type RetentionPolicyRuleArray

type RetentionPolicyRuleArray []RetentionPolicyRuleInput

func (RetentionPolicyRuleArray) ElementType

func (RetentionPolicyRuleArray) ElementType() reflect.Type

func (RetentionPolicyRuleArray) ToRetentionPolicyRuleArrayOutput

func (i RetentionPolicyRuleArray) ToRetentionPolicyRuleArrayOutput() RetentionPolicyRuleArrayOutput

func (RetentionPolicyRuleArray) ToRetentionPolicyRuleArrayOutputWithContext

func (i RetentionPolicyRuleArray) ToRetentionPolicyRuleArrayOutputWithContext(ctx context.Context) RetentionPolicyRuleArrayOutput

type RetentionPolicyRuleArrayInput

type RetentionPolicyRuleArrayInput interface {
	pulumi.Input

	ToRetentionPolicyRuleArrayOutput() RetentionPolicyRuleArrayOutput
	ToRetentionPolicyRuleArrayOutputWithContext(context.Context) RetentionPolicyRuleArrayOutput
}

RetentionPolicyRuleArrayInput is an input type that accepts RetentionPolicyRuleArray and RetentionPolicyRuleArrayOutput values. You can construct a concrete instance of `RetentionPolicyRuleArrayInput` via:

RetentionPolicyRuleArray{ RetentionPolicyRuleArgs{...} }

type RetentionPolicyRuleArrayOutput

type RetentionPolicyRuleArrayOutput struct{ *pulumi.OutputState }

func (RetentionPolicyRuleArrayOutput) ElementType

func (RetentionPolicyRuleArrayOutput) Index

func (RetentionPolicyRuleArrayOutput) ToRetentionPolicyRuleArrayOutput

func (o RetentionPolicyRuleArrayOutput) ToRetentionPolicyRuleArrayOutput() RetentionPolicyRuleArrayOutput

func (RetentionPolicyRuleArrayOutput) ToRetentionPolicyRuleArrayOutputWithContext

func (o RetentionPolicyRuleArrayOutput) ToRetentionPolicyRuleArrayOutputWithContext(ctx context.Context) RetentionPolicyRuleArrayOutput

type RetentionPolicyRuleInput

type RetentionPolicyRuleInput interface {
	pulumi.Input

	ToRetentionPolicyRuleOutput() RetentionPolicyRuleOutput
	ToRetentionPolicyRuleOutputWithContext(context.Context) RetentionPolicyRuleOutput
}

RetentionPolicyRuleInput is an input type that accepts RetentionPolicyRuleArgs and RetentionPolicyRuleOutput values. You can construct a concrete instance of `RetentionPolicyRuleInput` via:

RetentionPolicyRuleArgs{...}

type RetentionPolicyRuleOutput

type RetentionPolicyRuleOutput struct{ *pulumi.OutputState }

func (RetentionPolicyRuleOutput) AlwaysRetain

retain always.

func (RetentionPolicyRuleOutput) Disabled

Specify if the rule is disable or not. Defaults to `false`

func (RetentionPolicyRuleOutput) ElementType

func (RetentionPolicyRuleOutput) ElementType() reflect.Type

func (RetentionPolicyRuleOutput) MostRecentlyPulled

func (o RetentionPolicyRuleOutput) MostRecentlyPulled() pulumi.IntPtrOutput

retain the most recently pulled n artifacts.

func (RetentionPolicyRuleOutput) MostRecentlyPushed

func (o RetentionPolicyRuleOutput) MostRecentlyPushed() pulumi.IntPtrOutput

retain the most recently pushed n artifacts.

func (RetentionPolicyRuleOutput) NDaysSinceLastPull

func (o RetentionPolicyRuleOutput) NDaysSinceLastPull() pulumi.IntPtrOutput

retains the artifacts pulled within the lasts n days.

func (RetentionPolicyRuleOutput) NDaysSinceLastPush

func (o RetentionPolicyRuleOutput) NDaysSinceLastPush() pulumi.IntPtrOutput

retains the artifacts pushed within the lasts n days.

func (RetentionPolicyRuleOutput) RepoExcluding

For the repositories excuding.

func (RetentionPolicyRuleOutput) RepoMatching

For the repositories matching.

func (RetentionPolicyRuleOutput) TagExcluding

For the tag excuding.

func (RetentionPolicyRuleOutput) TagMatching

For the tag matching.

func (RetentionPolicyRuleOutput) ToRetentionPolicyRuleOutput

func (o RetentionPolicyRuleOutput) ToRetentionPolicyRuleOutput() RetentionPolicyRuleOutput

func (RetentionPolicyRuleOutput) ToRetentionPolicyRuleOutputWithContext

func (o RetentionPolicyRuleOutput) ToRetentionPolicyRuleOutputWithContext(ctx context.Context) RetentionPolicyRuleOutput

func (RetentionPolicyRuleOutput) UntaggedArtifacts

func (o RetentionPolicyRuleOutput) UntaggedArtifacts() pulumi.BoolPtrOutput

with untagged artifacts. Defaults to `true`

type RetentionPolicyState

type RetentionPolicyState struct {
	// Al collection of rule blocks as documented below.
	Rules RetentionPolicyRuleArrayInput
	// The schedule of when you would like the policy to run. This can be `hourly`, `daily`, `weekly` or can be a custom cron string.
	Schedule pulumi.StringPtrInput
	// The project id of which you would like to apply this policy.
	Scope pulumi.StringPtrInput
}

func (RetentionPolicyState) ElementType

func (RetentionPolicyState) ElementType() reflect.Type

type RobotAccount

type RobotAccount struct {
	pulumi.CustomResourceState

	Description pulumi.StringPtrOutput            `pulumi:"description"`
	Disable     pulumi.BoolPtrOutput              `pulumi:"disable"`
	Duration    pulumi.IntPtrOutput               `pulumi:"duration"`
	FullName    pulumi.StringOutput               `pulumi:"fullName"`
	Level       pulumi.StringOutput               `pulumi:"level"`
	Name        pulumi.StringOutput               `pulumi:"name"`
	Permissions RobotAccountPermissionArrayOutput `pulumi:"permissions"`
	RobotId     pulumi.StringOutput               `pulumi:"robotId"`
	Secret      pulumi.StringOutput               `pulumi:"secret"`
}

## # Resource: RobotAccount

Harbor supports different levels of robot accounts. Currently `system` and `project` level robot accounts are supported.

## Example Usage ### System Level Introduced in harbor 2.2.0, system level robot accounts can have basically [all available permissions](https://github.com/goharbor/harbor/blob/-/src/common/rbac/const.go) in harbor and are not dependent on a single project.

```go package main

import (

"github.com/pulumi/pulumi-random/sdk/v4/go/random"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := random.NewRandomPassword(ctx, "password", &random.RandomPasswordArgs{
			Length:  pulumi.Int(12),
			Special: pulumi.Bool(false),
		})
		if err != nil {
			return err
		}
		main, err := harbor.NewProject(ctx, "main", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewRobotAccount(ctx, "system", &harbor.RobotAccountArgs{
			Description: pulumi.String("system level robot account"),
			Level:       pulumi.String("system"),
			Secret:      pulumi.Any(resource.Random_password.Password.Result),
			Permissions: harbor.RobotAccountPermissionArray{
				&harbor.RobotAccountPermissionArgs{
					Accesses: harbor.RobotAccountPermissionAccessArray{
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("create"),
							Resource: pulumi.String("labels"),
						},
					},
					Kind:      pulumi.String("system"),
					Namespace: pulumi.String("/"),
				},
				&harbor.RobotAccountPermissionArgs{
					Accesses: harbor.RobotAccountPermissionAccessArray{
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("push"),
							Resource: pulumi.String("repository"),
						},
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("read"),
							Resource: pulumi.String("helm-chart"),
						},
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("read"),
							Resource: pulumi.String("helm-chart-version"),
						},
					},
					Kind:      pulumi.String("project"),
					Namespace: main.Name,
				},
				&harbor.RobotAccountPermissionArgs{
					Accesses: harbor.RobotAccountPermissionAccessArray{
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("pull"),
							Resource: pulumi.String("repository"),
						},
					},
					Kind:      pulumi.String("project"),
					Namespace: pulumi.String("*"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

The above example, creates a system level robot account with permissions to - permission to create labels on system level - pull repository across all projects - push repository to project "my-project-name" - read helm-chart and helm-chart-version in project "my-project-name" ### Project Level

Other than system level robot accounts, project level robot accounts can interact on project level only. The [available permissions](https://github.com/goharbor/harbor/blob/-/src/common/rbac/const.go) are mostly the same as for system level robots.

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := harbor.NewProject(ctx, "main", nil)
		if err != nil {
			return err
		}
		_, err = harbor.NewRobotAccount(ctx, "project", &harbor.RobotAccountArgs{
			Description: pulumi.String("project level robot account"),
			Level:       pulumi.String("project"),
			Permissions: harbor.RobotAccountPermissionArray{
				&harbor.RobotAccountPermissionArgs{
					Accesses: harbor.RobotAccountPermissionAccessArray{
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("pull"),
							Resource: pulumi.String("repository"),
						},
						&harbor.RobotAccountPermissionAccessArgs{
							Action:   pulumi.String("push"),
							Resource: pulumi.String("repository"),
						},
					},
					Kind:      pulumi.String("project"),
					Namespace: main.Name,
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

The above example creates a project level robot account with permissions to - pull repository on project "main" - push repository on project "main"

func GetRobotAccount

func GetRobotAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RobotAccountState, opts ...pulumi.ResourceOption) (*RobotAccount, error)

GetRobotAccount gets an existing RobotAccount resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRobotAccount

func NewRobotAccount(ctx *pulumi.Context,
	name string, args *RobotAccountArgs, opts ...pulumi.ResourceOption) (*RobotAccount, error)

NewRobotAccount registers a new resource with the given unique name, arguments, and options.

func (*RobotAccount) ElementType

func (*RobotAccount) ElementType() reflect.Type

func (*RobotAccount) ToRobotAccountOutput

func (i *RobotAccount) ToRobotAccountOutput() RobotAccountOutput

func (*RobotAccount) ToRobotAccountOutputWithContext

func (i *RobotAccount) ToRobotAccountOutputWithContext(ctx context.Context) RobotAccountOutput

type RobotAccountArgs

type RobotAccountArgs struct {
	Description pulumi.StringPtrInput
	Disable     pulumi.BoolPtrInput
	Duration    pulumi.IntPtrInput
	Level       pulumi.StringInput
	Name        pulumi.StringPtrInput
	Permissions RobotAccountPermissionArrayInput
	Secret      pulumi.StringPtrInput
}

The set of arguments for constructing a RobotAccount resource.

func (RobotAccountArgs) ElementType

func (RobotAccountArgs) ElementType() reflect.Type

type RobotAccountArray

type RobotAccountArray []RobotAccountInput

func (RobotAccountArray) ElementType

func (RobotAccountArray) ElementType() reflect.Type

func (RobotAccountArray) ToRobotAccountArrayOutput

func (i RobotAccountArray) ToRobotAccountArrayOutput() RobotAccountArrayOutput

func (RobotAccountArray) ToRobotAccountArrayOutputWithContext

func (i RobotAccountArray) ToRobotAccountArrayOutputWithContext(ctx context.Context) RobotAccountArrayOutput

type RobotAccountArrayInput

type RobotAccountArrayInput interface {
	pulumi.Input

	ToRobotAccountArrayOutput() RobotAccountArrayOutput
	ToRobotAccountArrayOutputWithContext(context.Context) RobotAccountArrayOutput
}

RobotAccountArrayInput is an input type that accepts RobotAccountArray and RobotAccountArrayOutput values. You can construct a concrete instance of `RobotAccountArrayInput` via:

RobotAccountArray{ RobotAccountArgs{...} }

type RobotAccountArrayOutput

type RobotAccountArrayOutput struct{ *pulumi.OutputState }

func (RobotAccountArrayOutput) ElementType

func (RobotAccountArrayOutput) ElementType() reflect.Type

func (RobotAccountArrayOutput) Index

func (RobotAccountArrayOutput) ToRobotAccountArrayOutput

func (o RobotAccountArrayOutput) ToRobotAccountArrayOutput() RobotAccountArrayOutput

func (RobotAccountArrayOutput) ToRobotAccountArrayOutputWithContext

func (o RobotAccountArrayOutput) ToRobotAccountArrayOutputWithContext(ctx context.Context) RobotAccountArrayOutput

type RobotAccountInput

type RobotAccountInput interface {
	pulumi.Input

	ToRobotAccountOutput() RobotAccountOutput
	ToRobotAccountOutputWithContext(ctx context.Context) RobotAccountOutput
}

type RobotAccountMap

type RobotAccountMap map[string]RobotAccountInput

func (RobotAccountMap) ElementType

func (RobotAccountMap) ElementType() reflect.Type

func (RobotAccountMap) ToRobotAccountMapOutput

func (i RobotAccountMap) ToRobotAccountMapOutput() RobotAccountMapOutput

func (RobotAccountMap) ToRobotAccountMapOutputWithContext

func (i RobotAccountMap) ToRobotAccountMapOutputWithContext(ctx context.Context) RobotAccountMapOutput

type RobotAccountMapInput

type RobotAccountMapInput interface {
	pulumi.Input

	ToRobotAccountMapOutput() RobotAccountMapOutput
	ToRobotAccountMapOutputWithContext(context.Context) RobotAccountMapOutput
}

RobotAccountMapInput is an input type that accepts RobotAccountMap and RobotAccountMapOutput values. You can construct a concrete instance of `RobotAccountMapInput` via:

RobotAccountMap{ "key": RobotAccountArgs{...} }

type RobotAccountMapOutput

type RobotAccountMapOutput struct{ *pulumi.OutputState }

func (RobotAccountMapOutput) ElementType

func (RobotAccountMapOutput) ElementType() reflect.Type

func (RobotAccountMapOutput) MapIndex

func (RobotAccountMapOutput) ToRobotAccountMapOutput

func (o RobotAccountMapOutput) ToRobotAccountMapOutput() RobotAccountMapOutput

func (RobotAccountMapOutput) ToRobotAccountMapOutputWithContext

func (o RobotAccountMapOutput) ToRobotAccountMapOutputWithContext(ctx context.Context) RobotAccountMapOutput

type RobotAccountOutput

type RobotAccountOutput struct{ *pulumi.OutputState }

func (RobotAccountOutput) Description

func (o RobotAccountOutput) Description() pulumi.StringPtrOutput

func (RobotAccountOutput) Disable

func (RobotAccountOutput) Duration

func (o RobotAccountOutput) Duration() pulumi.IntPtrOutput

func (RobotAccountOutput) ElementType

func (RobotAccountOutput) ElementType() reflect.Type

func (RobotAccountOutput) FullName

func (o RobotAccountOutput) FullName() pulumi.StringOutput

func (RobotAccountOutput) Level

func (RobotAccountOutput) Name

func (RobotAccountOutput) Permissions

func (RobotAccountOutput) RobotId

func (RobotAccountOutput) Secret

func (RobotAccountOutput) ToRobotAccountOutput

func (o RobotAccountOutput) ToRobotAccountOutput() RobotAccountOutput

func (RobotAccountOutput) ToRobotAccountOutputWithContext

func (o RobotAccountOutput) ToRobotAccountOutputWithContext(ctx context.Context) RobotAccountOutput

type RobotAccountPermission

type RobotAccountPermission struct {
	Accesses  []RobotAccountPermissionAccess `pulumi:"accesses"`
	Kind      string                         `pulumi:"kind"`
	Namespace string                         `pulumi:"namespace"`
}

type RobotAccountPermissionAccess

type RobotAccountPermissionAccess struct {
	Action   string  `pulumi:"action"`
	Effect   *string `pulumi:"effect"`
	Resource string  `pulumi:"resource"`
}

type RobotAccountPermissionAccessArgs

type RobotAccountPermissionAccessArgs struct {
	Action   pulumi.StringInput    `pulumi:"action"`
	Effect   pulumi.StringPtrInput `pulumi:"effect"`
	Resource pulumi.StringInput    `pulumi:"resource"`
}

func (RobotAccountPermissionAccessArgs) ElementType

func (RobotAccountPermissionAccessArgs) ToRobotAccountPermissionAccessOutput

func (i RobotAccountPermissionAccessArgs) ToRobotAccountPermissionAccessOutput() RobotAccountPermissionAccessOutput

func (RobotAccountPermissionAccessArgs) ToRobotAccountPermissionAccessOutputWithContext

func (i RobotAccountPermissionAccessArgs) ToRobotAccountPermissionAccessOutputWithContext(ctx context.Context) RobotAccountPermissionAccessOutput

type RobotAccountPermissionAccessArray

type RobotAccountPermissionAccessArray []RobotAccountPermissionAccessInput

func (RobotAccountPermissionAccessArray) ElementType

func (RobotAccountPermissionAccessArray) ToRobotAccountPermissionAccessArrayOutput

func (i RobotAccountPermissionAccessArray) ToRobotAccountPermissionAccessArrayOutput() RobotAccountPermissionAccessArrayOutput

func (RobotAccountPermissionAccessArray) ToRobotAccountPermissionAccessArrayOutputWithContext

func (i RobotAccountPermissionAccessArray) ToRobotAccountPermissionAccessArrayOutputWithContext(ctx context.Context) RobotAccountPermissionAccessArrayOutput

type RobotAccountPermissionAccessArrayInput

type RobotAccountPermissionAccessArrayInput interface {
	pulumi.Input

	ToRobotAccountPermissionAccessArrayOutput() RobotAccountPermissionAccessArrayOutput
	ToRobotAccountPermissionAccessArrayOutputWithContext(context.Context) RobotAccountPermissionAccessArrayOutput
}

RobotAccountPermissionAccessArrayInput is an input type that accepts RobotAccountPermissionAccessArray and RobotAccountPermissionAccessArrayOutput values. You can construct a concrete instance of `RobotAccountPermissionAccessArrayInput` via:

RobotAccountPermissionAccessArray{ RobotAccountPermissionAccessArgs{...} }

type RobotAccountPermissionAccessArrayOutput

type RobotAccountPermissionAccessArrayOutput struct{ *pulumi.OutputState }

func (RobotAccountPermissionAccessArrayOutput) ElementType

func (RobotAccountPermissionAccessArrayOutput) Index

func (RobotAccountPermissionAccessArrayOutput) ToRobotAccountPermissionAccessArrayOutput

func (o RobotAccountPermissionAccessArrayOutput) ToRobotAccountPermissionAccessArrayOutput() RobotAccountPermissionAccessArrayOutput

func (RobotAccountPermissionAccessArrayOutput) ToRobotAccountPermissionAccessArrayOutputWithContext

func (o RobotAccountPermissionAccessArrayOutput) ToRobotAccountPermissionAccessArrayOutputWithContext(ctx context.Context) RobotAccountPermissionAccessArrayOutput

type RobotAccountPermissionAccessInput

type RobotAccountPermissionAccessInput interface {
	pulumi.Input

	ToRobotAccountPermissionAccessOutput() RobotAccountPermissionAccessOutput
	ToRobotAccountPermissionAccessOutputWithContext(context.Context) RobotAccountPermissionAccessOutput
}

RobotAccountPermissionAccessInput is an input type that accepts RobotAccountPermissionAccessArgs and RobotAccountPermissionAccessOutput values. You can construct a concrete instance of `RobotAccountPermissionAccessInput` via:

RobotAccountPermissionAccessArgs{...}

type RobotAccountPermissionAccessOutput

type RobotAccountPermissionAccessOutput struct{ *pulumi.OutputState }

func (RobotAccountPermissionAccessOutput) Action

func (RobotAccountPermissionAccessOutput) Effect

func (RobotAccountPermissionAccessOutput) ElementType

func (RobotAccountPermissionAccessOutput) Resource

func (RobotAccountPermissionAccessOutput) ToRobotAccountPermissionAccessOutput

func (o RobotAccountPermissionAccessOutput) ToRobotAccountPermissionAccessOutput() RobotAccountPermissionAccessOutput

func (RobotAccountPermissionAccessOutput) ToRobotAccountPermissionAccessOutputWithContext

func (o RobotAccountPermissionAccessOutput) ToRobotAccountPermissionAccessOutputWithContext(ctx context.Context) RobotAccountPermissionAccessOutput

type RobotAccountPermissionArgs

type RobotAccountPermissionArgs struct {
	Accesses  RobotAccountPermissionAccessArrayInput `pulumi:"accesses"`
	Kind      pulumi.StringInput                     `pulumi:"kind"`
	Namespace pulumi.StringInput                     `pulumi:"namespace"`
}

func (RobotAccountPermissionArgs) ElementType

func (RobotAccountPermissionArgs) ElementType() reflect.Type

func (RobotAccountPermissionArgs) ToRobotAccountPermissionOutput

func (i RobotAccountPermissionArgs) ToRobotAccountPermissionOutput() RobotAccountPermissionOutput

func (RobotAccountPermissionArgs) ToRobotAccountPermissionOutputWithContext

func (i RobotAccountPermissionArgs) ToRobotAccountPermissionOutputWithContext(ctx context.Context) RobotAccountPermissionOutput

type RobotAccountPermissionArray

type RobotAccountPermissionArray []RobotAccountPermissionInput

func (RobotAccountPermissionArray) ElementType

func (RobotAccountPermissionArray) ToRobotAccountPermissionArrayOutput

func (i RobotAccountPermissionArray) ToRobotAccountPermissionArrayOutput() RobotAccountPermissionArrayOutput

func (RobotAccountPermissionArray) ToRobotAccountPermissionArrayOutputWithContext

func (i RobotAccountPermissionArray) ToRobotAccountPermissionArrayOutputWithContext(ctx context.Context) RobotAccountPermissionArrayOutput

type RobotAccountPermissionArrayInput

type RobotAccountPermissionArrayInput interface {
	pulumi.Input

	ToRobotAccountPermissionArrayOutput() RobotAccountPermissionArrayOutput
	ToRobotAccountPermissionArrayOutputWithContext(context.Context) RobotAccountPermissionArrayOutput
}

RobotAccountPermissionArrayInput is an input type that accepts RobotAccountPermissionArray and RobotAccountPermissionArrayOutput values. You can construct a concrete instance of `RobotAccountPermissionArrayInput` via:

RobotAccountPermissionArray{ RobotAccountPermissionArgs{...} }

type RobotAccountPermissionArrayOutput

type RobotAccountPermissionArrayOutput struct{ *pulumi.OutputState }

func (RobotAccountPermissionArrayOutput) ElementType

func (RobotAccountPermissionArrayOutput) Index

func (RobotAccountPermissionArrayOutput) ToRobotAccountPermissionArrayOutput

func (o RobotAccountPermissionArrayOutput) ToRobotAccountPermissionArrayOutput() RobotAccountPermissionArrayOutput

func (RobotAccountPermissionArrayOutput) ToRobotAccountPermissionArrayOutputWithContext

func (o RobotAccountPermissionArrayOutput) ToRobotAccountPermissionArrayOutputWithContext(ctx context.Context) RobotAccountPermissionArrayOutput

type RobotAccountPermissionInput

type RobotAccountPermissionInput interface {
	pulumi.Input

	ToRobotAccountPermissionOutput() RobotAccountPermissionOutput
	ToRobotAccountPermissionOutputWithContext(context.Context) RobotAccountPermissionOutput
}

RobotAccountPermissionInput is an input type that accepts RobotAccountPermissionArgs and RobotAccountPermissionOutput values. You can construct a concrete instance of `RobotAccountPermissionInput` via:

RobotAccountPermissionArgs{...}

type RobotAccountPermissionOutput

type RobotAccountPermissionOutput struct{ *pulumi.OutputState }

func (RobotAccountPermissionOutput) Accesses

func (RobotAccountPermissionOutput) ElementType

func (RobotAccountPermissionOutput) Kind

func (RobotAccountPermissionOutput) Namespace

func (RobotAccountPermissionOutput) ToRobotAccountPermissionOutput

func (o RobotAccountPermissionOutput) ToRobotAccountPermissionOutput() RobotAccountPermissionOutput

func (RobotAccountPermissionOutput) ToRobotAccountPermissionOutputWithContext

func (o RobotAccountPermissionOutput) ToRobotAccountPermissionOutputWithContext(ctx context.Context) RobotAccountPermissionOutput

type RobotAccountState

type RobotAccountState struct {
	Description pulumi.StringPtrInput
	Disable     pulumi.BoolPtrInput
	Duration    pulumi.IntPtrInput
	FullName    pulumi.StringPtrInput
	Level       pulumi.StringPtrInput
	Name        pulumi.StringPtrInput
	Permissions RobotAccountPermissionArrayInput
	RobotId     pulumi.StringPtrInput
	Secret      pulumi.StringPtrInput
}

func (RobotAccountState) ElementType

func (RobotAccountState) ElementType() reflect.Type

type Tasks

type Tasks struct {
	pulumi.CustomResourceState

	VulnerabilityScanPolicy pulumi.StringOutput `pulumi:"vulnerabilityScanPolicy"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewTasks(ctx, "main", &harbor.TasksArgs{
			VulnerabilityScanPolicy: pulumi.String("daily"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetTasks

func GetTasks(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TasksState, opts ...pulumi.ResourceOption) (*Tasks, error)

GetTasks gets an existing Tasks resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTasks

func NewTasks(ctx *pulumi.Context,
	name string, args *TasksArgs, opts ...pulumi.ResourceOption) (*Tasks, error)

NewTasks registers a new resource with the given unique name, arguments, and options.

func (*Tasks) ElementType

func (*Tasks) ElementType() reflect.Type

func (*Tasks) ToTasksOutput

func (i *Tasks) ToTasksOutput() TasksOutput

func (*Tasks) ToTasksOutputWithContext

func (i *Tasks) ToTasksOutputWithContext(ctx context.Context) TasksOutput

type TasksArgs

type TasksArgs struct {
	VulnerabilityScanPolicy pulumi.StringInput
}

The set of arguments for constructing a Tasks resource.

func (TasksArgs) ElementType

func (TasksArgs) ElementType() reflect.Type

type TasksArray

type TasksArray []TasksInput

func (TasksArray) ElementType

func (TasksArray) ElementType() reflect.Type

func (TasksArray) ToTasksArrayOutput

func (i TasksArray) ToTasksArrayOutput() TasksArrayOutput

func (TasksArray) ToTasksArrayOutputWithContext

func (i TasksArray) ToTasksArrayOutputWithContext(ctx context.Context) TasksArrayOutput

type TasksArrayInput

type TasksArrayInput interface {
	pulumi.Input

	ToTasksArrayOutput() TasksArrayOutput
	ToTasksArrayOutputWithContext(context.Context) TasksArrayOutput
}

TasksArrayInput is an input type that accepts TasksArray and TasksArrayOutput values. You can construct a concrete instance of `TasksArrayInput` via:

TasksArray{ TasksArgs{...} }

type TasksArrayOutput

type TasksArrayOutput struct{ *pulumi.OutputState }

func (TasksArrayOutput) ElementType

func (TasksArrayOutput) ElementType() reflect.Type

func (TasksArrayOutput) Index

func (TasksArrayOutput) ToTasksArrayOutput

func (o TasksArrayOutput) ToTasksArrayOutput() TasksArrayOutput

func (TasksArrayOutput) ToTasksArrayOutputWithContext

func (o TasksArrayOutput) ToTasksArrayOutputWithContext(ctx context.Context) TasksArrayOutput

type TasksInput

type TasksInput interface {
	pulumi.Input

	ToTasksOutput() TasksOutput
	ToTasksOutputWithContext(ctx context.Context) TasksOutput
}

type TasksMap

type TasksMap map[string]TasksInput

func (TasksMap) ElementType

func (TasksMap) ElementType() reflect.Type

func (TasksMap) ToTasksMapOutput

func (i TasksMap) ToTasksMapOutput() TasksMapOutput

func (TasksMap) ToTasksMapOutputWithContext

func (i TasksMap) ToTasksMapOutputWithContext(ctx context.Context) TasksMapOutput

type TasksMapInput

type TasksMapInput interface {
	pulumi.Input

	ToTasksMapOutput() TasksMapOutput
	ToTasksMapOutputWithContext(context.Context) TasksMapOutput
}

TasksMapInput is an input type that accepts TasksMap and TasksMapOutput values. You can construct a concrete instance of `TasksMapInput` via:

TasksMap{ "key": TasksArgs{...} }

type TasksMapOutput

type TasksMapOutput struct{ *pulumi.OutputState }

func (TasksMapOutput) ElementType

func (TasksMapOutput) ElementType() reflect.Type

func (TasksMapOutput) MapIndex

func (TasksMapOutput) ToTasksMapOutput

func (o TasksMapOutput) ToTasksMapOutput() TasksMapOutput

func (TasksMapOutput) ToTasksMapOutputWithContext

func (o TasksMapOutput) ToTasksMapOutputWithContext(ctx context.Context) TasksMapOutput

type TasksOutput

type TasksOutput struct{ *pulumi.OutputState }

func (TasksOutput) ElementType

func (TasksOutput) ElementType() reflect.Type

func (TasksOutput) ToTasksOutput

func (o TasksOutput) ToTasksOutput() TasksOutput

func (TasksOutput) ToTasksOutputWithContext

func (o TasksOutput) ToTasksOutputWithContext(ctx context.Context) TasksOutput

func (TasksOutput) VulnerabilityScanPolicy

func (o TasksOutput) VulnerabilityScanPolicy() pulumi.StringOutput

type TasksState

type TasksState struct {
	VulnerabilityScanPolicy pulumi.StringPtrInput
}

func (TasksState) ElementType

func (TasksState) ElementType() reflect.Type

type User

type User struct {
	pulumi.CustomResourceState

	Admin    pulumi.BoolPtrOutput   `pulumi:"admin"`
	Comment  pulumi.StringPtrOutput `pulumi:"comment"`
	Email    pulumi.StringOutput    `pulumi:"email"`
	FullName pulumi.StringOutput    `pulumi:"fullName"`
	Password pulumi.StringOutput    `pulumi:"password"`
	Username pulumi.StringOutput    `pulumi:"username"`
}

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-harbor/sdk/v3/go/harbor"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := harbor.NewUser(ctx, "main", &harbor.UserArgs{
			Email:    pulumi.String("john@smith.com"),
			FullName: pulumi.String("John Smith"),
			Password: pulumi.String("Password12345!"),
			Username: pulumi.String("john"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

An internal user harbor user can be imported using the `user id` eg, `

```sh

$ pulumi import harbor:index/user:User main /users/19

```

`

func GetUser

func GetUser(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *UserState, opts ...pulumi.ResourceOption) (*User, error)

GetUser gets an existing User resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewUser

func NewUser(ctx *pulumi.Context,
	name string, args *UserArgs, opts ...pulumi.ResourceOption) (*User, error)

NewUser registers a new resource with the given unique name, arguments, and options.

func (*User) ElementType

func (*User) ElementType() reflect.Type

func (*User) ToUserOutput

func (i *User) ToUserOutput() UserOutput

func (*User) ToUserOutputWithContext

func (i *User) ToUserOutputWithContext(ctx context.Context) UserOutput

type UserArgs

type UserArgs struct {
	Admin    pulumi.BoolPtrInput
	Comment  pulumi.StringPtrInput
	Email    pulumi.StringInput
	FullName pulumi.StringInput
	Password pulumi.StringInput
	Username pulumi.StringInput
}

The set of arguments for constructing a User resource.

func (UserArgs) ElementType

func (UserArgs) ElementType() reflect.Type

type UserArray

type UserArray []UserInput

func (UserArray) ElementType

func (UserArray) ElementType() reflect.Type

func (UserArray) ToUserArrayOutput

func (i UserArray) ToUserArrayOutput() UserArrayOutput

func (UserArray) ToUserArrayOutputWithContext

func (i UserArray) ToUserArrayOutputWithContext(ctx context.Context) UserArrayOutput

type UserArrayInput

type UserArrayInput interface {
	pulumi.Input

	ToUserArrayOutput() UserArrayOutput
	ToUserArrayOutputWithContext(context.Context) UserArrayOutput
}

UserArrayInput is an input type that accepts UserArray and UserArrayOutput values. You can construct a concrete instance of `UserArrayInput` via:

UserArray{ UserArgs{...} }

type UserArrayOutput

type UserArrayOutput struct{ *pulumi.OutputState }

func (UserArrayOutput) ElementType

func (UserArrayOutput) ElementType() reflect.Type

func (UserArrayOutput) Index

func (UserArrayOutput) ToUserArrayOutput

func (o UserArrayOutput) ToUserArrayOutput() UserArrayOutput

func (UserArrayOutput) ToUserArrayOutputWithContext

func (o UserArrayOutput) ToUserArrayOutputWithContext(ctx context.Context) UserArrayOutput

type UserInput

type UserInput interface {
	pulumi.Input

	ToUserOutput() UserOutput
	ToUserOutputWithContext(ctx context.Context) UserOutput
}

type UserMap

type UserMap map[string]UserInput

func (UserMap) ElementType

func (UserMap) ElementType() reflect.Type

func (UserMap) ToUserMapOutput

func (i UserMap) ToUserMapOutput() UserMapOutput

func (UserMap) ToUserMapOutputWithContext

func (i UserMap) ToUserMapOutputWithContext(ctx context.Context) UserMapOutput

type UserMapInput

type UserMapInput interface {
	pulumi.Input

	ToUserMapOutput() UserMapOutput
	ToUserMapOutputWithContext(context.Context) UserMapOutput
}

UserMapInput is an input type that accepts UserMap and UserMapOutput values. You can construct a concrete instance of `UserMapInput` via:

UserMap{ "key": UserArgs{...} }

type UserMapOutput

type UserMapOutput struct{ *pulumi.OutputState }

func (UserMapOutput) ElementType

func (UserMapOutput) ElementType() reflect.Type

func (UserMapOutput) MapIndex

func (UserMapOutput) ToUserMapOutput

func (o UserMapOutput) ToUserMapOutput() UserMapOutput

func (UserMapOutput) ToUserMapOutputWithContext

func (o UserMapOutput) ToUserMapOutputWithContext(ctx context.Context) UserMapOutput

type UserOutput

type UserOutput struct{ *pulumi.OutputState }

func (UserOutput) Admin

func (o UserOutput) Admin() pulumi.BoolPtrOutput

func (UserOutput) Comment

func (o UserOutput) Comment() pulumi.StringPtrOutput

func (UserOutput) ElementType

func (UserOutput) ElementType() reflect.Type

func (UserOutput) Email

func (o UserOutput) Email() pulumi.StringOutput

func (UserOutput) FullName

func (o UserOutput) FullName() pulumi.StringOutput

func (UserOutput) Password

func (o UserOutput) Password() pulumi.StringOutput

func (UserOutput) ToUserOutput

func (o UserOutput) ToUserOutput() UserOutput

func (UserOutput) ToUserOutputWithContext

func (o UserOutput) ToUserOutputWithContext(ctx context.Context) UserOutput

func (UserOutput) Username

func (o UserOutput) Username() pulumi.StringOutput

type UserState

type UserState struct {
	Admin    pulumi.BoolPtrInput
	Comment  pulumi.StringPtrInput
	Email    pulumi.StringPtrInput
	FullName pulumi.StringPtrInput
	Password pulumi.StringPtrInput
	Username pulumi.StringPtrInput
}

func (UserState) ElementType

func (UserState) ElementType() reflect.Type

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL