EnvironmentProfile ​
The EnvironmentProfile resource allows you to manage AWS DataZone EnvironmentProfiles for your data environments, enabling better organization and management of your data projects.
Minimal Example ​
Create a basic EnvironmentProfile with the required properties and a couple of optional ones.
ts
import AWS from "alchemy/aws/control";
const basicEnvironmentProfile = await AWS.DataZone.EnvironmentProfile("basicProfile", {
ProjectIdentifier: "project-123",
AwsAccountRegion: "us-east-1",
AwsAccountId: "123456789012",
EnvironmentBlueprintIdentifier: "blueprint-abc",
Name: "MyEnvironmentProfile",
DomainIdentifier: "domain-xyz",
UserParameters: [
{ key: "instanceType", value: "t2.micro" },
{ key: "storageSize", value: "20" }
],
Description: "A basic environment profile for my project."
});
Advanced Configuration ​
Configure an EnvironmentProfile with additional settings for a more complex setup.
ts
const advancedEnvironmentProfile = await AWS.DataZone.EnvironmentProfile("advancedProfile", {
ProjectIdentifier: "project-456",
AwsAccountRegion: "us-west-2",
AwsAccountId: "987654321098",
EnvironmentBlueprintIdentifier: "blueprint-def",
Name: "AdvancedEnvironmentProfile",
DomainIdentifier: "domain-uvw",
UserParameters: [
{ key: "instanceType", value: "t3.large" },
{ key: "databaseType", value: "PostgreSQL" },
{ key: "replicationFactor", value: "3" }
],
Description: "An advanced environment profile with specific configurations."
});
Adoption of Existing Resources ​
Create an EnvironmentProfile that adopts an existing resource if it already exists.
ts
const adoptExistingProfile = await AWS.DataZone.EnvironmentProfile("adoptedProfile", {
ProjectIdentifier: "project-789",
AwsAccountRegion: "eu-central-1",
AwsAccountId: "111222333444",
EnvironmentBlueprintIdentifier: "blueprint-ghi",
Name: "AdoptedEnvironmentProfile",
DomainIdentifier: "domain-rst",
adopt: true // Adopt existing resource if it already exists
});
Environment Profile with Custom User Parameters ​
Demonstrate creating an EnvironmentProfile that includes a custom set of user parameters.
ts
const customUserParametersProfile = await AWS.DataZone.EnvironmentProfile("customParamsProfile", {
ProjectIdentifier: "project-101",
AwsAccountRegion: "ap-southeast-1",
AwsAccountId: "555666777888",
EnvironmentBlueprintIdentifier: "blueprint-jkl",
Name: "CustomUserParametersProfile",
DomainIdentifier: "domain-opq",
UserParameters: [
{ key: "applicationLoadBalancer", value: "true" },
{ key: "autoScalingEnabled", value: "true" },
{ key: "instanceMaxSize", value: "5" }
],
Description: "Environment profile with custom user parameters for auto-scaling."
});