terradart_google_beta

pub: terradart_google_beta Dart SDK License: Apache-2.0

Curated factory wrappers for beta-only Google Cloud resources (hashicorp/google-beta) for Dart-first Terraform stacks.

The beta-only catalog is filled (112 resource factories, schema pin tracking the weekly GA bump). Types that also exist in GA live in terradart_google. It depends on terradart_google: an argument that names a GA resource takes its ref (network: vpc.ref), so both compose in one Stack.

Installation

dependencies:
  terradart_core: ^0.34.0
  terradart_google_beta: ^0.34.0

Usage example

// lib/my_beta_stack.dart
import 'package:terradart_google_beta/project.dart';
import 'package:terradart_google_beta/provider.dart';

final class MyBetaStack extends Stack {
  MyBetaStack({required String projectId})
      : super(providers: [GoogleBetaProvider(project: projectId)]) {
    final pubsubAgent = add(
      GoogleProjectServiceIdentity(
        'pubsub_agent',
        service: .literal('pubsub.googleapis.com'),
      ),
    );
    // pubsubAgent.principal feeds IAM grants without racing agent creation.
  }
}
// bin/infra.dart
import 'package:my_app/my_beta_stack.dart';

Future<void> main() async {
  final stack = MyBetaStack(projectId: 'my-project-id');
  await stack.writeTo('tf-out');
}
dart pub get
dart pub global activate terradart_cli
terradart apply

Wrappers in this package automatically pin the provider = google-beta meta-argument. Pass a registered GoogleBetaProvider(alias: '<alias>', ...) instance as provider: to select that aliased configuration instead.

Curated surface

112 resource factories across per-service barrels (firebase, compute, vertex_ai, api_gateway, dataplex, …). New beta-only types that appear in later provider releases land on request.

Generated by the maintainer pipeline (terradart-codegen wrap against a filtered hashicorp/google-beta schema fixture); do not hand-edit files under lib/src/.

Libraries

active_directory
Managed Microsoft AD peering (beta-only).
api_gateway
API Gateway APIs, configs, gateways, and resource IAM (beta-only).
artifact_registry
Artifact Registry VPC-SC config (beta-only).
bigquery
BigQuery Analytics Hub data-exchange subscription (beta-only).
catalog
Static catalog of all curated terradart_google_beta factories.
ces
Customer Engagement Suite evaluation and security settings (beta-only).
chronicle
Chronicle / Google SecOps SOAR domain (beta-only).
compute
Compute Engine beta-only types: machine images, future reservations, region backend buckets, network policies, and backend IAM adjuncts.
container
GKE Hub membership RBAC role binding (beta-only).
dataflow
Dataflow Flex Template job (beta-only).
dataform
Dataform config, release config, and workflow config (beta-only).
dataplex
Dataplex data asset (beta-only).
firebase
Firebase apps, Hosting, Storage, Realtime Database, Extensions, and AI Logic (beta-only).
folder
Folder-level service identity (beta-only).
identity
Cloud Identity policy (beta-only).
kms
Cloud KMS key-access justification (KAJ) policy configs (beta-only).
network
Network Security / Network Services beta-only types (authorization policy, SAC, service LB policies).
organization
Organization-level service identity (beta-only).
os_config
OS Config guest policies (beta-only).
privileged_access_manager
Privileged Access Manager settings (beta-only).
project
Project-level beta resources (service identities).
provider
Provider block factory and version constants for hashicorp/google-beta.
runtimeconfig
Runtime Configurator configs, variables, and config IAM (beta-only).
saas_runtime
SaaS Runtime units, tenants, releases, and rollouts (beta-only).
security_scanner
Web Security Scanner scan config (beta-only).
service_usage
Service Usage consumer quota override (beta-only).
tags
Resource Manager tag binding collection (beta-only).
terradart_google_beta
Curated google-beta surface for TerraDart.
tpu
Cloud TPU v2 VMs and queued resources (beta-only).
vertex_ai
Vertex AI metadata store, Model Garden enablement, and featurestore / endpoint IAM (beta-only).