deploy

package
v0.0.0-...-5cd5cfe Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 54 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSubName

func GetSubName(serviceName string, topicName string) string

func NewCustomRole

func NewCustomRole(ctx *pulumi.Context, name string, actions []string, opts ...pulumi.ResourceOption) (*projects.IAMCustomRole, error)

Types

type GcpCloudRunConfig

type GcpCloudRunConfig struct {
	Memory       int
	Timeout      int
	MinInstances int `mapstructure:"min-instances"`
	MaxInstances int `mapstructure:"max-instances"`
	Concurrency  int
}

type GcpConfig

type GcpConfig struct {
	config.AbstractConfig[*GcpConfigItem] `mapstructure:"config,squash"`
	Import                                GcpImports
	ScheduleTimezone                      string `mapstructure:"schedule-timezone"`
	ProjectId                             string `mapstructure:"gcp-project-id"`
	Refresh                               bool
}

func ConfigFromAttributes

func ConfigFromAttributes(attributes map[string]interface{}) (*GcpConfig, error)

Return GcpConfig from stack attributes

type GcpConfigItem

type GcpConfigItem struct {
	CloudRun  *GcpCloudRunConfig `mapstructure:",omitempty"`
	Telemetry int
}

type GcpIamServiceAccount

type GcpIamServiceAccount struct {
	pulumi.ResourceState

	Name           string
	ServiceAccount *serviceaccount.Account
}

func NewServiceAccount

func NewServiceAccount(ctx *pulumi.Context, name string, args *GcpIamServiceAccountArgs, opts ...pulumi.ResourceOption) (*GcpIamServiceAccount, error)

Create a new GCP IAM service account

type GcpIamServiceAccountArgs

type GcpIamServiceAccountArgs struct {
	AccountId string
}

type GcpImports

type GcpImports struct {
	// A map of nitric names to GCP Secret Manager names
	Secrets map[string]string
}

type NitricCloudRunService

type NitricCloudRunService struct {
	Name           string
	Service        *cloudrun.Service
	ServiceAccount *serviceaccount.Account
	Url            pulumi.StringInput
	Invoker        *serviceaccount.Account
	EventToken     pulumi.StringOutput
}

NitricCloudRunService - A wrapper that encapsulates all important information about a cloud run service deployed by nitric

type NitricGcpPulumiProvider

type NitricGcpPulumiProvider struct {
	*deploy.CommonStackDetails

	StackId   string
	GcpConfig *GcpConfig

	DelayQueue      *cloudtasks.Queue
	AuthToken       *oauth2.Token
	BaseComputeRole *projects.IAMCustomRole

	SecretManagerClient *gcpsecretmanager.Client

	Project            *Project
	ApiGateways        map[string]*apigateway.Gateway
	HttpProxies        map[string]*apigateway.Gateway
	CloudRunServices   map[string]*NitricCloudRunService
	Buckets            map[string]*storage.Bucket
	Topics             map[string]*pubsub.Topic
	Queues             map[string]*pubsub.Topic
	QueueSubscriptions map[string]*pubsub.Subscription
	Secrets            map[string]*secretmanager.Secret

	provider.NitricDefaultOrder
}

func NewNitricGcpProvider

func NewNitricGcpProvider() *NitricGcpPulumiProvider

func (*NitricGcpPulumiProvider) Api

func (p *NitricGcpPulumiProvider) Api(ctx *pulumi.Context, parent pulumi.Resource, name string, apiConfig *deploymentspb.Api) error

func (*NitricGcpPulumiProvider) Bucket

func (p *NitricGcpPulumiProvider) Bucket(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Bucket) error

func (*NitricGcpPulumiProvider) Config

func (*NitricGcpPulumiProvider) Http

func (p *NitricGcpPulumiProvider) Http(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Http) error

func (*NitricGcpPulumiProvider) Init

func (a *NitricGcpPulumiProvider) Init(attributes map[string]interface{}) error

func (*NitricGcpPulumiProvider) KeyValueStore

func (p *NitricGcpPulumiProvider) KeyValueStore(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.KeyValueStore) error

func (*NitricGcpPulumiProvider) Policy

func (p *NitricGcpPulumiProvider) Policy(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Policy) error

func (*NitricGcpPulumiProvider) Post

func (*NitricGcpPulumiProvider) Pre

func (*NitricGcpPulumiProvider) Queue

func (p *NitricGcpPulumiProvider) Queue(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Queue) error

func (*NitricGcpPulumiProvider) Result

func (*NitricGcpPulumiProvider) Schedule

func (p *NitricGcpPulumiProvider) Schedule(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Schedule) error

func (*NitricGcpPulumiProvider) Secret

func (p *NitricGcpPulumiProvider) Secret(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Secret) error

func (*NitricGcpPulumiProvider) Service

func (*NitricGcpPulumiProvider) Topic

func (p *NitricGcpPulumiProvider) Topic(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Topic) error

func (*NitricGcpPulumiProvider) Websocket

func (a *NitricGcpPulumiProvider) Websocket(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Websocket) error

func (*NitricGcpPulumiProvider) WithDefaultResourceOptions

func (a *NitricGcpPulumiProvider) WithDefaultResourceOptions(opts ...pulumi.ResourceOption) []pulumi.ResourceOption

type Policy

type Policy struct {
	pulumi.ResourceState

	Name         string
	RolePolicies []*projects.IAMMember
}

type Project

type Project struct {
	pulumi.ResourceState

	Name     string
	Services []*projects.Service
}

func NewProject

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

Creates a new GCP Project

type ProjectArgs

type ProjectArgs struct {
	ProjectId     string
	ProjectNumber string
}

type ScheduleEvent

type ScheduleEvent struct {
	PayloadType string                 `yaml:"payloadType"`
	Payload     map[string]interface{} `yaml:"payload,omitempty"`
}

type SecretManagerSecret

type SecretManagerSecret struct {
	pulumi.ResourceState

	Name   string
	Secret *secretmanager.Secret
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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