serverless

package
v0.1.96 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2026 License: MIT Imports: 34 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Deploy

Deploy orchestrates the full serverless deployment pipeline:

  1. Discovers the build artifact (app.tar.gz)
  2. Fetches local secrets via SecretManager and pushes them to the cloud secret store
  3. Uploads static assets to CDN/Storage
  4. Deploys the compute layer (Lambda, Workers, etc.)
  5. Invalidates the CDN cache

func GenerateResourceView added in v0.1.95

func GenerateResourceView(appCfg *config.AppConfig, resMap ServerlessResourceMap) (string, error)

GenerateResourceView creates a premium HTML report of the provisioned resources

func Rollback added in v0.1.89

func Rollback(ctx context.Context, cfg *config.NextDeployConfig) error

Rollback orchestrates the serverless rollback process.

Types

type AWSProvider added in v0.1.60

type AWSProvider struct {
	// contains filtered or unexported fields
}

func NewAWSProvider added in v0.1.60

func NewAWSProvider() *AWSProvider

func (*AWSProvider) DeployCompute added in v0.1.60

func (p *AWSProvider) DeployCompute(ctx context.Context, tarballPath string, appCfg *cfgTypes.NextDeployConfig, meta *nextcore.NextCorePayload) error

func (*AWSProvider) DeployStatic added in v0.1.60

func (p *AWSProvider) DeployStatic(ctx context.Context, tarballPath string, appCfg *cfgTypes.NextDeployConfig, meta *nextcore.NextCorePayload) error

func (*AWSProvider) Destroy added in v0.1.76

func (p *AWSProvider) Destroy(ctx context.Context, appCfg *cfgTypes.NextDeployConfig) error

func (*AWSProvider) GetResourceMap added in v0.1.95

func (p *AWSProvider) GetResourceMap(ctx context.Context, appCfg *cfgTypes.NextDeployConfig) (ServerlessResourceMap, error)

func (*AWSProvider) GetSecrets added in v0.1.94

func (p *AWSProvider) GetSecrets(ctx context.Context, appName string) (map[string]string, error)

func (*AWSProvider) Initialize added in v0.1.60

func (p *AWSProvider) Initialize(ctx context.Context, appCfg *cfgTypes.NextDeployConfig) error

func (*AWSProvider) InvalidateCache added in v0.1.60

func (p *AWSProvider) InvalidateCache(ctx context.Context, appCfg *cfgTypes.NextDeployConfig) error

func (*AWSProvider) Rollback added in v0.1.89

func (p *AWSProvider) Rollback(ctx context.Context, appCfg *cfgTypes.NextDeployConfig) error

Rollback reverts the Lambda function to the previous deployed zip using the S3 deployment history. This is instant — no HTTP download required.

func (*AWSProvider) SetSecret added in v0.1.94

func (p *AWSProvider) SetSecret(ctx context.Context, appName string, key, value string) error

func (*AWSProvider) UnsetSecret added in v0.1.94

func (p *AWSProvider) UnsetSecret(ctx context.Context, appName string, key string) error

func (*AWSProvider) UpdateSecrets added in v0.1.60

func (p *AWSProvider) UpdateSecrets(ctx context.Context, appName string, secrets map[string]string) error

type Provider added in v0.1.60

type Provider interface {
	// Initialize validates credentials and prepares the environment.
	Initialize(ctx context.Context, cfg *config.NextDeployConfig) error

	// DeployStatic uploads static assets (public/, .next/static/) to a CDN/Storage bucket.
	DeployStatic(ctx context.Context, tarballPath string, cfg *config.NextDeployConfig, meta *nextcore.NextCorePayload) error

	// GetSecrets retrieves all secrets for the application.
	GetSecrets(ctx context.Context, appName string) (map[string]string, error)

	// SetSecret sets a single secret for the application.
	SetSecret(ctx context.Context, appName string, key, value string) error

	// UnsetSecret removes a single secret from the application.
	UnsetSecret(ctx context.Context, appName string, key string) error

	// UpdateSecrets securely injects/syncs a batch of secrets.
	UpdateSecrets(ctx context.Context, appName string, secrets map[string]string) error

	// DeployCompute packages the standalone build and updates the compute layer
	// (e.g., AWS Lambda + Web Adapter, Cloudflare Workers).
	DeployCompute(ctx context.Context, tarballPath string, cfg *config.NextDeployConfig, meta *nextcore.NextCorePayload) error

	// InvalidateCache clears the CDN cache to ensure fresh assets are served.
	InvalidateCache(ctx context.Context, cfg *config.NextDeployConfig) error

	// Rollback reverts the compute layer to the previous version and
	// invalidates the CDN cache so the old version is served immediately.
	Rollback(ctx context.Context, cfg *config.NextDeployConfig) error

	// Destroy removes all application resources from the cloud provider.
	Destroy(ctx context.Context, cfg *config.NextDeployConfig) error

	// GetResourceMap returns a summary of all provisioned cloud resources.
	GetResourceMap(ctx context.Context, cfg *config.NextDeployConfig) (ServerlessResourceMap, error)
}

Provider defines the interface for deploying to various serverless platforms (e.g., AWS, Cloudflare, GCP, Azure).

func New added in v0.1.94

func New(providerName string) (Provider, error)

New returns a new serverless provider based on the provider name.

type ServerlessResourceMap added in v0.1.95

type ServerlessResourceMap struct {
	AppName          string
	Environment      string
	Region           string
	LambdaARN        string
	FunctionURL      string
	S3BucketName     string
	CloudFrontID     string
	CloudFrontDomain string
	CustomDomain     string
	CertificateARN   string
	DeploymentTime   time.Time
}

ServerlessResourceMap holds the metadata for the visual report

Jump to

Keyboard shortcuts

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