Variable Args
Example Usage
Example creating a RuntimeConfig variable.
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const my_runtime_config = new gcp.runtimeconfig.Config("my-runtime-config", {
name: "my-service-runtime-config",
description: "Runtime configuration values for my service",
});
const environment = new gcp.runtimeconfig.Variable("environment", {
parent: my_runtime_config.name,
name: "prod-variables/hostname",
text: "example.com",
});
import pulumi
import pulumi_gcp as gcp
my_runtime_config = gcp.runtimeconfig.Config("my-runtime-config",
name="my-service-runtime-config",
description="Runtime configuration values for my service")
environment = gcp.runtimeconfig.Variable("environment",
parent=my_runtime_config.name,
name="prod-variables/hostname",
text="example.com")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var my_runtime_config = new Gcp.RuntimeConfig.Config("my-runtime-config", new()
{
Name = "my-service-runtime-config",
Description = "Runtime configuration values for my service",
});
var environment = new Gcp.RuntimeConfig.Variable("environment", new()
{
Parent = my_runtime_config.Name,
Name = "prod-variables/hostname",
Text = "example.com",
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/runtimeconfig"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := runtimeconfig.NewConfig(ctx, "my-runtime-config", &runtimeconfig.ConfigArgs{
Name: pulumi.String("my-service-runtime-config"),
Description: pulumi.String("Runtime configuration values for my service"),
})
if err != nil {
return err
}
_, err = runtimeconfig.NewVariable(ctx, "environment", &runtimeconfig.VariableArgs{
Parent: my_runtime_config.Name,
Name: pulumi.String("prod-variables/hostname"),
Text: pulumi.String("example.com"),
})
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.gcp.runtimeconfig.Config;
import com.pulumi.gcp.runtimeconfig.ConfigArgs;
import com.pulumi.gcp.runtimeconfig.Variable;
import com.pulumi.gcp.runtimeconfig.VariableArgs;
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 my_runtime_config = new Config("my-runtime-config", ConfigArgs.builder()
.name("my-service-runtime-config")
.description("Runtime configuration values for my service")
.build());
var environment = new Variable("environment", VariableArgs.builder()
.parent(my_runtime_config.name())
.name("prod-variables/hostname")
.text("example.com")
.build());
}
}
resources:
my-runtime-config:
type: gcp:runtimeconfig:Config
properties:
name: my-service-runtime-config
description: Runtime configuration values for my service
environment:
type: gcp:runtimeconfig:Variable
properties:
parent: ${["my-runtime-config"].name}
name: prod-variables/hostname
text: example.com
You can also encode binary content using the value
argument instead. The value must be base64 encoded. Example of using the value
argument.
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as std from "@pulumi/std";
const my_runtime_config = new gcp.runtimeconfig.Config("my-runtime-config", {
name: "my-service-runtime-config",
description: "Runtime configuration values for my service",
});
const my_secret = new gcp.runtimeconfig.Variable("my-secret", {
parent: my_runtime_config.name,
name: "secret",
value: std.filebase64({
input: "my-encrypted-secret.dat",
}).then(invoke => invoke.result),
});
import pulumi
import pulumi_gcp as gcp
import pulumi_std as std
my_runtime_config = gcp.runtimeconfig.Config("my-runtime-config",
name="my-service-runtime-config",
description="Runtime configuration values for my service")
my_secret = gcp.runtimeconfig.Variable("my-secret",
parent=my_runtime_config.name,
name="secret",
value=std.filebase64(input="my-encrypted-secret.dat").result)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var my_runtime_config = new Gcp.RuntimeConfig.Config("my-runtime-config", new()
{
Name = "my-service-runtime-config",
Description = "Runtime configuration values for my service",
});
var my_secret = new Gcp.RuntimeConfig.Variable("my-secret", new()
{
Parent = my_runtime_config.Name,
Name = "secret",
Value = Std.Filebase64.Invoke(new()
{
Input = "my-encrypted-secret.dat",
}).Apply(invoke => invoke.Result),
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/runtimeconfig"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := runtimeconfig.NewConfig(ctx, "my-runtime-config", &runtimeconfig.ConfigArgs{
Name: pulumi.String("my-service-runtime-config"),
Description: pulumi.String("Runtime configuration values for my service"),
})
if err != nil {
return err
}
invokeFilebase64, err := std.Filebase64(ctx, &std.Filebase64Args{
Input: "my-encrypted-secret.dat",
}, nil)
if err != nil {
return err
}
_, err = runtimeconfig.NewVariable(ctx, "my-secret", &runtimeconfig.VariableArgs{
Parent: my_runtime_config.Name,
Name: pulumi.String("secret"),
Value: pulumi.String(invokeFilebase64.Result),
})
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.gcp.runtimeconfig.Config;
import com.pulumi.gcp.runtimeconfig.ConfigArgs;
import com.pulumi.gcp.runtimeconfig.Variable;
import com.pulumi.gcp.runtimeconfig.VariableArgs;
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 my_runtime_config = new Config("my-runtime-config", ConfigArgs.builder()
.name("my-service-runtime-config")
.description("Runtime configuration values for my service")
.build());
var my_secret = new Variable("my-secret", VariableArgs.builder()
.parent(my_runtime_config.name())
.name("secret")
.value(StdFunctions.filebase64(Filebase64Args.builder()
.input("my-encrypted-secret.dat")
.build()).result())
.build());
}
}
resources:
my-runtime-config:
type: gcp:runtimeconfig:Config
properties:
name: my-service-runtime-config
description: Runtime configuration values for my service
my-secret:
type: gcp:runtimeconfig:Variable
properties:
parent: ${["my-runtime-config"].name}
name: secret
value:
fn::invoke:
Function: std:filebase64
Arguments:
input: my-encrypted-secret.dat
Return: result
Import
Runtime Config Variables can be imported using the name
or full variable name, e.g.
projects/my-gcp-project/configs/{{config_id}}/variables/{{name}}
{{config_id}}/{{name}}
When using thepulumi import
command, Runtime Config Variables can be imported using one of the formats above. For example:
$ pulumi import gcp:runtimeconfig/variable:Variable default projects/my-gcp-project/configs/{{config_id}}/variables/{{name}}
$ pulumi import gcp:runtimeconfig/variable:Variable default {{config_id}}/{{name}}
When importing using only the name, the provider project must be set.
Constructors
Properties
or value
- (Required) The content to associate with the variable. Exactly one of text
or variable
must be specified. If text
is specified, it must be a valid UTF-8 string and less than 4096 bytes in length. If value
is specified, it must be base64 encoded and less than 4096 bytes in length.