-
Notifications
You must be signed in to change notification settings - Fork 573
vagrant provision using aws doesn't update cookbook #385
Comments
|
Hi, I'm stuck too with this problem... But i'm not destroying every time I need to update my cookbooks (also not using thevagrant-berkshelf plugin). Instead i'm having to delete the synced_folders file and reloading with --provision option. I think that is a Vagrant problem, not vagrant-aws. Cause i'm having this problem every time I need to start my VM's locally (with Virtualbox). |
You don't need to run reload --provision for synced folders, you can just I think this most probably is a vagrant-aws problem because when running on Ideally vagrant-aws would add an rsync to the job queue before running On 19 May 2015 at 17:57, Gustavo Vinícius [email protected] wrote:
|
Related berkshelf/vagrant-berkshelf#281 |
By design. This is the reason this happens: However, if the owners of this repo want to sync folders before provision, this is a one-line change, just run the SyncedFolders action before Provision:
|
Thanks @Temikus. I'd actually already tried adding b2.use SyncedFolders to the action_provision for vagrant-aws but it produces behavior I don't understand. With the following (and running vagrant-berkshelf and the chef provisioner):
The order of operation goes
If I change to this:
Then the order goes:
That's not a typo, putting SyncedFolders first results in the sync happening after chef, putting sync after provision results in the sync happening before chef. I'm not sure why. In any case, in both instances only the /vagrant directory is synced, not any other synced folders (including the berkshelf shelf for the instance). This is despite the berkshelf directory being listed in .vagrant/machines/default/aws/synced_folders and running This then starts to lead me down the rabbit hole of how SyncedFolders work, whether they differ from what happens when you run |
#347 may need to be reverted as this is is major regression in relied upon behavior, regardless of what the docs have claimed.. Current master seriously breaks the work-flow with the puppet provisioner and related plugins such as |
@jhoblitt Maybe file an upstream bug asking for clarification in the behavior? I can file one myself, but I don't use AWS/puppet much, so it may be tough for me to follow-up on those questions. |
It's not just puppet, vagrant-berkshelf has the same problem. In fact anything that relies on synced folders outside of the vagrant directory won't work |
Hi,
I'm using vagrant-aws and vagrant-berkshelf for cookbook development on Amazon Linux.
I'm stuck at the moment having to
vagrant destroy
andvagrant up
every time I need to update cookbooks on a host at the moment asvagrant provision
does not update cookbooks on the instance.Running
vagrant reload --provision
also does not update the cookbooks.When running
vagrant provision
I can see the cookbooks being vendored by the vagrant-berkshelf plug-in and the code updates in the ~/.berkshelf/vagrant-berkshelf/shelves/ directory that matches the instance. The recipe files in /vagrant/recipes on the instance also update for the cookbook that the instance relates to.The problem is that the cookbooks in /tmp/vagrant-chef don't update. When initially running
vagrant up
there is a line like this:Which does not run when using
vagrant provision
The text was updated successfully, but these errors were encountered: