Ronan, Thanks. So, you know, I thought maybe I could take my original config that generates an EC2 AMI, and just put a vagrant post processor at the end of that, and voila, I'd have an EC2 AMI and a vagrant box built from the same source. Simple, right?
Well, I tried that, and I'm getting "The box you attempted to add doesn't match the provider you specified.". I really wish the vagrant docs made more sense to those that didn't write the vagrant app. There's a whole lotta context missing. Doug. On Tuesday, February 10, 2015 at 1:23:40 PM UTC-8, Ronan Amicel wrote: > > Hi Douglas, > > Maybe you can use Packer's "Vagrant post-processor"? > https://www.packer.io/docs/post-processors/vagrant.html > > Regards, > > Ronan Amicel > > On Tue, Feb 10, 2015 at 10:12 PM, Douglas Garstang <[email protected] > <javascript:>> wrote: > >> Alvaro. >> >> I guess I meant to post to the packer list. Oops. Anyway, option B is >> what I am doing. I have a resultant ovf file. What I can't find anywhere, >> is how do I then convert that to a .box file so that vagrant can use it? >> >> Doug. >> >> >> On Tuesday, February 10, 2015 at 12:51:27 PM UTC-8, Alvaro Miranda >> Aguilera wrote: >> >>> Hello, >>> >>> 2 options. >>> >>> A. >>> >>> you create a box using the source machine >>> >>> you provision with the Vagrantfile, then you need to use vagrant package >>> >>> https://docs.vagrantup.com/v2/cli/package.html >>> >>> It need to match the name of the vm in the gui, so you can use >>> >>> VBoxManage list vms >>> >>> and then >>> >>> vagrant package --base <source_vm_name> --output <name_of_box.box> >>> >>> just use a final name on the output, since I read that some people had >>> issues if they rename it. >>> >>> >>> B. >>> >>> You copy the ovf and vmdk of the source to a directory, and use >>> packer.io >>> >>> you can put those files into a directory, say source, then create a >>> packer json template like this >>> >>> { >>> "variables": { >>> "ssh_name": "vagrant", >>> "ssh_pass": "vagrant", >>> "output": "outputbox", >>> "compression" : 6 >>> }, >>> >>> "builders": [{ >>> "type": "virtualbox-ovf", >>> "guest_additions_mode": "disable", >>> "source_path": "source/packer-virtualbox-ovf-1423592072.ovf", >>> "output_directory": "output-{{user `output`}}", >>> "vm_name": "{{user `hostname`}}", >>> "headless" : 0, >>> "ssh_username": "{{user `ssh_name`}}", >>> "ssh_password": "{{user `ssh_pass`}}", >>> "ssh_wait_timeout": "40m", >>> "shutdown_command": "shutdown -h now", >>> "shutdown_timeout": "40m" >>> }], >>> >>> "provisioners" : [ >>> { >>> "type": "shell", >>> "execute_command": "sh '{{ .Path }}'", >>> "inline": [ >>> "echo line end in comma", >>> "echo last line has no comma" >>> ] >>> } >>> ], >>> >>> "post-processors": [ >>> { >>> "type": "vagrant", >>> "only": ["virtualbox-ovf"], >>> "keep_input_artifact": true, >>> "output": "{{user `output`}}.box", >>> "compression_level": "{{user `compression`}}" >>> } >>> ] >>> } >>> >>> On Wed, Feb 11, 2015 at 8:01 AM, Douglas Garstang >>> <[email protected]> wrote: >>> > All, >>> > >>> > I'm trying to rebundle the Ubuntu vagrant box (add some stuff to it). >>> So, I >>> > started with the virtualbox-ovf builder. I have a resulting >>> > output-virtualbox-ovf/ directory with the following files in it. >>> > >>> > [chef=dev] Douglass-MacBook-Pro:output-virtualbox-ovf doug$ ls -l >>> > total 819680 >>> > -rw------- 1 doug staff 419660288 Feb 10 10:15 >>> > packer-virtualbox-ovf-1423592072-disk1.vmdk >>> > -rw------- 1 doug staff 11426 Feb 10 10:15 >>> > packer-virtualbox-ovf-1423592072.ovf >>> > >>> > I've been searching for hours and I can't find how to add this back >>> into >>> > vagrant again as a box so I can use it. I'm rather frustrated that >>> this >>> > seems so difficult. I've tried using various combinations of 'vagrant >>> box >>> > add' and all return errors. I then moved onto 'VBoxManage import', >>> which >>> > does something, I just don't know what. >>> > >>> > I suppose I could use the source Ubuntu vagrant box, use a Vagrantfile >>> to >>> > start the VM, and then a shell provisioner in Vagrantfile to add what >>> I >>> > need, and then use 'vagrant package' but that seems clunky compared to >>> just >>> > using the virtualbox builder and doing it in one step with that. >>> > >>> > Doug >>> > >>> > >>> > >>> > -- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "Vagrant" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an >>> > email to [email protected]. >>> > For more options, visit https://groups.google.com/d/optout. >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Vagrant" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Vagrant" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
