mirror of
https://github.com/bpg/terraform-provider-proxmox.git
synced 2025-08-23 03:48:35 +00:00
feat(lxc): Add unprivileged option (#225)
* feat: Add unprivileged parameter for containers * feat: make modifying the unprivileged option recreate the resource * feat: add unprivileged to tests * docs: Add unprivileged argument --------- Co-authored-by: cditchfield <cditchfield@thoughtmachine.net> Co-authored-by: Pavel Boldyrev <627562+bpg@users.noreply.github.com>
This commit is contained in:
parent
a72fd27a13
commit
19185611b3
@ -169,6 +169,8 @@ output "ubuntu_container_public_key" {
|
|||||||
difference on the resource. You may use the `ignore_changes` lifecycle
|
difference on the resource. You may use the `ignore_changes` lifecycle
|
||||||
meta-argument to ignore changes to this attribute.
|
meta-argument to ignore changes to this attribute.
|
||||||
- `template` - (Optional) Whether to create a template (defaults to `false`).
|
- `template` - (Optional) Whether to create a template (defaults to `false`).
|
||||||
|
- `unprivileged` - (Optional) Whether the container runs as unprivileged on
|
||||||
|
the host (defaults to `false`).
|
||||||
- `vm_id` - (Optional) The virtual machine identifier
|
- `vm_id` - (Optional) The virtual machine identifier
|
||||||
|
|
||||||
## Attribute Reference
|
## Attribute Reference
|
||||||
|
@ -50,6 +50,7 @@ const (
|
|||||||
dvResourceVirtualEnvironmentContainerPoolID = ""
|
dvResourceVirtualEnvironmentContainerPoolID = ""
|
||||||
dvResourceVirtualEnvironmentContainerStarted = true
|
dvResourceVirtualEnvironmentContainerStarted = true
|
||||||
dvResourceVirtualEnvironmentContainerTemplate = false
|
dvResourceVirtualEnvironmentContainerTemplate = false
|
||||||
|
dvResourceVirtualEnvironmentContainerUnprivileged = false
|
||||||
dvResourceVirtualEnvironmentContainerVMID = -1
|
dvResourceVirtualEnvironmentContainerVMID = -1
|
||||||
|
|
||||||
maxResourceVirtualEnvironmentContainerNetworkInterfaces = 8
|
maxResourceVirtualEnvironmentContainerNetworkInterfaces = 8
|
||||||
@ -105,6 +106,7 @@ const (
|
|||||||
mkResourceVirtualEnvironmentContainerStarted = "started"
|
mkResourceVirtualEnvironmentContainerStarted = "started"
|
||||||
mkResourceVirtualEnvironmentContainerTags = "tags"
|
mkResourceVirtualEnvironmentContainerTags = "tags"
|
||||||
mkResourceVirtualEnvironmentContainerTemplate = "template"
|
mkResourceVirtualEnvironmentContainerTemplate = "template"
|
||||||
|
mkResourceVirtualEnvironmentContainerUnprivileged = "unprivileged"
|
||||||
mkResourceVirtualEnvironmentContainerVMID = "vm_id"
|
mkResourceVirtualEnvironmentContainerVMID = "vm_id"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -576,6 +578,13 @@ func resourceVirtualEnvironmentContainer() *schema.Resource {
|
|||||||
ForceNew: true,
|
ForceNew: true,
|
||||||
Default: dvResourceVirtualEnvironmentContainerTemplate,
|
Default: dvResourceVirtualEnvironmentContainerTemplate,
|
||||||
},
|
},
|
||||||
|
mkResourceVirtualEnvironmentContainerUnprivileged: {
|
||||||
|
Type: schema.TypeBool,
|
||||||
|
Description: "Whether the container runs as unprivileged on the host",
|
||||||
|
Optional: true,
|
||||||
|
ForceNew: true,
|
||||||
|
Default: dvResourceVirtualEnvironmentContainerUnprivileged,
|
||||||
|
},
|
||||||
mkResourceVirtualEnvironmentContainerVMID: {
|
mkResourceVirtualEnvironmentContainerVMID: {
|
||||||
Type: schema.TypeInt,
|
Type: schema.TypeInt,
|
||||||
Description: "The VM identifier",
|
Description: "The VM identifier",
|
||||||
@ -1203,6 +1212,7 @@ func resourceVirtualEnvironmentContainerCreateCustom(
|
|||||||
started := proxmox.CustomBool(d.Get(mkResourceVirtualEnvironmentContainerStarted).(bool))
|
started := proxmox.CustomBool(d.Get(mkResourceVirtualEnvironmentContainerStarted).(bool))
|
||||||
tags := d.Get(mkResourceVirtualEnvironmentContainerTags).([]interface{})
|
tags := d.Get(mkResourceVirtualEnvironmentContainerTags).([]interface{})
|
||||||
template := proxmox.CustomBool(d.Get(mkResourceVirtualEnvironmentContainerTemplate).(bool))
|
template := proxmox.CustomBool(d.Get(mkResourceVirtualEnvironmentContainerTemplate).(bool))
|
||||||
|
unprivileged := proxmox.CustomBool(d.Get(mkResourceVirtualEnvironmentContainerUnprivileged).(bool))
|
||||||
vmID := d.Get(mkResourceVirtualEnvironmentContainerVMID).(int)
|
vmID := d.Get(mkResourceVirtualEnvironmentContainerVMID).(int)
|
||||||
|
|
||||||
if vmID == -1 {
|
if vmID == -1 {
|
||||||
@ -1231,6 +1241,7 @@ func resourceVirtualEnvironmentContainerCreateCustom(
|
|||||||
Swap: &memorySwap,
|
Swap: &memorySwap,
|
||||||
Template: &template,
|
Template: &template,
|
||||||
TTY: &consoleTTYCount,
|
TTY: &consoleTTYCount,
|
||||||
|
Unprivileged: &unprivileged,
|
||||||
VMID: &vmID,
|
VMID: &vmID,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,6 +38,7 @@ func TestResourceVirtualEnvironmentContainerSchema(t *testing.T) {
|
|||||||
mkResourceVirtualEnvironmentContainerStarted,
|
mkResourceVirtualEnvironmentContainerStarted,
|
||||||
mkResourceVirtualEnvironmentContainerTags,
|
mkResourceVirtualEnvironmentContainerTags,
|
||||||
mkResourceVirtualEnvironmentContainerTemplate,
|
mkResourceVirtualEnvironmentContainerTemplate,
|
||||||
|
mkResourceVirtualEnvironmentContainerUnprivileged,
|
||||||
mkResourceVirtualEnvironmentContainerVMID,
|
mkResourceVirtualEnvironmentContainerVMID,
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -52,6 +53,7 @@ func TestResourceVirtualEnvironmentContainerSchema(t *testing.T) {
|
|||||||
mkResourceVirtualEnvironmentContainerStarted: schema.TypeBool,
|
mkResourceVirtualEnvironmentContainerStarted: schema.TypeBool,
|
||||||
mkResourceVirtualEnvironmentContainerTags: schema.TypeList,
|
mkResourceVirtualEnvironmentContainerTags: schema.TypeList,
|
||||||
mkResourceVirtualEnvironmentContainerTemplate: schema.TypeBool,
|
mkResourceVirtualEnvironmentContainerTemplate: schema.TypeBool,
|
||||||
|
mkResourceVirtualEnvironmentContainerUnprivileged: schema.TypeBool,
|
||||||
mkResourceVirtualEnvironmentContainerVMID: schema.TypeInt,
|
mkResourceVirtualEnvironmentContainerVMID: schema.TypeInt,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user