Commit graph

176 commits

Author SHA1 Message Date
Virgil Dupras a1aa60ded5 Remove supports_attach? and call to /sbin/halt
Hosts without support for lxc-attach are ancien and can always use old
versions of vagrant-lxc. To be able to move forward more easily, we
should be able to assume a functional `lxc-attach`.

As for `/sbin/halt`, I'm really not sure it's needed anymore. Let's see
if its removal causes problems.
2018-07-24 11:21:09 -04:00
Virgil Dupras a84f8b59bf redir: adjust failing tests 2018-07-04 15:00:46 -04:00
Virgil Dupras dd24cdc3d6 Fix incompatibility with LXC 3.0
LXC 3.0, unlike 2.1, doesn't support old configuration formats at all
and because our previous approach to handling old format was incomplete,
running `vagrant up` on a system with LXC 3.0 would fail, even if the
base box itself was made with modernized config.

This commit fixes this problem: is the box has a modern config, it's
going to be properly created and booted under LXC 3.0. It does so
without breaking the support for LXC < 2.1
2018-04-29 22:57:31 -04:00
Lucas Kanashiro 2e20f96fec Support the new redir 3.x command line interface
Since redir 2.x upstream is not evolving it, Joachim Nilsson adopted it
and have started to work on it and publish a new command line interface
(check out https://github.com/troglobit/redir). The redir 3.1 is already
available in Debian and Ubuntu in their stable releases.
2018-03-12 13:09:06 -03:00
Virgil Dupras 2b08ae199f driver: little cleanup after LXC 1.0+ requirement bump
The conditional `lxc-version` and `lxc-config` mechanisms aren't needed
anymore. They were for pre-1.0 LXC versions.
2018-01-13 20:34:41 -05:00
Virgil Dupras aa777653f4 Use lxc-info instead of lxc-attach to retrieve container IP
`lxc-info -iH` to retrieve IP address was not available in early LXC
development but was there at LXC 1.0. Because we've bumped our minimum
LXC requirement to v1.0 recently, we can simplify the IP retrieval
process and also get rid of the `dnsmasq` fallback.
2018-01-13 15:53:28 -05:00
Virgil Dupras 97b5882262 Refactoring: make SudoWrapper a bit more self-contained
By looking at the code, it seems that it was a goal to make the sudo
wrapper path configurable through the Vagrantfile, but it wasn't
effective and didn't make much sense (that kind of config is a per-host
config, not a per-guest one).

This caused the cause to be needlessly complex by giving the Provider
the responsibility of instanciating the wrapper. This commit gets rid of
that.

I didn't get rid of `sudo_wrapper` injection in `Driver` and
`Driver::CLI` constructors because they're needed for tests. I'm not
ready to tackle this yet.
2018-01-13 08:32:27 -05:00
Robin Gloster 9c67e13fb8 Fix test on NixOS
Tempfile can be created in /run, too.
2015-08-02 10:15:55 +00:00
Robin Gloster 2b91983cae do not copy the lxc template instead use the full path 2015-08-02 10:15:55 +00:00
Antonio Terceiro 81f2c13541 forward_ports: bind to localhost only by default
This has been raised as security concern on vagrant itself, and fixed
there some time ago.
2015-07-19 12:29:27 -03:00
Cam Cope caa3c53a8f move mountpoint creation to lxc template for lvm rootfs support 2015-04-05 17:46:22 -07:00
Fabio Rehm 156bc015c8 Allow backingstore options to be used along with the sudo wrapper script [GH-310] 2015-01-14 21:07:35 -02:00
Fabio Rehm f4b738ebd9 Minor tweaks to specs introduced by GH-329 2015-01-11 21:16:30 -02:00
Tim Goddard fe532525c8 Support for formatted overlayfs path spec when finding the root FS path
We're using snapshots in a CI set-up so that a Vagrant cluster can be built
once, then each push to the repository only checked as an incremental
update to the cluster. We copy each LXC VM to a master image, then re-create
the original names as snapshots.

This change corrects a method which assumes the LXC root path in the config
file is a simple directory name, which is only true for directory-backed
instances.

Conflicts:
	spec/unit/driver_spec.rb
2014-11-12 15:21:28 +13:00
Fabio Rehm 2f0eccb236 🔨 Fix the build 🔨 2014-10-15 01:14:52 -03:00
Azamat Khudaygulov f454924a59 The path of storage containers taken from lxc-config, instead of using a constant for lxc>=1.0.0.
* for lxc to 1.0.0 using constant Vagrant::LXC::Driver::DEFAULT_CONTAINERS_PATH
 * change method Vagrant::LXC::Driver::CLI#version to call lxc-create if lxc-version command not exists (to lxc version 1.0.0)
2014-09-23 16:07:03 +04:00
Fabio Rehm 80d54bb261 Fix the build 2014-07-24 21:58:04 -03:00
Fabio Rehm 3e22f424e6 driver: Escape synced folders with spaces
Fix GH-291
2014-06-08 23:27:27 -03:00
Fabio Rehm 235f268942 Backport some specs 2014-06-08 22:52:33 -03:00
Fabio Rehm c94e765391 Fix the build 2014-05-12 23:17:04 -03:00
Fabio Rehm 5eef1524d7 driver: Use relative guest paths for synced folders
Closes GH-258
2014-05-04 20:52:00 -03:00
Fabio Rehm b17fb7baa8 Fix broken specs 2014-05-04 20:50:04 -03:00
Fabio Rehm 9838d32c2d action/forward_ports: Merge port forwarding with sudo specs into a single file [GH-259] 2014-05-03 23:31:43 -03:00
Fabio Rehm a0fe2f9cf0 action/clear_forwarded_ports: Fix privileged port detection and simplify code [GH-259] 2014-05-03 23:28:59 -03:00
Fabio Rehm ee63d2b2ae Merge branch 'sudo-for-redir' of https://github.com/guerremdq/vagrant-lxc 2014-05-03 23:14:29 -03:00
Jef Mathiot 0eae5c0926 Removed unsecure calls to SudoWrapper#su_c. 2014-04-17 12:56:56 +02:00
idontdomath d8d371984b enabled warning on the used environment for forward ports spec.
removed warn checks on test were the condition didn't apply.
2014-03-29 20:21:14 -03:00
Facundo Guerrero 36b38b7664 add expect for warn message 2014-03-27 15:25:12 -03:00
guerremdq 697d8bde08 only use sudo with redir when port number is lower than 1024 2014-03-23 13:39:42 -03:00
Fabio Rehm c2d0e0a02c spec: Embrace rspec3 2014-03-21 19:31:34 -03:00
Fabio Rehm 164afc7839 package: Nicely handle optional lxc-template on base boxes when packaging 2014-03-21 19:30:28 -03:00
Fabio Rehm 2e2c2fad56 Convert specs to RSpec 2.99.0.beta2 syntax with Transpec
This conversion is done by Transpec 1.10.2 with the following command:
    transpec

* 46 conversions
    from: obj.should
      to: expect(obj).to

* 20 conversions
    from: obj.stub(:message)
      to: allow(obj).to receive(:message)

* 10 conversions
    from: == expected
      to: eq(expected)

* 6 conversions
    from: obj.should_receive(:message)
      to: expect(obj).to receive(:message)

* 5 conversions
    from: obj.should_not
      to: expect(obj).not_to

* 5 conversions
    from: Klass.any_instance.stub(:message) { |arg| }
      to: Klass.any_instance.stub(:message) { |instance, arg| }

* 5 conversions
    from: Klass.any_instance.stub(:message)
      to: allow_any_instance_of(Klass).to receive(:message)

* 1 conversion
    from: lambda { }.should
      to: expect { }.to
2014-03-14 11:38:54 -03:00
Fabio Rehm 60f3a67bb0 Make sure Vagrant::LXC.source_root is available to all specs 2014-03-14 11:34:46 -03:00
Fabio Rehm 2cdbf84848 I've tested this by hand and it will take us some effort to get rid of the excessive mocking I wrote 2014-03-14 11:21:45 -03:00
Fabio Rehm eb274e879c Fix spec 2014-03-14 11:21:45 -03:00
Fabio Rehm 20d4547044 synced_folder: Support for mount_options 2014-03-13 23:36:15 -03:00
Fabio Rehm 0aac50fa76 package: Add spec to check that the plugin does not blow up in case the new lxc-config file is not present 2014-03-13 00:57:37 -03:00
Fabio Rehm 38ae9441fc package: lxc-config should be included when repackaging boxes 2014-03-13 00:57:37 -03:00
Fabio Rehm 36f7daa528 💣 hand made sanity checks (vagrant-spec is coming in!) 2014-03-13 00:57:36 -03:00
Fabio Rehm aef40d5b42 core: Fix tests to be rspec 3.0 compatible [GH-111] 2014-03-13 00:57:36 -03:00
Fabio Rehm deac5930cc action/handle_box_metadata: Implement support for 1.0.0 base boxes 2014-03-09 21:21:39 -03:00
Fabio Rehm 44f00bd7ed Add spec to check if container state detection is case insentive [GH-217] 2014-02-12 01:47:23 -02:00
Fabio Rehm 7e00b96520 Show something meaningful to the user in case the container already exists [GH-132] 2014-02-02 19:27:08 -02:00
Fabio Rehm bf6e4b5c89 Respect Vagrantfile options to disable forwarded port
Closes GH-149
2013-11-06 21:01:21 -02:00
Fabio Rehm c61ade8ef4 Nicely handle nil values for :host_ip when specifying forwarded ports
Fix GH-170
2013-11-06 20:25:46 -02:00
Fabio Rehm 02f85e4e59 Couple of tweaks to acceptance specs
This will be eventually converted to Bats...
2013-11-06 01:11:38 -02:00
Fabio Rehm 2b062487bc Hack in a fix for hosts that do not have lxc-shutdown around [GH-150] 2013-10-24 11:47:15 -02:00
Vokhmin Alexey V 39515cc1da #157: small refactoring, updated specs 2013-10-12 02:15:12 +04:00
Fabio Rehm c194b3a24a Fix lxc-attach --namespaces support detection and cache the result 2013-10-03 13:26:04 -03:00
Fabio Rehm ca0d8d53a5 Fix broken specs 2013-10-03 10:38:42 -03:00