dmacvicar / terraform-provider-libvirt

Terraform provider to provision infrastructure with Linux's KVM using libvirt
Apache License 2.0
1.54k stars 457 forks source link

In libvirt_volume size in bytes bigger than 10 digits are treated in scientific notation on arm systems #991

Open joachimt-git opened 1 year ago

joachimt-git commented 1 year ago

System Information

Linux distribution

pi@pi2:~/myplatform/terraform $ uname -a
Linux pi2 5.15.61-v7l+ #1579 SMP Fri Aug 26 11:13:03 BST 2022 armv7l GNU/Linux
pi@pi2:~/myplatform/terraform $ cat /etc/debian_version 
11.5

Terraform version

pi@pi2:~/myplatform/terraform $ terraform -v
Terraform v1.3.7
on linux_arm
+ provider registry.terraform.io/dmacvicar/libvirt v0.7.0
+ provider registry.terraform.io/hashicorp/template v2.2.0

Provider and libvirt versions

If that gives you "was not built correctly", get the Git commit hash from your local provider repository:


Checklist

Description of Issue/Question

Setup

terraform {
  required_providers {
    libvirt = {
      source = "dmacvicar/libvirt"
    }
  }
}

provider "libvirt" {
  ## Configuration options
  #uri = "qemu:///system"
  #alias = "server2"
  uri   = "qemu+ssh://root@ix64-server/system"
}

Steps to Reproduce Issue

pi@pi2:~/myplatform/terraform $ go version
go version go1.15.15 linux/arm

pi@pi2:~/myplatform/terraform $ cat terraform_kvm_machines.tf 
# Defining VM Volume

resource "libvirt_volume" "base" {
  name = "base"
  pool = "default" # List storage pools using virsh pool-list
  source = "http://ix64-server/machines/focal-server-cloudimg-amd64.img"
  format = "qcow2"
}

resource "libvirt_volume" "hal9003" {
  name = "hal9003"
  pool = "default" # List storage pools using virsh pool-list
  base_volume_id = libvirt_volume.base.id
  size = 10240000000
}
...
pi@pi2:~/myplatform/terraform $ terraform plan
╷
│ Error: Attribute must be a whole number, got 1.024e+10
│ 
│   with libvirt_volume.hal9003,
│   on terraform_kvm_machines.tf line 17, in resource "libvirt_volume" "hal9003":
│   17:   size = 10240000000
│ 
╵

Additional information:

Do you have SELinux or Apparmor/Firewall enabled? Some special configuration? Have you tried to reproduce the issue without them enabled?