Signed-off-by: Marco Attia <54147992+Vaneixus@users.noreply.github.com>
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
Co-authored-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* fix(provider): fix for datastore does not support content type "dump"
Signed-off-by: cgeopapa <cgeocodgod@gmail.com>
* fix: move ContentType override further in the flow
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* fix: update docs
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
---------
Signed-off-by: cgeopapa <cgeocodgod@gmail.com>
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
Co-authored-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* 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>
* chore(docs): minor fixes and linting
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* chore(docs): add VM mini-howtos with examples
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* address peer-review feedback
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* vscode settings
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
---------
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
specify right content type for backups
This now matches with the folder used by proxmox for backups
Also update documentation to reflect the change
Signed-off-by: DanielHabenicht <daniel-habenicht@outlook.de>
* chore: add file test
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* add file updated test, file_name / ID is getting changed :/
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* more tests, refactor file's read, more consistency in the attributes
TODO: need to check backward compatibility
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* fix error message, enable import test
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* more tests
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* more tests for owerwrite, update docs
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* fix tests on CI
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
---------
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* feat(file): FORMAT CHANGE: update **import id**, so it matches the resource's format: `<node_name>/<datastore_id>:<content_type>/<file>`
* better example
* feat(provider): ensure upload of ISO/VSTMPL completes before starting VM and add timeout to config for this
* remove `ForceNew: true` for the timeout attribute
* minor docs update
---------
Co-authored-by: dandaolrian <dandaolrian@users.noreply.github.com>
Co-authored-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* add import support for a lot of resources
* fix lints
* set user_id after importing
(cherry picked from commit c3d09ed00f6e1d7b0bb3ab01a1fc5c81510aa2e1)
* add tests, fix empty ID
* add import docs
* fix lint