mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-06-29 18:21:10 +00:00
fix: example and makefile issues
This commit is contained in:
parent
673875be84
commit
427db3d44a
2
.gitignore
vendored
2
.gitignore
vendored
@ -8,6 +8,7 @@
|
||||
|
||||
autogenerated/
|
||||
bin/
|
||||
cache/
|
||||
dist/
|
||||
modules-dev/
|
||||
|
||||
@ -20,6 +21,7 @@ modules-dev/
|
||||
*.dll
|
||||
*.exe
|
||||
*.iml
|
||||
*.lock.hcl
|
||||
*.log
|
||||
*.test
|
||||
*.tfplan
|
||||
|
@ -1,3 +1,10 @@
|
||||
## v0.5.0 (UNRELEASED)
|
||||
|
||||
OTHER:
|
||||
|
||||
* provider/example: Remove support for Terraform v0.11 and older
|
||||
* provider/makefile: Update to use plugin caching to support local builds
|
||||
|
||||
## v0.4.1
|
||||
|
||||
OTHER:
|
||||
|
62
Makefile
62
Makefile
@ -3,13 +3,13 @@ NAME=$$(grep TerraformProviderName proxmoxtf/version.go | grep -o -e 'terraform-
|
||||
TARGETS=darwin linux windows
|
||||
TERRAFORM_PLUGIN_EXTENSION=
|
||||
VERSION=$$(grep TerraformProviderVersion proxmoxtf/version.go | grep -o -e '[0-9]\.[0-9]\.[0-9]')
|
||||
VERSION_EXAMPLE=9999.0.0
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
TERRAFORM_CACHE_DIRECTORY=$$(cygpath -u "$(APPDATA)")/terraform.d/plugins
|
||||
TERRAFORM_PLATFORM=windows_amd64
|
||||
TERRAFORM_PLUGIN_CACHE_DIRECTORY=$$(cygpath -u "$(shell pwd -P)")/cache/plugins
|
||||
TERRAFORM_PLUGIN_EXTENSION=.exe
|
||||
else
|
||||
TERRAFORM_CACHE_DIRECTORY=$(HOME)/terraform.d/plugins
|
||||
UNAME_S=$$(shell uname -s)
|
||||
|
||||
ifeq ($(UNAME_S),Darwin)
|
||||
@ -17,36 +17,58 @@ else
|
||||
else
|
||||
TERRAFORM_PLATFORM=linux_amd64
|
||||
endif
|
||||
|
||||
TERRAFORM_PLUGIN_CACHE_DIRECTORY=$(shell pwd -P)/cache/plugins
|
||||
endif
|
||||
|
||||
TERRAFORM_PLUGIN_DIRECTORY=$(TERRAFORM_CACHE_DIRECTORY)/terraform.danitso.com/provider/proxmox/$(VERSION)/$(TERRAFORM_PLATFORM)
|
||||
TERRAFORM_PLUGIN_DIRECTORY=$(TERRAFORM_PLUGIN_CACHE_DIRECTORY)/registry.terraform.io/danitso/proxmox/$(VERSION)/$(TERRAFORM_PLATFORM)
|
||||
TERRAFORM_PLUGIN_DIRECTORY_EXAMPLE=$(TERRAFORM_PLUGIN_CACHE_DIRECTORY)/registry.terraform.io/danitso/proxmox/$(VERSION_EXAMPLE)/$(TERRAFORM_PLATFORM)
|
||||
TERRAFORM_PLUGIN_EXECUTABLE=$(TERRAFORM_PLUGIN_DIRECTORY)/$(NAME)_v$(VERSION)_x4$(TERRAFORM_PLUGIN_EXTENSION)
|
||||
TERRAFORM_PLUGIN_EXECUTABLE_EXAMPLE=$(TERRAFORM_PLUGIN_DIRECTORY_EXAMPLE)/$(NAME)_v$(VERSION_EXAMPLE)_x4$(TERRAFORM_PLUGIN_EXTENSION)
|
||||
|
||||
default: build
|
||||
|
||||
build:
|
||||
go build -o "bin/$(NAME)_v$(VERSION)-custom_x4"
|
||||
|
||||
example: example-init example-apply example-apply example-destroy
|
||||
|
||||
example-apply:
|
||||
cd ./example && terraform apply -auto-approve
|
||||
|
||||
example-destroy:
|
||||
cd ./example && terraform destroy -auto-approve
|
||||
|
||||
example-init:
|
||||
rm -f "example/$(NAME)_v"*
|
||||
go build -o "example/$(NAME)_v$(VERSION)-custom_x4"
|
||||
|
||||
mkdir -p "$(TERRAFORM_PLUGIN_DIRECTORY)"
|
||||
rm -f "$(TERRAFORM_PLUGIN_EXECUTABLE)"
|
||||
cp "example/$(NAME)_v$(VERSION)-custom_x4" "$(TERRAFORM_PLUGIN_EXECUTABLE)"
|
||||
go build -o "$(TERRAFORM_PLUGIN_EXECUTABLE)"
|
||||
|
||||
cd ./example && terraform init
|
||||
example: example-build example-init example-apply example-apply example-destroy
|
||||
|
||||
example-apply:
|
||||
export TF_CLI_CONFIG_FILE="$(shell pwd -P)/example.tfrc" \
|
||||
&& export TF_DISABLE_CHECKPOINT="true" \
|
||||
&& export TF_PLUGIN_CACHE_DIR="$(TERRAFORM_PLUGIN_CACHE_DIRECTORY)" \
|
||||
&& cd ./example \
|
||||
&& terraform apply -auto-approve
|
||||
|
||||
example-build:
|
||||
mkdir -p "$(TERRAFORM_PLUGIN_DIRECTORY_EXAMPLE)"
|
||||
rm -f "$(TERRAFORM_PLUGIN_EXECUTABLE_EXAMPLE)"
|
||||
go build -o "$(TERRAFORM_PLUGIN_EXECUTABLE_EXAMPLE)"
|
||||
|
||||
example-destroy:
|
||||
export TF_CLI_CONFIG_FILE="$(shell pwd -P)/example.tfrc" \
|
||||
&& export TF_DISABLE_CHECKPOINT="true" \
|
||||
&& export TF_PLUGIN_CACHE_DIR="$(TERRAFORM_PLUGIN_CACHE_DIRECTORY)" \
|
||||
&& cd ./example \
|
||||
&& terraform destroy -auto-approve
|
||||
|
||||
example-init:
|
||||
export TF_CLI_CONFIG_FILE="$(shell pwd -P)/example.tfrc" \
|
||||
&& export TF_DISABLE_CHECKPOINT="true" \
|
||||
&& export TF_PLUGIN_CACHE_DIR="$(TERRAFORM_PLUGIN_CACHE_DIRECTORY)" \
|
||||
&& cd ./example \
|
||||
&& rm -f .terraform.lock.hcl \
|
||||
&& terraform init \
|
||||
-verify-plugins=false
|
||||
|
||||
example-plan:
|
||||
cd ./example && terraform plan
|
||||
export TF_CLI_CONFIG_FILE="$(shell pwd -P)/example.tfrc" \
|
||||
&& export TF_DISABLE_CHECKPOINT="true" \
|
||||
&& export TF_PLUGIN_CACHE_DIR="$(TERRAFORM_PLUGIN_CACHE_DIRECTORY)" \
|
||||
&& cd ./example \
|
||||
&& terraform plan
|
||||
|
||||
fmt:
|
||||
gofmt -s -w $(GOFMT_FILES)
|
||||
|
9
example.tfrc
Normal file
9
example.tfrc
Normal file
@ -0,0 +1,9 @@
|
||||
provider_installation {
|
||||
filesystem_mirror {
|
||||
path = "../cache/plugins"
|
||||
include = ["registry.terraform.io/danitso/proxmox"]
|
||||
}
|
||||
direct {
|
||||
exclude = ["registry.terraform.io/danitso/proxmox"]
|
||||
}
|
||||
}
|
@ -1,7 +1,9 @@
|
||||
data "proxmox_virtual_environment_cluster_alias" "example" {
|
||||
name = "example"
|
||||
depends_on = [proxmox_virtual_environment_cluster_alias.example]
|
||||
|
||||
name = proxmox_virtual_environment_cluster_alias.example.name
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_cluster_alias_example_cidr" {
|
||||
value = proxmox_virtual_environment_cluster_alias.example.cidr
|
||||
value = proxmox_virtual_environment_cluster_alias.example.cidr
|
||||
}
|
||||
|
@ -1,9 +1,9 @@
|
||||
data "proxmox_virtual_environment_cluster_aliases" "example" {
|
||||
depends_on = ["proxmox_virtual_environment_cluster_alias.example"]
|
||||
depends_on = [proxmox_virtual_environment_cluster_alias.example]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_cluster_aliases" {
|
||||
value = "${map(
|
||||
"alias_ids", data.proxmox_virtual_environment_cluster_aliases.example.alias_ids,
|
||||
)}"
|
||||
value = {
|
||||
"alias_ids" = data.proxmox_virtual_environment_cluster_aliases.example.alias_ids
|
||||
}
|
||||
}
|
||||
|
@ -1,43 +1,43 @@
|
||||
data "proxmox_virtual_environment_datastores" "example" {
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_active" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.active}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.active
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_content_types" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.content_types}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.content_types
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_datastore_ids" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.datastore_ids}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.datastore_ids
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_enabled" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.enabled}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.enabled
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_node_name" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.node_name}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.node_name
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_shared" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.shared}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.shared
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_space_available" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.space_available}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.space_available
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_space_total" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.space_total}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.space_total
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_space_used" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.space_used}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.space_used
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_datastores_example_types" {
|
||||
value = "${data.proxmox_virtual_environment_datastores.example.types}"
|
||||
value = data.proxmox_virtual_environment_datastores.example.types
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
data "proxmox_virtual_environment_dns" "example" {
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_dns_example_domain" {
|
||||
value = "${data.proxmox_virtual_environment_dns.example.domain}"
|
||||
value = data.proxmox_virtual_environment_dns.example.domain
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_dns_example_servers" {
|
||||
value = "${data.proxmox_virtual_environment_dns.example.servers}"
|
||||
value = data.proxmox_virtual_environment_dns.example.servers
|
||||
}
|
||||
|
@ -1,15 +1,15 @@
|
||||
data "proxmox_virtual_environment_group" "example" {
|
||||
group_id = "${proxmox_virtual_environment_group.example.id}"
|
||||
group_id = proxmox_virtual_environment_group.example.id
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_group_example_acl" {
|
||||
value = "${data.proxmox_virtual_environment_group.example.acl}"
|
||||
value = data.proxmox_virtual_environment_group.example.acl
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_group_example_comment" {
|
||||
value = "${data.proxmox_virtual_environment_group.example.comment}"
|
||||
value = data.proxmox_virtual_environment_group.example.comment
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_group_example_members" {
|
||||
value = "${data.proxmox_virtual_environment_group.example.members}"
|
||||
value = data.proxmox_virtual_environment_group.example.members
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
data "proxmox_virtual_environment_groups" "example" {
|
||||
depends_on = ["proxmox_virtual_environment_group.example"]
|
||||
depends_on = [proxmox_virtual_environment_group.example]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_groups_example" {
|
||||
value = "${map(
|
||||
value = map(
|
||||
"comments", data.proxmox_virtual_environment_groups.example.comments,
|
||||
"group_ids", data.proxmox_virtual_environment_groups.example.group_ids,
|
||||
)}"
|
||||
)
|
||||
}
|
||||
|
@ -1,19 +1,19 @@
|
||||
data "proxmox_virtual_environment_hosts" "example" {
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_hosts_example_addresses" {
|
||||
value = "${data.proxmox_virtual_environment_hosts.example.addresses}"
|
||||
value = data.proxmox_virtual_environment_hosts.example.addresses
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_hosts_example_digest" {
|
||||
value = "${data.proxmox_virtual_environment_hosts.example.digest}"
|
||||
value = data.proxmox_virtual_environment_hosts.example.digest
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_hosts_example_entries" {
|
||||
value = "${data.proxmox_virtual_environment_hosts.example.entries}"
|
||||
value = data.proxmox_virtual_environment_hosts.example.entries
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_hosts_example_hostnames" {
|
||||
value = "${data.proxmox_virtual_environment_hosts.example.hostnames}"
|
||||
value = data.proxmox_virtual_environment_hosts.example.hostnames
|
||||
}
|
||||
|
@ -1,37 +1,37 @@
|
||||
data "proxmox_virtual_environment_nodes" "example" {}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_cpu_count" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.cpu_count}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.cpu_count
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_cpu_utilization" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.cpu_utilization}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.cpu_utilization
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_memory_available" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.memory_available}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.memory_available
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_memory_used" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.memory_used}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.memory_used
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_names" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.names}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.names
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_online" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.online}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.online
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_ssl_fingerprints" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.ssl_fingerprints}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.ssl_fingerprints
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_support_levels" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.support_levels}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.support_levels
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_nodes_example_uptime" {
|
||||
value = "${data.proxmox_virtual_environment_nodes.example.uptime}"
|
||||
value = data.proxmox_virtual_environment_nodes.example.uptime
|
||||
}
|
||||
|
@ -1,15 +1,15 @@
|
||||
data "proxmox_virtual_environment_pool" "example" {
|
||||
pool_id = "${proxmox_virtual_environment_pool.example.id}"
|
||||
pool_id = proxmox_virtual_environment_pool.example.id
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_pool_example_comment" {
|
||||
value = "${data.proxmox_virtual_environment_pool.example.comment}"
|
||||
value = data.proxmox_virtual_environment_pool.example.comment
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_pool_example_members" {
|
||||
value = "${data.proxmox_virtual_environment_pool.example.members}"
|
||||
value = data.proxmox_virtual_environment_pool.example.members
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_pool_example_pool_id" {
|
||||
value = "${data.proxmox_virtual_environment_pool.example.id}"
|
||||
value = data.proxmox_virtual_environment_pool.example.id
|
||||
}
|
||||
|
@ -1,9 +1,9 @@
|
||||
data "proxmox_virtual_environment_pools" "example" {
|
||||
depends_on = ["proxmox_virtual_environment_pool.example"]
|
||||
depends_on = [proxmox_virtual_environment_pool.example]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_pools_example" {
|
||||
value = "${map(
|
||||
"pool_ids", data.proxmox_virtual_environment_pools.example.pool_ids,
|
||||
)}"
|
||||
value = {
|
||||
pool_ids = data.proxmox_virtual_environment_pools.example.pool_ids
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
data "proxmox_virtual_environment_role" "example" {
|
||||
role_id = "${proxmox_virtual_environment_role.example.id}"
|
||||
role_id = proxmox_virtual_environment_role.example.id
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_role_example_privileges" {
|
||||
value = "${data.proxmox_virtual_environment_role.example.privileges}"
|
||||
value = data.proxmox_virtual_environment_role.example.privileges
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_role_example_role_id" {
|
||||
value = "${data.proxmox_virtual_environment_role.example.id}"
|
||||
value = data.proxmox_virtual_environment_role.example.id
|
||||
}
|
||||
|
@ -1,15 +1,15 @@
|
||||
data "proxmox_virtual_environment_roles" "example" {
|
||||
depends_on = ["proxmox_virtual_environment_role.example"]
|
||||
depends_on = [proxmox_virtual_environment_role.example]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_roles_example_privileges" {
|
||||
value = "${data.proxmox_virtual_environment_roles.example.privileges}"
|
||||
value = data.proxmox_virtual_environment_roles.example.privileges
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_roles_example_role_ids" {
|
||||
value = "${data.proxmox_virtual_environment_roles.example.role_ids}"
|
||||
value = data.proxmox_virtual_environment_roles.example.role_ids
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_roles_example_special" {
|
||||
value = "${data.proxmox_virtual_environment_roles.example.special}"
|
||||
value = data.proxmox_virtual_environment_roles.example.special
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
data "proxmox_virtual_environment_time" "example" {
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_time" {
|
||||
value = "${map(
|
||||
"local_time", data.proxmox_virtual_environment_time.example.local_time,
|
||||
"time_zone", data.proxmox_virtual_environment_time.example.time_zone,
|
||||
"utc_time", data.proxmox_virtual_environment_time.example.utc_time,
|
||||
)}"
|
||||
value = {
|
||||
local_time = data.proxmox_virtual_environment_time.example.local_time
|
||||
time_zone = data.proxmox_virtual_environment_time.example.time_zone
|
||||
utc_time = data.proxmox_virtual_environment_time.example.utc_time
|
||||
}
|
||||
}
|
||||
|
@ -1,43 +1,43 @@
|
||||
data "proxmox_virtual_environment_user" "example" {
|
||||
user_id = "${proxmox_virtual_environment_user.example.id}"
|
||||
user_id = proxmox_virtual_environment_user.example.id
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_acl" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.acl}"
|
||||
value = data.proxmox_virtual_environment_user.example.acl
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_comment" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.comment}"
|
||||
value = data.proxmox_virtual_environment_user.example.comment
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_email" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.email}"
|
||||
value = data.proxmox_virtual_environment_user.example.email
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_enabled" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.enabled}"
|
||||
value = data.proxmox_virtual_environment_user.example.enabled
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_expiration_date" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.expiration_date}"
|
||||
value = data.proxmox_virtual_environment_user.example.expiration_date
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_first_name" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.first_name}"
|
||||
value = data.proxmox_virtual_environment_user.example.first_name
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_groups" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.groups}"
|
||||
value = data.proxmox_virtual_environment_user.example.groups
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_keys" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.keys}"
|
||||
value = data.proxmox_virtual_environment_user.example.keys
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_last_name" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.last_name}"
|
||||
value = data.proxmox_virtual_environment_user.example.last_name
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_user_example_user_id" {
|
||||
value = "${data.proxmox_virtual_environment_user.example.id}"
|
||||
value = data.proxmox_virtual_environment_user.example.id
|
||||
}
|
||||
|
@ -1,39 +1,39 @@
|
||||
data "proxmox_virtual_environment_users" "example" {
|
||||
depends_on = ["proxmox_virtual_environment_user.example"]
|
||||
depends_on = [proxmox_virtual_environment_user.example]
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_comments" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.comments}"
|
||||
value = data.proxmox_virtual_environment_users.example.comments
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_emails" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.emails}"
|
||||
value = data.proxmox_virtual_environment_users.example.emails
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_enabled" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.enabled}"
|
||||
value = data.proxmox_virtual_environment_users.example.enabled
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_expiration_dates" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.expiration_dates}"
|
||||
value = data.proxmox_virtual_environment_users.example.expiration_dates
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_first_names" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.first_names}"
|
||||
value = data.proxmox_virtual_environment_users.example.first_names
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_groups" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.groups}"
|
||||
value = data.proxmox_virtual_environment_users.example.groups
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_keys" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.keys}"
|
||||
value = data.proxmox_virtual_environment_users.example.keys
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_last_names" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.last_names}"
|
||||
value = data.proxmox_virtual_environment_users.example.last_names
|
||||
}
|
||||
|
||||
output "data_proxmox_virtual_environment_users_example_user_ids" {
|
||||
value = "${data.proxmox_virtual_environment_users.example.user_ids}"
|
||||
value = data.proxmox_virtual_environment_users.example.user_ids
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
data "proxmox_virtual_environment_version" "example" {}
|
||||
|
||||
output "data_proxmox_virtual_environment_version" {
|
||||
value = "${map(
|
||||
"keyboard_layout", data.proxmox_virtual_environment_version.example.keyboard_layout,
|
||||
"release", data.proxmox_virtual_environment_version.example.release,
|
||||
"repository_id", data.proxmox_virtual_environment_version.example.repository_id,
|
||||
"version", data.proxmox_virtual_environment_version.example.version,
|
||||
)}"
|
||||
value = {
|
||||
keyboard_layout = data.proxmox_virtual_environment_version.example.keyboard_layout
|
||||
release = data.proxmox_virtual_environment_version.example.release
|
||||
repository_id = data.proxmox_virtual_environment_version.example.repository_id
|
||||
version = data.proxmox_virtual_environment_version.example.version
|
||||
}
|
||||
}
|
||||
|
8
example/main.tf
Normal file
8
example/main.tf
Normal file
@ -0,0 +1,8 @@
|
||||
provider "proxmox" {
|
||||
virtual_environment {
|
||||
endpoint = var.virtual_environment_endpoint
|
||||
username = var.virtual_environment_username
|
||||
password = var.virtual_environment_password
|
||||
insecure = true
|
||||
}
|
||||
}
|
@ -1,13 +1,13 @@
|
||||
resource "proxmox_virtual_environment_cluster_alias" "example" {
|
||||
name = "local_network"
|
||||
cidr = "192.168.0.0/23"
|
||||
comment = "Managed by Terraform"
|
||||
name = "example"
|
||||
cidr = "192.168.0.0/23"
|
||||
comment = "Managed by Terraform"
|
||||
}
|
||||
|
||||
output "proxmox_virtual_environment_cluster_alias_example_name" {
|
||||
value = "${proxmox_virtual_environment_cluster_alias.example.name}"
|
||||
value = proxmox_virtual_environment_cluster_alias.example.name
|
||||
}
|
||||
|
||||
output "proxmox_virtual_environment_cluster_alias_example_cidr" {
|
||||
value = "${proxmox_virtual_environment_cluster_alias.example.cidr}"
|
||||
value = proxmox_virtual_environment_cluster_alias.example.cidr
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
resource "proxmox_virtual_environment_certificate" "example" {
|
||||
certificate = "${tls_self_signed_cert.proxmox_virtual_environment_certificate.cert_pem}"
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
private_key = "${tls_private_key.proxmox_virtual_environment_certificate.private_key_pem}"
|
||||
certificate = tls_self_signed_cert.proxmox_virtual_environment_certificate.cert_pem
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
private_key = tls_private_key.proxmox_virtual_environment_certificate.private_key_pem
|
||||
}
|
||||
|
||||
resource "tls_private_key" "proxmox_virtual_environment_certificate" {
|
||||
@ -10,8 +10,8 @@ resource "tls_private_key" "proxmox_virtual_environment_certificate" {
|
||||
}
|
||||
|
||||
resource "tls_self_signed_cert" "proxmox_virtual_environment_certificate" {
|
||||
key_algorithm = "${tls_private_key.proxmox_virtual_environment_certificate.algorithm}"
|
||||
private_key_pem = "${tls_private_key.proxmox_virtual_environment_certificate.private_key_pem}"
|
||||
key_algorithm = tls_private_key.proxmox_virtual_environment_certificate.algorithm
|
||||
private_key_pem = tls_private_key.proxmox_virtual_environment_certificate.private_key_pem
|
||||
|
||||
subject {
|
||||
common_name = "example.com"
|
||||
@ -28,37 +28,37 @@ resource "tls_self_signed_cert" "proxmox_virtual_environment_certificate" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_expiration_date" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.expiration_date}"
|
||||
value = proxmox_virtual_environment_certificate.example.expiration_date
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_file_name" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.file_name}"
|
||||
value = proxmox_virtual_environment_certificate.example.file_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_issuer" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.issuer}"
|
||||
value = proxmox_virtual_environment_certificate.example.issuer
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_public_key_size" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.public_key_size}"
|
||||
value = proxmox_virtual_environment_certificate.example.public_key_size
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_public_key_type" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.public_key_type}"
|
||||
value = proxmox_virtual_environment_certificate.example.public_key_type
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_ssl_fingerprint" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.ssl_fingerprint}"
|
||||
value = proxmox_virtual_environment_certificate.example.ssl_fingerprint
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_start_date" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.start_date}"
|
||||
value = proxmox_virtual_environment_certificate.example.start_date
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_subject" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.subject}"
|
||||
value = proxmox_virtual_environment_certificate.example.subject
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_certificate_example_subject_alternative_names" {
|
||||
value = "${proxmox_virtual_environment_certificate.example.subject_alternative_names}"
|
||||
value = proxmox_virtual_environment_certificate.example.subject_alternative_names
|
||||
}
|
||||
|
@ -1,25 +1,25 @@
|
||||
resource "proxmox_virtual_environment_cluster_ipset" "example" {
|
||||
name = "local_network"
|
||||
comment = "Managed by Terraform"
|
||||
name = "local_network"
|
||||
comment = "Managed by Terraform"
|
||||
|
||||
cidr {
|
||||
name = "192.168.0.0/23"
|
||||
comment = "Local network 1"
|
||||
}
|
||||
cidr {
|
||||
name = "192.168.0.0/23"
|
||||
comment = "Local network 1"
|
||||
}
|
||||
|
||||
cidr {
|
||||
name = "192.168.0.1"
|
||||
comment = "Server 1"
|
||||
nomatch = true
|
||||
}
|
||||
cidr {
|
||||
name = "192.168.0.1"
|
||||
comment = "Server 1"
|
||||
nomatch = true
|
||||
}
|
||||
|
||||
cidr {
|
||||
name = "192.168.2.1"
|
||||
comment = "Server 1"
|
||||
}
|
||||
cidr {
|
||||
name = "192.168.2.1"
|
||||
comment = "Server 1"
|
||||
}
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_cluster_ipset" {
|
||||
value = "${proxmox_virtual_environment_cluster_ipset.example.name}"
|
||||
value = proxmox_virtual_environment_cluster_ipset.example.name
|
||||
}
|
||||
|
||||
|
@ -15,7 +15,7 @@ resource "proxmox_virtual_environment_container" "example_template" {
|
||||
}
|
||||
|
||||
user_account {
|
||||
keys = ["${trimspace(tls_private_key.example.public_key_openssh)}"]
|
||||
keys = [trimspace(tls_private_key.example.public_key_openssh)]
|
||||
password = "example"
|
||||
}
|
||||
}
|
||||
@ -24,14 +24,14 @@ resource "proxmox_virtual_environment_container" "example_template" {
|
||||
name = "veth0"
|
||||
}
|
||||
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
|
||||
operating_system {
|
||||
template_file_id = "${proxmox_virtual_environment_file.ubuntu_container_template.id}"
|
||||
template_file_id = proxmox_virtual_environment_file.ubuntu_container_template.id
|
||||
type = "ubuntu"
|
||||
}
|
||||
|
||||
pool_id = "${proxmox_virtual_environment_pool.example.id}"
|
||||
pool_id = proxmox_virtual_environment_pool.example.id
|
||||
template = true
|
||||
vm_id = 2042
|
||||
}
|
||||
@ -45,11 +45,11 @@ resource "proxmox_virtual_environment_container" "example" {
|
||||
hostname = "terraform-provider-proxmox-example-lxc"
|
||||
}
|
||||
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
pool_id = "${proxmox_virtual_environment_pool.example.id}"
|
||||
vm_id = 2043
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
pool_id = proxmox_virtual_environment_pool.example.id
|
||||
vm_id = 2043
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_container_example_id" {
|
||||
value = "${proxmox_virtual_environment_container.example.id}"
|
||||
value = proxmox_virtual_environment_container.example.id
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
resource "proxmox_virtual_environment_dns" "example" {
|
||||
domain = "${data.proxmox_virtual_environment_dns.example.domain}"
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
servers = "${data.proxmox_virtual_environment_dns.example.servers}"
|
||||
domain = data.proxmox_virtual_environment_dns.example.domain
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
servers = data.proxmox_virtual_environment_dns.example.servers
|
||||
}
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
resource "proxmox_virtual_environment_file" "cloud_config" {
|
||||
content_type = "snippets"
|
||||
datastore_id = "${element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local"))}"
|
||||
node_name = "${data.proxmox_virtual_environment_datastores.example.node_name}"
|
||||
datastore_id = element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local"))
|
||||
node_name = data.proxmox_virtual_environment_datastores.example.node_name
|
||||
|
||||
source_raw {
|
||||
data = <<EOF
|
||||
@ -37,8 +37,8 @@ users:
|
||||
|
||||
resource "proxmox_virtual_environment_file" "ubuntu_cloud_image" {
|
||||
content_type = "iso"
|
||||
datastore_id = "${element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local"))}"
|
||||
node_name = "${data.proxmox_virtual_environment_datastores.example.node_name}"
|
||||
datastore_id = element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local"))
|
||||
node_name = data.proxmox_virtual_environment_datastores.example.node_name
|
||||
|
||||
source_file {
|
||||
path = "https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img"
|
||||
@ -46,39 +46,39 @@ resource "proxmox_virtual_environment_file" "ubuntu_cloud_image" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_content_type" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.content_type}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.content_type
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_datastore_id" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.datastore_id}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.datastore_id
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_file_modification_date" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.file_modification_date}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.file_modification_date
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_file_name" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.file_name}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.file_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_file_size" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.file_size}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.file_size
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_file_tag" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.file_tag}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.file_tag
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_id" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.id}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.id
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_node_name" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.node_name}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.node_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_source_file" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_cloud_image.source_file}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_cloud_image.source_file
|
||||
}
|
||||
|
||||
#===============================================================================
|
||||
@ -87,8 +87,8 @@ output "resource_proxmox_virtual_environment_file_ubuntu_cloud_image_source_file
|
||||
|
||||
resource "proxmox_virtual_environment_file" "ubuntu_container_template" {
|
||||
content_type = "vztmpl"
|
||||
datastore_id = "${element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local"))}"
|
||||
node_name = "${data.proxmox_virtual_environment_datastores.example.node_name}"
|
||||
datastore_id = element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local"))
|
||||
node_name = data.proxmox_virtual_environment_datastores.example.node_name
|
||||
|
||||
source_file {
|
||||
path = "http://download.proxmox.com/images/system/ubuntu-18.04-standard_18.04.1-1_amd64.tar.gz"
|
||||
@ -96,37 +96,37 @@ resource "proxmox_virtual_environment_file" "ubuntu_container_template" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_content_type" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.content_type}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.content_type
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_datastore_id" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.datastore_id}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.datastore_id
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_file_modification_date" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.file_modification_date}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.file_modification_date
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_file_name" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.file_name}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.file_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_file_size" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.file_size}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.file_size
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_file_tag" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.file_tag}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.file_tag
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_id" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.id}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.id
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_node_name" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.node_name}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.node_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_file_ubuntu_container_template_source_file" {
|
||||
value = "${proxmox_virtual_environment_file.ubuntu_container_template.source_file}"
|
||||
value = proxmox_virtual_environment_file.ubuntu_container_template.source_file
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
resource "proxmox_virtual_environment_group" "example" {
|
||||
acl {
|
||||
path = "/vms/${proxmox_virtual_environment_vm.example.id}"
|
||||
role_id = "${proxmox_virtual_environment_role.example.id}"
|
||||
role_id = proxmox_virtual_environment_role.example.id
|
||||
}
|
||||
|
||||
comment = "Managed by Terraform"
|
||||
@ -9,17 +9,17 @@ resource "proxmox_virtual_environment_group" "example" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_group_example_acl" {
|
||||
value = "${proxmox_virtual_environment_group.example.acl}"
|
||||
value = proxmox_virtual_environment_group.example.acl
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_group_example_comment" {
|
||||
value = "${proxmox_virtual_environment_group.example.comment}"
|
||||
value = proxmox_virtual_environment_group.example.comment
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_group_example_id" {
|
||||
value = "${proxmox_virtual_environment_group.example.id}"
|
||||
value = proxmox_virtual_environment_group.example.id
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_group_example_members" {
|
||||
value = "${proxmox_virtual_environment_group.example.members}"
|
||||
value = proxmox_virtual_environment_group.example.members
|
||||
}
|
||||
|
@ -1,28 +1,28 @@
|
||||
resource "proxmox_virtual_environment_hosts" "example" {
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
|
||||
dynamic "entry" {
|
||||
for_each = "${data.proxmox_virtual_environment_hosts.example.entries}"
|
||||
for_each = data.proxmox_virtual_environment_hosts.example.entries
|
||||
|
||||
content {
|
||||
address = "${entry.value.address}"
|
||||
hostnames = "${entry.value.hostnames}"
|
||||
address = entry.value.address
|
||||
hostnames = entry.value.hostnames
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_hosts_example_addresses" {
|
||||
value = "${proxmox_virtual_environment_hosts.example.addresses}"
|
||||
value = proxmox_virtual_environment_hosts.example.addresses
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_hosts_example_digest" {
|
||||
value = "${proxmox_virtual_environment_hosts.example.digest}"
|
||||
value = proxmox_virtual_environment_hosts.example.digest
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_hosts_example_entries" {
|
||||
value = "${proxmox_virtual_environment_hosts.example.entries}"
|
||||
value = proxmox_virtual_environment_hosts.example.entries
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_hosts_example_hostnames" {
|
||||
value = "${proxmox_virtual_environment_hosts.example.hostnames}"
|
||||
value = proxmox_virtual_environment_hosts.example.hostnames
|
||||
}
|
||||
|
@ -4,13 +4,13 @@ resource "proxmox_virtual_environment_pool" "example" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_pool_example_comment" {
|
||||
value = "${proxmox_virtual_environment_pool.example.comment}"
|
||||
value = proxmox_virtual_environment_pool.example.comment
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_pool_example_members" {
|
||||
value = "${proxmox_virtual_environment_pool.example.members}"
|
||||
value = proxmox_virtual_environment_pool.example.members
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_pool_example_pool_id" {
|
||||
value = "${proxmox_virtual_environment_pool.example.id}"
|
||||
value = proxmox_virtual_environment_pool.example.id
|
||||
}
|
||||
|
@ -6,9 +6,9 @@ resource "proxmox_virtual_environment_role" "example" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_role_example_privileges" {
|
||||
value = "${proxmox_virtual_environment_role.example.privileges}"
|
||||
value = proxmox_virtual_environment_role.example.privileges
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_role_example_role_id" {
|
||||
value = "${proxmox_virtual_environment_role.example.role_id}"
|
||||
value = proxmox_virtual_environment_role.example.role_id
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
resource "proxmox_virtual_environment_time" "example" {
|
||||
node_name = "${data.proxmox_virtual_environment_time.example.node_name}"
|
||||
time_zone = "${data.proxmox_virtual_environment_time.example.time_zone}"
|
||||
node_name = data.proxmox_virtual_environment_time.example.node_name
|
||||
time_zone = data.proxmox_virtual_environment_time.example.time_zone
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_time" {
|
||||
value = "${map(
|
||||
"local_time", proxmox_virtual_environment_time.example.local_time,
|
||||
"time_zone", proxmox_virtual_environment_time.example.time_zone,
|
||||
"utc_time", proxmox_virtual_environment_time.example.utc_time,
|
||||
)}"
|
||||
value = {
|
||||
local_time = proxmox_virtual_environment_time.example.local_time
|
||||
time_zone = proxmox_virtual_environment_time.example.time_zone
|
||||
utc_time = proxmox_virtual_environment_time.example.utc_time
|
||||
}
|
||||
}
|
||||
|
@ -11,46 +11,46 @@ resource "proxmox_virtual_environment_user" "example" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_acl" {
|
||||
value = "${proxmox_virtual_environment_user.example.acl}"
|
||||
value = proxmox_virtual_environment_user.example.acl
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_comment" {
|
||||
value = "${proxmox_virtual_environment_user.example.comment}"
|
||||
value = proxmox_virtual_environment_user.example.comment
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_email" {
|
||||
value = "${proxmox_virtual_environment_user.example.email}"
|
||||
value = proxmox_virtual_environment_user.example.email
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_enabled" {
|
||||
value = "${proxmox_virtual_environment_user.example.enabled}"
|
||||
value = proxmox_virtual_environment_user.example.enabled
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_expiration_date" {
|
||||
value = "${proxmox_virtual_environment_user.example.expiration_date}"
|
||||
value = proxmox_virtual_environment_user.example.expiration_date
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_first_name" {
|
||||
value = "${proxmox_virtual_environment_user.example.first_name}"
|
||||
value = proxmox_virtual_environment_user.example.first_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_groups" {
|
||||
value = "${proxmox_virtual_environment_user.example.groups}"
|
||||
value = proxmox_virtual_environment_user.example.groups
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_keys" {
|
||||
value = "${proxmox_virtual_environment_user.example.keys}"
|
||||
value = proxmox_virtual_environment_user.example.keys
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_last_name" {
|
||||
value = "${proxmox_virtual_environment_user.example.last_name}"
|
||||
value = proxmox_virtual_environment_user.example.last_name
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_password" {
|
||||
value = "${proxmox_virtual_environment_user.example.password}"
|
||||
value = proxmox_virtual_environment_user.example.password
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_user_example_user_id" {
|
||||
value = "${proxmox_virtual_environment_user.example.id}"
|
||||
value = proxmox_virtual_environment_user.example.id
|
||||
}
|
||||
|
@ -6,13 +6,13 @@ resource "proxmox_virtual_environment_vm" "example_template" {
|
||||
description = "Managed by Terraform"
|
||||
|
||||
disk {
|
||||
datastore_id = "${element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local-lvm"))}"
|
||||
file_id = "${proxmox_virtual_environment_file.ubuntu_cloud_image.id}"
|
||||
datastore_id = element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local-lvm"))
|
||||
file_id = proxmox_virtual_environment_file.ubuntu_cloud_image.id
|
||||
interface = "scsi0"
|
||||
}
|
||||
|
||||
initialization {
|
||||
datastore_id = "${element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local-lvm"))}"
|
||||
datastore_id = element(data.proxmox_virtual_environment_datastores.example.datastore_ids, index(data.proxmox_virtual_environment_datastores.example.datastore_ids, "local-lvm"))
|
||||
|
||||
dns {
|
||||
server = "1.1.1.1"
|
||||
@ -25,25 +25,25 @@ resource "proxmox_virtual_environment_vm" "example_template" {
|
||||
}
|
||||
|
||||
user_account {
|
||||
keys = ["${trimspace(tls_private_key.example.public_key_openssh)}"]
|
||||
keys = [trimspace(tls_private_key.example.public_key_openssh)]
|
||||
password = "example"
|
||||
username = "ubuntu"
|
||||
}
|
||||
|
||||
user_data_file_id = "${proxmox_virtual_environment_file.cloud_config.id}"
|
||||
user_data_file_id = proxmox_virtual_environment_file.cloud_config.id
|
||||
}
|
||||
|
||||
name = "terraform-provider-proxmox-example-template"
|
||||
|
||||
network_device {}
|
||||
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
|
||||
operating_system {
|
||||
type = "l26"
|
||||
}
|
||||
|
||||
pool_id = "${proxmox_virtual_environment_pool.example.id}"
|
||||
pool_id = proxmox_virtual_environment_pool.example.id
|
||||
|
||||
serial_device {}
|
||||
|
||||
@ -53,8 +53,8 @@ resource "proxmox_virtual_environment_vm" "example_template" {
|
||||
|
||||
resource "proxmox_virtual_environment_vm" "example" {
|
||||
name = "terraform-provider-proxmox-example"
|
||||
node_name = "${data.proxmox_virtual_environment_nodes.example.names[0]}"
|
||||
pool_id = "${proxmox_virtual_environment_pool.example.id}"
|
||||
node_name = data.proxmox_virtual_environment_nodes.example.names[0]
|
||||
pool_id = proxmox_virtual_environment_pool.example.id
|
||||
vm_id = 2041
|
||||
|
||||
clone {
|
||||
@ -68,8 +68,8 @@ resource "proxmox_virtual_environment_vm" "example" {
|
||||
connection {
|
||||
type = "ssh"
|
||||
agent = false
|
||||
host = "${element(element(self.ipv4_addresses, index(self.network_interface_names, "eth0")), 0)}"
|
||||
private_key = "${tls_private_key.example.private_key_pem}"
|
||||
host = element(element(self.ipv4_addresses, index(self.network_interface_names, "eth0")), 0)
|
||||
private_key = tls_private_key.example.private_key_pem
|
||||
user = "ubuntu"
|
||||
}
|
||||
|
||||
@ -81,21 +81,21 @@ resource "proxmox_virtual_environment_vm" "example" {
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_vm_example_id" {
|
||||
value = "${proxmox_virtual_environment_vm.example.id}"
|
||||
value = proxmox_virtual_environment_vm.example.id
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_vm_example_ipv4_addresses" {
|
||||
value = "${proxmox_virtual_environment_vm.example.ipv4_addresses}"
|
||||
value = proxmox_virtual_environment_vm.example.ipv4_addresses
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_vm_example_ipv6_addresses" {
|
||||
value = "${proxmox_virtual_environment_vm.example.ipv6_addresses}"
|
||||
value = proxmox_virtual_environment_vm.example.ipv6_addresses
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_vm_example_mac_addresses" {
|
||||
value = "${proxmox_virtual_environment_vm.example.mac_addresses}"
|
||||
value = proxmox_virtual_environment_vm.example.mac_addresses
|
||||
}
|
||||
|
||||
output "resource_proxmox_virtual_environment_vm_example_network_interface_names" {
|
||||
value = "${proxmox_virtual_environment_vm.example.network_interface_names}"
|
||||
value = proxmox_virtual_environment_vm.example.network_interface_names
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
resource "local_file" "example_ssh_private_key" {
|
||||
filename = "${path.module}/autogenerated/id_rsa"
|
||||
sensitive_content = "${tls_private_key.example.private_key_pem}"
|
||||
sensitive_content = tls_private_key.example.private_key_pem
|
||||
}
|
||||
|
||||
resource "local_file" "example_ssh_public_key" {
|
||||
filename = "${path.module}/autogenerated/id_rsa.pub"
|
||||
sensitive_content = "${tls_private_key.example.public_key_openssh}"
|
||||
sensitive_content = tls_private_key.example.public_key_openssh
|
||||
}
|
||||
|
||||
resource "tls_private_key" "example" {
|
||||
|
@ -1,23 +1,14 @@
|
||||
provider "proxmox" {
|
||||
virtual_environment {
|
||||
endpoint = "${var.virtual_environment_endpoint}"
|
||||
username = "${var.virtual_environment_username}"
|
||||
password = "${var.virtual_environment_password}"
|
||||
insecure = true
|
||||
}
|
||||
}
|
||||
|
||||
variable "virtual_environment_endpoint" {
|
||||
type = "string"
|
||||
type = string
|
||||
description = "The endpoint for the Proxmox Virtual Environment API (example: https://host:port)"
|
||||
}
|
||||
|
||||
variable "virtual_environment_password" {
|
||||
type = "string"
|
||||
type = string
|
||||
description = "The password for the Proxmox Virtual Environment API"
|
||||
}
|
||||
|
||||
variable "virtual_environment_username" {
|
||||
type = "string"
|
||||
type = string
|
||||
description = "The username and realm for the Proxmox Virtual Environment API (example: root@pam)"
|
||||
}
|
@ -1,14 +1,16 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
local = {
|
||||
source = "hashicorp/local"
|
||||
source = "hashicorp/local"
|
||||
version = "2.0.0"
|
||||
}
|
||||
proxmox = {
|
||||
source = "danitso/proxmox"
|
||||
version = "9999.0.0"
|
||||
}
|
||||
tls = {
|
||||
source = "hashicorp/tls"
|
||||
source = "hashicorp/tls"
|
||||
version = "3.0.0"
|
||||
}
|
||||
}
|
||||
required_version = ">= 0.13"
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user