terraform/helper/schema
Martin Atkins fb262d0dbe helper/schema: shim for making data sources act like resources
Historically we've had some "read-only" and "logical" resources. With the
addition of the data source concept these will gradually become data
sources, but we need to retain backward compatibility with existing
configurations that use the now-deprecated resources.

This shim is intended to allow us to easily create a resource from a
data source implementation. It adjusts the schema as needed and adds
stub Create and Delete implementations.

This would ideally also produce a deprecation warning whenever such a
shimmed resource is used, but the schema system doesn't currently have
a mechanism for resource-specific validation, so that remains just a TODO
for the moment.
2016-05-14 08:26:36 -07:00
..
README.md helper/schema: README 2014-08-17 20:51:09 -07:00
data_source_resource_shim.go helper/schema: shim for making data sources act like resources 2016-05-14 08:26:36 -07:00
equal.go helper/schema: use interface for equality check 2015-01-16 09:32:15 -08:00
field_reader.go helper/schema: Default hashing function for sets 2015-10-03 18:10:47 -07:00
field_reader_config.go helper/schema: Read native maps from configuration 2016-05-10 14:49:14 -04:00
field_reader_config_test.go helper/schema: Read native maps from configuration 2016-05-10 14:49:14 -04:00
field_reader_diff.go helper/schema: Default hashing function for sets 2015-10-03 18:10:47 -07:00
field_reader_diff_test.go removed extra parentheses 2015-10-08 15:48:04 +03:00
field_reader_map.go helper/schema: Default hashing function for sets 2015-10-03 18:10:47 -07:00
field_reader_map_test.go removed extra parentheses 2015-10-08 15:48:04 +03:00
field_reader_multi.go helper/schema: full object test for addrToSchema 2015-01-09 17:43:44 -08:00
field_reader_multi_test.go helper/schema: too big to fail 2015-01-08 18:02:19 -08:00
field_reader_test.go removed extra parentheses 2015-10-08 15:48:04 +03:00
field_writer.go helper/schema: FieldWriter, replace Set 2015-01-10 11:44:26 -08:00
field_writer_map.go consul: Fix several problems w/ consul_keys update 2016-01-26 14:46:26 -06:00
field_writer_map_test.go Merge pull request #3257 from fatih/fix-nil-setting-schema 2015-12-08 20:15:00 -06:00
getsource_string.go Reflect new comment format in stringer.go 2015-11-09 11:38:51 -05:00
provider.go helper/schema: Resource can be writable or not 2016-05-14 08:26:36 -07:00
provider_test.go core: New ResourceProvider methods for data resources 2016-05-14 08:26:36 -07:00
resource.go helper/schema: Resource can be writable or not 2016-05-14 08:26:36 -07:00
resource_data.go helper/schema: Resource.Data should set latest schema version 2016-05-11 13:02:36 -07:00
resource_data_get_source.go helper/schema: diff with set going to 0 elements removes it from state 2015-02-17 11:38:56 -08:00
resource_data_test.go helper/schema: cleaner way to store Ephemeral 2016-05-11 13:02:31 -07:00
resource_importer.go helper/schema: default state func for import 2016-05-11 13:02:35 -07:00
resource_test.go helper/schema: Resource can be writable or not 2016-05-14 08:26:36 -07:00
schema.go helper/schema: Resource can be writable or not 2016-05-14 08:26:36 -07:00
schema_test.go core: support native list variables in config 2016-05-10 14:49:14 -04:00
serialize.go helper/schema: Default hashing function for sets 2015-10-03 18:10:47 -07:00
serialize_test.go helper/schema: Default hashing function for sets 2015-10-03 18:10:47 -07:00
set.go Change Set internals and make (extreme) performance improvements 2015-11-22 14:21:28 +01:00
set_test.go Change Set internals and make (extreme) performance improvements 2015-11-22 14:21:28 +01:00
valuetype.go helper/schema: zero value of a set should be empty 2015-02-17 16:58:47 -08:00
valuetype_string.go Reflect new comment format in stringer.go 2015-11-09 11:38:51 -05:00

README.md

Terraform Helper Lib: schema

The schema package provides a high-level interface for writing resource providers for Terraform.

If you're writing a resource provider, we recommend you use this package.

The interface exposed by this package is much friendlier than trying to write to the Terraform API directly. The core Terraform API is low-level and built for maximum flexibility and control, whereas this library is built as a framework around that to more easily write common providers.