npm.io
2.0.1 • Published 5 years ago

@lukekaalim/terraform-service

Licence
MIT
Version
2.0.1
Deps
3
Size
24 kB
Vulns
0
Weekly
0

title: "@lukekaalim/terraform-service" layout: default parent: Packages nav_order: 6

@lukekaalim/terraform-service

Provides a bare-bones implementation of the Terraform GRPC service. Use with @lukekaalim/hashicorp-go-plugin to create a terraform plugin.

Installation

npm install @lukekaalim/terraform-service

API

createTerraformService()
const { createTerraformService } = require('@lukekaalim/terraform-service');

const options = {
  getSchema,
};

const service = createTerraformService(
  console,        // Console
  server,         // Server
  options,        // ServiceOptions
);
const {
  definition,     // GRPCServiceDefinition
  implementation, // GRPCServiceImplementation
} = service;
const getSchema = async () => ({
  provider,           // Schema
  resourceSchemas,    // { [string]: Schema }
  dataSourceSchemas,  // { [string]: Schema }
  diagnostics,        // Diagnostic[] 
});
getDynamicValue()
setPackedDynamicValue()
setJSONDynamicValue()
new Unknown()

TODO

  • Finish API documentation