* chore(tests): add option to select auth type (root user / token) for tests
* fix(vm): throw an error when `cpu.architecture` can't be set
---------
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* fix(vm): improve reliability of VM create / get operations
- Add retries to GET API calls, fix retrying on POST (VM create) API calls.
- Minor fix in acceptance tests
---------
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
cleaning up and refactoring the VM code, add some acceptance tests around disks, few minor bugfixes
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
feat: modify the proxmox api client to support connecting through an https proxy
to use, set the https_proxy environment variable before running terraform
for example:
export https_proxy=http://localhost:8080
Signed-off-by: Rui Lopes <rgl@ruilopes.com>
* fix(api): set min TLS version 1.3, secure HTTP-only cookie
* remove `all-tests-passed` job
---------
Signed-off-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
The HTTP client makes requests using the operational context passed from Terraform. The client will no longer enforce its own fixed timeout but will rely on context cancellation instead.
Token logins using root@pam!sometoken=uuid are not considered
by PVE as 'root' logins, and fail to change VM's arch.
Make sure the provider does not try to set/change VM's arch.
Co-authored-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
* cleanup 1
* continue refactoring
* more refactoring
* move VMs under nodes
* move container and other apis under nodes
* cleanups
* enabled revive.exported linter & add comments to exported stuff
* enable godot linter
* enable wsl linter
* enable thelper linter
* enable govet linter
* cleanup after rebase
* cleanup after rebase
* extract SSH ops into a separate interface
* fix linter error
* move ssh code to its own package
* cleaning up VirtualEnvironmentClient receivers
* on the finish line
* not sure what else I forgot... 🤔
* fix ssh connection and upload
* renaming client interfaces
* final cleanups