@pulumiverse/harbor
Version:
A Pulumi package for creating and managing Harbor resources.
85 lines (84 loc) • 2.83 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
export interface ConfigSystemBannerMessage {
/**
* Whether or not the banner message is closable.
*/
closable?: pulumi.Input<boolean>;
/**
* The date the banner message will start displaying. (Format: `MM/DD/YYYY`)
*/
fromDate?: pulumi.Input<string>;
/**
* The message to display in the banner.
*/
message: pulumi.Input<string>;
/**
* The date the banner message will stop displaying. (Format: `MM/DD/YYYY`)
*/
toDate?: pulumi.Input<string>;
/**
* The type of banner message. Can be `"info"`, `"warning"`, `"success"` or `"danger"`.
*/
type?: pulumi.Input<string>;
}
export interface ReplicationFilter {
/**
* Matches or excludes the result. Can be one of the following. `matches`, `excludes`
*/
decoration?: pulumi.Input<string>;
/**
* Filter on the resource according to labels.
*/
labels?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Filter on the name of the resource.
*/
name?: pulumi.Input<string>;
/**
* Filter on the resource type. Can be one of the following types. `chart`, `artifact`
*/
resource?: pulumi.Input<string>;
/**
* Filter on the tag/version of the resource.
*/
tag?: pulumi.Input<string>;
}
export interface RetentionPolicyRule {
alwaysRetain?: pulumi.Input<boolean>;
disabled?: pulumi.Input<boolean>;
mostRecentlyPulled?: pulumi.Input<number>;
mostRecentlyPushed?: pulumi.Input<number>;
nDaysSinceLastPull?: pulumi.Input<number>;
nDaysSinceLastPush?: pulumi.Input<number>;
repoExcluding?: pulumi.Input<string>;
repoMatching?: pulumi.Input<string>;
tagExcluding?: pulumi.Input<string>;
tagMatching?: pulumi.Input<string>;
untaggedArtifacts?: pulumi.Input<boolean>;
}
export interface RobotAccountPermission {
accesses: pulumi.Input<pulumi.Input<inputs.RobotAccountPermissionAccess>[]>;
/**
* Either `system` or `project`.
*/
kind: pulumi.Input<string>;
/**
* namespace is the name of your project. For kind `system` permissions, always use `/` as namespace. Use `*` to match all projects.
*/
namespace: pulumi.Input<string>;
}
export interface RobotAccountPermissionAccess {
/**
* Eg. `push`, `pull`, `read`, etc. Check [available actions](https://github.com/goharbor/harbor/blob/-/src/common/rbac/const.go).
*/
action: pulumi.Input<string>;
/**
* Either `allow` or `deny`. Defaults to `allow`.
*/
effect?: pulumi.Input<string>;
/**
* Eg. `repository`, `labels`, etc. Check [available resources](https://github.com/goharbor/harbor/blob/-/src/common/rbac/const.go).
*/
resource: pulumi.Input<string>;
}