vagrant-terraform 0.3.2 → 0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 297fcfc9b778b568ae030ac019fcee1043b09fb308c4aa5c1d871b75ab499037
4
- data.tar.gz: aa1f2f6cee4ecee0dd672ad18afbad59f3567b3bffbb6eea207bcb68decc4196
3
+ metadata.gz: 3074f61e970da302a30f5eebad644a8a5a7e20fb6f0555d40ede25c956eb00ce
4
+ data.tar.gz: e83891dcf8e0e42fe5f9f679a774fe0a42811663d9ad28def191ddaad436d192
5
5
  SHA512:
6
- metadata.gz: 2cc0587b5d33aaf820379d0cda29b39b77ad5449db7ce4816eed403098792c6a12af20a2cfb76066fbec8ad103197b087db2d6052e7d693fef5abf9a01f1a34c
7
- data.tar.gz: 787b79e397a795b5d03c10e229ab79929e2e177e0b42286c0f954d0b94e0aa17c928c53406572ebcf4018491faddb1f97839c1ae5c2ac7e54464e5db256e4f39
6
+ metadata.gz: 26ba4d9ce2ced42824421671466e43e5a7cc41d8dc07b065826ce1bcc4d4799f25ecd145f866a6e589f0ce99ed1510328119e36c9d4fa0023e08edaa7391ed64
7
+ data.tar.gz: 73d6beabe6c7294319556c4b70b7a78b0f3d102cab5626958cba5379cc025d3d9ceb4a480c8d389697c6ce0ddbfe6792eec96892d17b701a9ce94d9a32b0666c
data/README.md CHANGED
@@ -114,6 +114,7 @@ Vagrant.configure("2") do |config|
114
114
  terraform.disk_size = '15 GB'
115
115
  terraform.target_node = 'pve1'
116
116
  terraform.storage_domain = '[STORAGE_NAME]'
117
+ terraform.vmid = '10000-9999999' # Randomly select a VMID in this range. Optional, defaults to first free
117
118
  terraform.nameserver = '1.1.1.1 1.0.0.1'
118
119
  terraform.searchdomain = 'example.com'
119
120
  end
@@ -47,8 +47,10 @@ resource "proxmox_vm_qemu" "#{vmname.gsub(/\./, '-')}" {
47
47
  target_nodes = ["#{config.target_node}"]
48
48
  desc = "#{config.description}"
49
49
  vm_state = "stopped"
50
+ tags = ""
50
51
  clone = "#{config.template}"
51
52
  full_clone = #{config.full_clone}
53
+ #{config.vmid ? "vmid = \"#{config.vmid}\"" : ""}
52
54
  cores = #{config.cpu_cores.to_i}
53
55
  cpu_type = "#{config.cpu_type}"
54
56
  memory = #{Filesize.from("#{config.memory_size} B").to_f('MB').to_i}
@@ -28,6 +28,7 @@ module VagrantPlugins
28
28
  attr_accessor :os_type
29
29
  attr_accessor :full_clone
30
30
  attr_accessor :serial_port
31
+ attr_accessor :vmid
31
32
 
32
33
  def initialize
33
34
  @api_url = UNSET_VALUE
@@ -52,6 +53,7 @@ module VagrantPlugins
52
53
  @os_type = UNSET_VALUE
53
54
  @full_clone = UNSET_VALUE
54
55
  @serial_port = UNSET_VALUE
56
+ @vmid = UNSET_VALUE
55
57
  end
56
58
 
57
59
  def finalize!
@@ -78,6 +80,27 @@ module VagrantPlugins
78
80
  @full_clone = true if @full_clone == UNSET_VALUE
79
81
  @serial_port = false if @serial_port == UNSET_VALUE
80
82
 
83
+ @vmid = nil if @vmid == UNSET_VALUE
84
+
85
+ if @vmid != nil
86
+ if @vmid.is_a?(String) && @vmid.include?('-')
87
+ begin
88
+ range = @vmid.split('-').map(&:to_i)
89
+ raise if range.size != 2 || range[0] > range[1] || range[0] < 10000 || range[1] > 999999999
90
+ @vmid = rand(range[0]..range[1])
91
+ rescue
92
+ raise "Invalid vmid range format or out of allowed bounds (10000-999999999): #{@vmid}"
93
+ end
94
+ else
95
+ begin
96
+ @vmid = @vmid.to_i
97
+ raise if @vmid < 10000 || @vmid > 999999999
98
+ rescue
99
+ raise "Invalid vmid value or out of allowed bounds (10000-999999999): #{@vmid}"
100
+ end
101
+ end
102
+ end
103
+
81
104
  unless disk_size.nil?
82
105
  begin
83
106
  @disk_size = Filesize.from(@disk_size).to_f('B').to_i
@@ -1,6 +1,6 @@
1
1
  module VagrantPlugins
2
2
  module TerraformProvider
3
- VERSION = '0.3.2'
3
+ VERSION = '0.4'
4
4
  end
5
5
  end
6
6
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-terraform
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: '0.4'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mika Båtsman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-11-10 00:00:00.000000000 Z
11
+ date: 2026-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: filesize