Skip to content

zededa/terraform-provider-zedcloud

Repository files navigation

terraform-provider-zedcloud

The terraform-provider-zedcloud provides access to Zededa's public API for the zedcloud cloud services.

Supported resources are:

  • Edge-Node (also called Device-Config)
  • Edge-App
  • Edge-App-Instance
  • Network
  • Network-Instance
  • Datastore
  • Volume-Instance
  • User
  • Role
  • Credential
  • Patch Envelope
  • Image

Documentation

Schemas

Documentation of all API endpoints and data schemas can be found under https://zedcontrol.zededa.net/api/v1/docs/.

Schema documentation generated from the schema files contained in this repo can be found under:

  1. Provider
  2. Resources
  3. Data Sources

Note, the resource schemas match the API schemas but support for some fields might be incomplete in the provider. The testdata directory contains examples with the full set of supported fields for the supported resources of the latest version deployed in the Terraform provider registry.


Product

Product documentation including explanations of workflows and data schemas can be found under https://help.zededa.com/hc/en-us

Installation and configuration

Information on how to install and configure a Terraform provider can be found under https://developer.hashicorp.com/terraform/language/providers. If you need help setting up the terraform-provider-zedcloud please reach out to Zededa support. The latest version of the provider can be found in the official Terraform provider registry under https://registry.terraform.io/providers/zededa/zedcloud/latest.

To download the latest version of v2.. using golang, run the following command:

go install github.com/zededa/terraform-provider-zedcloud/v2@latest

Breaking changes in v2

  • Authentication uses the API-token only. Basic-Auth via username and password has been removed. You can find the API-token for your user under https://zedcontrol.zededa.net/profile/user
  • The resource and data schemas have changed. The schemas now map to the ones in API documentation. For reference on supported fields see the testdata directory which contains Terraform configuration files for all supported resources. If you have trouble porting your configuration, please reach out to Zededa support.
  • adminstate_config has been removed. admin_state can now be configured directly. Diffs will be suppressed if the EdgeNode is in ADMINSTATE_REGISTERED state and your configuration is set to ADMINSTATE_ACTIVE.
  • CSRF checks have been removed.

Project structure

The project structure has changed starting from the version 2.2.7. All the folders directly related to the provider are moved to the v2 subfolder.

Environment configuration

The following environment variables need to be set to use the provider.

export TF_VAR_zedcloud_url="zedcontrol.zededa.net"
export TF_VAR_zedcloud_token=<YOUR-API-TOKEN>
export TF_LOG=ERROR
export TF_LOG_PATH=./terraform.log