internal

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Dec 8, 2022 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AzureServicePlanResourceName

func AzureServicePlanResourceName(in *pongo2.Value, param *pongo2.Value) (*pongo2.Value, *pongo2.Error)

AzureServicePlanResourceName Retrieve the resource name for a Azure app service plan. The reason to make this conditional is because of backwards compatability; existing environments already have a `functionapp` resource. We want to keep that intact.

func NewAzurePlugin

func NewAzurePlugin() schema.MachComposerPlugin

func StripProtocol

func StripProtocol(value string) string

func SubdomainFromURL

func SubdomainFromURL(value string) string

func ZoneFromURL

func ZoneFromURL(value string) string

Types

type AzureAlertGroup

type AzureAlertGroup struct {
	Name        string
	AlertEmails []string `mapstructure:"alert_emals"`
	WebhookURL  string   `mapstructure:"webhook_url"`
	LogicApp    string   `mapstructure:"logic_app"`
}

func (*AzureAlertGroup) LogicAppName

func (a *AzureAlertGroup) LogicAppName() string

func (*AzureAlertGroup) LogicAppResourceGroup

func (a *AzureAlertGroup) LogicAppResourceGroup() string

type AzureFrontdoorSettings

type AzureFrontdoorSettings struct {
	DNSResourceGroup string                   `mapstructure:"dns_resource_group"`
	SslKeyVault      *AzureFrontdoorSslConfig `mapstructure:"ssl_key_vault"`

	// Undocumented option to work around some tenacious issues
	// with using Frontdoor in the Azure Terraform provider
	SuppressChanges bool `mapstructure:"suppress_changes"`
}

type AzureFrontdoorSslConfig

type AzureFrontdoorSslConfig struct {
	Name          string
	ResourceGroup string `mapstructure:"resource_group"`
	SecretName    string `mapstructure:"secret_name"`
}

type AzurePlugin

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

func (*AzurePlugin) Configure

func (p *AzurePlugin) Configure(environment string, provider string) error

func (*AzurePlugin) IsEnabled

func (p *AzurePlugin) IsEnabled() bool

func (*AzurePlugin) RenderTerraformComponent

func (p *AzurePlugin) RenderTerraformComponent(site string, component string) (*schema.ComponentSchema, error)

func (*AzurePlugin) SetComponentConfig

func (p *AzurePlugin) SetComponentConfig(component string, data map[string]any) error

func (*AzurePlugin) SetComponentEndpointsConfig

func (p *AzurePlugin) SetComponentEndpointsConfig(component string, endpoints map[string]string) error

func (*AzurePlugin) SetGlobalConfig

func (p *AzurePlugin) SetGlobalConfig(data map[string]any) error

func (*AzurePlugin) SetRemoteStateBackend

func (p *AzurePlugin) SetRemoteStateBackend(data map[string]any) error

func (*AzurePlugin) SetSiteComponentConfig added in v0.0.2

func (p *AzurePlugin) SetSiteComponentConfig(site, component string, data map[string]any) error

func (*AzurePlugin) SetSiteConfig

func (p *AzurePlugin) SetSiteConfig(site string, data map[string]any) error

func (*AzurePlugin) SetSiteEndpointsConfig

func (p *AzurePlugin) SetSiteEndpointsConfig(site string, data map[string]any) error

func (*AzurePlugin) TerraformRenderProviders

func (p *AzurePlugin) TerraformRenderProviders(site string) (string, error)

func (*AzurePlugin) TerraformRenderResources

func (p *AzurePlugin) TerraformRenderResources(site string) (string, error)

func (*AzurePlugin) TerraformRenderStateBackend

func (p *AzurePlugin) TerraformRenderStateBackend(site string) (string, error)

type AzureServicePlan

type AzureServicePlan struct {
	Kind                   string
	Tier                   string
	Size                   string
	Capacity               int
	DedicatedResourceGroup bool `mapstructure:"dedicated_resource_group"`
	PerSiteScaling         bool `mapstructure:"per_site_scaling"`
}

type AzureTFState

type AzureTFState struct {
	ResourceGroup  string `mapstructure:"resource_group"`
	StorageAccount string `mapstructure:"storage_account"`
	ContainerName  string `mapstructure:"container_name"`
	StateFolder    string `mapstructure:"state_folder"`
}

AzureTFState Azure storage account state backend configuration.

type ComponentConfig

type ComponentConfig struct {
	Endpoints map[string]string `mapstructure:"-"`

	Name        string `mapstructure:"-"`
	ServicePlan string `mapstructure:"service_plan"`
	ShortName   string `mapstructure:"short_name"`
}

func (*ComponentConfig) SetDefaults added in v0.0.2

func (c *ComponentConfig) SetDefaults()

type EndpointConfig

type EndpointConfig struct {
	URL  string `mapstructure:"url"`
	Key  string `mapstructure:"key"`
	Zone string `mapstructure:"zone"`

	SessionAffinityEnabled bool   `mapstructure:"session_affinity_enabled"`
	SessionAffinityTTL     int    `mapstructure:"session_affinity_ttl_seconds"`
	WAFPolicyID            string `mapstructure:"waf_policy_id"`
	InternalName           string `mapstructure:"internal_name"`

	Active     bool            `mapstructure:"-"`
	Components []SiteComponent `mapstructure:"-"`
}

func (*EndpointConfig) IsRootDomain

func (e *EndpointConfig) IsRootDomain() bool

func (*EndpointConfig) SetDefaults

func (e *EndpointConfig) SetDefaults()

func (EndpointConfig) Subdomain

func (e EndpointConfig) Subdomain() string

type GlobalConfig

type GlobalConfig struct {
	TenantID       string `mapstructure:"tenant_id"`
	SubscriptionID string `mapstructure:"subscription_id"`
	Region         string

	Frontdoor        *AzureFrontdoorSettings     `mapstructure:"frontdoor"`
	ResourcesPrefix  string                      `mapstructure:"resources_prefix"`
	ServiceObjectIds map[string]string           `mapstructure:"service_object_ids"`
	ServicePlans     map[string]AzureServicePlan `mapstructure:"service_plans"`
}

type SiteComponent added in v0.0.2

type SiteComponent struct {
	InternalName string
	ExternalName string
	Component    *ComponentConfig
}

type SiteConfig

type SiteConfig struct {
	Frontdoor  *AzureFrontdoorSettings `mapstructure:"frontdoor"`
	AlertGroup *AzureAlertGroup        `mapstructure:"alert_group"`

	// Can overwrite values from AzureConfig
	ResourceGroup  string
	TenantID       string `mapstructure:"tenant_id"`
	SubscriptionID string `mapstructure:"subscription_id"`

	Region           string
	ServiceObjectIds map[string]string           `mapstructure:"service_object_ids"`
	ServicePlans     map[string]AzureServicePlan `mapstructure:"service_plans"`

	Components []string
}

SiteAzureSettings Site-specific Azure settings

func (*SiteConfig) LongRegionName

func (a *SiteConfig) LongRegionName() string

func (*SiteConfig) ShortRegionName

func (a *SiteConfig) ShortRegionName() string

Jump to

Keyboard shortcuts

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