service

package
v0.19.1237 Latest Latest
Warning

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

Go to latest
Published: Oct 9, 2026 License: AGPL-3.0 Imports: 70 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var StandardLabelColors = []string{
	"#2563eb", "#0d9488", "#16a34a", "#9333ea", "#ca8a04", "#0891b2",
	"#1d4ed8", "#4f46e5", "#059669", "#c026d3", "#d97706", "#0284c7",
	"#0f766e", "#7c3aed", "#15803d", "#a21caf", "#b45309", "#0369a1",
	"#115e59", "#6d28d9", "#166534", "#86198f", "#92400e", "#075985",
	"#134e4a", "#5b21b6", "#14532d", "#701a75", "#78350f", "#0c4a6e",
	"#6366f1", "#84cc16", "#22c55e", "#a855f7", "#eab308", "#06b6d4",
	"#65a30d", "#818cf8", "#34d399", "#d946ef", "#f59e0b", "#0ea5e9",
	"#2dd4bf", "#a78bfa", "#4ade80", "#e879f9", "#fbbf24", "#38bdf8",
	"#22d3ee", "#c084fc", "#86efac", "#f0abfc", "#fcd34d", "#7dd3fc",
	"#5eead4", "#d8b4fe", "#bbf7d0", "#f5d0fe", "#fde68a", "#bae6fd",
	"#3b82f6", "#f97316", "#8b5cf6", "#14b8a6",
}

Functions

func New

func New(params Params) *service

Types

type AdminAppComponentDetails added in v0.19.939

type AdminAppComponentDetails struct {
	*app.Component
}

type AdminAppConfigGraphRequest

type AdminAppConfigGraphRequest struct {
	ConfigID string
}

type AdminAppDetails added in v0.19.939

type AdminAppDetails struct {
	*app.App

	Components []AdminAppComponentDetails `json:"components,omitempty"`
}

type AdminTriggerAppBranchRunRequest added in v0.19.850

type AdminTriggerAppBranchRunRequest struct {
	Force bool `json:"force"`
}

type AppAWSIAMPolicyConfig

type AppAWSIAMPolicyConfig struct {
	ManagedPolicyName string `json:"managed_policy_name"`

	Name              string   `json:"name"`
	Contents          string   `json:"contents" swaggertype:"string" validate:"optional_json"`
	GCPPermissions    []string `json:"gcp_permissions,omitempty"`
	GCPPredefinedRole string   `json:"gcp_predefined_role,omitempty"`
	AzureActions      []string `json:"azure_actions,omitempty"`
	AzureBuiltInRoles []string `json:"azure_built_in_roles,omitempty"`
}

type AppAWSIAMRoleConfig

type AppAWSIAMRoleConfig struct {
	Name                string `json:"name" validate:"required"`
	DisplayName         string `json:"display_name" validate:"required"`
	Description         string `json:"description" validate:"required"`
	PermissionsBoundary string `json:"permissions_boundary,omitempty" swaggertype:"string" validate:"optional_json"`
	CloudPlatform       string `json:"cloud_platform,omitempty" validate:"omitempty,oneof=aws gcp azure"`
	EnabledInStack      *bool  `json:"enabled_in_stack" swaggertype:"boolean" extensions:"x-nullable"`

	// Policies may be empty when the role attaches named policies instead. A
	// role with neither grants nothing and is rejected.
	Policies []AppAWSIAMPolicyConfig `json:"policies" validate:"dive"`

	NamedPolicyNames []string `json:"named_policy_names,omitempty"`
}

type AppBranchRunComparisonResponse added in v0.19.1153

type AppBranchRunComparisonResponse struct {
	ID        string `json:"id"`
	HeadRunID string `json:"head_run_id"`
	BaseRunID string `json:"base_run_id,omitempty"`
	BaseSHA   string `json:"base_sha,omitempty"`
	HeadSHA   string `json:"head_sha,omitempty"`

	HeadRun *AppBranchRunComparisonRunSummary `json:"head_run,omitempty"`
	BaseRun *AppBranchRunComparisonRunSummary `json:"base_run,omitempty"`

	GitDiff    *blobstore.BlobMetadata `json:"git_diff,omitempty"`
	FullDiff   *blobstore.BlobMetadata `json:"full_diff,omitempty"`
	ConfigDiff *blobstore.BlobMetadata `json:"config_diff,omitempty"`

	SourceDiff *blobstore.BlobMetadata `json:"source_diff,omitempty"`

	GitDiffContent    any `json:"git_diff_content,omitempty"`
	FullDiffContent   any `json:"full_diff_content,omitempty"`
	ConfigDiffContent any `json:"config_diff_content,omitempty"`

	SourceDiffContent any `json:"source_diff_content,omitempty"`
}

type AppBranchRunComparisonRunSummary added in v0.19.1153

type AppBranchRunComparisonRunSummary struct {
	ID                  string                   `json:"id"`
	WorkflowID          string                   `json:"workflow_id,omitempty"`
	Status              string                   `json:"status,omitempty"`
	CreatedAt           time.Time                `json:"created_at,omitempty"`
	PRNumber            *int                     `json:"pr_number,omitempty"`
	BaseBranch          string                   `json:"base_branch,omitempty"`
	EventType           string                   `json:"event_type,omitempty"`
	AppConfigID         string                   `json:"app_config_id,omitempty"`
	VCSConnectionCommit *app.VCSConnectionCommit `json:"vcs_connection_commit,omitempty"`
}

type AppConfigDiffResponse added in v0.19.1012

type AppConfigDiffResponse struct {
	ConfigID      string                    `json:"config_id"`
	OldConfigID   string                    `json:"old_config_id,omitempty"`
	Diff          *diff.Diff                `json:"diff"`
	Summary       diff.DiffSummary          `json:"summary"`
	Changed       string                    `json:"changed"`
	Source        *config.SourceArchiveDiff `json:"source,omitempty"`
	SourceSkipped bool                      `json:"source_skipped,omitempty"`
}

type AppConfigTemplate

type AppConfigTemplate struct {
	Format   app.AppConfigVersion
	Type     AppConfigTemplateType
	Filename string
	Content  string
}

type AppConfigTemplateType

type AppConfigTemplateType string
const (
	// not used
	AppConfigTemplateTypeAwsECS       AppConfigTemplateType = "aws-ecs"
	AppConfigTemplateTypeAwsECSBYOVPC AppConfigTemplateType = "aws-ecs-byovpc"
	AppConfigTemplateTypeAwsEKS       AppConfigTemplateType = "aws-eks"
	AppConfigTemplateTypeAwsEKSBYOVPC AppConfigTemplateType = "aws-eks-byovpc"
	AppConfigTemplateTypeAzureAKS     AppConfigTemplateType = "azure-aks"

	// flat app template
	AppConfigTemplateTypeFlat AppConfigTemplateType = "flat"

	// with sources app template
	AppConfigTemplateTypeTopLevel          AppConfigTemplateType = "top-level"
	AppConfigTemplateTypeInstaller         AppConfigTemplateType = "installer"
	AppConfigTemplateTypeRunner            AppConfigTemplateType = "runner"
	AppConfigTemplateTypeSandbox           AppConfigTemplateType = "sandbox"
	AppConfigTemplateTypeInputs            AppConfigTemplateType = "inputs"
	AppConfigTemplateTypeTerraform         AppConfigTemplateType = "terraform"
	AppConfigTemplateTypeTerraformInfra    AppConfigTemplateType = "terraformInfra"
	AppConfigTemplateTypeHelm              AppConfigTemplateType = "helm"
	AppConfigTemplateTypeDockerBuild       AppConfigTemplateType = "docker-build"
	AppConfigTemplateTypeJob               AppConfigTemplateType = "job"
	AppConfigTemplateTypeContainerImage    AppConfigTemplateType = "container-image"
	AppConfigTemplateTypeECRContainerImage AppConfigTemplateType = "ecr-container-image"
)

type AppGroupRequest

type AppGroupRequest struct {
	DisplayName string `json:"display_name" validate:"required"`
	Description string `json:"description" validate:"required"`
	Index       int    `json:"index" validate:"required"`
}

type AppInputRequest

type AppInputRequest struct {
	DisplayName string `json:"display_name" validate:"required"`
	Description string `json:"description" validate:"required"`
	Default     string `json:"default"`
	Required    bool   `json:"required"`
	Sensitive   bool   `json:"sensitive"`
	Group       string `json:"group" validate:"required"`
	Index       int    `json:"index" validate:"required"`

	// New, optional fields
	Type   string             `json:"type"`
	Source app.AppInputSource `json:"source"`
}

type AppKubernetesContext added in v0.19.1025

type AppKubernetesContext struct {
	Name string `json:"name" validate:"required"`
	// Component is the name of the peer terraform_module or pulumi component
	// that emits cluster connection details as outputs.
	Component string `json:"component" validate:"required"`
}

type AppLabelKeySummary added in v0.19.1038

type AppLabelKeySummary struct {
	Key          string   `json:"key"`
	Color        string   `json:"color"`
	DefaultColor string   `json:"default_color"`
	IsOverride   bool     `json:"is_override"`
	Values       []string `json:"values"`
	EntityTypes  []string `json:"entity_types"`
	UsageCount   int      `json:"usage_count"`
}

type AppLabelsResponse added in v0.19.1038

type AppLabelsResponse struct {
	Labels        []AppLabelKeySummary `json:"labels"`
	LabelColors   map[string]string    `json:"label_colors"`
	DefaultColors []string             `json:"default_colors"`
}

type AppNamedIAMPolicyConfig added in v0.19.1178

type AppNamedIAMPolicyConfig struct {
	Name        string `json:"name" validate:"required"`
	PolicyName  string `json:"policy_name,omitempty"`
	Description string `json:"description,omitempty"`
	Contents    string `json:"contents" swaggertype:"string" validate:"required"`
}

type AppPolicyConfig

type AppPolicyConfig struct {
	Type        config.AppPolicyType   `json:"type" validate:"required"`
	Engine      config.AppPolicyEngine `json:"engine,omitempty"`
	Name        string                 `json:"name,omitempty"`
	Description string                 `json:"description,omitempty"`
	Contents    string                 `json:"contents" validate:"required" swaggertype:"string"`
	Components  []string               `json:"components,omitempty"`
}

type AppSecretConfig

type AppSecretConfig struct {
	Name        string `json:"name" validate:"interpolated_name,required"`
	DisplayName string `json:"display_name" validate:"required"`
	Description string `json:"description" validate:"required"`

	Required     bool   `json:"required"`
	AutoGenerate bool   `json:"auto_generate"`
	Format       string `json:"format"`
	Default      string `json:"default"`

	KubernetesSync            bool   `json:"kubernetes_sync"`
	KubernetesSecretNamespace string `json:"kubernetes_secret_namespace"`
	KubernetesSecretName      string `json:"kubernetes_secret_name" validate:"omitempty,hostname_rfc1123"`

	KubernetesSyncTargets []KubernetesSyncTarget `json:"kubernetes_sync_targets" validate:"dive"`
}

type BuildAppConfigRequest added in v0.19.1231

type BuildAppConfigRequest struct {
	RequestID string `json:"request_id,omitempty" validate:"omitempty,max=255"`
}

type CreateAppBranchConfigRequest added in v0.19.850

type CreateAppBranchConfigRequest struct {
	vcshelpers.VCSConfigRequest

	InstallGroups []InstallGroupRequest `json:"install_groups"`

	// PostDeployRunbookIDs run on each install, in order, after its deploy succeeds.
	// Omit to carry the current setting forward; send an empty array to clear it.
	PostDeployRunbookIDs *[]string `json:"post_deploy_runbook_ids,omitempty"`

	// IgnoreChangesRegex marks a run not-attempted when every changed file path in
	// it matches this RE2 pattern. Omit to carry the current setting forward; send
	// an empty string to clear it.
	IgnoreChangesRegex *string `json:"ignore_changes_regex,omitempty" swaggertype:"string" extensions:"x-nullable"`

	// SendStatusesOnIgnore posts a successful commit status for runs ignored by
	// IgnoreChangesRegex. Omit to carry the current setting forward.
	SendStatusesOnIgnore *bool `json:"send_statuses_on_ignore,omitempty" swaggertype:"boolean" extensions:"x-nullable"`

	PreviewConfig      *app.AppBranchPreviewConfig `json:"preview_config,omitempty"`
	ClearPreviewConfig bool                        `json:"clear_preview_config,omitempty"`
	RunConfig          *app.AppBranchRunConfig     `json:"run_config,omitempty"`
}

func (*CreateAppBranchConfigRequest) Validate added in v0.19.850

type CreateAppBranchRequest

type CreateAppBranchRequest struct {
	Name      string `json:"name" validate:"required,min=1"`
	ManagedBy string `json:"managed_by,omitempty"`
}

func (*CreateAppBranchRequest) Validate

type CreateAppBreakGlassConfigRequest

type CreateAppBreakGlassConfigRequest struct {
	Roles []AppAWSIAMRoleConfig `json:"roles" validate:"required"`

	AppConfigID string `json:"app_config_id" validate:"required"`
}

func (*CreateAppBreakGlassConfigRequest) Validate

type CreateAppConfigRequest

type CreateAppConfigRequest struct {
	Readme     string `json:"readme,omitempty"`
	CLIVersion string `json:"cli_version,omitempty"`

	// IntermediateConfigJSON is the serialized intermediate config (parsed nuon.toml).
	// When provided, stored on the AppConfig for diffing in PR previews.
	IntermediateConfigJSON string `json:"intermediate_config_json,omitempty"`

	// AppBranchID optionally links this config to an app branch.
	// When set, triggers an app branch run after sync.
	AppBranchID string `json:"app_branch_id,omitempty"`
	// PlanOnly creates a preview run (plan without apply). Only used with AppBranchID.
	PlanOnly bool `json:"plan_only,omitempty"`

	// SkipNotification suppresses the app-config-synced signal emission.
	// Used when creating a config as part of app deletion cleanup.
	SkipNotification bool `json:"skip_notification,omitempty"`
}

func (*CreateAppConfigRequest) Validate

type CreateAppInputConfigRequest

type CreateAppInputConfigRequest struct {
	AppConfigID string                     `json:"app_config_id"`
	Inputs      map[string]AppInputRequest `json:"inputs" validate:"required"`
	Groups      map[string]AppGroupRequest `json:"groups" validate:"required"`
}

func (*CreateAppInputConfigRequest) Validate

type CreateAppInstallsConfigRequest added in v0.19.1115

type CreateAppInstallsConfigRequest struct {
	VCSType         string  `json:"vcs_type" validate:"required,oneof=connected public"`
	VCSConnectionID *string `json:"vcs_connection_id,omitempty"`
	Repo            string  `json:"repo" validate:"required"`
	Branch          string  `json:"branch" validate:"required"`
	Directory       string  `json:"directory,omitempty"`
}

type CreateAppKubernetesContextsConfigRequest added in v0.19.1025

type CreateAppKubernetesContextsConfigRequest struct {
	AppConfigID string `json:"app_config_id" validate:"required"`

	Contexts []AppKubernetesContext `json:"contexts" validate:"dive"`
}

func (*CreateAppKubernetesContextsConfigRequest) Validate added in v0.19.1025

type CreateAppOperationRoleConfigRequest added in v0.19.807

type CreateAppOperationRoleConfigRequest struct {
	AppConfigID string                     `json:"app_config_id" validate:"required"`
	Rules       []OperationRoleRuleRequest `json:"rules" validate:"required,dive"`
}

func (*CreateAppOperationRoleConfigRequest) Validate added in v0.19.807

type CreateAppPermissionsConfigRequest

type CreateAppPermissionsConfigRequest struct {
	ProvisionRole   AppAWSIAMRoleConfig `json:"provision_role" validate:"required"`
	DeprovisionRole AppAWSIAMRoleConfig `json:"deprovision_role" validate:"required"`
	MaintenanceRole AppAWSIAMRoleConfig `json:"maintenance_role" validate:"required"`

	BreakGlassRoles *[]AppAWSIAMRoleConfig    `json:"break_glass_roles"`
	CustomRoles     *[]AppAWSIAMRoleConfig    `json:"custom_roles"`
	NamedPolicies   []AppNamedIAMPolicyConfig `json:"named_policies,omitempty"`

	AppConfigID string `json:"app_config_id" validate:"required"`
}

func (*CreateAppPermissionsConfigRequest) Validate

type CreateAppPoliciesConfigRequest

type CreateAppPoliciesConfigRequest struct {
	AppConfigID string `json:"app_config_id" validate:"required"`

	Policies []AppPolicyConfig `json:"policies"`
}

func (*CreateAppPoliciesConfigRequest) Validate

type CreateAppRequest

type CreateAppRequest struct {
	Name            string `json:"name" validate:"required,entity_name"`
	Description     string `json:"description"`
	DisplayName     string `json:"display_name"`
	SlackWebhookURL string `json:"slack_webhook_url"`
}

func (*CreateAppRequest) Validate

func (c *CreateAppRequest) Validate(v *validator.Validate) error

type CreateAppRunnerConfigRequest

type CreateAppRunnerConfigRequest struct {
	Type          app.AppRunnerType                 `json:"type" validate:"required"`
	EnvVars       map[string]*string                `json:"env_vars"`
	HelmDriver    app.AppRunnerConfigHelmDriverType `json:"helm_driver"`
	InitScriptURL string                            `json:"init_script_url"`
	InstanceType  string                            `json:"instance_type"`
	RunnerAPIURL  string                            `json:"runner_api_url"`
	PublicAPIURL  string                            `json:"public_api_url"`
	// PhoneHomeScriptURL overrides the phone-home Lambda source for this app.
	PhoneHomeScriptURL string `json:"phone_home_script_url"`

	AppConfigID string `json:"app_config_id"`
}

func (*CreateAppRunnerConfigRequest) Validate

type CreateAppSandboxBuildRequest added in v0.19.1231

type CreateAppSandboxBuildRequest struct {
	RequestID string `json:"request_id,omitempty" validate:"omitempty,max=255"`
}

type CreateAppSandboxConfigRequest

type CreateAppSandboxConfigRequest struct {
	vcshelpers.VCSConfigRequest

	Type                         string  `json:"type,omitempty"`
	TerraformVersion             string  `json:"terraform_version,omitempty"`
	Runtime                      string  `json:"runtime,omitempty"`
	PulumiVersion                string  `json:"pulumi_version,omitempty"`
	DriftSchedule                *string `json:"drift_schedule,omitempty" validate:"omitempty,cron_schedule"`
	MaxAutoRetries               *int    `json:"max_auto_retries,omitempty"`
	SkipNoops                    *bool   `json:"skip_noops,omitempty"`
	AutoApproveOnPoliciesPassing *bool   `json:"auto_approve_on_policies_passing,omitempty"`

	VariablesFiles []string           `json:"variables_files,omitempty"`
	Variables      map[string]*string `json:"variables" validate:"required"`
	EnvVars        map[string]*string `json:"env_vars" validate:"required"`
	PulumiConfig   map[string]*string `json:"pulumi_config,omitempty"`

	OperationRoles map[app.OperationType]*string `json:"operation_roles,omitempty"`

	References []string `json:"references"`

	AppConfigID string `json:"app_config_id"`
}

func (*CreateAppSandboxConfigRequest) Validate

type CreateAppSecretRequest

type CreateAppSecretRequest struct {
	Name  string `json:"name" validate:"required,entity_name"`
	Value string `json:"value" validate:"required"`
}

func (*CreateAppSecretRequest) Validate

type CreateAppSecretsConfigRequest

type CreateAppSecretsConfigRequest struct {
	AppConfigID string `json:"app_config_id" validate:"required"`

	Secrets []AppSecretConfig `json:"secrets" validate:"dive"`
}

func (*CreateAppSecretsConfigRequest) Validate

type CreateAppStackConfigRequest

type CreateAppStackConfigRequest struct {
	Type        app.StackType `json:"type" validate:"required"`
	Description string        `json:"description" validate:"required"`
	Name        string        `json:"name" validate:"required"`

	RunnerNestedTemplateURL string `json:"runner_nested_template_url"`
	VPCNestedTemplateURL    string `json:"vpc_nested_template_url"`

	DeploymentScope string `json:"deployment_scope"`

	CustomNestedStacks []config.CustomNestedStack `json:"custom_nested_stacks"`

	AppConfigID string `json:"app_config_id" validate:"required"`
}

func (*CreateAppStackConfigRequest) Validate

type InstallGroupRequest added in v0.19.850

type InstallGroupRequest struct {
	Name  string `json:"name" validate:"required,min=1"`
	Order int    `json:"order" validate:"min=0"`

	LabelSelector *labels.Selector `json:"label_selector,omitempty"`

	Default bool `json:"default,omitempty"`

	// AutoApproveOnPoliciesPassing approves this group's plan step without user
	// input when its policy checks pass. Omit to leave it unset (off).
	AutoApproveOnPoliciesPassing *bool `json:"auto_approve_on_policies_passing,omitempty" swaggertype:"boolean" extensions:"x-nullable"`
}

type KubernetesSyncTarget added in v0.19.986

type KubernetesSyncTarget struct {
	Namespaces []string `json:"namespaces" validate:"required,min=1,dive,hostname_rfc1123"`
	Name       string   `json:"name" validate:"required,hostname_rfc1123"`
	Key        string   `json:"key" validate:"required"`
}

type OperationRoleRuleRequest added in v0.19.807

type OperationRoleRuleRequest struct {
	Principal string            `json:"principal" validate:"required"`
	Operation app.OperationType `json:"operation" validate:"required"`
	Role      string            `json:"role" validate:"required"`
}

type Params

type Params struct {
	fx.In

	V               *validator.Validate
	DB              *gorm.DB `name:"psql"`
	MW              metrics.Writer
	L               *zap.Logger
	Cfg             *internal.Config
	VcsHelpers      *vcshelpers.Helpers
	Helpers         *appshelpers.Helpers
	InstallsHelpers *installshelpers.Helpers
	AccountsHelpers *accountshelpers.Helpers
	FeaturesClient  *features.Features
	QueueClient     *queueclient.Client
	EndpointAudit   *api.EndpointAudit
	TemporalClient  temporalclient.Client
	BlobService     blobstore.Service
	MeterProvider   metric.MeterProvider `optional:"true"`
}

type PreviewInstallCandidatesResponse added in v0.19.1158

type PreviewInstallCandidatesResponse struct {
	Installs []app.Install `json:"installs"`
}

type PreviewRunRequest added in v0.19.1158

type PreviewRunRequest struct {
	Source   app.AppBranchRunPreviewSource `json:"source"`
	PRNumber *int                          `json:"pr_number,omitempty"`
	GitRef   string                        `json:"git_ref,omitempty"`
	HeadSHA  string                        `json:"head_sha,omitempty"`

	Mode      *app.AppBranchRunPreviewMode `json:"mode,omitempty"`
	InstallID *string                      `json:"install_id,omitempty"`
}

type ReprovisionAppRequest

type ReprovisionAppRequest struct{}

type RespondInstallCreationApprovalRequest added in v0.19.1115

type RespondInstallCreationApprovalRequest struct {
	ResponseType string `json:"response_type" binding:"required,oneof=approve deny"`
}

type RestartAppRequest

type RestartAppRequest struct{}

type TriggerAppBranchRunRequest added in v0.19.850

type TriggerAppBranchRunRequest struct {
	RequestID   string `json:"request_id,omitempty" validate:"omitempty,max=255"`
	ConfigID    string `json:"config_id"`
	Force       bool   `json:"force"`
	PlanOnly    bool   `json:"plan_only"`
	AppConfigID string `json:"app_config_id"`
	SkipBuilds  bool   `json:"skip_builds"`

	SyncAppConfig bool `json:"sync_app_config"`

	AutoApprove bool `json:"auto_approve"`

	PRNumber   *int   `json:"pr_number,omitempty"`
	HeadSHA    string `json:"head_sha,omitempty"`
	BaseBranch string `json:"base_branch,omitempty"`

	PreviewRun *PreviewRunRequest `json:"preview_run,omitempty"`

	RunType TriggerAppBranchRunSource `json:"run_type,omitempty"`
	RunRef  string                    `json:"run_ref,omitempty"`
}

func (*TriggerAppBranchRunRequest) Validate added in v0.19.850

type TriggerAppBranchRunSource added in v0.19.1221

type TriggerAppBranchRunSource string

TriggerAppBranchRunSource is the git object a manual branch run is pinned to.

const (
	TriggerAppBranchRunSourcePR     TriggerAppBranchRunSource = "pr"
	TriggerAppBranchRunSourceTag    TriggerAppBranchRunSource = "tag"
	TriggerAppBranchRunSourceCommit TriggerAppBranchRunSource = "commit"
)

func (TriggerAppBranchRunSource) Valid added in v0.19.1221

func (t TriggerAppBranchRunSource) Valid() bool

type TriggerAppInstallSyncRequest added in v0.19.1231

type TriggerAppInstallSyncRequest struct {
	RequestID string `json:"request_id,omitempty" validate:"omitempty,max=255"`
}

type TriggerInstallConfigSyncRequest added in v0.19.1091

type TriggerInstallConfigSyncRequest struct {
	InstallName string `json:"install_name,omitempty"`
}

type UpdateAppBranchConfigRequest added in v0.19.1153

type UpdateAppBranchConfigRequest struct {
	// IgnoreChangesRegex marks a run not-attempted when every changed file path in
	// it matches this RE2 pattern. Send an empty string to clear it.
	IgnoreChangesRegex *string `json:"ignore_changes_regex,omitempty" swaggertype:"string" extensions:"x-nullable"`

	// SendStatusesOnIgnore posts a successful commit status for ignored runs.
	SendStatusesOnIgnore *bool `json:"send_statuses_on_ignore,omitempty" swaggertype:"boolean" extensions:"x-nullable"`
}

func (*UpdateAppBranchConfigRequest) Validate added in v0.19.1153

type UpdateAppBranchRequest added in v0.19.850

type UpdateAppBranchRequest struct {
	Name string `json:"name" validate:"required,min=1"`
}

func (*UpdateAppBranchRequest) Validate added in v0.19.850

type UpdateAppConfigInstallsRequest

type UpdateAppConfigInstallsRequest struct {
	UpdateAll  bool
	InstallIDs []string
}

func (*UpdateAppConfigInstallsRequest) Validate

type UpdateAppConfigRequest

type UpdateAppConfigRequest struct {
	Status            app.AppConfigStatus `json:"status"`
	StatusDescription string              `json:"status_description"`
	State             string              `json:"state"`
	ComponentIDs      []string            `json:"component_ids"`
}

func (*UpdateAppConfigRequest) Validate

type UpdateAppRequest

type UpdateAppRequest struct {
	Name            string            `json:"name"`
	Description     string            `json:"description"`
	DisplayName     string            `json:"display_name"`
	SlackWebhookURL *string           `json:"slack_webhook_url"`
	ConfigRepo      *string           `json:"config_repo"`
	ConfigDirectory *string           `json:"config_directory"`
	LabelColors     map[string]string `json:"label_colors,omitempty"`
}

func (*UpdateAppRequest) Validate

func (c *UpdateAppRequest) Validate(v *validator.Validate) error

Source Files

Jump to

Keyboard shortcuts

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