mariadb

package
v4.34.0 Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Configuration

type Configuration struct {
	pulumi.CustomResourceState

	// Specifies the name of the MariaDB Configuration, which needs [to be a valid MariaDB configuration name](https://mariadb.com/kb/en/library/server-system-variables/). Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringOutput `pulumi:"serverName"`
	// Specifies the value of the MariaDB Configuration. See the MariaDB documentation for valid values.
	Value pulumi.StringOutput `pulumi:"value"`
}

Sets a MariaDB Configuration value on a MariaDB Server.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleServer, err := mariadb.NewServer(ctx, "exampleServer", &mariadb.ServerArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			SkuName:           pulumi.String("B_Gen5_2"),
			StorageProfile: &mariadb.ServerStorageProfileArgs{
				StorageMb:           pulumi.Int(5120),
				BackupRetentionDays: pulumi.Int(7),
				GeoRedundantBackup:  pulumi.String("Disabled"),
			},
			AdministratorLogin:         pulumi.String("mariadbadmin"),
			AdministratorLoginPassword: pulumi.String("H@Sh1CoR3!"),
			Version:                    pulumi.String("10.2"),
			SslEnforcement:             pulumi.String("Enabled"),
		})
		if err != nil {
			return err
		}
		_, err = mariadb.NewConfiguration(ctx, "exampleConfiguration", &mariadb.ConfigurationArgs{
			Name:              pulumi.String("interactive_timeout"),
			ResourceGroupName: exampleResourceGroup.Name,
			ServerName:        exampleServer.Name,
			Value:             pulumi.String("600"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MariaDB Configurations can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:mariadb/configuration:Configuration interactive_timeout /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.DBforMariaDB/servers/server1/configurations/interactive_timeout

```

func GetConfiguration

func GetConfiguration(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConfigurationState, opts ...pulumi.ResourceOption) (*Configuration, error)

GetConfiguration gets an existing Configuration resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewConfiguration

func NewConfiguration(ctx *pulumi.Context,
	name string, args *ConfigurationArgs, opts ...pulumi.ResourceOption) (*Configuration, error)

NewConfiguration registers a new resource with the given unique name, arguments, and options.

func (*Configuration) ElementType

func (*Configuration) ElementType() reflect.Type

func (*Configuration) ToConfigurationOutput

func (i *Configuration) ToConfigurationOutput() ConfigurationOutput

func (*Configuration) ToConfigurationOutputWithContext

func (i *Configuration) ToConfigurationOutputWithContext(ctx context.Context) ConfigurationOutput

func (*Configuration) ToConfigurationPtrOutput

func (i *Configuration) ToConfigurationPtrOutput() ConfigurationPtrOutput

func (*Configuration) ToConfigurationPtrOutputWithContext

func (i *Configuration) ToConfigurationPtrOutputWithContext(ctx context.Context) ConfigurationPtrOutput

type ConfigurationArgs

type ConfigurationArgs struct {
	// Specifies the name of the MariaDB Configuration, which needs [to be a valid MariaDB configuration name](https://mariadb.com/kb/en/library/server-system-variables/). Changing this forces a new resource to be created.
	Name pulumi.StringInput
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringInput
	// Specifies the value of the MariaDB Configuration. See the MariaDB documentation for valid values.
	Value pulumi.StringInput
}

The set of arguments for constructing a Configuration resource.

func (ConfigurationArgs) ElementType

func (ConfigurationArgs) ElementType() reflect.Type

type ConfigurationArray

type ConfigurationArray []ConfigurationInput

func (ConfigurationArray) ElementType

func (ConfigurationArray) ElementType() reflect.Type

func (ConfigurationArray) ToConfigurationArrayOutput

func (i ConfigurationArray) ToConfigurationArrayOutput() ConfigurationArrayOutput

func (ConfigurationArray) ToConfigurationArrayOutputWithContext

func (i ConfigurationArray) ToConfigurationArrayOutputWithContext(ctx context.Context) ConfigurationArrayOutput

type ConfigurationArrayInput

type ConfigurationArrayInput interface {
	pulumi.Input

	ToConfigurationArrayOutput() ConfigurationArrayOutput
	ToConfigurationArrayOutputWithContext(context.Context) ConfigurationArrayOutput
}

ConfigurationArrayInput is an input type that accepts ConfigurationArray and ConfigurationArrayOutput values. You can construct a concrete instance of `ConfigurationArrayInput` via:

ConfigurationArray{ ConfigurationArgs{...} }

type ConfigurationArrayOutput

type ConfigurationArrayOutput struct{ *pulumi.OutputState }

func (ConfigurationArrayOutput) ElementType

func (ConfigurationArrayOutput) ElementType() reflect.Type

func (ConfigurationArrayOutput) Index

func (ConfigurationArrayOutput) ToConfigurationArrayOutput

func (o ConfigurationArrayOutput) ToConfigurationArrayOutput() ConfigurationArrayOutput

func (ConfigurationArrayOutput) ToConfigurationArrayOutputWithContext

func (o ConfigurationArrayOutput) ToConfigurationArrayOutputWithContext(ctx context.Context) ConfigurationArrayOutput

type ConfigurationInput

type ConfigurationInput interface {
	pulumi.Input

	ToConfigurationOutput() ConfigurationOutput
	ToConfigurationOutputWithContext(ctx context.Context) ConfigurationOutput
}

type ConfigurationMap

type ConfigurationMap map[string]ConfigurationInput

func (ConfigurationMap) ElementType

func (ConfigurationMap) ElementType() reflect.Type

func (ConfigurationMap) ToConfigurationMapOutput

func (i ConfigurationMap) ToConfigurationMapOutput() ConfigurationMapOutput

func (ConfigurationMap) ToConfigurationMapOutputWithContext

func (i ConfigurationMap) ToConfigurationMapOutputWithContext(ctx context.Context) ConfigurationMapOutput

type ConfigurationMapInput

type ConfigurationMapInput interface {
	pulumi.Input

	ToConfigurationMapOutput() ConfigurationMapOutput
	ToConfigurationMapOutputWithContext(context.Context) ConfigurationMapOutput
}

ConfigurationMapInput is an input type that accepts ConfigurationMap and ConfigurationMapOutput values. You can construct a concrete instance of `ConfigurationMapInput` via:

ConfigurationMap{ "key": ConfigurationArgs{...} }

type ConfigurationMapOutput

type ConfigurationMapOutput struct{ *pulumi.OutputState }

func (ConfigurationMapOutput) ElementType

func (ConfigurationMapOutput) ElementType() reflect.Type

func (ConfigurationMapOutput) MapIndex

func (ConfigurationMapOutput) ToConfigurationMapOutput

func (o ConfigurationMapOutput) ToConfigurationMapOutput() ConfigurationMapOutput

func (ConfigurationMapOutput) ToConfigurationMapOutputWithContext

func (o ConfigurationMapOutput) ToConfigurationMapOutputWithContext(ctx context.Context) ConfigurationMapOutput

type ConfigurationOutput

type ConfigurationOutput struct{ *pulumi.OutputState }

func (ConfigurationOutput) ElementType

func (ConfigurationOutput) ElementType() reflect.Type

func (ConfigurationOutput) ToConfigurationOutput

func (o ConfigurationOutput) ToConfigurationOutput() ConfigurationOutput

func (ConfigurationOutput) ToConfigurationOutputWithContext

func (o ConfigurationOutput) ToConfigurationOutputWithContext(ctx context.Context) ConfigurationOutput

func (ConfigurationOutput) ToConfigurationPtrOutput

func (o ConfigurationOutput) ToConfigurationPtrOutput() ConfigurationPtrOutput

func (ConfigurationOutput) ToConfigurationPtrOutputWithContext

func (o ConfigurationOutput) ToConfigurationPtrOutputWithContext(ctx context.Context) ConfigurationPtrOutput

type ConfigurationPtrInput

type ConfigurationPtrInput interface {
	pulumi.Input

	ToConfigurationPtrOutput() ConfigurationPtrOutput
	ToConfigurationPtrOutputWithContext(ctx context.Context) ConfigurationPtrOutput
}

type ConfigurationPtrOutput

type ConfigurationPtrOutput struct{ *pulumi.OutputState }

func (ConfigurationPtrOutput) Elem added in v4.20.0

func (ConfigurationPtrOutput) ElementType

func (ConfigurationPtrOutput) ElementType() reflect.Type

func (ConfigurationPtrOutput) ToConfigurationPtrOutput

func (o ConfigurationPtrOutput) ToConfigurationPtrOutput() ConfigurationPtrOutput

func (ConfigurationPtrOutput) ToConfigurationPtrOutputWithContext

func (o ConfigurationPtrOutput) ToConfigurationPtrOutputWithContext(ctx context.Context) ConfigurationPtrOutput

type ConfigurationState

type ConfigurationState struct {
	// Specifies the name of the MariaDB Configuration, which needs [to be a valid MariaDB configuration name](https://mariadb.com/kb/en/library/server-system-variables/). Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringPtrInput
	// Specifies the value of the MariaDB Configuration. See the MariaDB documentation for valid values.
	Value pulumi.StringPtrInput
}

func (ConfigurationState) ElementType

func (ConfigurationState) ElementType() reflect.Type

type Database

type Database struct {
	pulumi.CustomResourceState

	// Specifies the Charset for the MariaDB Database, which needs [to be a valid MariaDB Charset](https://mariadb.com/kb/en/library/setting-character-sets-and-collations). Changing this forces a new resource to be created.
	Charset pulumi.StringOutput `pulumi:"charset"`
	// Specifies the Collation for the MariaDB Database, which needs [to be a valid MariaDB Collation](https://mariadb.com/kb/en/library/setting-character-sets-and-collations). Changing this forces a new resource to be created.
	Collation pulumi.StringOutput `pulumi:"collation"`
	// Specifies the name of the MariaDB Database, which needs [to be a valid MariaDB identifier](https://mariadb.com/kb/en/library/identifier-names/). Changing this forces a
	// new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringOutput `pulumi:"serverName"`
}

Manages a MariaDB Database within a MariaDB Server

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleServer, err := mariadb.NewServer(ctx, "exampleServer", &mariadb.ServerArgs{
			Location:                   exampleResourceGroup.Location,
			ResourceGroupName:          exampleResourceGroup.Name,
			SkuName:                    pulumi.String("B_Gen5_2"),
			StorageMb:                  pulumi.Int(51200),
			BackupRetentionDays:        pulumi.Int(7),
			GeoRedundantBackupEnabled:  pulumi.Bool(false),
			AdministratorLogin:         pulumi.String("acctestun"),
			AdministratorLoginPassword: pulumi.String("H@Sh1CoR3!"),
			Version:                    pulumi.String("10.2"),
			SslEnforcementEnabled:      pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = mariadb.NewDatabase(ctx, "exampleDatabase", &mariadb.DatabaseArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			ServerName:        exampleServer.Name,
			Charset:           pulumi.String("utf8"),
			Collation:         pulumi.String("utf8_general_ci"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MariaDB Database's can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:mariadb/database:Database database1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.DBforMariaDB/servers/server1/databases/database1

```

func GetDatabase

func GetDatabase(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DatabaseState, opts ...pulumi.ResourceOption) (*Database, error)

GetDatabase gets an existing Database resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDatabase

func NewDatabase(ctx *pulumi.Context,
	name string, args *DatabaseArgs, opts ...pulumi.ResourceOption) (*Database, error)

NewDatabase registers a new resource with the given unique name, arguments, and options.

func (*Database) ElementType

func (*Database) ElementType() reflect.Type

func (*Database) ToDatabaseOutput

func (i *Database) ToDatabaseOutput() DatabaseOutput

func (*Database) ToDatabaseOutputWithContext

func (i *Database) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (*Database) ToDatabasePtrOutput

func (i *Database) ToDatabasePtrOutput() DatabasePtrOutput

func (*Database) ToDatabasePtrOutputWithContext

func (i *Database) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseArgs

type DatabaseArgs struct {
	// Specifies the Charset for the MariaDB Database, which needs [to be a valid MariaDB Charset](https://mariadb.com/kb/en/library/setting-character-sets-and-collations). Changing this forces a new resource to be created.
	Charset pulumi.StringInput
	// Specifies the Collation for the MariaDB Database, which needs [to be a valid MariaDB Collation](https://mariadb.com/kb/en/library/setting-character-sets-and-collations). Changing this forces a new resource to be created.
	Collation pulumi.StringInput
	// Specifies the name of the MariaDB Database, which needs [to be a valid MariaDB identifier](https://mariadb.com/kb/en/library/identifier-names/). Changing this forces a
	// new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringInput
}

The set of arguments for constructing a Database resource.

func (DatabaseArgs) ElementType

func (DatabaseArgs) ElementType() reflect.Type

type DatabaseArray

type DatabaseArray []DatabaseInput

func (DatabaseArray) ElementType

func (DatabaseArray) ElementType() reflect.Type

func (DatabaseArray) ToDatabaseArrayOutput

func (i DatabaseArray) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArray) ToDatabaseArrayOutputWithContext

func (i DatabaseArray) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseArrayInput

type DatabaseArrayInput interface {
	pulumi.Input

	ToDatabaseArrayOutput() DatabaseArrayOutput
	ToDatabaseArrayOutputWithContext(context.Context) DatabaseArrayOutput
}

DatabaseArrayInput is an input type that accepts DatabaseArray and DatabaseArrayOutput values. You can construct a concrete instance of `DatabaseArrayInput` via:

DatabaseArray{ DatabaseArgs{...} }

type DatabaseArrayOutput

type DatabaseArrayOutput struct{ *pulumi.OutputState }

func (DatabaseArrayOutput) ElementType

func (DatabaseArrayOutput) ElementType() reflect.Type

func (DatabaseArrayOutput) Index

func (DatabaseArrayOutput) ToDatabaseArrayOutput

func (o DatabaseArrayOutput) ToDatabaseArrayOutput() DatabaseArrayOutput

func (DatabaseArrayOutput) ToDatabaseArrayOutputWithContext

func (o DatabaseArrayOutput) ToDatabaseArrayOutputWithContext(ctx context.Context) DatabaseArrayOutput

type DatabaseInput

type DatabaseInput interface {
	pulumi.Input

	ToDatabaseOutput() DatabaseOutput
	ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput
}

type DatabaseMap

type DatabaseMap map[string]DatabaseInput

func (DatabaseMap) ElementType

func (DatabaseMap) ElementType() reflect.Type

func (DatabaseMap) ToDatabaseMapOutput

func (i DatabaseMap) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMap) ToDatabaseMapOutputWithContext

func (i DatabaseMap) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseMapInput

type DatabaseMapInput interface {
	pulumi.Input

	ToDatabaseMapOutput() DatabaseMapOutput
	ToDatabaseMapOutputWithContext(context.Context) DatabaseMapOutput
}

DatabaseMapInput is an input type that accepts DatabaseMap and DatabaseMapOutput values. You can construct a concrete instance of `DatabaseMapInput` via:

DatabaseMap{ "key": DatabaseArgs{...} }

type DatabaseMapOutput

type DatabaseMapOutput struct{ *pulumi.OutputState }

func (DatabaseMapOutput) ElementType

func (DatabaseMapOutput) ElementType() reflect.Type

func (DatabaseMapOutput) MapIndex

func (DatabaseMapOutput) ToDatabaseMapOutput

func (o DatabaseMapOutput) ToDatabaseMapOutput() DatabaseMapOutput

func (DatabaseMapOutput) ToDatabaseMapOutputWithContext

func (o DatabaseMapOutput) ToDatabaseMapOutputWithContext(ctx context.Context) DatabaseMapOutput

type DatabaseOutput

type DatabaseOutput struct{ *pulumi.OutputState }

func (DatabaseOutput) ElementType

func (DatabaseOutput) ElementType() reflect.Type

func (DatabaseOutput) ToDatabaseOutput

func (o DatabaseOutput) ToDatabaseOutput() DatabaseOutput

func (DatabaseOutput) ToDatabaseOutputWithContext

func (o DatabaseOutput) ToDatabaseOutputWithContext(ctx context.Context) DatabaseOutput

func (DatabaseOutput) ToDatabasePtrOutput

func (o DatabaseOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabaseOutput) ToDatabasePtrOutputWithContext

func (o DatabaseOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabasePtrInput

type DatabasePtrInput interface {
	pulumi.Input

	ToDatabasePtrOutput() DatabasePtrOutput
	ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput
}

type DatabasePtrOutput

type DatabasePtrOutput struct{ *pulumi.OutputState }

func (DatabasePtrOutput) Elem added in v4.20.0

func (DatabasePtrOutput) ElementType

func (DatabasePtrOutput) ElementType() reflect.Type

func (DatabasePtrOutput) ToDatabasePtrOutput

func (o DatabasePtrOutput) ToDatabasePtrOutput() DatabasePtrOutput

func (DatabasePtrOutput) ToDatabasePtrOutputWithContext

func (o DatabasePtrOutput) ToDatabasePtrOutputWithContext(ctx context.Context) DatabasePtrOutput

type DatabaseState

type DatabaseState struct {
	// Specifies the Charset for the MariaDB Database, which needs [to be a valid MariaDB Charset](https://mariadb.com/kb/en/library/setting-character-sets-and-collations). Changing this forces a new resource to be created.
	Charset pulumi.StringPtrInput
	// Specifies the Collation for the MariaDB Database, which needs [to be a valid MariaDB Collation](https://mariadb.com/kb/en/library/setting-character-sets-and-collations). Changing this forces a new resource to be created.
	Collation pulumi.StringPtrInput
	// Specifies the name of the MariaDB Database, which needs [to be a valid MariaDB identifier](https://mariadb.com/kb/en/library/identifier-names/). Changing this forces a
	// new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringPtrInput
}

func (DatabaseState) ElementType

func (DatabaseState) ElementType() reflect.Type

type FirewallRule

type FirewallRule struct {
	pulumi.CustomResourceState

	// Specifies the End IP Address associated with this Firewall Rule. Changing this forces a new resource to be created.
	EndIpAddress pulumi.StringOutput `pulumi:"endIpAddress"`
	// Specifies the name of the MariaDB Firewall Rule. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringOutput `pulumi:"serverName"`
	// Specifies the Start IP Address associated with this Firewall Rule. Changing this forces a new resource to be created.
	StartIpAddress pulumi.StringOutput `pulumi:"startIpAddress"`
}

Manages a Firewall Rule for a MariaDB Server

## Example Usage ### Single IP Address)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mariadb.NewFirewallRule(ctx, "example", &mariadb.FirewallRuleArgs{
			EndIpAddress:      pulumi.String("40.112.8.12"),
			ResourceGroupName: pulumi.String("test-rg"),
			ServerName:        pulumi.String("test-server"),
			StartIpAddress:    pulumi.String("40.112.8.12"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### IP Range)

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mariadb.NewFirewallRule(ctx, "example", &mariadb.FirewallRuleArgs{
			EndIpAddress:      pulumi.String("40.112.255.255"),
			ResourceGroupName: pulumi.String("test-rg"),
			ServerName:        pulumi.String("test-server"),
			StartIpAddress:    pulumi.String("40.112.0.0"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MariaDB Firewall rules can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:mariadb/firewallRule:FirewallRule rule1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.DBforMariaDB/servers/server1/firewallRules/rule1

```

func GetFirewallRule

func GetFirewallRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FirewallRuleState, opts ...pulumi.ResourceOption) (*FirewallRule, error)

GetFirewallRule gets an existing FirewallRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFirewallRule

func NewFirewallRule(ctx *pulumi.Context,
	name string, args *FirewallRuleArgs, opts ...pulumi.ResourceOption) (*FirewallRule, error)

NewFirewallRule registers a new resource with the given unique name, arguments, and options.

func (*FirewallRule) ElementType

func (*FirewallRule) ElementType() reflect.Type

func (*FirewallRule) ToFirewallRuleOutput

func (i *FirewallRule) ToFirewallRuleOutput() FirewallRuleOutput

func (*FirewallRule) ToFirewallRuleOutputWithContext

func (i *FirewallRule) ToFirewallRuleOutputWithContext(ctx context.Context) FirewallRuleOutput

func (*FirewallRule) ToFirewallRulePtrOutput

func (i *FirewallRule) ToFirewallRulePtrOutput() FirewallRulePtrOutput

func (*FirewallRule) ToFirewallRulePtrOutputWithContext

func (i *FirewallRule) ToFirewallRulePtrOutputWithContext(ctx context.Context) FirewallRulePtrOutput

type FirewallRuleArgs

type FirewallRuleArgs struct {
	// Specifies the End IP Address associated with this Firewall Rule. Changing this forces a new resource to be created.
	EndIpAddress pulumi.StringInput
	// Specifies the name of the MariaDB Firewall Rule. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringInput
	// Specifies the Start IP Address associated with this Firewall Rule. Changing this forces a new resource to be created.
	StartIpAddress pulumi.StringInput
}

The set of arguments for constructing a FirewallRule resource.

func (FirewallRuleArgs) ElementType

func (FirewallRuleArgs) ElementType() reflect.Type

type FirewallRuleArray

type FirewallRuleArray []FirewallRuleInput

func (FirewallRuleArray) ElementType

func (FirewallRuleArray) ElementType() reflect.Type

func (FirewallRuleArray) ToFirewallRuleArrayOutput

func (i FirewallRuleArray) ToFirewallRuleArrayOutput() FirewallRuleArrayOutput

func (FirewallRuleArray) ToFirewallRuleArrayOutputWithContext

func (i FirewallRuleArray) ToFirewallRuleArrayOutputWithContext(ctx context.Context) FirewallRuleArrayOutput

type FirewallRuleArrayInput

type FirewallRuleArrayInput interface {
	pulumi.Input

	ToFirewallRuleArrayOutput() FirewallRuleArrayOutput
	ToFirewallRuleArrayOutputWithContext(context.Context) FirewallRuleArrayOutput
}

FirewallRuleArrayInput is an input type that accepts FirewallRuleArray and FirewallRuleArrayOutput values. You can construct a concrete instance of `FirewallRuleArrayInput` via:

FirewallRuleArray{ FirewallRuleArgs{...} }

type FirewallRuleArrayOutput

type FirewallRuleArrayOutput struct{ *pulumi.OutputState }

func (FirewallRuleArrayOutput) ElementType

func (FirewallRuleArrayOutput) ElementType() reflect.Type

func (FirewallRuleArrayOutput) Index

func (FirewallRuleArrayOutput) ToFirewallRuleArrayOutput

func (o FirewallRuleArrayOutput) ToFirewallRuleArrayOutput() FirewallRuleArrayOutput

func (FirewallRuleArrayOutput) ToFirewallRuleArrayOutputWithContext

func (o FirewallRuleArrayOutput) ToFirewallRuleArrayOutputWithContext(ctx context.Context) FirewallRuleArrayOutput

type FirewallRuleInput

type FirewallRuleInput interface {
	pulumi.Input

	ToFirewallRuleOutput() FirewallRuleOutput
	ToFirewallRuleOutputWithContext(ctx context.Context) FirewallRuleOutput
}

type FirewallRuleMap

type FirewallRuleMap map[string]FirewallRuleInput

func (FirewallRuleMap) ElementType

func (FirewallRuleMap) ElementType() reflect.Type

func (FirewallRuleMap) ToFirewallRuleMapOutput

func (i FirewallRuleMap) ToFirewallRuleMapOutput() FirewallRuleMapOutput

func (FirewallRuleMap) ToFirewallRuleMapOutputWithContext

func (i FirewallRuleMap) ToFirewallRuleMapOutputWithContext(ctx context.Context) FirewallRuleMapOutput

type FirewallRuleMapInput

type FirewallRuleMapInput interface {
	pulumi.Input

	ToFirewallRuleMapOutput() FirewallRuleMapOutput
	ToFirewallRuleMapOutputWithContext(context.Context) FirewallRuleMapOutput
}

FirewallRuleMapInput is an input type that accepts FirewallRuleMap and FirewallRuleMapOutput values. You can construct a concrete instance of `FirewallRuleMapInput` via:

FirewallRuleMap{ "key": FirewallRuleArgs{...} }

type FirewallRuleMapOutput

type FirewallRuleMapOutput struct{ *pulumi.OutputState }

func (FirewallRuleMapOutput) ElementType

func (FirewallRuleMapOutput) ElementType() reflect.Type

func (FirewallRuleMapOutput) MapIndex

func (FirewallRuleMapOutput) ToFirewallRuleMapOutput

func (o FirewallRuleMapOutput) ToFirewallRuleMapOutput() FirewallRuleMapOutput

func (FirewallRuleMapOutput) ToFirewallRuleMapOutputWithContext

func (o FirewallRuleMapOutput) ToFirewallRuleMapOutputWithContext(ctx context.Context) FirewallRuleMapOutput

type FirewallRuleOutput

type FirewallRuleOutput struct{ *pulumi.OutputState }

func (FirewallRuleOutput) ElementType

func (FirewallRuleOutput) ElementType() reflect.Type

func (FirewallRuleOutput) ToFirewallRuleOutput

func (o FirewallRuleOutput) ToFirewallRuleOutput() FirewallRuleOutput

func (FirewallRuleOutput) ToFirewallRuleOutputWithContext

func (o FirewallRuleOutput) ToFirewallRuleOutputWithContext(ctx context.Context) FirewallRuleOutput

func (FirewallRuleOutput) ToFirewallRulePtrOutput

func (o FirewallRuleOutput) ToFirewallRulePtrOutput() FirewallRulePtrOutput

func (FirewallRuleOutput) ToFirewallRulePtrOutputWithContext

func (o FirewallRuleOutput) ToFirewallRulePtrOutputWithContext(ctx context.Context) FirewallRulePtrOutput

type FirewallRulePtrInput

type FirewallRulePtrInput interface {
	pulumi.Input

	ToFirewallRulePtrOutput() FirewallRulePtrOutput
	ToFirewallRulePtrOutputWithContext(ctx context.Context) FirewallRulePtrOutput
}

type FirewallRulePtrOutput

type FirewallRulePtrOutput struct{ *pulumi.OutputState }

func (FirewallRulePtrOutput) Elem added in v4.20.0

func (FirewallRulePtrOutput) ElementType

func (FirewallRulePtrOutput) ElementType() reflect.Type

func (FirewallRulePtrOutput) ToFirewallRulePtrOutput

func (o FirewallRulePtrOutput) ToFirewallRulePtrOutput() FirewallRulePtrOutput

func (FirewallRulePtrOutput) ToFirewallRulePtrOutputWithContext

func (o FirewallRulePtrOutput) ToFirewallRulePtrOutputWithContext(ctx context.Context) FirewallRulePtrOutput

type FirewallRuleState

type FirewallRuleState struct {
	// Specifies the End IP Address associated with this Firewall Rule. Changing this forces a new resource to be created.
	EndIpAddress pulumi.StringPtrInput
	// Specifies the name of the MariaDB Firewall Rule. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	ServerName pulumi.StringPtrInput
	// Specifies the Start IP Address associated with this Firewall Rule. Changing this forces a new resource to be created.
	StartIpAddress pulumi.StringPtrInput
}

func (FirewallRuleState) ElementType

func (FirewallRuleState) ElementType() reflect.Type

type GetMariaDbServerArgs

type GetMariaDbServerArgs struct {
	// The name of the MariaDB Server to retrieve information about.
	Name string `pulumi:"name"`
	// The name of the resource group where the MariaDB Server exists.
	ResourceGroupName string `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getMariaDbServer.

type GetMariaDbServerOutputArgs added in v4.20.0

type GetMariaDbServerOutputArgs struct {
	// The name of the MariaDB Server to retrieve information about.
	Name pulumi.StringInput `pulumi:"name"`
	// The name of the resource group where the MariaDB Server exists.
	ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"`
}

A collection of arguments for invoking getMariaDbServer.

func (GetMariaDbServerOutputArgs) ElementType added in v4.20.0

func (GetMariaDbServerOutputArgs) ElementType() reflect.Type

type GetMariaDbServerResult

type GetMariaDbServerResult struct {
	// The Administrator Login for the MariaDB Server.
	AdministratorLogin string `pulumi:"administratorLogin"`
	// The FQDN of the MariaDB Server.
	Fqdn string `pulumi:"fqdn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The Azure location where the resource exists.
	Location          string `pulumi:"location"`
	Name              string `pulumi:"name"`
	ResourceGroupName string `pulumi:"resourceGroupName"`
	// The SKU Name for this MariaDB Server.
	SkuName string `pulumi:"skuName"`
	// The SSL being enforced on connections.
	SslEnforcement string `pulumi:"sslEnforcement"`
	// A `storageProfile` block as defined below.
	StorageProfiles []GetMariaDbServerStorageProfile `pulumi:"storageProfiles"`
	// A mapping of tags assigned to the resource.
	// ---
	Tags map[string]string `pulumi:"tags"`
	// The version of MariaDB being used.
	Version string `pulumi:"version"`
}

A collection of values returned by getMariaDbServer.

func GetMariaDbServer

func GetMariaDbServer(ctx *pulumi.Context, args *GetMariaDbServerArgs, opts ...pulumi.InvokeOption) (*GetMariaDbServerResult, error)

Use this data source to access information about an existing MariaDB Server.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mariadb.GetMariaDbServer(ctx, &mariadb.GetMariaDbServerArgs{
			Name:              "mariadb-server",
			ResourceGroupName: azurerm_mariadb_server.Example.Resource_group_name,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("mariadbServerId", data.Azurerm_mariadb_server.Example.Id)
		return nil
	})
}

```

type GetMariaDbServerResultOutput added in v4.20.0

type GetMariaDbServerResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getMariaDbServer.

func GetMariaDbServerOutput added in v4.20.0

func (GetMariaDbServerResultOutput) AdministratorLogin added in v4.20.0

func (o GetMariaDbServerResultOutput) AdministratorLogin() pulumi.StringOutput

The Administrator Login for the MariaDB Server.

func (GetMariaDbServerResultOutput) ElementType added in v4.20.0

func (GetMariaDbServerResultOutput) Fqdn added in v4.20.0

The FQDN of the MariaDB Server.

func (GetMariaDbServerResultOutput) Id added in v4.20.0

The provider-assigned unique ID for this managed resource.

func (GetMariaDbServerResultOutput) Location added in v4.20.0

The Azure location where the resource exists.

func (GetMariaDbServerResultOutput) Name added in v4.20.0

func (GetMariaDbServerResultOutput) ResourceGroupName added in v4.20.0

func (o GetMariaDbServerResultOutput) ResourceGroupName() pulumi.StringOutput

func (GetMariaDbServerResultOutput) SkuName added in v4.20.0

The SKU Name for this MariaDB Server.

func (GetMariaDbServerResultOutput) SslEnforcement added in v4.20.0

The SSL being enforced on connections.

func (GetMariaDbServerResultOutput) StorageProfiles added in v4.20.0

A `storageProfile` block as defined below.

func (GetMariaDbServerResultOutput) Tags added in v4.20.0

A mapping of tags assigned to the resource. ---

func (GetMariaDbServerResultOutput) ToGetMariaDbServerResultOutput added in v4.20.0

func (o GetMariaDbServerResultOutput) ToGetMariaDbServerResultOutput() GetMariaDbServerResultOutput

func (GetMariaDbServerResultOutput) ToGetMariaDbServerResultOutputWithContext added in v4.20.0

func (o GetMariaDbServerResultOutput) ToGetMariaDbServerResultOutputWithContext(ctx context.Context) GetMariaDbServerResultOutput

func (GetMariaDbServerResultOutput) Version added in v4.20.0

The version of MariaDB being used.

type GetMariaDbServerStorageProfile

type GetMariaDbServerStorageProfile struct {
	// Whether autogrow is enabled or disabled for the storage.
	AutoGrow string `pulumi:"autoGrow"`
	// Backup retention days for the server.
	BackupRetentionDays int `pulumi:"backupRetentionDays"`
	// Whether Geo-redundant is enabled or not for server backup.
	GeoRedundantBackup string `pulumi:"geoRedundantBackup"`
	// The max storage allowed for a server.
	StorageMb int `pulumi:"storageMb"`
}

type GetMariaDbServerStorageProfileArgs

type GetMariaDbServerStorageProfileArgs struct {
	// Whether autogrow is enabled or disabled for the storage.
	AutoGrow pulumi.StringInput `pulumi:"autoGrow"`
	// Backup retention days for the server.
	BackupRetentionDays pulumi.IntInput `pulumi:"backupRetentionDays"`
	// Whether Geo-redundant is enabled or not for server backup.
	GeoRedundantBackup pulumi.StringInput `pulumi:"geoRedundantBackup"`
	// The max storage allowed for a server.
	StorageMb pulumi.IntInput `pulumi:"storageMb"`
}

func (GetMariaDbServerStorageProfileArgs) ElementType

func (GetMariaDbServerStorageProfileArgs) ToGetMariaDbServerStorageProfileOutput

func (i GetMariaDbServerStorageProfileArgs) ToGetMariaDbServerStorageProfileOutput() GetMariaDbServerStorageProfileOutput

func (GetMariaDbServerStorageProfileArgs) ToGetMariaDbServerStorageProfileOutputWithContext

func (i GetMariaDbServerStorageProfileArgs) ToGetMariaDbServerStorageProfileOutputWithContext(ctx context.Context) GetMariaDbServerStorageProfileOutput

type GetMariaDbServerStorageProfileArray

type GetMariaDbServerStorageProfileArray []GetMariaDbServerStorageProfileInput

func (GetMariaDbServerStorageProfileArray) ElementType

func (GetMariaDbServerStorageProfileArray) ToGetMariaDbServerStorageProfileArrayOutput

func (i GetMariaDbServerStorageProfileArray) ToGetMariaDbServerStorageProfileArrayOutput() GetMariaDbServerStorageProfileArrayOutput

func (GetMariaDbServerStorageProfileArray) ToGetMariaDbServerStorageProfileArrayOutputWithContext

func (i GetMariaDbServerStorageProfileArray) ToGetMariaDbServerStorageProfileArrayOutputWithContext(ctx context.Context) GetMariaDbServerStorageProfileArrayOutput

type GetMariaDbServerStorageProfileArrayInput

type GetMariaDbServerStorageProfileArrayInput interface {
	pulumi.Input

	ToGetMariaDbServerStorageProfileArrayOutput() GetMariaDbServerStorageProfileArrayOutput
	ToGetMariaDbServerStorageProfileArrayOutputWithContext(context.Context) GetMariaDbServerStorageProfileArrayOutput
}

GetMariaDbServerStorageProfileArrayInput is an input type that accepts GetMariaDbServerStorageProfileArray and GetMariaDbServerStorageProfileArrayOutput values. You can construct a concrete instance of `GetMariaDbServerStorageProfileArrayInput` via:

GetMariaDbServerStorageProfileArray{ GetMariaDbServerStorageProfileArgs{...} }

type GetMariaDbServerStorageProfileArrayOutput

type GetMariaDbServerStorageProfileArrayOutput struct{ *pulumi.OutputState }

func (GetMariaDbServerStorageProfileArrayOutput) ElementType

func (GetMariaDbServerStorageProfileArrayOutput) Index

func (GetMariaDbServerStorageProfileArrayOutput) ToGetMariaDbServerStorageProfileArrayOutput

func (o GetMariaDbServerStorageProfileArrayOutput) ToGetMariaDbServerStorageProfileArrayOutput() GetMariaDbServerStorageProfileArrayOutput

func (GetMariaDbServerStorageProfileArrayOutput) ToGetMariaDbServerStorageProfileArrayOutputWithContext

func (o GetMariaDbServerStorageProfileArrayOutput) ToGetMariaDbServerStorageProfileArrayOutputWithContext(ctx context.Context) GetMariaDbServerStorageProfileArrayOutput

type GetMariaDbServerStorageProfileInput

type GetMariaDbServerStorageProfileInput interface {
	pulumi.Input

	ToGetMariaDbServerStorageProfileOutput() GetMariaDbServerStorageProfileOutput
	ToGetMariaDbServerStorageProfileOutputWithContext(context.Context) GetMariaDbServerStorageProfileOutput
}

GetMariaDbServerStorageProfileInput is an input type that accepts GetMariaDbServerStorageProfileArgs and GetMariaDbServerStorageProfileOutput values. You can construct a concrete instance of `GetMariaDbServerStorageProfileInput` via:

GetMariaDbServerStorageProfileArgs{...}

type GetMariaDbServerStorageProfileOutput

type GetMariaDbServerStorageProfileOutput struct{ *pulumi.OutputState }

func (GetMariaDbServerStorageProfileOutput) AutoGrow

Whether autogrow is enabled or disabled for the storage.

func (GetMariaDbServerStorageProfileOutput) BackupRetentionDays

func (o GetMariaDbServerStorageProfileOutput) BackupRetentionDays() pulumi.IntOutput

Backup retention days for the server.

func (GetMariaDbServerStorageProfileOutput) ElementType

func (GetMariaDbServerStorageProfileOutput) GeoRedundantBackup

Whether Geo-redundant is enabled or not for server backup.

func (GetMariaDbServerStorageProfileOutput) StorageMb

The max storage allowed for a server.

func (GetMariaDbServerStorageProfileOutput) ToGetMariaDbServerStorageProfileOutput

func (o GetMariaDbServerStorageProfileOutput) ToGetMariaDbServerStorageProfileOutput() GetMariaDbServerStorageProfileOutput

func (GetMariaDbServerStorageProfileOutput) ToGetMariaDbServerStorageProfileOutputWithContext

func (o GetMariaDbServerStorageProfileOutput) ToGetMariaDbServerStorageProfileOutputWithContext(ctx context.Context) GetMariaDbServerStorageProfileOutput

type Server

type Server struct {
	pulumi.CustomResourceState

	// The Administrator Login for the MariaDB Server. Changing this forces a new resource to be created.
	AdministratorLogin pulumi.StringOutput `pulumi:"administratorLogin"`
	// The Password associated with the `administratorLogin` for the MariaDB Server.
	AdministratorLoginPassword pulumi.StringPtrOutput `pulumi:"administratorLoginPassword"`
	// Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is `true`.
	AutoGrowEnabled pulumi.BoolOutput `pulumi:"autoGrowEnabled"`
	// Backup retention days for the server, supported values are between `7` and `35` days.
	BackupRetentionDays pulumi.IntOutput `pulumi:"backupRetentionDays"`
	// The creation mode. Can be used to restore or replicate existing servers. Possible values are `Default`, `Replica`, `GeoRestore`, and `PointInTimeRestore`. Defaults to `Default`.
	CreateMode pulumi.StringPtrOutput `pulumi:"createMode"`
	// For creation modes other than `Default`, the source server ID to use.
	CreationSourceServerId pulumi.StringPtrOutput `pulumi:"creationSourceServerId"`
	// The FQDN of the MariaDB Server.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier.
	GeoRedundantBackupEnabled pulumi.BoolOutput `pulumi:"geoRedundantBackupEnabled"`
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringOutput `pulumi:"location"`
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// Whether or not public network access is allowed for this server. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrOutput `pulumi:"publicNetworkAccessEnabled"`
	// The name of the resource group in which to create the MariaDB Server. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// When `createMode` is `PointInTimeRestore`, specifies the point in time to restore from `creationSourceServerId`.
	RestorePointInTime pulumi.StringPtrOutput `pulumi:"restorePointInTime"`
	// Specifies the SKU Name for this MariaDB Server. The name of the SKU, follows the `tier` + `family` + `cores` pattern (e.g. `B_Gen4_1`, `GP_Gen5_8`). For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#sku).
	SkuName pulumi.StringOutput `pulumi:"skuName"`
	// Deprecated: this has been moved to the boolean attribute `ssl_enforcement_enabled` and will be removed in version 3.0 of the provider.
	SslEnforcement pulumi.StringOutput `pulumi:"sslEnforcement"`
	// Specifies if SSL should be enforced on connections. Possible values are `true` and `false`.
	SslEnforcementEnabled pulumi.BoolPtrOutput `pulumi:"sslEnforcementEnabled"`
	// Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).
	StorageMb pulumi.IntOutput `pulumi:"storageMb"`
	// Deprecated: all storage_profile properties have been moved to the top level. This block will be removed in version 3.0 of the provider.
	StorageProfile ServerStorageProfileOutput `pulumi:"storageProfile"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Specifies the version of MariaDB to use. Possible values are `10.2` and `10.3`. Changing this forces a new resource to be created.
	Version pulumi.StringOutput `pulumi:"version"`
}

Manages a MariaDB Server.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		_, err = mariadb.NewServer(ctx, "exampleServer", &mariadb.ServerArgs{
			Location:                   exampleResourceGroup.Location,
			ResourceGroupName:          exampleResourceGroup.Name,
			AdministratorLogin:         pulumi.String("mariadbadmin"),
			AdministratorLoginPassword: pulumi.String("H@Sh1CoR3!"),
			SkuName:                    pulumi.String("B_Gen5_2"),
			StorageMb:                  pulumi.Int(5120),
			Version:                    pulumi.String("10.2"),
			AutoGrowEnabled:            pulumi.Bool(true),
			BackupRetentionDays:        pulumi.Int(7),
			GeoRedundantBackupEnabled:  pulumi.Bool(false),
			PublicNetworkAccessEnabled: pulumi.Bool(false),
			SslEnforcementEnabled:      pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MariaDB Server's can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:mariadb/server:Server server1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.DBforMariaDB/servers/server1

```

func GetServer

func GetServer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServerState, opts ...pulumi.ResourceOption) (*Server, error)

GetServer gets an existing Server resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewServer

func NewServer(ctx *pulumi.Context,
	name string, args *ServerArgs, opts ...pulumi.ResourceOption) (*Server, error)

NewServer registers a new resource with the given unique name, arguments, and options.

func (*Server) ElementType

func (*Server) ElementType() reflect.Type

func (*Server) ToServerOutput

func (i *Server) ToServerOutput() ServerOutput

func (*Server) ToServerOutputWithContext

func (i *Server) ToServerOutputWithContext(ctx context.Context) ServerOutput

func (*Server) ToServerPtrOutput

func (i *Server) ToServerPtrOutput() ServerPtrOutput

func (*Server) ToServerPtrOutputWithContext

func (i *Server) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput

type ServerArgs

type ServerArgs struct {
	// The Administrator Login for the MariaDB Server. Changing this forces a new resource to be created.
	AdministratorLogin pulumi.StringPtrInput
	// The Password associated with the `administratorLogin` for the MariaDB Server.
	AdministratorLoginPassword pulumi.StringPtrInput
	// Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is `true`.
	AutoGrowEnabled pulumi.BoolPtrInput
	// Backup retention days for the server, supported values are between `7` and `35` days.
	BackupRetentionDays pulumi.IntPtrInput
	// The creation mode. Can be used to restore or replicate existing servers. Possible values are `Default`, `Replica`, `GeoRestore`, and `PointInTimeRestore`. Defaults to `Default`.
	CreateMode pulumi.StringPtrInput
	// For creation modes other than `Default`, the source server ID to use.
	CreationSourceServerId pulumi.StringPtrInput
	// Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier.
	GeoRedundantBackupEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Whether or not public network access is allowed for this server. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the resource group in which to create the MariaDB Server. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// When `createMode` is `PointInTimeRestore`, specifies the point in time to restore from `creationSourceServerId`.
	RestorePointInTime pulumi.StringPtrInput
	// Specifies the SKU Name for this MariaDB Server. The name of the SKU, follows the `tier` + `family` + `cores` pattern (e.g. `B_Gen4_1`, `GP_Gen5_8`). For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#sku).
	SkuName pulumi.StringInput
	// Deprecated: this has been moved to the boolean attribute `ssl_enforcement_enabled` and will be removed in version 3.0 of the provider.
	SslEnforcement pulumi.StringPtrInput
	// Specifies if SSL should be enforced on connections. Possible values are `true` and `false`.
	SslEnforcementEnabled pulumi.BoolPtrInput
	// Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).
	StorageMb pulumi.IntPtrInput
	// Deprecated: all storage_profile properties have been moved to the top level. This block will be removed in version 3.0 of the provider.
	StorageProfile ServerStorageProfilePtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the version of MariaDB to use. Possible values are `10.2` and `10.3`. Changing this forces a new resource to be created.
	Version pulumi.StringInput
}

The set of arguments for constructing a Server resource.

func (ServerArgs) ElementType

func (ServerArgs) ElementType() reflect.Type

type ServerArray

type ServerArray []ServerInput

func (ServerArray) ElementType

func (ServerArray) ElementType() reflect.Type

func (ServerArray) ToServerArrayOutput

func (i ServerArray) ToServerArrayOutput() ServerArrayOutput

func (ServerArray) ToServerArrayOutputWithContext

func (i ServerArray) ToServerArrayOutputWithContext(ctx context.Context) ServerArrayOutput

type ServerArrayInput

type ServerArrayInput interface {
	pulumi.Input

	ToServerArrayOutput() ServerArrayOutput
	ToServerArrayOutputWithContext(context.Context) ServerArrayOutput
}

ServerArrayInput is an input type that accepts ServerArray and ServerArrayOutput values. You can construct a concrete instance of `ServerArrayInput` via:

ServerArray{ ServerArgs{...} }

type ServerArrayOutput

type ServerArrayOutput struct{ *pulumi.OutputState }

func (ServerArrayOutput) ElementType

func (ServerArrayOutput) ElementType() reflect.Type

func (ServerArrayOutput) Index

func (ServerArrayOutput) ToServerArrayOutput

func (o ServerArrayOutput) ToServerArrayOutput() ServerArrayOutput

func (ServerArrayOutput) ToServerArrayOutputWithContext

func (o ServerArrayOutput) ToServerArrayOutputWithContext(ctx context.Context) ServerArrayOutput

type ServerInput

type ServerInput interface {
	pulumi.Input

	ToServerOutput() ServerOutput
	ToServerOutputWithContext(ctx context.Context) ServerOutput
}

type ServerMap

type ServerMap map[string]ServerInput

func (ServerMap) ElementType

func (ServerMap) ElementType() reflect.Type

func (ServerMap) ToServerMapOutput

func (i ServerMap) ToServerMapOutput() ServerMapOutput

func (ServerMap) ToServerMapOutputWithContext

func (i ServerMap) ToServerMapOutputWithContext(ctx context.Context) ServerMapOutput

type ServerMapInput

type ServerMapInput interface {
	pulumi.Input

	ToServerMapOutput() ServerMapOutput
	ToServerMapOutputWithContext(context.Context) ServerMapOutput
}

ServerMapInput is an input type that accepts ServerMap and ServerMapOutput values. You can construct a concrete instance of `ServerMapInput` via:

ServerMap{ "key": ServerArgs{...} }

type ServerMapOutput

type ServerMapOutput struct{ *pulumi.OutputState }

func (ServerMapOutput) ElementType

func (ServerMapOutput) ElementType() reflect.Type

func (ServerMapOutput) MapIndex

func (ServerMapOutput) ToServerMapOutput

func (o ServerMapOutput) ToServerMapOutput() ServerMapOutput

func (ServerMapOutput) ToServerMapOutputWithContext

func (o ServerMapOutput) ToServerMapOutputWithContext(ctx context.Context) ServerMapOutput

type ServerOutput

type ServerOutput struct{ *pulumi.OutputState }

func (ServerOutput) ElementType

func (ServerOutput) ElementType() reflect.Type

func (ServerOutput) ToServerOutput

func (o ServerOutput) ToServerOutput() ServerOutput

func (ServerOutput) ToServerOutputWithContext

func (o ServerOutput) ToServerOutputWithContext(ctx context.Context) ServerOutput

func (ServerOutput) ToServerPtrOutput

func (o ServerOutput) ToServerPtrOutput() ServerPtrOutput

func (ServerOutput) ToServerPtrOutputWithContext

func (o ServerOutput) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput

type ServerPtrInput

type ServerPtrInput interface {
	pulumi.Input

	ToServerPtrOutput() ServerPtrOutput
	ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput
}

type ServerPtrOutput

type ServerPtrOutput struct{ *pulumi.OutputState }

func (ServerPtrOutput) Elem added in v4.20.0

func (o ServerPtrOutput) Elem() ServerOutput

func (ServerPtrOutput) ElementType

func (ServerPtrOutput) ElementType() reflect.Type

func (ServerPtrOutput) ToServerPtrOutput

func (o ServerPtrOutput) ToServerPtrOutput() ServerPtrOutput

func (ServerPtrOutput) ToServerPtrOutputWithContext

func (o ServerPtrOutput) ToServerPtrOutputWithContext(ctx context.Context) ServerPtrOutput

type ServerState

type ServerState struct {
	// The Administrator Login for the MariaDB Server. Changing this forces a new resource to be created.
	AdministratorLogin pulumi.StringPtrInput
	// The Password associated with the `administratorLogin` for the MariaDB Server.
	AdministratorLoginPassword pulumi.StringPtrInput
	// Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is `true`.
	AutoGrowEnabled pulumi.BoolPtrInput
	// Backup retention days for the server, supported values are between `7` and `35` days.
	BackupRetentionDays pulumi.IntPtrInput
	// The creation mode. Can be used to restore or replicate existing servers. Possible values are `Default`, `Replica`, `GeoRestore`, and `PointInTimeRestore`. Defaults to `Default`.
	CreateMode pulumi.StringPtrInput
	// For creation modes other than `Default`, the source server ID to use.
	CreationSourceServerId pulumi.StringPtrInput
	// The FQDN of the MariaDB Server.
	Fqdn pulumi.StringPtrInput
	// Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier.
	GeoRedundantBackupEnabled pulumi.BoolPtrInput
	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location pulumi.StringPtrInput
	// Specifies the name of the MariaDB Server. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// Whether or not public network access is allowed for this server. Defaults to `true`.
	PublicNetworkAccessEnabled pulumi.BoolPtrInput
	// The name of the resource group in which to create the MariaDB Server. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// When `createMode` is `PointInTimeRestore`, specifies the point in time to restore from `creationSourceServerId`.
	RestorePointInTime pulumi.StringPtrInput
	// Specifies the SKU Name for this MariaDB Server. The name of the SKU, follows the `tier` + `family` + `cores` pattern (e.g. `B_Gen4_1`, `GP_Gen5_8`). For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#sku).
	SkuName pulumi.StringPtrInput
	// Deprecated: this has been moved to the boolean attribute `ssl_enforcement_enabled` and will be removed in version 3.0 of the provider.
	SslEnforcement pulumi.StringPtrInput
	// Specifies if SSL should be enforced on connections. Possible values are `true` and `false`.
	SslEnforcementEnabled pulumi.BoolPtrInput
	// Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).
	StorageMb pulumi.IntPtrInput
	// Deprecated: all storage_profile properties have been moved to the top level. This block will be removed in version 3.0 of the provider.
	StorageProfile ServerStorageProfilePtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.StringMapInput
	// Specifies the version of MariaDB to use. Possible values are `10.2` and `10.3`. Changing this forces a new resource to be created.
	Version pulumi.StringPtrInput
}

func (ServerState) ElementType

func (ServerState) ElementType() reflect.Type

type ServerStorageProfile

type ServerStorageProfile struct {
	// Deprecated: this has been moved to the top level boolean attribute `auto_grow_enabled` and will be removed in version 3.0 of the provider.
	AutoGrow *string `pulumi:"autoGrow"`
	// Backup retention days for the server, supported values are between `7` and `35` days.
	//
	// Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.
	BackupRetentionDays *int `pulumi:"backupRetentionDays"`
	// Deprecated: this has been moved to the top level boolean attribute `geo_redundant_backup_enabled` and will be removed in version 3.0 of the provider.
	GeoRedundantBackup *string `pulumi:"geoRedundantBackup"`
	// Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).
	//
	// Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.
	StorageMb *int `pulumi:"storageMb"`
}

type ServerStorageProfileArgs

type ServerStorageProfileArgs struct {
	// Deprecated: this has been moved to the top level boolean attribute `auto_grow_enabled` and will be removed in version 3.0 of the provider.
	AutoGrow pulumi.StringPtrInput `pulumi:"autoGrow"`
	// Backup retention days for the server, supported values are between `7` and `35` days.
	//
	// Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.
	BackupRetentionDays pulumi.IntPtrInput `pulumi:"backupRetentionDays"`
	// Deprecated: this has been moved to the top level boolean attribute `geo_redundant_backup_enabled` and will be removed in version 3.0 of the provider.
	GeoRedundantBackup pulumi.StringPtrInput `pulumi:"geoRedundantBackup"`
	// Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).
	//
	// Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.
	StorageMb pulumi.IntPtrInput `pulumi:"storageMb"`
}

func (ServerStorageProfileArgs) ElementType

func (ServerStorageProfileArgs) ElementType() reflect.Type

func (ServerStorageProfileArgs) ToServerStorageProfileOutput

func (i ServerStorageProfileArgs) ToServerStorageProfileOutput() ServerStorageProfileOutput

func (ServerStorageProfileArgs) ToServerStorageProfileOutputWithContext

func (i ServerStorageProfileArgs) ToServerStorageProfileOutputWithContext(ctx context.Context) ServerStorageProfileOutput

func (ServerStorageProfileArgs) ToServerStorageProfilePtrOutput

func (i ServerStorageProfileArgs) ToServerStorageProfilePtrOutput() ServerStorageProfilePtrOutput

func (ServerStorageProfileArgs) ToServerStorageProfilePtrOutputWithContext

func (i ServerStorageProfileArgs) ToServerStorageProfilePtrOutputWithContext(ctx context.Context) ServerStorageProfilePtrOutput

type ServerStorageProfileInput

type ServerStorageProfileInput interface {
	pulumi.Input

	ToServerStorageProfileOutput() ServerStorageProfileOutput
	ToServerStorageProfileOutputWithContext(context.Context) ServerStorageProfileOutput
}

ServerStorageProfileInput is an input type that accepts ServerStorageProfileArgs and ServerStorageProfileOutput values. You can construct a concrete instance of `ServerStorageProfileInput` via:

ServerStorageProfileArgs{...}

type ServerStorageProfileOutput

type ServerStorageProfileOutput struct{ *pulumi.OutputState }

func (ServerStorageProfileOutput) AutoGrow deprecated

Deprecated: this has been moved to the top level boolean attribute `auto_grow_enabled` and will be removed in version 3.0 of the provider.

func (ServerStorageProfileOutput) BackupRetentionDays deprecated

func (o ServerStorageProfileOutput) BackupRetentionDays() pulumi.IntPtrOutput

Backup retention days for the server, supported values are between `7` and `35` days.

Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.

func (ServerStorageProfileOutput) ElementType

func (ServerStorageProfileOutput) ElementType() reflect.Type

func (ServerStorageProfileOutput) GeoRedundantBackup deprecated

func (o ServerStorageProfileOutput) GeoRedundantBackup() pulumi.StringPtrOutput

Deprecated: this has been moved to the top level boolean attribute `geo_redundant_backup_enabled` and will be removed in version 3.0 of the provider.

func (ServerStorageProfileOutput) StorageMb deprecated

Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).

Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.

func (ServerStorageProfileOutput) ToServerStorageProfileOutput

func (o ServerStorageProfileOutput) ToServerStorageProfileOutput() ServerStorageProfileOutput

func (ServerStorageProfileOutput) ToServerStorageProfileOutputWithContext

func (o ServerStorageProfileOutput) ToServerStorageProfileOutputWithContext(ctx context.Context) ServerStorageProfileOutput

func (ServerStorageProfileOutput) ToServerStorageProfilePtrOutput

func (o ServerStorageProfileOutput) ToServerStorageProfilePtrOutput() ServerStorageProfilePtrOutput

func (ServerStorageProfileOutput) ToServerStorageProfilePtrOutputWithContext

func (o ServerStorageProfileOutput) ToServerStorageProfilePtrOutputWithContext(ctx context.Context) ServerStorageProfilePtrOutput

type ServerStorageProfilePtrInput

type ServerStorageProfilePtrInput interface {
	pulumi.Input

	ToServerStorageProfilePtrOutput() ServerStorageProfilePtrOutput
	ToServerStorageProfilePtrOutputWithContext(context.Context) ServerStorageProfilePtrOutput
}

ServerStorageProfilePtrInput is an input type that accepts ServerStorageProfileArgs, ServerStorageProfilePtr and ServerStorageProfilePtrOutput values. You can construct a concrete instance of `ServerStorageProfilePtrInput` via:

        ServerStorageProfileArgs{...}

or:

        nil

type ServerStorageProfilePtrOutput

type ServerStorageProfilePtrOutput struct{ *pulumi.OutputState }

func (ServerStorageProfilePtrOutput) AutoGrow deprecated

Deprecated: this has been moved to the top level boolean attribute `auto_grow_enabled` and will be removed in version 3.0 of the provider.

func (ServerStorageProfilePtrOutput) BackupRetentionDays deprecated

func (o ServerStorageProfilePtrOutput) BackupRetentionDays() pulumi.IntPtrOutput

Backup retention days for the server, supported values are between `7` and `35` days.

Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.

func (ServerStorageProfilePtrOutput) Elem

func (ServerStorageProfilePtrOutput) ElementType

func (ServerStorageProfilePtrOutput) GeoRedundantBackup deprecated

func (o ServerStorageProfilePtrOutput) GeoRedundantBackup() pulumi.StringPtrOutput

Deprecated: this has been moved to the top level boolean attribute `geo_redundant_backup_enabled` and will be removed in version 3.0 of the provider.

func (ServerStorageProfilePtrOutput) StorageMb deprecated

Max storage allowed for a server. Possible values are between `5120` MB (5GB) and `1024000`MB (1TB) for the Basic SKU and between `5120` MB (5GB) and `4096000` MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the [product documentation](https://docs.microsoft.com/en-us/rest/api/mariadb/servers/create#storageprofile).

Deprecated: this has been moved to the top level and will be removed in version 3.0 of the provider.

func (ServerStorageProfilePtrOutput) ToServerStorageProfilePtrOutput

func (o ServerStorageProfilePtrOutput) ToServerStorageProfilePtrOutput() ServerStorageProfilePtrOutput

func (ServerStorageProfilePtrOutput) ToServerStorageProfilePtrOutputWithContext

func (o ServerStorageProfilePtrOutput) ToServerStorageProfilePtrOutputWithContext(ctx context.Context) ServerStorageProfilePtrOutput

type VirtualNetworkRule

type VirtualNetworkRule struct {
	pulumi.CustomResourceState

	// The name of the MariaDB Virtual Network Rule. Cannot be empty and must only contain alphanumeric characters and hyphens. Cannot start with a number, and cannot start or end with a hyphen. Changing this forces a new resource to be created.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the resource group where the MariaDB server resides. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"`
	// The name of the SQL Server to which this MariaDB virtual network rule will be applied to. Changing this forces a new resource to be created.
	ServerName pulumi.StringOutput `pulumi:"serverName"`
	// The ID of the subnet that the MariaDB server will be connected to.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
}

Manages a MariaDB Virtual Network Rule.

> **NOTE:** MariaDB Virtual Network Rules [can only be used with SKU Tiers of `GeneralPurpose` or `MemoryOptimized`](https://docs.microsoft.com/en-us/azure/mariadb/concepts-data-access-security-vnet)

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/mariadb"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "exampleVirtualNetwork", &network.VirtualNetworkArgs{
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.7.29.0/29"),
			},
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		internal, err := network.NewSubnet(ctx, "internal", &network.SubnetArgs{
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.7.29.0/29"),
			},
			ServiceEndpoints: pulumi.StringArray{
				pulumi.String("Microsoft.Sql"),
			},
		})
		if err != nil {
			return err
		}
		exampleServer, err := mariadb.NewServer(ctx, "exampleServer", &mariadb.ServerArgs{
			Location:                   exampleResourceGroup.Location,
			ResourceGroupName:          exampleResourceGroup.Name,
			AdministratorLogin:         pulumi.String("mariadbadminun"),
			AdministratorLoginPassword: pulumi.String("H@Sh1CoR3!"),
			Version:                    pulumi.String("5.7"),
			SslEnforcement:             pulumi.String("Enabled"),
			SkuName:                    pulumi.String("GP_Gen5_2"),
			StorageProfile: &mariadb.ServerStorageProfileArgs{
				StorageMb:           pulumi.Int(5120),
				BackupRetentionDays: pulumi.Int(7),
				GeoRedundantBackup:  pulumi.String("Disabled"),
			},
		})
		if err != nil {
			return err
		}
		_, err = mariadb.NewVirtualNetworkRule(ctx, "exampleVirtualNetworkRule", &mariadb.VirtualNetworkRuleArgs{
			ResourceGroupName: exampleResourceGroup.Name,
			ServerName:        exampleServer.Name,
			SubnetId:          internal.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MariaDB Virtual Network Rules can be imported using the `resource id`, e.g.

```sh

$ pulumi import azure:mariadb/virtualNetworkRule:VirtualNetworkRule rule1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMariaDB/servers/myserver/virtualNetworkRules/vnetrulename

```

func GetVirtualNetworkRule

func GetVirtualNetworkRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VirtualNetworkRuleState, opts ...pulumi.ResourceOption) (*VirtualNetworkRule, error)

GetVirtualNetworkRule gets an existing VirtualNetworkRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVirtualNetworkRule

func NewVirtualNetworkRule(ctx *pulumi.Context,
	name string, args *VirtualNetworkRuleArgs, opts ...pulumi.ResourceOption) (*VirtualNetworkRule, error)

NewVirtualNetworkRule registers a new resource with the given unique name, arguments, and options.

func (*VirtualNetworkRule) ElementType

func (*VirtualNetworkRule) ElementType() reflect.Type

func (*VirtualNetworkRule) ToVirtualNetworkRuleOutput

func (i *VirtualNetworkRule) ToVirtualNetworkRuleOutput() VirtualNetworkRuleOutput

func (*VirtualNetworkRule) ToVirtualNetworkRuleOutputWithContext

func (i *VirtualNetworkRule) ToVirtualNetworkRuleOutputWithContext(ctx context.Context) VirtualNetworkRuleOutput

func (*VirtualNetworkRule) ToVirtualNetworkRulePtrOutput

func (i *VirtualNetworkRule) ToVirtualNetworkRulePtrOutput() VirtualNetworkRulePtrOutput

func (*VirtualNetworkRule) ToVirtualNetworkRulePtrOutputWithContext

func (i *VirtualNetworkRule) ToVirtualNetworkRulePtrOutputWithContext(ctx context.Context) VirtualNetworkRulePtrOutput

type VirtualNetworkRuleArgs

type VirtualNetworkRuleArgs struct {
	// The name of the MariaDB Virtual Network Rule. Cannot be empty and must only contain alphanumeric characters and hyphens. Cannot start with a number, and cannot start or end with a hyphen. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group where the MariaDB server resides. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringInput
	// The name of the SQL Server to which this MariaDB virtual network rule will be applied to. Changing this forces a new resource to be created.
	ServerName pulumi.StringInput
	// The ID of the subnet that the MariaDB server will be connected to.
	SubnetId pulumi.StringInput
}

The set of arguments for constructing a VirtualNetworkRule resource.

func (VirtualNetworkRuleArgs) ElementType

func (VirtualNetworkRuleArgs) ElementType() reflect.Type

type VirtualNetworkRuleArray

type VirtualNetworkRuleArray []VirtualNetworkRuleInput

func (VirtualNetworkRuleArray) ElementType

func (VirtualNetworkRuleArray) ElementType() reflect.Type

func (VirtualNetworkRuleArray) ToVirtualNetworkRuleArrayOutput

func (i VirtualNetworkRuleArray) ToVirtualNetworkRuleArrayOutput() VirtualNetworkRuleArrayOutput

func (VirtualNetworkRuleArray) ToVirtualNetworkRuleArrayOutputWithContext

func (i VirtualNetworkRuleArray) ToVirtualNetworkRuleArrayOutputWithContext(ctx context.Context) VirtualNetworkRuleArrayOutput

type VirtualNetworkRuleArrayInput

type VirtualNetworkRuleArrayInput interface {
	pulumi.Input

	ToVirtualNetworkRuleArrayOutput() VirtualNetworkRuleArrayOutput
	ToVirtualNetworkRuleArrayOutputWithContext(context.Context) VirtualNetworkRuleArrayOutput
}

VirtualNetworkRuleArrayInput is an input type that accepts VirtualNetworkRuleArray and VirtualNetworkRuleArrayOutput values. You can construct a concrete instance of `VirtualNetworkRuleArrayInput` via:

VirtualNetworkRuleArray{ VirtualNetworkRuleArgs{...} }

type VirtualNetworkRuleArrayOutput

type VirtualNetworkRuleArrayOutput struct{ *pulumi.OutputState }

func (VirtualNetworkRuleArrayOutput) ElementType

func (VirtualNetworkRuleArrayOutput) Index

func (VirtualNetworkRuleArrayOutput) ToVirtualNetworkRuleArrayOutput

func (o VirtualNetworkRuleArrayOutput) ToVirtualNetworkRuleArrayOutput() VirtualNetworkRuleArrayOutput

func (VirtualNetworkRuleArrayOutput) ToVirtualNetworkRuleArrayOutputWithContext

func (o VirtualNetworkRuleArrayOutput) ToVirtualNetworkRuleArrayOutputWithContext(ctx context.Context) VirtualNetworkRuleArrayOutput

type VirtualNetworkRuleInput

type VirtualNetworkRuleInput interface {
	pulumi.Input

	ToVirtualNetworkRuleOutput() VirtualNetworkRuleOutput
	ToVirtualNetworkRuleOutputWithContext(ctx context.Context) VirtualNetworkRuleOutput
}

type VirtualNetworkRuleMap

type VirtualNetworkRuleMap map[string]VirtualNetworkRuleInput

func (VirtualNetworkRuleMap) ElementType

func (VirtualNetworkRuleMap) ElementType() reflect.Type

func (VirtualNetworkRuleMap) ToVirtualNetworkRuleMapOutput

func (i VirtualNetworkRuleMap) ToVirtualNetworkRuleMapOutput() VirtualNetworkRuleMapOutput

func (VirtualNetworkRuleMap) ToVirtualNetworkRuleMapOutputWithContext

func (i VirtualNetworkRuleMap) ToVirtualNetworkRuleMapOutputWithContext(ctx context.Context) VirtualNetworkRuleMapOutput

type VirtualNetworkRuleMapInput

type VirtualNetworkRuleMapInput interface {
	pulumi.Input

	ToVirtualNetworkRuleMapOutput() VirtualNetworkRuleMapOutput
	ToVirtualNetworkRuleMapOutputWithContext(context.Context) VirtualNetworkRuleMapOutput
}

VirtualNetworkRuleMapInput is an input type that accepts VirtualNetworkRuleMap and VirtualNetworkRuleMapOutput values. You can construct a concrete instance of `VirtualNetworkRuleMapInput` via:

VirtualNetworkRuleMap{ "key": VirtualNetworkRuleArgs{...} }

type VirtualNetworkRuleMapOutput

type VirtualNetworkRuleMapOutput struct{ *pulumi.OutputState }

func (VirtualNetworkRuleMapOutput) ElementType

func (VirtualNetworkRuleMapOutput) MapIndex

func (VirtualNetworkRuleMapOutput) ToVirtualNetworkRuleMapOutput

func (o VirtualNetworkRuleMapOutput) ToVirtualNetworkRuleMapOutput() VirtualNetworkRuleMapOutput

func (VirtualNetworkRuleMapOutput) ToVirtualNetworkRuleMapOutputWithContext

func (o VirtualNetworkRuleMapOutput) ToVirtualNetworkRuleMapOutputWithContext(ctx context.Context) VirtualNetworkRuleMapOutput

type VirtualNetworkRuleOutput

type VirtualNetworkRuleOutput struct{ *pulumi.OutputState }

func (VirtualNetworkRuleOutput) ElementType

func (VirtualNetworkRuleOutput) ElementType() reflect.Type

func (VirtualNetworkRuleOutput) ToVirtualNetworkRuleOutput

func (o VirtualNetworkRuleOutput) ToVirtualNetworkRuleOutput() VirtualNetworkRuleOutput

func (VirtualNetworkRuleOutput) ToVirtualNetworkRuleOutputWithContext

func (o VirtualNetworkRuleOutput) ToVirtualNetworkRuleOutputWithContext(ctx context.Context) VirtualNetworkRuleOutput

func (VirtualNetworkRuleOutput) ToVirtualNetworkRulePtrOutput

func (o VirtualNetworkRuleOutput) ToVirtualNetworkRulePtrOutput() VirtualNetworkRulePtrOutput

func (VirtualNetworkRuleOutput) ToVirtualNetworkRulePtrOutputWithContext

func (o VirtualNetworkRuleOutput) ToVirtualNetworkRulePtrOutputWithContext(ctx context.Context) VirtualNetworkRulePtrOutput

type VirtualNetworkRulePtrInput

type VirtualNetworkRulePtrInput interface {
	pulumi.Input

	ToVirtualNetworkRulePtrOutput() VirtualNetworkRulePtrOutput
	ToVirtualNetworkRulePtrOutputWithContext(ctx context.Context) VirtualNetworkRulePtrOutput
}

type VirtualNetworkRulePtrOutput

type VirtualNetworkRulePtrOutput struct{ *pulumi.OutputState }

func (VirtualNetworkRulePtrOutput) Elem added in v4.20.0

func (VirtualNetworkRulePtrOutput) ElementType

func (VirtualNetworkRulePtrOutput) ToVirtualNetworkRulePtrOutput

func (o VirtualNetworkRulePtrOutput) ToVirtualNetworkRulePtrOutput() VirtualNetworkRulePtrOutput

func (VirtualNetworkRulePtrOutput) ToVirtualNetworkRulePtrOutputWithContext

func (o VirtualNetworkRulePtrOutput) ToVirtualNetworkRulePtrOutputWithContext(ctx context.Context) VirtualNetworkRulePtrOutput

type VirtualNetworkRuleState

type VirtualNetworkRuleState struct {
	// The name of the MariaDB Virtual Network Rule. Cannot be empty and must only contain alphanumeric characters and hyphens. Cannot start with a number, and cannot start or end with a hyphen. Changing this forces a new resource to be created.
	Name pulumi.StringPtrInput
	// The name of the resource group where the MariaDB server resides. Changing this forces a new resource to be created.
	ResourceGroupName pulumi.StringPtrInput
	// The name of the SQL Server to which this MariaDB virtual network rule will be applied to. Changing this forces a new resource to be created.
	ServerName pulumi.StringPtrInput
	// The ID of the subnet that the MariaDB server will be connected to.
	SubnetId pulumi.StringPtrInput
}

func (VirtualNetworkRuleState) ElementType

func (VirtualNetworkRuleState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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