mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-07-01 02:52:58 +00:00
* feat(file): Add support to set the file mode GH-733 [1] implemented basic support for hook scripts, but the authors "did not manage to find time to work on" [2] also including support to set the file mode. This small but important feature makes the use of the `proxmox_virtual_environment_container.hook_script_file_id` [3] and `virtual_environment_vm.hook_script_file_id` [34] attributes basically useless when not combined with the manual step of making the uploaded file executable (manually running `chmod +x /path/to/script` or using other methods, based on the storage backend). Using the `hook_script_file_id` on its own also causes all planned and applies changes in the same execution to not be saved in the state because the Proxmox VE API responses with a HTTP `500` because the uploaded and assigned file is not executable. This pull request implements the missing feature to set the file mode by adding a new `file_mode` attribute of type `string` where an octal-formatted value can be passed, e.g. `0700` or only `600`. Note that the support for the octal prefixes `0o` and `0x` are not supported to reduced the complexity, even though Go of course support it, including the used `os.FileMode` type [5]. Changing the file mode also causes the file to be replaced, which is true for almost any attribute in the `proxmox_virtual_environment_file` resource, to ensure that the file mode can also be changed after the initial creation. [1]: https://github.com/bpg/terraform-provider-proxmox/pull/733 [2]: https://github.com/bpg/terraform-provider-proxmox/pull/733#issuecomment-2096716738 [3]: https://registry.terraform.io/providers/bpg/proxmox/latest/docs/resources/virtual_environment_container#hook_script_file_id [4]: https://registry.terraform.io/providers/bpg/proxmox/latest/docs/resources/virtual_environment_vm#hook_script_file_id [5]: https://pkg.go.dev/os#FileMode Related to GH-570 Related to GH-733 Signed-off-by: Sven Greb <development@svengreb.de> --------- Signed-off-by: Sven Greb <development@svengreb.de> |
||
---|---|---|
.. | ||
virtual_environment_acl.md | ||
virtual_environment_acme_account.md | ||
virtual_environment_apt_repository.md | ||
virtual_environment_apt_standard_repository.md | ||
virtual_environment_certificate.md | ||
virtual_environment_cluster_firewall_security_group.md | ||
virtual_environment_cluster_firewall.md | ||
virtual_environment_cluster_options.md | ||
virtual_environment_container.md | ||
virtual_environment_dns.md | ||
virtual_environment_download_file.md | ||
virtual_environment_file.md | ||
virtual_environment_firewall_alias.md | ||
virtual_environment_firewall_ipset.md | ||
virtual_environment_firewall_options.md | ||
virtual_environment_firewall_rules.md | ||
virtual_environment_group.md | ||
virtual_environment_hagroup.md | ||
virtual_environment_hardware_mapping_pci.md | ||
virtual_environment_hardware_mapping_usb.md | ||
virtual_environment_haresource.md | ||
virtual_environment_hosts.md | ||
virtual_environment_network_linux_bridge.md | ||
virtual_environment_network_linux_vlan.md | ||
virtual_environment_pool.md | ||
virtual_environment_role.md | ||
virtual_environment_time.md | ||
virtual_environment_user_token.md | ||
virtual_environment_user.md | ||
virtual_environment_vm2.md | ||
virtual_environment_vm.md |