@port-labs/port
Version:
A Pulumi package for creating and managing Port resources.
1,679 lines • 59.7 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
export interface ActionApprovalEmailNotification {
}
export interface ActionApprovalWebhookNotification {
/**
* The format to invoke the webhook
*/
format?: pulumi.Input<string>;
/**
* The URL to invoke the webhook
*/
url: pulumi.Input<string>;
}
export interface ActionAutomationTrigger {
/**
* Any entity change event trigger
*/
anyEntityChangeEvent?: pulumi.Input<inputs.ActionAutomationTriggerAnyEntityChangeEvent>;
/**
* Any run change event trigger
*/
anyRunChangeEvent?: pulumi.Input<inputs.ActionAutomationTriggerAnyRunChangeEvent>;
/**
* Entity created event trigger
*/
entityCreatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerEntityCreatedEvent>;
/**
* Entity deleted event trigger
*/
entityDeletedEvent?: pulumi.Input<inputs.ActionAutomationTriggerEntityDeletedEvent>;
/**
* Entity updated event trigger
*/
entityUpdatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerEntityUpdatedEvent>;
/**
* JQ condition for automation trigger
*/
jqCondition?: pulumi.Input<inputs.ActionAutomationTriggerJqCondition>;
/**
* Run created event trigger
*/
runCreatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerRunCreatedEvent>;
/**
* Run updated event trigger
*/
runUpdatedEvent?: pulumi.Input<inputs.ActionAutomationTriggerRunUpdatedEvent>;
/**
* Timer property expired event trigger
*/
timerPropertyExpiredEvent?: pulumi.Input<inputs.ActionAutomationTriggerTimerPropertyExpiredEvent>;
}
export interface ActionAutomationTriggerAnyEntityChangeEvent {
/**
* The blueprint identifier of the changed entity
*/
blueprintIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerAnyRunChangeEvent {
/**
* The action identifier of the changed run
*/
actionIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerEntityCreatedEvent {
/**
* The blueprint identifier of the created entity
*/
blueprintIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerEntityDeletedEvent {
/**
* The blueprint identifier of the deleted entity
*/
blueprintIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerEntityUpdatedEvent {
/**
* The blueprint identifier of the updated entity
*/
blueprintIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerJqCondition {
/**
* The combinator of the condition
*/
combinator?: pulumi.Input<string>;
/**
* The jq expressions of the condition
*/
expressions: pulumi.Input<pulumi.Input<string>[]>;
}
export interface ActionAutomationTriggerRunCreatedEvent {
/**
* The action identifier of the created run
*/
actionIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerRunUpdatedEvent {
/**
* The action identifier of the updated run
*/
actionIdentifier: pulumi.Input<string>;
}
export interface ActionAutomationTriggerTimerPropertyExpiredEvent {
/**
* The blueprint identifier of the expired timer property
*/
blueprintIdentifier: pulumi.Input<string>;
/**
* The property identifier of the expired timer property
*/
propertyIdentifier: pulumi.Input<string>;
}
export interface ActionAzureMethod {
/**
* Required when selecting type AZURE. The Azure org that the workflow belongs to
*/
org: pulumi.Input<string>;
/**
* The Azure Devops workflow [payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload) should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload).
*/
payload?: pulumi.Input<string>;
/**
* Required when selecting type AZURE. The Azure webhook that the workflow belongs to
*/
webhook: pulumi.Input<string>;
}
export interface ActionGithubMethod {
/**
* Required when selecting type GITHUB. The GitHub org that the workflow belongs to
*/
org: pulumi.Input<string>;
/**
* Required when selecting type GITHUB. The GitHub repo that the workflow belongs to
*/
repo: pulumi.Input<string>;
/**
* Report the workflow status when invoking the action
*/
reportWorkflowStatus?: pulumi.Input<string>;
/**
* The GitHub workflow that the action belongs to
*/
workflow: pulumi.Input<string>;
/**
* The GitHub [workflow inputs](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload) should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload).
*/
workflowInputs?: pulumi.Input<string>;
}
export interface ActionGitlabMethod {
/**
* The default ref of the action
*/
defaultRef?: pulumi.Input<string>;
/**
* Required when selecting type GITLAB. The GitLab group name that the workflow belongs to
*/
groupName: pulumi.Input<string>;
/**
* The Gitlab pipeline variables should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload).
*/
pipelineVariables?: pulumi.Input<string>;
/**
* Required when selecting type GITLAB. The GitLab project name that the workflow belongs to
*/
projectName: pulumi.Input<string>;
}
export interface ActionKafkaMethod {
/**
* The Kafka message [payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload) should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload).
*/
payload?: pulumi.Input<string>;
}
export interface ActionPermissionsPermissions {
/**
* The permission to approve the action's runs
*/
approve: pulumi.Input<inputs.ActionPermissionsPermissionsApprove>;
/**
* The permission to execute the action
*/
execute: pulumi.Input<inputs.ActionPermissionsPermissionsExecute>;
}
export interface ActionPermissionsPermissionsApprove {
/**
* The policy to use for approval
*/
policy?: pulumi.Input<string>;
/**
* The roles with approval permission
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The teams with approval permission
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The users with approval permission
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface ActionPermissionsPermissionsExecute {
/**
* Give execution permission to the teams who own the entity
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* The policy to use for execution
*/
policy?: pulumi.Input<string>;
/**
* The roles with execution permission
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The teams with execution permission
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The users with execution permission
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface ActionSelfServiceTrigger {
/**
* The ID of the blueprint
*/
blueprintIdentifier?: pulumi.Input<string>;
/**
* The `condition` field allows you to define rules using Port's [search & query syntax](https://docs.getport.io/search-and-query/#rules) to determine which entities the action will be available for.
*/
condition?: pulumi.Input<string>;
/**
* The operation type of the action
*/
operation: pulumi.Input<string>;
/**
* Order properties
*/
orderProperties?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The required jq query of the property
*/
requiredJqQuery?: pulumi.Input<string>;
/**
* The steps of the action
*/
steps?: pulumi.Input<pulumi.Input<inputs.ActionSelfServiceTriggerStep>[]>;
/**
* action titles
*/
titles?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerTitles>;
}>;
/**
* User properties
*/
userProperties?: pulumi.Input<inputs.ActionSelfServiceTriggerUserProperties>;
}
export interface ActionSelfServiceTriggerStep {
/**
* The order of the properties in this step
*/
orders: pulumi.Input<pulumi.Input<string>[]>;
/**
* The step's title (max 25 characters)
*/
title: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerTitles {
/**
* The description of the action title
*/
description?: pulumi.Input<string>;
/**
* The title of the action title
*/
title: pulumi.Input<string>;
/**
* The visibility of the string property
*/
visible?: pulumi.Input<boolean>;
/**
* The visibility condition jq query of the string property
*/
visibleJqQuery?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserProperties {
/**
* The array property of the action
*/
arrayProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayProps>;
}>;
/**
* The boolean property of the action
*/
booleanProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesBooleanProps>;
}>;
/**
* The number property of the action
*/
numberProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesNumberProps>;
}>;
/**
* The object property of the action
*/
objectProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesObjectProps>;
}>;
/**
* The string property of the action
*/
stringProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringProps>;
}>;
}
export interface ActionSelfServiceTriggerUserPropertiesArrayProps {
/**
* An array of boolean items within the property
*/
booleanItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsBooleanItems>;
/**
* The default jq query of the array property
*/
defaultJqQuery?: pulumi.Input<string>;
/**
* The properties that this property depends on
*/
dependsOns?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The disabled state of the array property
*/
disabled?: pulumi.Input<boolean>;
/**
* The disabled state jq query of the array property
*/
disabledJqQuery?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* The max items of the array property
*/
maxItems?: pulumi.Input<number>;
/**
* The min items of the array property
*/
minItems?: pulumi.Input<number>;
/**
* An array of number items within the property
*/
numberItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsNumberItems>;
/**
* An array of object items within the property
*/
objectItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsObjectItems>;
/**
* Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value
*/
required?: pulumi.Input<boolean>;
/**
* How to sort entities when in the self service action form in the UI
*/
sort?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsSort>;
/**
* An array of string items within the property
*/
stringItems?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesArrayPropsStringItems>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
/**
* The visibility of the array property
*/
visible?: pulumi.Input<boolean>;
/**
* The visibility condition jq query of the array property
*/
visibleJqQuery?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesArrayPropsBooleanItems {
/**
* The default values for the boolean items
*/
defaults?: pulumi.Input<pulumi.Input<boolean>[]>;
}
export interface ActionSelfServiceTriggerUserPropertiesArrayPropsNumberItems {
/**
* The default values for the number items
*/
defaults?: pulumi.Input<pulumi.Input<number>[]>;
/**
* The jq query for the enum number items
*/
enumJqQuery?: pulumi.Input<string>;
/**
* The enum of possible values for the number items
*/
enums?: pulumi.Input<pulumi.Input<number>[]>;
}
export interface ActionSelfServiceTriggerUserPropertiesArrayPropsObjectItems {
/**
* The default values for the object items
*/
defaults?: pulumi.Input<pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>[]>;
}
export interface ActionSelfServiceTriggerUserPropertiesArrayPropsSort {
/**
* The order to sort the entities in
*/
order?: pulumi.Input<string>;
/**
* The property to sort the entities by
*/
property: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesArrayPropsStringItems {
/**
* The blueprint identifier the action relates to
*/
blueprint?: pulumi.Input<string>;
/**
* The dataset of the entity-format items
*/
dataset?: pulumi.Input<string>;
/**
* The default value of the items
*/
defaults?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The jq query for the enum of string items
*/
enumJqQuery?: pulumi.Input<string>;
/**
* The enum of possible values for the string items
*/
enums?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The format of the string property, Accepted values include `date-time`, `url`, `email`, `ipv4`, `ipv6`, `yaml`, `entity`, `user`, `team`, `proto`, `markdown`
*/
format?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesBooleanProps {
/**
* The default of the boolean property
*/
default?: pulumi.Input<boolean>;
/**
* The default jq query of the boolean property
*/
defaultJqQuery?: pulumi.Input<string>;
/**
* The properties that this property depends on
*/
dependsOns?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The disabled state of the boolean property
*/
disabled?: pulumi.Input<boolean>;
/**
* The disabled state jq query of the boolean property
*/
disabledJqQuery?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value
*/
required?: pulumi.Input<boolean>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
/**
* The visibility of the boolean property
*/
visible?: pulumi.Input<boolean>;
/**
* The visibility condition jq query of the boolean property
*/
visibleJqQuery?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesNumberProps {
/**
* The default of the number property
*/
default?: pulumi.Input<number>;
/**
* The default jq query of the number property
*/
defaultJqQuery?: pulumi.Input<string>;
/**
* The properties that this property depends on
*/
dependsOns?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The disabled state of the number property
*/
disabled?: pulumi.Input<boolean>;
/**
* The disabled state jq query of the number property
*/
disabledJqQuery?: pulumi.Input<string>;
/**
* The enum colors of the number property
*/
enumColors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The enum jq query of the string property
*/
enumJqQuery?: pulumi.Input<string>;
/**
* The enum of the number property
*/
enums?: pulumi.Input<pulumi.Input<number>[]>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* The min of the number property
*/
maximum?: pulumi.Input<number>;
/**
* The max of the number property
*/
minimum?: pulumi.Input<number>;
/**
* Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value
*/
required?: pulumi.Input<boolean>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
/**
* The visibility of the number property
*/
visible?: pulumi.Input<boolean>;
/**
* The visibility condition jq query of the number property
*/
visibleJqQuery?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesObjectProps {
/**
* The default of the object property
*/
default?: pulumi.Input<string>;
/**
* The default jq query of the object property
*/
defaultJqQuery?: pulumi.Input<string>;
/**
* The properties that this property depends on
*/
dependsOns?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The disabled state of the object property
*/
disabled?: pulumi.Input<boolean>;
/**
* The disabled state jq query of the object property
*/
disabledJqQuery?: pulumi.Input<string>;
/**
* The algorithm to encrypt the property with. Accepted value: `aes256-gcm`
*/
encryption?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value
*/
required?: pulumi.Input<boolean>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
/**
* The visibility of the object property
*/
visible?: pulumi.Input<boolean>;
/**
* The visibility condition jq query of the object property
*/
visibleJqQuery?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesStringProps {
/**
* The blueprint identifier the string property relates to
*/
blueprint?: pulumi.Input<string>;
/**
* The dataset of an the entity-format property
*/
dataset?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsDataset>;
/**
* The default of the string property
*/
default?: pulumi.Input<string>;
/**
* The default jq query of the string property
*/
defaultJqQuery?: pulumi.Input<string>;
/**
* The properties that this property depends on
*/
dependsOns?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The disabled state of the string property
*/
disabled?: pulumi.Input<boolean>;
/**
* The disabled state jq query of the string property
*/
disabledJqQuery?: pulumi.Input<string>;
/**
* The algorithm to encrypt the property with. Accepted value: `aes256-gcm`
*/
encryption?: pulumi.Input<string>;
/**
* The enum colors of the string property
*/
enumColors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The enum jq query of the string property
*/
enumJqQuery?: pulumi.Input<string>;
/**
* The enum of the string property
*/
enums?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The format of the string property, Accepted values include `date-time`, `url`, `email`, `ipv4`, `ipv6`, `yaml`, `entity`, `user`, `team`, `proto`, `markdown`
*/
format?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* The max length of the string property
*/
maxLength?: pulumi.Input<number>;
/**
* The min length of the string property
*/
minLength?: pulumi.Input<number>;
/**
* The pattern of the string property
*/
pattern?: pulumi.Input<string>;
/**
* The pattern jq query of the string property. This field accepts a JQ expression to dynamically generate either a regex pattern (as a string) or a list of allowed values (as an array). Cannot be used with `pattern`. Empty values are not allowed. Examples: `"if .env == \"prod\" then \"^[a-z]+$\" else \"^[a-zA-Z]+$\" end"` for dynamic regex patterns, or `"[\"value1\", \"value2\"]"` for a fixed list of allowed values.
*/
patternJqQuery?: pulumi.Input<string>;
/**
* Whether the property is required, by default not required, this property can't be set at the same time if `requiredJqQuery` is set, and only supports true as value
*/
required?: pulumi.Input<boolean>;
/**
* How to sort entities when in the self service action form in the UI
*/
sort?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsSort>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
/**
* The visibility of the string property
*/
visible?: pulumi.Input<boolean>;
/**
* The visibility condition jq query of the string property
*/
visibleJqQuery?: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesStringPropsDataset {
/**
* The combinator of the dataset
*/
combinator: pulumi.Input<string>;
/**
* The rules of the dataset
*/
rules: pulumi.Input<pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRule>[]>;
}
export interface ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRule {
/**
* The blueprint identifier the action relates to
*/
blueprint?: pulumi.Input<string>;
/**
* The operator of the rule
*/
operator: pulumi.Input<string>;
/**
* The property identifier of the rule
*/
property?: pulumi.Input<string>;
/**
* The value of the rule
*/
value?: pulumi.Input<inputs.ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRuleValue>;
}
export interface ActionSelfServiceTriggerUserPropertiesStringPropsDatasetRuleValue {
jqQuery: pulumi.Input<string>;
}
export interface ActionSelfServiceTriggerUserPropertiesStringPropsSort {
/**
* The order to sort the entities in
*/
order?: pulumi.Input<string>;
/**
* The property to sort the entities by
*/
property: pulumi.Input<string>;
}
export interface ActionUpsertEntityMethod {
/**
* Required when selecting type Upsert Entity. The blueprint identifier of the entity for the upsert
*/
blueprintIdentifier: pulumi.Input<string>;
/**
* Upsert Entity invocation method
*/
mapping?: pulumi.Input<inputs.ActionUpsertEntityMethodMapping>;
/**
* The title of the entity
*/
title?: pulumi.Input<string>;
}
export interface ActionUpsertEntityMethodMapping {
/**
* The icon of the entity
*/
icon?: pulumi.Input<string>;
/**
* Required when selecting type Upsert Entity. The entity identifier for the upsert
*/
identifier?: pulumi.Input<string>;
/**
* The properties of the entity (key-value object encoded to a string)
*/
properties?: pulumi.Input<string>;
/**
* The relations of the entity (key-value object encoded to a string)
*/
relations?: pulumi.Input<string>;
/**
* The teams the entity belongs to
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Jq that returns the teams the entity belongs to
*/
teamsJq?: pulumi.Input<string>;
}
export interface ActionWebhookMethod {
/**
* Specifies whether to use an agent to invoke the action. This can be a boolean value (`'true''` or `'false'`) or a JQ if dynamic evaluation is needed.
*/
agent?: pulumi.Input<string>;
/**
* The Webhook body should be in `JSON` format, encoded as a string. Use jsonencode to encode arrays or objects. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload).
*/
body?: pulumi.Input<string>;
/**
* The HTTP headers for invoking the action. They should be encoded as a key-value object to a string using jsonencode. Learn about how to [define the action payload](https://docs.getport.io/create-self-service-experiences/setup-backend/#define-the-actions-payload).
*/
headers?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The HTTP method to invoke the action
*/
method?: pulumi.Input<string>;
/**
* Synchronize the action
*/
synchronized?: pulumi.Input<string>;
/**
* Required when selecting type WEBHOOK. The URL to invoke the action
*/
url: pulumi.Input<string>;
}
export interface AggregationPropertiesProperties {
/**
* The description of the aggregation property
*/
description?: pulumi.Input<string>;
/**
* The icon of the aggregation property
*/
icon?: pulumi.Input<string>;
/**
* The aggregation method to perform on the target blueprint, one of count*entities, average*entities, average*by*property, aggregate*by*property
*/
method: pulumi.Input<inputs.AggregationPropertiesPropertiesMethod>;
/**
* Path filter to filter entities based on relation path
*/
pathFilters?: pulumi.Input<pulumi.Input<inputs.AggregationPropertiesPropertiesPathFilter>[]>;
/**
* Query to filter the target entities
*/
query?: pulumi.Input<string>;
/**
* The identifier of the blueprint to perform the aggregation on
*/
targetBlueprintIdentifier: pulumi.Input<string>;
/**
* The title of the aggregation property
*/
title?: pulumi.Input<string>;
}
export interface AggregationPropertiesPropertiesMethod {
/**
* Function to calculate the aggregate by property value of the target entities, such as sum, min, max, median
*/
aggregateByProperty?: pulumi.Input<inputs.AggregationPropertiesPropertiesMethodAggregateByProperty>;
/**
* Function to calculate the average by property value of the target entities
*/
averageByProperty?: pulumi.Input<inputs.AggregationPropertiesPropertiesMethodAverageByProperty>;
/**
* Function to average the entities of the target entities
*/
averageEntities?: pulumi.Input<inputs.AggregationPropertiesPropertiesMethodAverageEntities>;
/**
* Function to count the entities of the target entities
*/
countEntities?: pulumi.Input<boolean>;
}
export interface AggregationPropertiesPropertiesMethodAggregateByProperty {
/**
* The func of the aggregate by property
*/
func: pulumi.Input<string>;
/**
* The property of the aggregate by property
*/
property: pulumi.Input<string>;
}
export interface AggregationPropertiesPropertiesMethodAverageByProperty {
/**
* The time periods to calculate the average by, e.g. hour, day, week, month
*/
averageOf: pulumi.Input<string>;
/**
* The property name on which to calculate the the time periods, e.g. $createdAt, $updated_at or any other date property
*/
measureTimeBy: pulumi.Input<string>;
/**
* The property name on which to calculate the average by
*/
property: pulumi.Input<string>;
}
export interface AggregationPropertiesPropertiesMethodAverageEntities {
/**
* The time periods to calculate the average of, e.g. hour, day, week, month
*/
averageOf?: pulumi.Input<string>;
/**
* The property name on which to calculate the the time periods, e.g. $createdAt, $updated_at or any other date property
*/
measureTimeBy?: pulumi.Input<string>;
}
export interface AggregationPropertiesPropertiesPathFilter {
/**
* The blueprint to start the path from. Should be the target blueprint or undefined to start from the source blueprint
*/
fromBlueprint?: pulumi.Input<string>;
/**
* The path array of relations to filter by
*/
paths: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintCalculationProperties {
/**
* The calculation of the calculation property
*/
calculation: pulumi.Input<string>;
/**
* The colorized of the calculation property
*/
colorized?: pulumi.Input<boolean>;
/**
* The colors of the calculation property
*/
colors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The description of the calculation property
*/
description?: pulumi.Input<string>;
/**
* The format of the calculation property
*/
format?: pulumi.Input<string>;
/**
* The icon of the calculation property
*/
icon?: pulumi.Input<string>;
/**
* The title of the calculation property
*/
title?: pulumi.Input<string>;
/**
* The type of the calculation property
*/
type: pulumi.Input<string>;
}
export interface BlueprintKafkaChangelogDestination {
}
export interface BlueprintMirrorProperties {
/**
* The path of the mirror property
*/
path: pulumi.Input<string>;
/**
* The title of the mirror property
*/
title?: pulumi.Input<string>;
}
export interface BlueprintOwnership {
/**
* Path for the Inherited ownership type. Required when type is 'Inherited'. Must be a valid relation identifiers path.
*/
path?: pulumi.Input<string>;
/**
* Optional title for the owning teams property.
*/
title?: pulumi.Input<string>;
/**
* Ownership type: either 'Inherited' or 'Direct'.
*/
type: pulumi.Input<string>;
}
export interface BlueprintPermissionsEntities {
/**
* Manage permissions to register entities of the blueprint
*/
register: pulumi.Input<inputs.BlueprintPermissionsEntitiesRegister>;
/**
* Manage permissions to unregister entities of the blueprint
*/
unregister: pulumi.Input<inputs.BlueprintPermissionsEntitiesUnregister>;
/**
* Manage permissions to update entities of the blueprint
*/
update: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdate>;
updateMetadataProperties: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataProperties>;
/**
* Manage permissions to update the entity properties
*/
updateProperties?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateProperties>;
}>;
/**
* Manage permissions to update the entity relations
*/
updateRelations?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateRelations>;
}>;
}
export interface BlueprintPermissionsEntitiesRegister {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with register permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with register permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with register permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUnregister {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with unregister permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with unregister permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with unregister permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdate {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdateMetadataProperties {
/**
* The entity's icon
*/
icon: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesIcon>;
/**
* Unique Entity identifier, used for API calls, programmatic access and distinguishing between different entities
*/
identifier: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesIdentifier>;
/**
* The team this entity belongs to
*/
team: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesTeam>;
/**
* A human-readable name for the entity
*/
title: pulumi.Input<inputs.BlueprintPermissionsEntitiesUpdateMetadataPropertiesTitle>;
}
export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesIcon {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update `$icon` metadata permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update `$icon` metadata permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update `$icon` metadata permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesIdentifier {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update `$identifier` metadata permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update `$identifier` metadata permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update `$identifier` metadata permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesTeam {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update `$team` metadata permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update `$team` metadata permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update `$team` metadata permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdateMetadataPropertiesTitle {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update `$title` metadata permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update `$title` metadata permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update `$title` metadata permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdateProperties {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update specific property permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update specific property permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update specific property permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPermissionsEntitiesUpdateRelations {
/**
* Owned by team
*/
ownedByTeam?: pulumi.Input<boolean>;
/**
* Roles with update specific relation permissions
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Teams with update specific relation permissions
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Users with update specific relation permissions
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintProperties {
/**
* The array property of the blueprint
*/
arrayProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPropertiesArrayProps>;
}>;
/**
* The boolean property of the blueprint
*/
booleanProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPropertiesBooleanProps>;
}>;
/**
* The number property of the blueprint
*/
numberProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPropertiesNumberProps>;
}>;
/**
* The object property of the blueprint
*/
objectProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPropertiesObjectProps>;
}>;
/**
* The string property of the blueprint
*/
stringProps?: pulumi.Input<{
[key: string]: pulumi.Input<inputs.BlueprintPropertiesStringProps>;
}>;
}
export interface BlueprintPropertiesArrayProps {
/**
* The items of the array property
*/
booleanItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsBooleanItems>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* The max items of the array property
*/
maxItems?: pulumi.Input<number>;
/**
* The min items of the array property
*/
minItems?: pulumi.Input<number>;
/**
* The items of the array property
*/
numberItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsNumberItems>;
/**
* The items of the array property
*/
objectItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsObjectItems>;
/**
* Whether the property is required
*/
required?: pulumi.Input<boolean>;
/**
* The items of the array property
*/
stringItems?: pulumi.Input<inputs.BlueprintPropertiesArrayPropsStringItems>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
}
export interface BlueprintPropertiesArrayPropsBooleanItems {
/**
* The default of the items
*/
defaults?: pulumi.Input<pulumi.Input<boolean>[]>;
}
export interface BlueprintPropertiesArrayPropsNumberItems {
/**
* The default of the items
*/
defaults?: pulumi.Input<pulumi.Input<number>[]>;
}
export interface BlueprintPropertiesArrayPropsObjectItems {
/**
* The default of the items
*/
defaults?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface BlueprintPropertiesArrayPropsStringItems {
/**
* The default of the items
*/
defaults?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The enum colors of the string array items
*/
enumColors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The enum of the string array items
*/
enums?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The format of the items
*/
format?: pulumi.Input<string>;
/**
* The pattern of the string array items
*/
pattern?: pulumi.Input<string>;
}
export interface BlueprintPropertiesBooleanProps {
/**
* The default of the boolean property
*/
default?: pulumi.Input<boolean>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* Whether the property is required
*/
required?: pulumi.Input<boolean>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
}
export interface BlueprintPropertiesNumberProps {
/**
* The default of the number property
*/
default?: pulumi.Input<number>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The enum colors of the number property
*/
enumColors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The enum of the number property
*/
enums?: pulumi.Input<pulumi.Input<number>[]>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* The min of the number property
*/
maximum?: pulumi.Input<number>;
/**
* The max of the number property
*/
minimum?: pulumi.Input<number>;
/**
* Whether the property is required
*/
required?: pulumi.Input<boolean>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
}
export interface BlueprintPropertiesObjectProps {
/**
* The default of the object property
*/
default?: pulumi.Input<string>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* Whether the property is required
*/
required?: pulumi.Input<boolean>;
/**
* The spec of the object property
*/
spec?: pulumi.Input<string>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
}
export interface BlueprintPropertiesStringProps {
/**
* The default of the string property
*/
default?: pulumi.Input<string>;
/**
* The description of the property
*/
description?: pulumi.Input<string>;
/**
* The enum colors of the string property
*/
enumColors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The enum of the string property
*/
enums?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The format of the string property
*/
format?: pulumi.Input<string>;
/**
* The icon of the property
*/
icon?: pulumi.Input<string>;
/**
* The max length of the string property
*/
maxLength?: pulumi.Input<number>;
/**
* The min length of the string property
*/
minLength?: pulumi.Input<number>;
/**
* The pattern of the string property
*/
pattern?: pulumi.Input<string>;
/**
* Whether the property is required
*/
required?: pulumi.Input<boolean>;
/**
* The spec of the string property
*/
spec?: pulumi.Input<string>;
/**
* The spec authentication of the string property
*/
specAuthentication?: pulumi.Input<inputs.BlueprintPropertiesStringPropsSpecAuthentication>;
/**
* The title of the property
*/
title?: pulumi.Input<string>;
}
export interface BlueprintPropertiesStringPropsSpecAuthentication {
/**
* The authorizationUrl of the spec authentication
*/
authorizationUrl: pulumi.Input<string>;
/**
* The clientId of the spec authentication
*/
clientId: pulumi.Input<string>;
/**
* The tokenUrl of the spec authentication
*/
tokenUrl: pulumi.Input<string>;
}
export interface BlueprintRelations {
/**
* The description of the relation
*/
description?: pulumi.Input<string>;
/**
* The many of the relation
*/
many?: pulumi.Input<boolean>;
/**
* The required of the relation
*/
required?: pulumi.Input<boolean>;
/**
* The target of the relation
*/
target: pulumi.Input<string>;
/**
* The title of the relation
*/
title?: pulumi.Input<string>;
}
export interface BlueprintTeamInheritance {
/**
* The path of the team inheritance
*/
path: pulumi.Input<string>;
}
export interface BlueprintWebhookChangelogDestination {
/**
* The agent of the webhook changelog destination
*/
agent?: pulumi.Input<boolean>;
/**
* The url of the webhook changelog destination
*/
url: pulumi.Input<string>;
}
export interface EntityProperties {
/**
* The array properties of the entity
*/
arrayProps?: pulumi.Input<inputs.EntityPropertiesArrayProps>;
/**
* The bool properties of the entity
*/
booleanProps?: pulumi.Input<{
[key: string]: pulumi.Input<boolean>;
}>;
/**
* The number properties of the entity
*/
numberProps?: pulumi.Input<{
[key: string]: pulumi.Input<number>;
}>;
/**
* The object properties of the entity
*/
objectProps?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The string properties of the entity
*/
stringProps?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}
export interface EntityPropertiesArrayProps {
booleanItems?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<boolean>[]>;
}>;
numberItems?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<number>[]>;
}>;
objectItems?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<string>[]>;
}>;
stringItems?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<string>[]>;
}>;
}
export interface EntityRelations {
/**
* The many relation of the entity
*/
manyRelations?: pulumi.Input<{
[key: string]: pulumi.Input<pulumi.Input<string>[]>;
}>;
/**
* The single relation of the entity
*/
singleRelations?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}
export interface IntegrationKafkaChangelogDestination {
}
export interface IntegrationWebhookChangelogDestination {
/**
* The agent of the webhook changelog destination
*/
agent?: pulumi.Input<boolean>;
/**
* The url of the webhook changelog destination
*/
url: pulumi.Input<string>;
}
export interface PagePermissionsRead {
/**
* The roles with read permission
*/
roles?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The teams with read permission
*/
teams?: pulumi.Input<pulumi.Input<string>[]>;
/**
* The users with read permission
*/
users?: pulumi.Input<pulumi.Input<string>[]>;
}
export interface ScorecardFilter {
/**
* The combinator of the filter
*/
combinator: pulumi.Input<string>;
/**
* The conditions of the filter. Each condition object should be encoded to a string
*/
conditions: pulumi.Input<pulumi.Input<string>[]>;
}
export interface ScorecardLevel {
/**
* The color of the level
*/
color: pulumi.Input<string>;
/**
* The title of the level
*/
title: pulumi.Input<string>;
}
export interface ScorecardRule {
/**
* The description of the rule
*/
description?: pulumi.Input<string>;
/**
* The identifier of the rule
*/
identifier: pulumi.Input<string>;
/**
* The level of the rule
*/
level: pulumi.Input<string>;
/**
* The query of the rule
*/
query: pulumi.Input<inputs.ScorecardRuleQuery>;
/**
* The title of the rule
*/
title: pulumi.Input<string>;
}
export interface ScorecardRuleQuery {
/**
* The combinator of the query
*/
combinator: pulumi.Input<string>;
/**
* The conditions of the query. Each condition object should be encoded to a string
*/
conditions: pulumi.Input<pulumi.Input<string>[]>;
}
export interface SystemBlueprintCalculationProperties {
/**
* The calculation of the calculation property
*/
calculation: pulumi.Input<string>;
/**
* The colorized of the calculation property
*/
colorized?: pulumi.Input<boolean>;
/**
* The colors of the calculation property
*/
colors?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The description of the calculation property
*/
description?: pulumi.Input<string>;
/**
* The format of the calculation property
*/
format?: pulumi.Input<string>;
/**
* The icon of the calculation property
*/
icon?: pulumi.Input<string>;
/**
* The title of the calculation property
*/
title?: pulumi.Input<string>;
/**
* The type of the calculation property
*/
type: pulumi.Input<string>;
}
export interface SystemBlueprintMirrorProperties {
/**
* The path of the mirror property
*/
path: pulumi.Input<string>;
/**
* The title of the mirror property
*/
title?: pulumi.Input<string>;
}
export interface SystemBlueprintProperties {