Commit Graph

52 Commits

Author SHA1 Message Date
Chris Roberts 976320ec06 Limit automatic box outdated checks to once per hour 2018-11-01 09:45:11 -07:00
Seth Vargo 1b414d3d9e
That file has to exist 2016-05-29 00:18:33 -04:00
Seth Vargo fb7c4033a9
Do not create a tempfile when downloading box metadata
The only reason we were using Tempfile was to generate the path. This
commit switches to using `Dir::Tmpname.create`, which accomplishes the
same thing without the overhead of creating and removing a tempfile.
2016-05-28 23:22:34 -04:00
Mitchell Hashimoto 1ccd91aada Merge pull request #4473 from rtkrruvinskiy/https_metadata
Add HTTPS download options to `box update` and `box outdated`
2015-11-19 16:16:48 -08:00
Mikhail Zholobov 079e06cd09 box/package: Take only files while packaging the new box
Fixes GH-5657
2015-04-30 16:08:18 +03:00
Ray Ruvinskiy 5a7e00c5b1 Add HTTPS download options to `box update` and `box outdated`
Vagrant::Box.load_metadata did not provide a way to specify the HTTPS
download options that could be specified when downloading boxes
(ca cert, ca path, client cert, insecure). As a result, while it was
possible to add a box whose metadata file needed to be downloaded with one of
those options specified, it was impossible to check for updates. The following
changes have been made to address the situation:

1. Create a DownloadMixins module to provide the --insecure, --cacert, --capth,
   and --cert command line options to all of `vagrant box add`,
   `vagrant box update`, and `vagrant box outdated`.
2. Extend `Vagrant::Box.has_update?` and `Vagrant::Box.load_metadata` to accept
   said download options.
3. Extend `box outdated` and `box update` commands to pass download options
   down.
4. Extend `Vagrant::Builtin::Action::BoxCheckOutdated` to honour download
   options.
5. Options specified on the command line take precedence over options specified
   in the machine configuration, if any.
6. Fix bug in `vagrant box add` where client cert was being passed down using
   the wrong environment key.
7. Unit test coverage in update_test and box_check_outdated_test.

Resolves #4420
2014-09-07 23:57:34 -04:00
Kalman Hazins bb052366f7 Change symbols inside hashes to 1.9 JSON-like syntax 2014-05-22 12:35:12 -04:00
Mitchell Hashimoto 1a08c4def5 core: Box#in_use? as an API 2014-04-25 02:02:49 -07:00
Mitchell Hashimoto e05bfa979e core: remove temp file when done with box 2014-04-17 08:58:38 -07:00
Mitchell Hashimoto 0e46c5d9de core: Raise predictable error if box metadata downlaod fails 2014-04-05 09:20:03 -07:00
Mitchell Hashimoto 46a42eb9c2 core: when loading box metadata, specify JSON header 2014-02-07 10:51:57 -08:00
Mitchell Hashimoto 61a1082d65 core: BoxCheckOutdated is *much* simpler, unified logic, tests 2014-02-05 21:20:18 -08:00
Mitchell Hashimoto f2509f5c65 commands/box: outdated command to find outdated boxes 2014-02-05 21:20:10 -08:00
Mitchell Hashimoto bd9f375263 core: Box can store a metadata URL 2014-02-05 21:20:07 -08:00
Mitchell Hashimoto d87c414327 core: Box has a version field 2014-02-05 21:19:10 -08:00
Mitchell Hashimoto bf72c7cb5d core: human friendly error for corrupt box metadata 2013-11-23 11:54:42 -08:00
Mitchell Hashimoto d1eccbf98f SafeChdir all the things for thread safety 2013-04-03 08:31:43 -07:00
Mitchell Hashimoto 9464796c6d Human friendly error when metadata.json is missing from a box 2013-03-15 11:12:50 -07:00
Mitchell Hashimoto 35aef1aa0b Use bsdtar to repackage boxes 2013-01-28 13:18:07 -08:00
Mitchell Hashimoto cc076e5ee5 Box#repackage to repackage a box. 2012-07-11 18:36:22 -07:00
Mitchell Hashimoto da15105a8f Make Box2 the new Box
This involved defaulting all box searching at the moment to VirtualBox.
Additionally, box upgrading is not yet handled. This needs to be done at
some point.
2012-07-11 18:36:21 -07:00
Mitchell Hashimoto 739d5ffb5f Lazy load attributes for runners. Get box repackage working. 2011-12-09 20:24:34 -08:00
Mitchell Hashimoto d9321ed4d4 Box destroy works again 2011-12-09 18:06:34 -08:00
Mitchell Hashimoto d92f3d8c6d Box add works again with new env stuff 2011-12-09 17:33:30 -08:00
Mitchell Hashimoto daf711fd80 Separate Vagrant::Action into Runner and Registry 2011-12-09 14:22:03 -08:00
Mitchell Hashimoto 833dbf8fc4 Remove box dependence on env 2011-12-04 14:06:05 -08:00
Mitchell Hashimoto 7c7f5d48fe Don't need to call ".new" on raising exceptions 2010-12-21 20:04:21 -08:00
Mitchell Hashimoto 39407694e3 Validate only certain command sequences [closes GH-188] 2010-10-13 18:59:25 -07:00
Mitchell Hashimoto 3e54150f71 Box add checks if box exists before the download [closes GH-170] 2010-10-01 09:24:58 -07:00
Mitchell Hashimoto c8d7e6601d YARD and some documentation 2010-09-22 09:43:30 -06:00
Mitchell Hashimoto 2026bb0b1c Remove unnecessary class methods on Box class. Move commands over to use "boxes" on env 2010-09-11 10:33:49 -07:00
Mitchell Hashimoto 761da0de63 Remove method calls to "Box.find" and remove method 2010-09-11 10:21:35 -07:00
Mitchell Hashimoto fcf1116f27 `vagrant box repackage` can now take the typical `--output` and `--include` parameters 2010-07-28 20:30:16 -07:00
Mitchell Hashimoto 9895f93e1d Separate vagrantfile creation in packaging and actual packaging 2010-07-27 23:22:10 -07:00
Mitchell Hashimoto d309f79fbc Get rid of unused ivar on Box 2010-07-11 09:26:57 -07:00
Mitchell Hashimoto 5d2e3d9f6f Box destroying middleware 2010-07-08 08:32:41 -07:00
Mitchell Hashimoto f6a53ddff0 Box adding middleware, box add uses it now 2010-07-07 23:16:56 -07:00
Mitchell Hashimoto 91ae6178df Runner loggers now use their @runner.logger instead of "global" logger 2010-05-20 16:46:23 -07:00
Mitchell Hashimoto d9308f86ec Boxes now properly use scoped Environment 2010-04-19 14:15:52 -07:00
Mitchell Hashimoto 1d518e2693 Box.find sets environment of found box 2010-03-20 01:04:56 -07:00
Mitchell Hashimoto 36648e7a12 Box#directory properly passes environment to class method 2010-03-20 00:52:28 -07:00
Mitchell Hashimoto 3504b1dbcb Boxes modified for use with environment 2010-03-19 22:29:59 -07:00
Mitchell Hashimoto 11780fb618 Converted Box class to use new environment 2010-03-19 21:31:43 -07:00
Mitchell Hashimoto b5daf5ae86 `vagrant down` command and associated actions now use the new environment 2010-03-19 16:08:29 -07:00
Mitchell Hashimoto 59ae16998d Set the environment on the loaded box 2010-03-19 15:53:24 -07:00
Mitchell Hashimoto efe98df4b0 Added `vagrant box list` command to list added boxes 2010-03-07 21:34:53 -08:00
Mitchell Hashimoto 816a1734e4 Vagrant::Box developer documentation 2010-03-04 00:08:25 -08:00
Mitchell Hashimoto 1a6f838baa `vagrant up` (specifically Actions::VM::Import) now uses a configured box rather than a base VM. Much cleaner! 2010-02-23 00:05:41 -08:00
Mitchell Hashimoto c7e21a0c94 Moved the destroy logic out to a re-usable box action. 2010-02-22 21:32:15 -08:00
Mitchell Hashimoto 546db294ca `vagrant box remove` functionality is in 2010-02-22 21:27:57 -08:00