Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BackendConstructor ¶
type BackendConstructor[Config any, Backend any] func(stack constructs.Construct, config Config) Backend
type DependencyCheck ¶
type DependencyCheck func() error
type ErrorHandler ¶
type ModuleDirectory ¶
type NitricDefaultOrder ¶
type NitricDefaultOrder struct{}
NitricDefaultOrder - Partial implementation of NitricPulumiProvider which implements the standard resource deployment order
func (*NitricDefaultOrder) Order ¶
func (*NitricDefaultOrder) Order(resources []*deploymentspb.Resource) []*deploymentspb.Resource
Order - the default resource deployment order By default deploy services (services) first, other resources typically depend on them e.g. topics may need to know about services in order to setup subscriptions.
type NitricPulumiProvider ¶
type NitricPulumiProvider interface {
// Init - Initialize the provider with the given attributes, prior to any resource creation or Pulumi Context creation
Init(attributes map[string]interface{}) error
// Pre - Called prior to any resource creation, after the Pulumi Context has been established
Pre(ctx *pulumi.Context, resources []*pulumix.NitricPulumiResource[any]) error
// Config - Return the Pulumi ConfigMap for the provider
Config() (auto.ConfigMap, error)
// Order - Return the order that resources should be deployed in.
// The order of resources is important as some resources depend on others.
// Changing the default order is not recommended unless you know what you are doing.
Order(resources []*deploymentspb.Resource) []*deploymentspb.Resource
// Api - Deploy an API Gateway
Api(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Api) error
// Http - Deploy a HTTP Proxy
Http(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Http) error
// Bucket - Deploy a Storage Bucket
Bucket(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Bucket) error
// Service - Deploy an service (Service)
Service(ctx *pulumi.Context, parent pulumi.Resource, name string, config *pulumix.NitricPulumiServiceConfig, runtimeProvider RuntimeProvider) error
// Topic - Deploy a Pub/Sub Topic
Topic(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Topic) error
// Queue - Deploy a Queue
Queue(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Queue) error
// Secret - Deploy a Secret
Secret(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Secret) error
// Schedule - Deploy a Schedule
Schedule(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Schedule) error
// Websocket - Deploy a Websocket Gateway
Websocket(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Websocket) error
// Website - Deploy a Website
Website(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Website) error
// Policy - Deploy a Policy
Policy(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Policy) error
// KeyValueStore - Deploy a Key Value Store
KeyValueStore(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.KeyValueStore) error
// SqlDatabase - Deploy a SQL Database
SqlDatabase(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.SqlDatabase) error
// Job - Deploy a Job
Batch(ctx *pulumi.Context, parent pulumi.Resource, name string, config *deploymentspb.Batch, runtimeProvider RuntimeProvider) error
// Post - Called after all resources have been created, before the Pulumi Context is concluded
Post(ctx *pulumi.Context) error
// Result - Last method to be called, return the result of the deployment to be printed to stdout
Result(ctx *pulumi.Context) (pulumi.StringOutput, error)
}
type NitricTerraformProvider ¶
type NitricTerraformProvider interface {
// Init - Initialize the provider with the given attributes, prior to any resource creation
Init(attributes map[string]interface{}) error
// Pre - Called prior to any resource creation, after the stack has been established
Pre(stack cdktf.TerraformStack, resources []*deploymentspb.Resource) error
// CdkTfModules - Return the relative parent directory (root golang packed) and embedded modules directory
// CdkTfModules() (string, fs.FS, error)
CdkTfModules() ([]ModuleDirectory, error)
// RequiredProviders - Return a list of required providers for this provider
RequiredProviders() map[string]interface{}
// Order - Return the order that resources should be deployed in.
// The order of resources is important as some resources depend on others.
// Changing the default order is not recommended unless you know what you are doing.
Order(resources []*deploymentspb.Resource) []*deploymentspb.Resource
// Api - Deploy an API Gateway
Api(tack cdktf.TerraformStack, name string, config *deploymentspb.Api) error
// Http - Deploy a HTTP Proxy
Http(tack cdktf.TerraformStack, name string, config *deploymentspb.Http) error
// Bucket - Deploy a Storage Bucket
Bucket(stack cdktf.TerraformStack, name string, config *deploymentspb.Bucket) error
// Service - Deploy an service (Service)
Service(stack cdktf.TerraformStack, name string, config *deploymentspb.Service, runtimeProvider RuntimeProvider) error
// Topic - Deploy a Pub/Sub Topic
Topic(stack cdktf.TerraformStack, name string, config *deploymentspb.Topic) error
// Queue - Deploy a Queue
Queue(stack cdktf.TerraformStack, name string, config *deploymentspb.Queue) error
// Secret - Deploy a Secret
Secret(stack cdktf.TerraformStack, name string, config *deploymentspb.Secret) error
// Schedule - Deploy a Schedule
Schedule(stack cdktf.TerraformStack, name string, config *deploymentspb.Schedule) error
// Websocket - Deploy a Websocket Gateway
Websocket(stack cdktf.TerraformStack, name string, config *deploymentspb.Websocket) error
// Website - Deploy a Website
Website(stack cdktf.TerraformStack, name string, config *deploymentspb.Website) error
// Policy - Deploy a Policy
Policy(stack cdktf.TerraformStack, name string, config *deploymentspb.Policy) error
// KeyValueStore - Deploy a Key Value Store
KeyValueStore(stack cdktf.TerraformStack, name string, config *deploymentspb.KeyValueStore) error
// SqlDatabase - Deploy a SQL Database
SqlDatabase(stack cdktf.TerraformStack, name string, config *deploymentspb.SqlDatabase) error
// Post - Called after all resources have been created, before the stack is concluded
Post(stack cdktf.TerraformStack) error
}
type PulumiProviderServer ¶
type PulumiProviderServer struct {
// contains filtered or unexported fields
}
func NewPulumiProviderServer ¶
func NewPulumiProviderServer(provider NitricPulumiProvider, runtime RuntimeProvider, options ...func(*PulumiProviderServer)) *PulumiProviderServer
func (*PulumiProviderServer) Down ¶
func (s *PulumiProviderServer) Down(req *deploymentspb.DeploymentDownRequest, stream deploymentspb.Deployment_DownServer) error
Down - automatically called by the Nitric CLI via the `down` command
func (*PulumiProviderServer) Start ¶
func (s *PulumiProviderServer) Start()
Start - starts the Nitric Provider gRPC server, making it callable by the Nitric CLI during deployments.
func (*PulumiProviderServer) Up ¶
func (s *PulumiProviderServer) Up(req *deploymentspb.DeploymentUpRequest, stream deploymentspb.Deployment_UpServer) error
Up - automatically called by the Nitric CLI via the `up` command
type RuntimeProvider ¶
type RuntimeProvider func() []byte
A function that returns the runtime for a nitric provider
type TerraformProviderServer ¶
type TerraformProviderServer struct {
// contains filtered or unexported fields
}
func NewTerraformProviderServer ¶
func NewTerraformProviderServer(provider NitricTerraformProvider, runtime RuntimeProvider) *TerraformProviderServer
func (*TerraformProviderServer) Down ¶
func (s *TerraformProviderServer) Down(req *deploymentspb.DeploymentDownRequest, stream deploymentspb.Deployment_DownServer) error
func (*TerraformProviderServer) Start ¶
func (s *TerraformProviderServer) Start()
func (*TerraformProviderServer) Up ¶
func (s *TerraformProviderServer) Up(req *deploymentspb.DeploymentUpRequest, stream deploymentspb.Deployment_UpServer) error