vagrant-lxc-2.1-patch 1.4.0

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.
Files changed (64) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +31 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +10 -0
  5. data/.vimrc +1 -0
  6. data/BOXES.md +47 -0
  7. data/CHANGELOG.md +510 -0
  8. data/CONTRIBUTING.md +24 -0
  9. data/Gemfile +24 -0
  10. data/Guardfile +7 -0
  11. data/LICENSE.txt +22 -0
  12. data/README.md +187 -0
  13. data/Rakefile +3 -0
  14. data/lib/vagrant-lxc.rb +10 -0
  15. data/lib/vagrant-lxc/action.rb +234 -0
  16. data/lib/vagrant-lxc/action/boot.rb +42 -0
  17. data/lib/vagrant-lxc/action/clear_forwarded_ports.rb +56 -0
  18. data/lib/vagrant-lxc/action/compress_rootfs.rb +30 -0
  19. data/lib/vagrant-lxc/action/create.rb +57 -0
  20. data/lib/vagrant-lxc/action/destroy.rb +18 -0
  21. data/lib/vagrant-lxc/action/destroy_confirm.rb +17 -0
  22. data/lib/vagrant-lxc/action/fetch_ip_with_lxc_info.rb +43 -0
  23. data/lib/vagrant-lxc/action/forced_halt.rb +20 -0
  24. data/lib/vagrant-lxc/action/forward_ports.rb +121 -0
  25. data/lib/vagrant-lxc/action/gc_private_network_bridges.rb +47 -0
  26. data/lib/vagrant-lxc/action/handle_box_metadata.rb +94 -0
  27. data/lib/vagrant-lxc/action/prepare_nfs_settings.rb +64 -0
  28. data/lib/vagrant-lxc/action/prepare_nfs_valid_ids.rb +19 -0
  29. data/lib/vagrant-lxc/action/private_networks.rb +46 -0
  30. data/lib/vagrant-lxc/action/setup_package_files.rb +60 -0
  31. data/lib/vagrant-lxc/action/warn_networks.rb +25 -0
  32. data/lib/vagrant-lxc/command/root.rb +58 -0
  33. data/lib/vagrant-lxc/command/sudoers.rb +97 -0
  34. data/lib/vagrant-lxc/config.rb +73 -0
  35. data/lib/vagrant-lxc/driver.rb +288 -0
  36. data/lib/vagrant-lxc/driver/cli.rb +166 -0
  37. data/lib/vagrant-lxc/errors.rb +62 -0
  38. data/lib/vagrant-lxc/plugin.rb +51 -0
  39. data/lib/vagrant-lxc/provider.rb +101 -0
  40. data/lib/vagrant-lxc/provider/cap/public_address.rb +17 -0
  41. data/lib/vagrant-lxc/sudo_wrapper.rb +104 -0
  42. data/lib/vagrant-lxc/synced_folder.rb +72 -0
  43. data/lib/vagrant-lxc/version.rb +5 -0
  44. data/locales/en.yml +82 -0
  45. data/scripts/lxc-template +171 -0
  46. data/scripts/pipework +422 -0
  47. data/spec/Vagrantfile +26 -0
  48. data/spec/fixtures/sample-ip-addr-output +2 -0
  49. data/spec/spec_helper.rb +35 -0
  50. data/spec/support/.gitkeep +0 -0
  51. data/spec/unit/action/clear_forwarded_ports_spec.rb +43 -0
  52. data/spec/unit/action/compress_rootfs_spec.rb +29 -0
  53. data/spec/unit/action/forward_ports_spec.rb +117 -0
  54. data/spec/unit/action/handle_box_metadata_spec.rb +126 -0
  55. data/spec/unit/action/setup_package_files_spec.rb +83 -0
  56. data/spec/unit/driver/cli_spec.rb +263 -0
  57. data/spec/unit/driver_spec.rb +268 -0
  58. data/spec/unit/support/unit_example_group.rb +38 -0
  59. data/spec/unit_helper.rb +17 -0
  60. data/tasks/spec.rake +40 -0
  61. data/templates/sudoers.rb.erb +129 -0
  62. data/vagrant-lxc.gemspec +20 -0
  63. data/vagrant-spec.config.rb +24 -0
  64. metadata +119 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: b865fc40afea3349d7027941da7a4c2db57ae3d8
4
+ data.tar.gz: 3af11d98f8b0ee53054c670cc89db0624dad4f0d
5
+ SHA512:
6
+ metadata.gz: 183c8a8d31637d1eb1a506c8d819f819f5348d91851418843aa33c986a2d69c41ace60bc2972dfa7da0074c0aeadf002777e2dbef69870ddc0c7b564f5ee5ca5
7
+ data.tar.gz: 5a3e1e86c12b44a9f6fe3d808a336bbaa48ebcf864e0fb2f38b38abd04f634069f56c1c42da3b5ca5e4801f2259bda3452705e13c6652c98baf1d08476a596cc
@@ -0,0 +1,31 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ coverage
6
+ InstalledFiles
7
+ lib/bundler/man
8
+ pkg
9
+ rdoc
10
+ spec/reports
11
+ test/tmp
12
+ test/version_tmp
13
+ tmp
14
+
15
+ # YARD artifacts
16
+ .yardoc
17
+ _yardoc
18
+ doc/
19
+
20
+ /tags
21
+ /gems.tags
22
+ /Gemfile.lock
23
+
24
+ .vagrant
25
+ /cache
26
+
27
+ /boxes/**/*.tar.gz
28
+ /boxes/**/partial/
29
+ /boxes/**/rootfs/
30
+ /boxes/temp/
31
+ /boxes/output/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format documentation
@@ -0,0 +1,10 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.2
4
+ - 2.3
5
+ - 2.4
6
+ - 2.5
7
+ install:
8
+ - gem install -v 1.12.5 bundler
9
+ - bundle _1.12.5_ install --jobs=3 --retry=3
10
+ script: "bundle exec rake ci"
data/.vimrc ADDED
@@ -0,0 +1 @@
1
+ set wildignore+=*/boxes/*/rootfs/*,*/boxes/*/partial/*
@@ -0,0 +1,47 @@
1
+ # vagrant-lxc base boxes
2
+
3
+ Although the official documentation says it is only supported for VirtualBox
4
+ environments, you can use the [`vagrant package`](http://docs.vagrantup.com/v2/cli/package.html)
5
+ command to export a `.box` file from an existing vagrant-lxc container.
6
+
7
+ There is also a set of [bash scripts](https://github.com/fgrehm/vagrant-lxc-base-boxes)
8
+ that you can use to build base boxes as needed. By default it won't include any
9
+ provisioning tool and you can pick the ones you want by providing some environment
10
+ variables. Please refer to the [base boxes repository](https://github.com/fgrehm/vagrant-lxc-base-boxes)
11
+ for more information.
12
+
13
+ ## "Anatomy" of a box
14
+
15
+ If you need to go deeper and build your scripts from scratch or if you are interested
16
+ on knowing what makes a base box for vagrant-lxc, here's what's needed:
17
+
18
+ ### Expected `.box` contents
19
+
20
+ | FILE | REQUIRED? | DESCRIPTION |
21
+ | --- | --- | --- |
22
+ | `metadata.json` | Yes | Required by Vagrant |
23
+ | `rootfs.tar.gz` | Yes | Compressed container rootfs tarball (need to remeber to pass in `--numeric-owner` when creating it) |
24
+ | `lxc-template` | No, a ["generic script"](scripts/lxc-template) is provided by the plugin if it doesn't exist on the base box | Script responsible for creating and setting up the container (used with `lxc-create`). |
25
+ | `lxc-config` | No | Box specific configuration to be _appended_ to the system's generated container config file |
26
+ | `lxc.conf` | No | File passed in to `lxc-create -f` |
27
+
28
+ ### metadata.json
29
+
30
+ ```json
31
+ {
32
+ "provider": "lxc",
33
+ "version": "1.0.0",
34
+ "built-on": "Sat Sep 21 21:10:00 UTC 2013",
35
+ "template-opts": {
36
+ "--arch": "amd64",
37
+ "--release": "quantal"
38
+ }
39
+ }
40
+ ```
41
+
42
+ | KEY | REQUIRED? | DESCRIPTION |
43
+ | --- | --- | --- |
44
+ | `provider` | Yes | Required by Vagrant |
45
+ | `version` | Yes | Tracks backward incompatibilities |
46
+ | `built-on` | No | Date / time when the box was packaged for the first time |
47
+ | `template-opts` | No | Extra options to be passed to the `lxc-template` script |
@@ -0,0 +1,510 @@
1
+ ## [1.4.0](https://github.com/fgrehm/vagrant-lxc/compare/v1.3.1...v1.4.0) (Mar 04, 2018)
2
+
3
+ FEATURES:
4
+ - Add support for unprivileged containers. [[GH-312]]
5
+
6
+ [GH-312]: https://github.com/fgrehm/vagrant-lxc/issues/312
7
+
8
+ ## [1.3.1](https://github.com/fgrehm/vagrant-lxc/compare/v1.3.0...v1.3.1) (Fev 06, 2018)
9
+
10
+ FIXES:
11
+ - Fix problems with `tmpfs` fiddling in v1.3.0. [[GH-455]]
12
+
13
+ [GH-455]: https://github.com/fgrehm/vagrant-lxc/pull/455
14
+
15
+ ## [1.3.0](https://github.com/fgrehm/vagrant-lxc/compare/v1.2.4...v1.3.0) (Jan 20, 2018)
16
+
17
+ FEATURES:
18
+ - lxc-template: make runnable by unprivileged users [[GH-447]]
19
+ - Use `lxc-info` instead of `lxc-attach` to retrieve container IP
20
+ - Add support for LXC v2.1+ [[GH-445]]
21
+ - Remove 2Gb limitation on `/tmp`. [[GH-406]]
22
+
23
+ OTHERS:
24
+ - Bump Vagrant requirements to v1.8+
25
+ - Bump LXC requirements to v1.0+
26
+
27
+
28
+ [GH-447]: https://github.com/fgrehm/vagrant-lxc/pull/447
29
+ [GH-445]: https://github.com/fgrehm/vagrant-lxc/pull/445
30
+ [GH-406]: https://github.com/fgrehm/vagrant-lxc/pull/406
31
+
32
+ ## [1.2.4](https://github.com/fgrehm/vagrant-lxc/compare/v1.2.3...v1.2.4) (Dec 20, 2017)
33
+
34
+ BUGFIX:
35
+ - Support alternative `lxcpath` [[GH-413]]
36
+ - Update `pipework` regexp in sudo wrapper for Vagrant 1.9+ [[GH-438]]
37
+ - Work around restrictive `umask` values [[GH-435]]
38
+ - Make `--config` in `lxc-template` optional [[GH-421]]
39
+ - Fix sudo wrapper binpath construction logic [[GH-410]]
40
+ - Fix bug causing CTRL-C on `vagrant up` to destroy the VM [[GH-449]]
41
+
42
+ [GH-413]: https://github.com/fgrehm/vagrant-lxc/pull/413
43
+ [GH-438]: https://github.com/fgrehm/vagrant-lxc/pull/438
44
+ [GH-435]: https://github.com/fgrehm/vagrant-lxc/pull/435
45
+ [GH-421]: https://github.com/fgrehm/vagrant-lxc/pull/421
46
+ [GH-410]: https://github.com/fgrehm/vagrant-lxc/pull/410
47
+ [GH-449]: https://github.com/fgrehm/vagrant-lxc/pull/449
48
+
49
+ ## [1.2.3](https://github.com/fgrehm/vagrant-lxc/compare/v1.2.2...v1.2.3) (Dec 20, 2016)
50
+
51
+ - Fix bug in Gemfile.lock
52
+
53
+ ## [1.2.2](https://github.com/fgrehm/vagrant-lxc/compare/v1.2.1...v1.2.2) (Dec 20, 2016)
54
+
55
+ BUGFIX:
56
+ - Make the timeout for fetching container IP's configurable [[GH-426]]
57
+ - Load locale file only once [[GH-423]]
58
+ - Preserve xattrs in container filesystems [[GH-411]]
59
+ - Forward port latest pipework script [[GH-408]]
60
+ - Fix handling of non-fatal lxc-stop return code [[GH-405]]
61
+
62
+ [GH-426]: https://github.com/fgrehm/vagrant-lxc/pull/426
63
+ [GH-423]: https://github.com/fgrehm/vagrant-lxc/pull/423
64
+ [GH-411]: https://github.com/fgrehm/vagrant-lxc/pull/411
65
+ [GH-408]: https://github.com/fgrehm/vagrant-lxc/pull/408
66
+ [GH-405]: https://github.com/fgrehm/vagrant-lxc/pull/405
67
+
68
+ ## [1.2.1](https://github.com/fgrehm/vagrant-lxc/compare/v1.2.0...v1.2.1) (Sep 24, 2015)
69
+
70
+ BUGFIX:
71
+ - Fix sudo Wrapper [[GH-393]]
72
+
73
+ [GH-393]: https://github.com/fgrehm/vagrant-lxc/pull/393
74
+
75
+ ## [1.2.0](https://github.com/fgrehm/vagrant-lxc/compare/v1.1.0...v1.2.0) (Sep 15, 2015)
76
+
77
+ FEATURES:
78
+ - Support private networking using DHCP [[GH-352]]
79
+
80
+ [GH-352]: https://github.com/fgrehm/vagrant-lxc/pull/352
81
+
82
+ IMPROVEMENTS:
83
+
84
+ - Move mountpoint creation to lxc template for lvm rootfs support [[GH-361]] / [[GH-359]]
85
+ - Mount selinux sys dir read-only [[GH-357]] / [[GH-301]]
86
+ - Use correct ruby interpreter when generating sudoers file [[GH-355]]
87
+ - Fix shebangs to be more portable [[GH-376]]
88
+ - Fix removal of lxcbr0/virbr0 when using private networking [[GH-383]]
89
+ - Improve /tmp handling by using tmpfs [[GH-362]]
90
+
91
+ [GH-301]: https://github.com/fgrehm/vagrant-lxc/issues/301
92
+ [GH-355]: https://github.com/fgrehm/vagrant-lxc/pull/355
93
+ [GH-357]: https://github.com/fgrehm/vagrant-lxc/pull/357
94
+ [GH-359]: https://github.com/fgrehm/vagrant-lxc/issues/359
95
+ [GH-361]: https://github.com/fgrehm/vagrant-lxc/pull/361
96
+ [GH-376]: https://github.com/fgrehm/vagrant-lxc/pull/376
97
+ [GH-383]: https://github.com/fgrehm/vagrant-lxc/pull/383
98
+ [GH-362]: https://github.com/fgrehm/vagrant-lxc/pull/362
99
+
100
+ ## [1.1.0](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.1...v1.1.0) (Jan 14, 2015)
101
+
102
+ BACKWARDS INCOMPATIBILITIES:
103
+
104
+ - Support for Vagrant versions prior to 1.5 have been removed. The plugin now targets
105
+ Vagrant 1.7+ but it _might_ work on 1.5+.
106
+
107
+ FEATURES:
108
+
109
+ - New experimental support for private networking [[GH-298]] / [[GH-120]].
110
+ - Support for formatted overlayfs path [[GH-329]]
111
+
112
+
113
+ [GH-298]: https://github.com/fgrehm/vagrant-lxc/pull/298
114
+ [GH-120]: https://github.com/fgrehm/vagrant-lxc/issues/120
115
+ [GH-329]: https://github.com/fgrehm/vagrant-lxc/pull/329
116
+
117
+ IMPROVEMENTS:
118
+
119
+ - The provider will now have a higher priority over the VirtualBox provider
120
+ in case VirtualBox is installed alongside lxc dependecies.
121
+ - Show an user friendly message when trying to use the plugin on non-Linux
122
+ environments.
123
+
124
+ BUG FIXES:
125
+
126
+ - Allow backingstore options to be used along with the sudo wrapper script [[GH-310]]
127
+ - Trim automatically generated container names to 64 chars [[GH-337]]
128
+
129
+ [GH-337]: https://github.com/fgrehm/vagrant-lxc/issues/337
130
+ [GH-310]: https://github.com/fgrehm/vagrant-lxc/issues/310
131
+
132
+
133
+ ## [1.0.1](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.0...v1.0.1) (Oct 15, 2014)
134
+
135
+ IMPROVEMENTS:
136
+
137
+ - Avoid lock race condition when fetching container's IP [[GH-318]] and SSH execution [[GH-321]]
138
+ - Support for custom containers storage path by reading `lxc.lxcpath` [[GH-317]]
139
+
140
+
141
+ [GH-317]: https://github.com/fgrehm/vagrant-lxc/pull/317
142
+ [GH-318]: https://github.com/fgrehm/vagrant-lxc/pull/318
143
+ [GH-321]: https://github.com/fgrehm/vagrant-lxc/issues/321
144
+
145
+ ## [1.0.0](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.0.alpha.3...v1.0.0) (Sep 23, 2014)
146
+
147
+ DEPRECATIONS:
148
+
149
+ - Support to **all Vagrant versions prior to 1.5 are deprecated**, there is a
150
+ [small layer](lib/vagrant-backports) that ensures compatibility with versions
151
+ starting with 1.1.5 that will be removed on a future release.
152
+ - Official base boxes that were made available from http://bit.ly are no longer
153
+ supported and were removed from @fgrehm's Dropbox, please upgrade your Vagrant
154
+ and vagrant-lxc installation and use a base box from [VagrantCloud](https://vagrantcloud.com/search?provider=lxc)
155
+
156
+ BACKWARDS INCOMPATIBILITIES:
157
+
158
+ - Remove plugin version from config file name generated by the `vagrant lxc sudoers`
159
+ command. Manual removal of `/usr/local/bin/vagrant-lxc-wrapper-*` / `/etc/sudoers.d/vagrant-lxc-*`
160
+ files are required.
161
+
162
+ IMPROVEMENTS:
163
+
164
+ - `vagrant-mounted` upstart event is now emited on containers that support it [[GH-302]]
165
+ - Add support for specifying the `--strip-parameters` used by the [default template](scripts/lxc-template)
166
+ when extracting rootfs tarballs [[GH-311]]
167
+
168
+ [GH-302]: https://github.com/fgrehm/vagrant-lxc/issues/302
169
+
170
+ BUG FIXES:
171
+
172
+ - Check for outdated base boxes when starting containers [[GH-314]]
173
+
174
+ [GH-311]: https://github.com/fgrehm/vagrant-lxc/pull/311
175
+ [GH-314]: https://github.com/fgrehm/vagrant-lxc/pull/314
176
+
177
+
178
+ ## [1.0.0.alpha.3](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.0.alpha.2...v1.0.0.alpha.3) (Aug 9, 2014)
179
+
180
+ IMPROVEMENTS:
181
+
182
+ - Remove `lxc-shutdown` usage in favor of Vagrant's built in graceful halt
183
+ - Add fallback mechanism for platforms without `lxc-attach` support [[GH-294]]
184
+
185
+ [GH-294]: https://github.com/fgrehm/vagrant-lxc/pull/294
186
+
187
+ BUG FIXES:
188
+
189
+ - Figure out the real executable paths for whitelisted commands on the sudo
190
+ wrapper script instead of hardcoding Ubuntu paths [[GH-304]] / [[GH-305]]
191
+ - Attach to containers using the `MOUNT` namespace when attempting to fetch
192
+ container's IP [[GH-300]]
193
+ - Escape space characters for synced folders [[GH-291]]
194
+ - Use Vagrant's ruby on the sudoers file so that it works on systems that don't
195
+ have a global ruby installation [[GH-289]]
196
+
197
+ [GH-304]: https://github.com/fgrehm/vagrant-lxc/issues/304
198
+ [GH-305]: https://github.com/fgrehm/vagrant-lxc/issues/305
199
+ [GH-300]: https://github.com/fgrehm/vagrant-lxc/issues/300
200
+ [GH-291]: https://github.com/fgrehm/vagrant-lxc/issues/291
201
+ [GH-289]: https://github.com/fgrehm/vagrant-lxc/issues/289
202
+
203
+
204
+ ## [1.0.0.alpha.2](https://github.com/fgrehm/vagrant-lxc/compare/v1.0.0.alpha.1...v1.0.0.alpha.2) (May 13, 2014)
205
+
206
+ BACKWARDS INCOMPATIBILITIES:
207
+
208
+ - The `sudo_wrapper` provider configuration was removed in favor of using the
209
+ secure wrapper generated by `vagrant lxc sudoers` [[GH-272]]
210
+ - Support for specifying backingstore parameters from `Vagrantfile`s for `lxc-create`
211
+ was added and it defaults to the `best` option. On older lxc versions that does not
212
+ support that value, it needs to be set to `none`.
213
+
214
+ FEATURES:
215
+
216
+ - Add support for specifying backingstore parameters from `Vagrantfile`s [[GH-277]]
217
+
218
+ IMPROVEMENTS:
219
+
220
+ - Make `dnsmasq` leases MAC address regex check case insensitive [[GH-283]]
221
+ - Use relative paths for `lxc.mount.entry` to avoid issues with `lxc-clone` [[GH-258]].
222
+ - Sort synced folders when mounting [[GH-271]]
223
+ - Privileged ports can now be forwarded with `sudo` [[GH-259]]
224
+ - The `vagrant lxc sudoers` generated sudoers configuration and wrapper script
225
+ are safer and properly whitelists the commands required by vagrant-lxc to run.
226
+ [[GH-272]] / [[GH-269]]
227
+
228
+ BUG FIXES:
229
+
230
+ - Fix `lxc-create` issues with pre 1.0.0 versions [[GH-282]]
231
+
232
+ [GH-283]: https://github.com/fgrehm/vagrant-lxc/pull/283
233
+ [GH-282]: https://github.com/fgrehm/vagrant-lxc/pull/282
234
+ [GH-269]: https://github.com/fgrehm/vagrant-lxc/issues/269
235
+ [GH-272]: https://github.com/fgrehm/vagrant-lxc/pull/272
236
+ [GH-259]: https://github.com/fgrehm/vagrant-lxc/pull/259
237
+ [GH-271]: https://github.com/fgrehm/vagrant-lxc/pull/271
238
+ [GH-277]: https://github.com/fgrehm/vagrant-lxc/pull/277
239
+ [GH-258]: https://github.com/fgrehm/vagrant-lxc/issues/258
240
+
241
+
242
+ ## [1.0.0.alpha.1](https://github.com/fgrehm/vagrant-lxc/compare/v0.8.0...v1.0.0.alpha.1) (Apr 06, 2014)
243
+
244
+ DEPRECATIONS:
245
+
246
+ - Support to **all Vagrant versions prior to 1.5 are now deprecated**, there is a
247
+ [small layer](lib/vagrant-backports) that ensures compatibility with versions
248
+ starting with 1.1.5 but there is no guarantee that it will stick for too long.
249
+ - Boxes released prior to this version are now deprecated and won't be available
250
+ after the final 1.0.0 release.
251
+ - `--auth-key` argument is no longer provided to `lxc-template`. This will cause
252
+ all official base boxes prior to 09/28/2013 to break.
253
+
254
+ FEATURES:
255
+
256
+ - New `vagrant lxc sudoers` command for creating a policy for users in order to
257
+ avoid `sudo` passwords [[GH-237]] / [[GH-257]]
258
+ - Support for NFS and rsync synced folders.
259
+ - Support for synced folder mount options allowing for using read only synced
260
+ folders [[GH-193]]
261
+
262
+ [GH-237]: https://github.com/fgrehm/vagrant-lxc/issues/237
263
+ [GH-257]: https://github.com/fgrehm/vagrant-lxc/pull/257
264
+ [GH-193]: https://github.com/fgrehm/vagrant-lxc/issues/193
265
+
266
+ IMPROVEMENTS:
267
+
268
+ - `lxc-template` is now optional for base boxes and are bundled with the plugin,
269
+ allowing us to roll out updates without the need to rebuild boxes [[GH-254]]
270
+ - Set container's `utsname` to `config.vm.hostname` by default [[GH-253]]
271
+ - Added libvirt dnsmasq leases file to the lookup paths [[GH-251]]
272
+ - Improved compatibility with Vagrant 1.4 / 1.5 including the ability
273
+ to use `rsync` and `nfs` shared folders to work around synced folders
274
+ permission problems. More information can be found on the following
275
+ issues: [[GH-151]] [[GH-191]] [[GH-241]] [[GH-242]]
276
+ - Warn in case `:group` or `:owner` are specified for synced folders [[GH-196]]
277
+ - Acceptance specs are now powered by `vagrant-spec` [[GH-213]]
278
+ - Base boxes creation scripts were moved out to https://github.com/fgrehm/vagrant-lxc-base-boxes.
279
+
280
+ [GH-254]: https://github.com/fgrehm/vagrant-lxc/issues/254
281
+ [GH-196]: https://github.com/fgrehm/vagrant-lxc/issues/196
282
+ [GH-251]: https://github.com/fgrehm/vagrant-lxc/pull/251
283
+ [GH-253]: https://github.com/fgrehm/vagrant-lxc/pull/253
284
+ [GH-151]: https://github.com/fgrehm/vagrant-lxc/issues/151
285
+ [GH-213]: https://github.com/fgrehm/vagrant-lxc/issues/213
286
+ [GH-191]: https://github.com/fgrehm/vagrant-lxc/issues/191
287
+ [GH-241]: https://github.com/fgrehm/vagrant-lxc/issues/241
288
+ [GH-242]: https://github.com/fgrehm/vagrant-lxc/issues/242
289
+
290
+
291
+ ## [0.8.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.7.0...v0.8.0) (Feb 26, 2014)
292
+
293
+ FEATURES:
294
+
295
+ - Support for naming containers from Vagrantfiles [#132](https://github.com/fgrehm/vagrant-lxc/issues/132)
296
+
297
+ IMPROVEMENTS:
298
+
299
+ - Use a safer random name for containers [#152](https://github.com/fgrehm/vagrant-lxc/issues/152)
300
+ - Improve Ubuntu 13.10 compatibility [#190](https://github.com/fgrehm/vagrant-lxc/pull/190) / [#197](https://github.com/fgrehm/vagrant-lxc/pull/197)
301
+ - Improved mac address detection from lxc configs [#226](https://github.com/fgrehm/vagrant-lxc/pull/226)
302
+
303
+ BUG FIXES:
304
+
305
+ - Properly detect if lxc is installed on hosts that do not have `lxc-version` on their paths [#186](https://github.com/fgrehm/vagrant-lxc/issues/186)
306
+
307
+
308
+ ## [0.7.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.6.4...v0.7.0) (Nov 8, 2013)
309
+
310
+ IMPROVEMENTS:
311
+
312
+ - Support for `vagrant up` in parallel [#152](https://github.com/fgrehm/vagrant-lxc/issues/152)
313
+ - Warn users about unsupported private / public networking configs [#154](https://github.com/fgrehm/vagrant-lxc/issues/154)
314
+ - Respect Vagrantfile options to disable forwarded port [#149](https://github.com/fgrehm/vagrant-lxc/issues/149)
315
+
316
+ BUG FIXES:
317
+
318
+ - Nicely handle blank strings provided to `:host_ip` when specifying forwarded ports [#170](https://github.com/fgrehm/vagrant-lxc/issues/170)
319
+ - Fix "Permission denied" when starting/destroying containers after lxc
320
+ security update in Ubuntu [#180](https://github.com/fgrehm/vagrant-lxc/issues/180)
321
+ - Fix `vagrant package` [#172](https://github.com/fgrehm/vagrant-lxc/issues/172)
322
+
323
+
324
+ ## [0.6.4](https://github.com/fgrehm/vagrant-lxc/compare/v0.6.3...v0.6.4) (Oct 27, 2013)
325
+
326
+ FEATURES:
327
+
328
+ - New script for building OpenMandriva base boxes [#167](https://github.com/fgrehm/vagrant-lxc/issues/167)
329
+
330
+ IMPROVEMENTS:
331
+
332
+ - Make `lxc-template` compatible with Ubuntu 13.10 [#150](https://github.com/fgrehm/vagrant-lxc/issues/150)
333
+
334
+ BUG FIXES:
335
+
336
+ - Fix force halt for hosts that do not have `lxc-shutdown` around (like Ubuntu 13.10) [#150](https://github.com/fgrehm/vagrant-lxc/issues/150)
337
+
338
+ ## [0.6.3](https://github.com/fgrehm/vagrant-lxc/compare/v0.6.2...v0.6.3) (Oct 12, 2013)
339
+
340
+ IMPROVEMENTS:
341
+
342
+ - Respect Vagrantfile option to disable synced folders [#147](https://github.com/fgrehm/vagrant-lxc/issues/147)
343
+
344
+ BUG FIXES:
345
+
346
+ - Fix error raised when fetching container's IP with the sudo wrapper disabled [#157](https://github.com/fgrehm/vagrant-lxc/issues/157)
347
+
348
+ ## [0.6.2](https://github.com/fgrehm/vagrant-lxc/compare/v0.6.1...v0.6.2) (Oct 03, 2013)
349
+
350
+ IMPROVEMENTS:
351
+
352
+ - Cache the result of `lxc-attach --namespaces` parameter support checking to
353
+ avoid excessive logging.
354
+
355
+ BUG FIXES:
356
+
357
+ - Fix detection of `lxc-attach --namespaces` parameter support checking.
358
+
359
+ ## [0.6.1](https://github.com/fgrehm/vagrant-lxc/compare/v0.6.0...v0.6.1) (Oct 03, 2013)
360
+
361
+ IMPROVEMENTS:
362
+
363
+ - Fall back to `dnsmasq` leases file if not able to fetch IP with `lxc-attach` [#118](https://github.com/fgrehm/vagrant-lxc/issues/118)
364
+ - Make sure lxc templates are executable prior to `lxc-create` [#128](https://github.com/fgrehm/vagrant-lxc/issues/128)
365
+ - New base boxes with support for lxc 1.0+
366
+
367
+ BUG FIXES:
368
+
369
+ - Fix various issues related to detecting whether the container is running
370
+ and is "SSHable" [#142](https://github.com/fgrehm/vagrant-lxc/issues/142)
371
+ - Nicely handle missing templates path [#139](https://github.com/fgrehm/vagrant-lxc/issues/139)
372
+
373
+ ## [0.6.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.5.0...v0.6.0) (Sep 12, 2013)
374
+
375
+ IMPROVEMENTS:
376
+
377
+ - Compatibility with Vagrant 1.3+ [#136](https://github.com/fgrehm/vagrant-lxc/pull/136)
378
+ - Set plugin name to `vagrant-lxc` so that it is easier to check if the plugin is
379
+ installed with the newly added `Vagrant.has_plugin?`
380
+
381
+ BUG FIXES:
382
+
383
+ - Fix box package ownership on `vagrant package` [#140](https://github.com/fgrehm/vagrant-lxc/pull/140)
384
+ - Fix error while compressing container's rootfs under Debian hosts [#131](https://github.com/fgrehm/vagrant-lxc/issues/131) /
385
+ [#133](https://github.com/fgrehm/vagrant-lxc/issues/133)
386
+
387
+ ## [0.5.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.4.0...v0.5.0) (Aug 1, 2013)
388
+
389
+ BACKWARDS INCOMPATIBILITIES:
390
+
391
+ - To align with Vagrant's core behaviour, forwarded ports are no longer attached
392
+ to 127.0.0.1 and `redir`'s `--laddr` parameter is skipped in case the `:host_ip`
393
+ config is not provided, that means `redir` will listen on connections coming
394
+ from any of the host's IPs.
395
+
396
+ FEATURES:
397
+
398
+ - Add support for salt-minion and add latest dev release for ubuntu codenamed saucy [#116](https://github.com/fgrehm/vagrant-lxc/pull/116)
399
+ - Add support for using a sudo wrapper script [#90](https://github.com/fgrehm/vagrant-lxc/issues/90)
400
+ - `redir` will log to `/var/log/syslog` if `REDIR_LOG` env var is provided
401
+
402
+ IMPROVEMENTS:
403
+
404
+ - Error out if dependencies are not installed [#11](https://github.com/fgrehm/vagrant-lxc/issues/11) / [#112](https://github.com/fgrehm/vagrant-lxc/issues/112)
405
+ - Support for specifying host interface/ip for binding `redir` [#76](https://github.com/fgrehm/vagrant-lxc/issues/76)
406
+ - Add Vagrantfile VM name to the container name [#115](https://github.com/fgrehm/vagrant-lxc/issues/115)
407
+ - Properly handle forwarded port collisions [#5](https://github.com/fgrehm/vagrant-lxc/issues/5)
408
+ - Container's customizations are now written to the config file (usually
409
+ kept under `/var/lib/lxc/CONTAINER/config`) instead of passed in as a `-s`
410
+ parameter to `lxc-start`
411
+
412
+ ## [0.4.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.3.4...v0.4.0) (Jul 18, 2013)
413
+
414
+ FEATURES:
415
+
416
+ - New box format [#89](https://github.com/fgrehm/vagrant-lxc/issues/89)
417
+
418
+ BUG FIXES:
419
+
420
+ - Add translation for stopped status [#97](https://github.com/fgrehm/vagrant-lxc/issues/97)
421
+ - Enable retries when fetching container state [#74](https://github.com/fgrehm/vagrant-lxc/issues/74)
422
+ - Fix error when setting Debian boxes hostname from Vagrantfile [#91](https://github.com/fgrehm/vagrant-lxc/issues/91)
423
+ - BTRFS-friendly base boxes [#81](https://github.com/fgrehm/vagrant-lxc/issues/81)
424
+ - Extended templates path lookup [#77](https://github.com/fgrehm/vagrant-lxc/issues/77) (tks to @aries1980)
425
+ - Fix default group for packaged boxes tarballs on the rake task [#82](https://github.com/fgrehm/vagrant-lxc/issues/82) (tks to @cduez)
426
+
427
+ ## [0.3.4](https://github.com/fgrehm/vagrant-lxc/compare/v0.3.3...v0.3.4) (May 08, 2013)
428
+
429
+ FEATURES:
430
+
431
+ - Support for building Debian boxes (tks to @Val)
432
+ - Support for installing babushka on base boxes (tks to @Val)
433
+
434
+ IMPROVEMENTS:
435
+
436
+ - Replace `lxc-wait` usage with a "[retry mechanism](https://github.com/fgrehm/vagrant-lxc/commit/3cca16824879731315dac32bc2df1c643f30d461#L2R88)" [#22](https://github.com/fgrehm/vagrant-lxc/issues/22)
437
+ - Remove `/tmp` files after the machine has been successfully shut down [#68](https://github.com/fgrehm/vagrant-lxc/issues/68)
438
+ - Clean up base boxes files after they've been configured, resulting in smaller packages
439
+ - Bump development dependency to Vagrant 1.2+ series
440
+
441
+ BUG FIXES:
442
+
443
+ - Issue a `lxc-stop` in case the container cannot shutdown gracefully [#72](https://github.com/fgrehm/vagrant-lxc/issues/72)
444
+
445
+ ## [0.3.3](https://github.com/fgrehm/vagrant-lxc/compare/v0.3.2...v0.3.3) (April 23, 2013)
446
+
447
+ BUG FIXES:
448
+
449
+ - Properly kill `redir` child processes [#59](https://github.com/fgrehm/vagrant-lxc/issues/59)
450
+ - Use `uname -m` on base Ubuntu lxc-template [#53](https://github.com/fgrehm/vagrant-lxc/issues/53)
451
+
452
+ IMPROVEMENTS:
453
+
454
+ - Initial acceptance test suite
455
+ - New rake tasks for building Ubuntu precise and raring base amd64 boxes
456
+
457
+ ## [0.3.2](https://github.com/fgrehm/vagrant-lxc/compare/v0.3.1...v0.3.2) (April 18, 2013)
458
+
459
+ - Do not display port forwarding message in case no forwarded ports were set
460
+
461
+ ## [0.3.1](https://github.com/fgrehm/vagrant-lxc/compare/v0.3.0...v0.3.1) (April 18, 2013)
462
+
463
+ - Improved output to match lxc "verbiage"
464
+
465
+ ## [0.3.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.2.0...v0.3.0) (April 10, 2013)
466
+
467
+ BACKWARDS INCOMPATIBILITIES:
468
+
469
+ - Boxes `lxc-template` should support a `--tarball` parameter
470
+ - `start_opts` config was renamed to `customize`, please check the README for the expected parameters
471
+ - V1 boxes are no longer supported
472
+ - `target_rootfs_path` is no longer supported, just symlink `/var/lib/lxc` to the desired folder in case you want to point it to another partition
473
+ - Removed support for configuring private networks. It will come back at some point in the future but if you need it you should be able to set using `customize 'network.ipv4', '1.2.3.4/24'`
474
+
475
+ IMPROVEMENTS:
476
+
477
+ - lxc templates are removed from lxc template dir after container is created
478
+ - Treat NFS shared folders as a normal shared folder instead of ignoring it so we can share the same Vagrantfile with VBox environments
479
+ - Support for lxc 0.7.5 (tested on Ubuntu 12.04) [#49](https://github.com/fgrehm/vagrant-lxc/issues/49)
480
+ - Remove `/tmp` files when packaging quantal64 base box [#48](https://github.com/fgrehm/vagrant-lxc/issues/48)
481
+ - Avoid picking the best mirror on quantal64 base box [#38](https://github.com/fgrehm/vagrant-lxc/issues/38)
482
+
483
+ BUG FIXES:
484
+
485
+ - Redirect `redir`'s stderr output to `/dev/null` [#51](https://github.com/fgrehm/vagrant-lxc/issues/51)
486
+ - Switch from `ifconfig` to `ip` to grab container's IP to avoid localization issues [#50](https://github.com/fgrehm/vagrant-lxc/issues/50)
487
+
488
+ ## [0.2.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.1.1...v0.2.0) (March 30, 2013)
489
+
490
+ - Experimental box packaging (only tested with Ubuntu 64 base box)
491
+
492
+ ## [0.1.1](https://github.com/fgrehm/vagrant-lxc/compare/v0.1.0...v0.1.1) (March 29, 2013)
493
+
494
+ - Removed support for development under Vagrant < 1.1
495
+ - Removed rsync from base quantal64 box to speed up containers creation [#40](https://github.com/fgrehm/vagrant-lxc/issues/40)
496
+ - Containers are now named after project's root dir [#14](https://github.com/fgrehm/vagrant-lxc/issues/14)
497
+ - Skip Vagrant's built in SSH redirect
498
+ - Allow setting rootfs from Vagrantfile [#30](https://github.com/fgrehm/vagrant-lxc/issues/30)
499
+
500
+ ## [0.1.0](https://github.com/fgrehm/vagrant-lxc/compare/v0.0.3...v0.1.0) (March 27, 2013)
501
+
502
+ - Support for chef added to base quantal64 box
503
+ - Puppet upgraded to 3.1.1 on base quantal64 box
504
+ - Port forwarding support added [#6](https://github.com/fgrehm/vagrant-lxc/issues/6)
505
+
506
+ ## Previous
507
+
508
+ The changelog began with version 0.1.0 so any changes prior to that
509
+ can be seen by checking the tagged releases and reading git commit
510
+ messages.