HostedConfigurationVersionArgs

data class HostedConfigurationVersionArgs(val applicationId: Output<String>? = null, val configurationProfileId: Output<String>? = null, val content: Output<String>? = null, val contentType: Output<String>? = null, val description: Output<String>? = null) : ConvertibleToJava<HostedConfigurationVersionArgs>

Provides an AppConfig Hosted Configuration Version resource.

Example Usage

Freeform

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.appconfig.HostedConfigurationVersion("example", {
applicationId: exampleAwsAppconfigApplication.id,
configurationProfileId: exampleAwsAppconfigConfigurationProfile.configurationProfileId,
description: "Example Freeform Hosted Configuration Version",
contentType: "application/json",
content: JSON.stringify({
foo: "bar",
fruit: [
"apple",
"pear",
"orange",
],
isThingEnabled: true,
}),
});
import pulumi
import json
import pulumi_aws as aws
example = aws.appconfig.HostedConfigurationVersion("example",
application_id=example_aws_appconfig_application["id"],
configuration_profile_id=example_aws_appconfig_configuration_profile["configurationProfileId"],
description="Example Freeform Hosted Configuration Version",
content_type="application/json",
content=json.dumps({
"foo": "bar",
"fruit": [
"apple",
"pear",
"orange",
],
"isThingEnabled": True,
}))
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.AppConfig.HostedConfigurationVersion("example", new()
{
ApplicationId = exampleAwsAppconfigApplication.Id,
ConfigurationProfileId = exampleAwsAppconfigConfigurationProfile.ConfigurationProfileId,
Description = "Example Freeform Hosted Configuration Version",
ContentType = "application/json",
Content = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["foo"] = "bar",
["fruit"] = new[]
{
"apple",
"pear",
"orange",
},
["isThingEnabled"] = true,
}),
});
});
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/appconfig"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
tmpJSON0, err := json.Marshal(map[string]interface{}{
"foo": "bar",
"fruit": []string{
"apple",
"pear",
"orange",
},
"isThingEnabled": true,
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
_, err = appconfig.NewHostedConfigurationVersion(ctx, "example", &appconfig.HostedConfigurationVersionArgs{
ApplicationId: pulumi.Any(exampleAwsAppconfigApplication.Id),
ConfigurationProfileId: pulumi.Any(exampleAwsAppconfigConfigurationProfile.ConfigurationProfileId),
Description: pulumi.String("Example Freeform Hosted Configuration Version"),
ContentType: pulumi.String("application/json"),
Content: pulumi.String(json0),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.appconfig.HostedConfigurationVersion;
import com.pulumi.aws.appconfig.HostedConfigurationVersionArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new HostedConfigurationVersion("example", HostedConfigurationVersionArgs.builder()
.applicationId(exampleAwsAppconfigApplication.id())
.configurationProfileId(exampleAwsAppconfigConfigurationProfile.configurationProfileId())
.description("Example Freeform Hosted Configuration Version")
.contentType("application/json")
.content(serializeJson(
jsonObject(
jsonProperty("foo", "bar"),
jsonProperty("fruit", jsonArray(
"apple",
"pear",
"orange"
)),
jsonProperty("isThingEnabled", true)
)))
.build());
}
}
resources:
example:
type: aws:appconfig:HostedConfigurationVersion
properties:
applicationId: ${exampleAwsAppconfigApplication.id}
configurationProfileId: ${exampleAwsAppconfigConfigurationProfile.configurationProfileId}
description: Example Freeform Hosted Configuration Version
contentType: application/json
content:
fn::toJSON:
foo: bar
fruit:
- apple
- pear
- orange
isThingEnabled: true

Feature Flags

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.appconfig.HostedConfigurationVersion("example", {
applicationId: exampleAwsAppconfigApplication.id,
configurationProfileId: exampleAwsAppconfigConfigurationProfile.configurationProfileId,
description: "Example Feature Flag Configuration Version",
contentType: "application/json",
content: JSON.stringify({
flags: {
foo: {
name: "foo",
_deprecation: {
status: "planned",
},
},
bar: {
name: "bar",
attributes: {
someAttribute: {
constraints: {
type: "string",
required: true,
},
},
someOtherAttribute: {
constraints: {
type: "number",
required: true,
},
},
},
},
},
values: {
foo: {
enabled: "true",
},
bar: {
enabled: "true",
someAttribute: "Hello World",
someOtherAttribute: 123,
},
},
version: "1",
}),
});
import pulumi
import json
import pulumi_aws as aws
example = aws.appconfig.HostedConfigurationVersion("example",
application_id=example_aws_appconfig_application["id"],
configuration_profile_id=example_aws_appconfig_configuration_profile["configurationProfileId"],
description="Example Feature Flag Configuration Version",
content_type="application/json",
content=json.dumps({
"flags": {
"foo": {
"name": "foo",
"_deprecation": {
"status": "planned",
},
},
"bar": {
"name": "bar",
"attributes": {
"someAttribute": {
"constraints": {
"type": "string",
"required": True,
},
},
"someOtherAttribute": {
"constraints": {
"type": "number",
"required": True,
},
},
},
},
},
"values": {
"foo": {
"enabled": "true",
},
"bar": {
"enabled": "true",
"someAttribute": "Hello World",
"someOtherAttribute": 123,
},
},
"version": "1",
}))
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.AppConfig.HostedConfigurationVersion("example", new()
{
ApplicationId = exampleAwsAppconfigApplication.Id,
ConfigurationProfileId = exampleAwsAppconfigConfigurationProfile.ConfigurationProfileId,
Description = "Example Feature Flag Configuration Version",
ContentType = "application/json",
Content = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["flags"] = new Dictionary<string, object?>
{
["foo"] = new Dictionary<string, object?>
{
["name"] = "foo",
["_deprecation"] = new Dictionary<string, object?>
{
["status"] = "planned",
},
},
["bar"] = new Dictionary<string, object?>
{
["name"] = "bar",
["attributes"] = new Dictionary<string, object?>
{
["someAttribute"] = new Dictionary<string, object?>
{
["constraints"] = new Dictionary<string, object?>
{
["type"] = "string",
["required"] = true,
},
},
["someOtherAttribute"] = new Dictionary<string, object?>
{
["constraints"] = new Dictionary<string, object?>
{
["type"] = "number",
["required"] = true,
},
},
},
},
},
["values"] = new Dictionary<string, object?>
{
["foo"] = new Dictionary<string, object?>
{
["enabled"] = "true",
},
["bar"] = new Dictionary<string, object?>
{
["enabled"] = "true",
["someAttribute"] = "Hello World",
["someOtherAttribute"] = 123,
},
},
["version"] = "1",
}),
});
});
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/appconfig"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
tmpJSON0, err := json.Marshal(map[string]interface{}{
"flags": map[string]interface{}{
"foo": map[string]interface{}{
"name": "foo",
"_deprecation": map[string]interface{}{
"status": "planned",
},
},
"bar": map[string]interface{}{
"name": "bar",
"attributes": map[string]interface{}{
"someAttribute": map[string]interface{}{
"constraints": map[string]interface{}{
"type": "string",
"required": true,
},
},
"someOtherAttribute": map[string]interface{}{
"constraints": map[string]interface{}{
"type": "number",
"required": true,
},
},
},
},
},
"values": map[string]interface{}{
"foo": map[string]interface{}{
"enabled": "true",
},
"bar": map[string]interface{}{
"enabled": "true",
"someAttribute": "Hello World",
"someOtherAttribute": 123,
},
},
"version": "1",
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
_, err = appconfig.NewHostedConfigurationVersion(ctx, "example", &appconfig.HostedConfigurationVersionArgs{
ApplicationId: pulumi.Any(exampleAwsAppconfigApplication.Id),
ConfigurationProfileId: pulumi.Any(exampleAwsAppconfigConfigurationProfile.ConfigurationProfileId),
Description: pulumi.String("Example Feature Flag Configuration Version"),
ContentType: pulumi.String("application/json"),
Content: pulumi.String(json0),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.appconfig.HostedConfigurationVersion;
import com.pulumi.aws.appconfig.HostedConfigurationVersionArgs;
import static com.pulumi.codegen.internal.Serialization.*;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new HostedConfigurationVersion("example", HostedConfigurationVersionArgs.builder()
.applicationId(exampleAwsAppconfigApplication.id())
.configurationProfileId(exampleAwsAppconfigConfigurationProfile.configurationProfileId())
.description("Example Feature Flag Configuration Version")
.contentType("application/json")
.content(serializeJson(
jsonObject(
jsonProperty("flags", jsonObject(
jsonProperty("foo", jsonObject(
jsonProperty("name", "foo"),
jsonProperty("_deprecation", jsonObject(
jsonProperty("status", "planned")
))
)),
jsonProperty("bar", jsonObject(
jsonProperty("name", "bar"),
jsonProperty("attributes", jsonObject(
jsonProperty("someAttribute", jsonObject(
jsonProperty("constraints", jsonObject(
jsonProperty("type", "string"),
jsonProperty("required", true)
))
)),
jsonProperty("someOtherAttribute", jsonObject(
jsonProperty("constraints", jsonObject(
jsonProperty("type", "number"),
jsonProperty("required", true)
))
))
))
))
)),
jsonProperty("values", jsonObject(
jsonProperty("foo", jsonObject(
jsonProperty("enabled", "true")
)),
jsonProperty("bar", jsonObject(
jsonProperty("enabled", "true"),
jsonProperty("someAttribute", "Hello World"),
jsonProperty("someOtherAttribute", 123)
))
)),
jsonProperty("version", "1")
)))
.build());
}
}
resources:
example:
type: aws:appconfig:HostedConfigurationVersion
properties:
applicationId: ${exampleAwsAppconfigApplication.id}
configurationProfileId: ${exampleAwsAppconfigConfigurationProfile.configurationProfileId}
description: Example Feature Flag Configuration Version
contentType: application/json
content:
fn::toJSON:
flags:
foo:
name: foo
_deprecation:
status: planned
bar:
name: bar
attributes:
someAttribute:
constraints:
type: string
required: true
someOtherAttribute:
constraints:
type: number
required: true
values:
foo:
enabled: 'true'
bar:
enabled: 'true'
someAttribute: Hello World
someOtherAttribute: 123
version: '1'

Import

Using pulumi import, import AppConfig Hosted Configuration Versions using the application ID, configuration profile ID, and version number separated by a slash (/). For example:

$ pulumi import aws:appconfig/hostedConfigurationVersion:HostedConfigurationVersion example 71abcde/11xxxxx/2

Constructors

Link copied to clipboard
constructor(applicationId: Output<String>? = null, configurationProfileId: Output<String>? = null, content: Output<String>? = null, contentType: Output<String>? = null, description: Output<String>? = null)

Properties

Link copied to clipboard
val applicationId: Output<String>? = null

Application ID.

Link copied to clipboard
val configurationProfileId: Output<String>? = null

Configuration profile ID.

Link copied to clipboard
val content: Output<String>? = null

Content of the configuration or the configuration data.

Link copied to clipboard
val contentType: Output<String>? = null

Standard MIME type describing the format of the configuration content. For more information, see Content-Type.

Link copied to clipboard
val description: Output<String>? = null

Description of the configuration.

Functions

Link copied to clipboard
open override fun toJava(): HostedConfigurationVersionArgs