Chris Roberts
40f4e6f67e
Vagrant Environment isolated plugins
...
Adds support for plugins isolated to a specific `Vagrant::Environment`
which can be managed by the vagrant plugin command using the the
--local flag.
2018-07-17 14:49:41 -07:00
Brian Cain
52c3dcc70e
( #9997 ) Catch and allow for non-standard exit codes
...
Prior to this commit, the run trigger option wouldn't catch for failures
outside of the #Subprocess.execute raising exceptions. This commit fixes
that by inspecting the exit code result of the subprocess and using the
new `exit_codes` option to determine how to move forward with the
trigger.
2018-07-09 15:56:26 -07:00
Chris Yungmann
7fb9d3eb4f
propagate unset guestpath
2018-05-08 22:51:30 -05:00
Brian Cain
1ef45d8073
Add warning if vagrant-triggers plugin is installed
...
To allow users to continue to use the community plugin, this commit adds
a switch that will not load the core trigger feature if it detects the
community plugin is installed. It also allows the user to disable the
warning so they can continue to use the plugin without extra output.
2018-04-26 14:59:09 -07:00
Brian Cain
a9be56b356
Code updates based on PR feedback
2018-04-24 10:04:40 -07:00
Brian Cain
e25cb51f15
Properly print warnings on config settings that aren't supported
2018-04-20 10:51:38 -07:00
Brian Cain
12b1a3dfe4
Update triggers based on code review
2018-04-20 10:51:38 -07:00
Brian Cain
e0806f623c
Remove TODO
2018-04-20 10:51:38 -07:00
Brian Cain
0054c5aae6
Raise error if incomplete trigger block is defined
2018-04-20 10:51:38 -07:00
Brian Cain
767a315393
Trigger cleanup
2018-04-20 10:51:38 -07:00
Brian Cain
693eb2fbbb
Add machine level warning when privileged option is set for run
2018-04-20 10:51:38 -07:00
Brian Cain
3ad4f576c0
Add only_on validation for config
2018-04-20 10:51:38 -07:00
Brian Cain
ca672eb8e6
Trigger plugin cleanup
2018-04-20 10:51:38 -07:00
Brian Cain
85dedf25d9
Ensure that :all triggers don't get filtered out
2018-04-20 10:51:38 -07:00
Brian Cain
2c30eab723
Don't run local commands as sudo by default
2018-04-20 10:51:38 -07:00
Brian Cain
eac2fcf71e
Filter triggers based on only_on restraint
2018-04-20 10:51:38 -07:00
Brian Cain
372a6a7911
Initial trigger plugin scaffolding
2018-04-20 10:51:38 -07:00
Brian Cain
a5d8cc1caa
Update trigger classes with comments
2018-04-20 10:51:38 -07:00
Brian Cain
956ed004bb
Update trigger config merge function
2018-04-20 10:51:38 -07:00
Brian Cain
abb6d77442
Move location of command validator
2018-04-20 10:51:38 -07:00
Brian Cain
6cbb5d8e5d
Add unit tests for config, fix type change bug with map!
2018-04-20 10:51:38 -07:00
Brian Cain
42419bbd49
Fix rspec tests
2018-04-20 10:51:38 -07:00
Brian Cain
d0d69e59c9
Update return doc string on validate
2018-04-20 10:51:38 -07:00
Brian Cain
60c4ffa8a6
Ensure run & run_remote are Hashes before updating to shell config
2018-04-20 10:51:38 -07:00
Brian Cain
e752878de9
Update finalize method for run and run_remote objects
2018-04-20 10:51:38 -07:00
Brian Cain
d3dde739fe
Update trigger code docs
2018-04-20 10:51:38 -07:00
Brian Cain
1591ae9916
Make run and run_remote settings shell provisioner configs
2018-04-20 10:51:38 -07:00
Brian Cain
f0ec7c750b
Potential solution for trigger validation when guest is defined
...
Send the defined before and or after triggers in the merge function if
triggers exist already
2018-04-20 10:51:38 -07:00
Brian Cain
51e4118cc2
Debug commit
2018-04-20 10:51:38 -07:00
Brian Cain
0cbf6970fc
Update config class setting
2018-04-20 10:51:38 -07:00
Brian Cain
607368a66c
Introduce merge function to preserve internal state
2018-04-20 10:51:38 -07:00
Brian Cain
d26a925bd7
Update variable doc
2018-04-20 10:51:38 -07:00
Brian Cain
5ca1d1ab64
Finalize config in plugins finalize, improve docs
2018-04-20 10:51:38 -07:00
Brian Cain
b04f13657b
Move warning to logger rather than guest
2018-04-20 10:51:38 -07:00
Brian Cain
a96baad0d7
Add comments for later dev
2018-04-20 10:51:38 -07:00
Brian Cain
60ff2489c4
Display warning if vagrant command for trigger is not found
2018-04-20 10:51:38 -07:00
Brian Cain
8e72ae5bd6
Add basic validation for trigger config objects
2018-04-20 10:51:38 -07:00
Brian Cain
375e8d7153
Remove old comments
2018-04-20 10:51:38 -07:00
Brian Cain
3c5e4b2464
Fix variable doc
2018-04-20 10:51:38 -07:00
Brian Cain
50ecf45d50
Add more doc to create_trigger function
2018-04-20 10:51:38 -07:00
Brian Cain
c10ae070b6
Store correct command for trigger
2018-04-20 10:51:38 -07:00
Brian Cain
e0a5b1d647
Parse block trigger configs
2018-04-20 10:51:38 -07:00
Brian Cain
6f00eb5679
Move trigger options into own plugin class
2018-04-20 10:51:38 -07:00
Brian Cain
fdf1b58570
Introduce ids for trigger blocks
2018-04-20 10:51:38 -07:00
Brian Cain
bb2f3b35b9
Add basic unit test
2018-04-20 10:51:38 -07:00
Brian Cain
7cccddc009
Add basic scaffolding for command parsing
2018-04-20 10:51:38 -07:00
Brian Cain
01b904061d
Use proper command reference for command whitelist params
2018-04-20 10:51:38 -07:00
Brian Cain
0142722787
Add run and run_remote scaffolding
2018-04-20 10:51:38 -07:00
Brian Cain
813ffd06ec
Add more trigger config options
2018-04-20 10:51:38 -07:00
Brian Cain
a194057fc0
Add trigger config plugin
2018-04-20 10:51:38 -07:00