Field Args
data class FieldArgs(val collection: Output<String>? = null, val database: Output<String>? = null, val field: Output<String>? = null, val indexConfig: Output<FieldIndexConfigArgs>? = null, val project: Output<String>? = null, val ttlConfig: Output<FieldTtlConfigArgs>? = null) : ConvertibleToJava<FieldArgs>
Represents a single field in the database. Fields are grouped by their "Collection Group", which represent all collections in the database with the same id. To get more information about Field, see:
How-to Guides
Warning: This resource creates a Firestore Single Field override on a project that already has a Firestore database. If you haven't already created it, you may create a
gcp.firestore.Database
resource withlocation_id
set to your chosen location.
Example Usage
Firestore Field Basic
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.firestore.Field;
import com.pulumi.gcp.firestore.FieldArgs;
import com.pulumi.gcp.firestore.inputs.FieldIndexConfigArgs;
import com.pulumi.gcp.firestore.inputs.FieldTtlConfigArgs;
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 basic = new Field("basic", FieldArgs.builder()
.collection("chatrooms_%{random_suffix}")
.database("(default)")
.field("basic")
.indexConfig(FieldIndexConfigArgs.builder()
.indexes(
FieldIndexConfigIndexArgs.builder()
.order("ASCENDING")
.queryScope("COLLECTION_GROUP")
.build(),
FieldIndexConfigIndexArgs.builder()
.arrayConfig("CONTAINS")
.build())
.build())
.project("my-project-name")
.ttlConfig()
.build());
}
}
Content copied to clipboard
Firestore Field Timestamp
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.firestore.Field;
import com.pulumi.gcp.firestore.FieldArgs;
import com.pulumi.gcp.firestore.inputs.FieldIndexConfigArgs;
import com.pulumi.gcp.firestore.inputs.FieldTtlConfigArgs;
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 timestamp = new Field("timestamp", FieldArgs.builder()
.collection("chatrooms_%{random_suffix}")
.field("timestamp")
.indexConfig()
.project("my-project-name")
.ttlConfig()
.build());
}
}
Content copied to clipboard
Firestore Field Match Override
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.firestore.Field;
import com.pulumi.gcp.firestore.FieldArgs;
import com.pulumi.gcp.firestore.inputs.FieldIndexConfigArgs;
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 matchOverride = new Field("matchOverride", FieldArgs.builder()
.collection("chatrooms_%{random_suffix}")
.field("field_with_same_configuration_as_ancestor")
.indexConfig(FieldIndexConfigArgs.builder()
.indexes(
FieldIndexConfigIndexArgs.builder()
.order("ASCENDING")
.build(),
FieldIndexConfigIndexArgs.builder()
.order("DESCENDING")
.build(),
FieldIndexConfigIndexArgs.builder()
.arrayConfig("CONTAINS")
.build())
.build())
.project("my-project-name")
.build());
}
}
Content copied to clipboard
Import
Field can be imported using any of these accepted formats:
$ pulumi import gcp:firestore/field:Field default {{name}}
Content copied to clipboard
Constructors
Link copied to clipboard
fun FieldArgs(collection: Output<String>? = null, database: Output<String>? = null, field: Output<String>? = null, indexConfig: Output<FieldIndexConfigArgs>? = null, project: Output<String>? = null, ttlConfig: Output<FieldTtlConfigArgs>? = null)