hashicorp / packer

Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.
http://www.packer.io
Other
15.04k stars 3.32k forks source link

provisioner type not found: ansible #4776

Closed ezlee closed 7 years ago

ezlee commented 7 years ago

packer version 0.8.6, jenkins 2.42, ansible 2.1.1.0 on Jenkins server I was able to use packer to build gcp image without any issue before. But when I rebuild my jenkins box and re-configure packer to build the same gcp image, the packer "ansible" provider could not be discovered. I have both "ansible-local" and "ansible" remote provisioners plugins and build configuration defined in the config.json file. But only "ansible" provisioner was not able to be discovered.

debug info showing: Failed to initialize build 'gcp_image': provisioner type not found: ansible

What could be wrong with the ansible provisioner? I only have the /usr/local/bin//usr/local/bin/packer-provisioner-ansible-local plugin binary, do not have /usr/local/bin/packer-provisioner-ansible, but it was working before.

+ packer build -only=gcp_image packer/packer.json
2017/04/05 23:02:42 [INFO] Packer version: 0.8.6  f8f7b7a34c1be06058f5aca23a51247db12cdbc5+CHANGES
2017/04/05 23:02:42 Packer Target OS/Arch: linux amd64
2017/04/05 23:02:42 Built with Go Version: go1.5
2017/04/05 23:02:42 [DEBUG] Discovered plugin: docker = /usr/local/bin/packer-builder-docker
2017/04/05 23:02:42 [DEBUG] Discovered plugin: file = /usr/local/bin/packer-builder-file
2017/04/05 23:02:42 [DEBUG] Discovered plugin: googlecompute = /usr/local/bin/packer-builder-googlecompute
2017/04/05 23:02:42 [DEBUG] Discovered plugin: qemu = /usr/local/bin/packer-builder-qemu
2017/04/05 23:02:42 [DEBUG] Discovered plugin: artifice = /usr/local/bin/packer-post-processor-artifice
2017/04/05 23:02:42 [DEBUG] Discovered plugin: atlas = /usr/local/bin/packer-post-processor-atlas
2017/04/05 23:02:42 [DEBUG] Discovered plugin: compress = /usr/local/bin/packer-post-processor-compress
2017/04/05 23:02:42 [DEBUG] Discovered plugin: docker-dockerfile = /usr/local/bin/packer-post-processor-docker-dockerfile
2017/04/05 23:02:42 [DEBUG] Discovered plugin: docker-import = /usr/local/bin/packer-post-processor-docker-import
2017/04/05 23:02:42 [DEBUG] Discovered plugin: docker-push = /usr/local/bin/packer-post-processor-docker-push
2017/04/05 23:02:42 [DEBUG] Discovered plugin: docker-save = /usr/local/bin/packer-post-processor-docker-save
2017/04/05 23:02:42 [DEBUG] Discovered plugin: docker-tag = /usr/local/bin/packer-post-processor-docker-tag
2017/04/05 23:02:42 [DEBUG] Discovered plugin: ansible-local = /usr/local/bin/packer-provisioner-ansible-local
2017/04/05 23:02:42 [DEBUG] Discovered plugin: chef-client = /usr/local/bin/packer-provisioner-chef-client
2017/04/05 23:02:42 [DEBUG] Discovered plugin: chef-solo = /usr/local/bin/packer-provisioner-chef-solo
2017/04/05 23:02:42 [DEBUG] Discovered plugin: file = /usr/local/bin/packer-provisioner-file
2017/04/05 23:02:42 [DEBUG] Discovered plugin: powershell = /usr/local/bin/packer-provisioner-powershell
2017/04/05 23:02:42 [DEBUG] Discovered plugin: shell = /usr/local/bin/packer-provisioner-shell
2017/04/05 23:02:42 [DEBUG] Discovered plugin: shell-local = /usr/local/bin/packer-provisioner-shell-local
2017/04/05 23:02:42 [DEBUG] Discovered plugin: windows-restart = /usr/local/bin/packer-provisioner-windows-restart
2017/04/05 23:02:42 [DEBUG] Discovered plugin: windows-shell = /usr/local/bin/packer-provisioner-windows-shell
2017/04/05 23:02:42 Detected home directory from env var: /var/lib/jenkins
2017/04/05 23:02:42 Detected home directory from env var: /var/lib/jenkins
2017/04/05 23:02:42 Attempting to open config file: /var/lib/jenkins/.packerconfig
2017/04/05 23:02:42 [WARN] Config file doesn't exist: /var/lib/jenkins/.packerconfig
2017/04/05 23:02:42 Packer config: &{DisableCheckpoint:false DisableCheckpointSignature:false PluginMinPort:10000 PluginMaxPort:25000 Builders:map[file:/usr/local/bin/packer-builder-file virtualbox-ovf:/usr/local/bin/packer-builder-virtualbox-ovf amazon-chroot:/usr/local/bin/packer-builder-amazon-chroot amazon-ebs:/usr/local/bin/packer-builder-amazon-ebs openstack:/usr/local/bin/packer-builder-openstack parallels-pvm:/usr/local/bin/packer-builder-parallels-pvm vmware-vmx:/usr/local/bin/packer-builder-vmware-vmx googlecompute:/usr/local/bin/packer-builder-googlecompute null:/usr/local/bin/packer-builder-null docker:/usr/local/bin/packer-builder-docker parallels-iso:/usr/local/bin/packer-builder-parallels-iso qemu:/usr/local/bin/packer-builder-qemu virtualbox-iso:/usr/local/bin/packer-builder-virtualbox-iso vmware-iso:/usr/local/bin/packer-builder-vmware-iso amazon-instance:/usr/local/bin/packer-builder-amazon-instance digitalocean:/usr/local/bin/packer-builder-digitalocean] PostProcessors:map[compress:/usr/local/bin/packer-post-processor-compress docker-dockerfile:/usr/local/bin/packer-post-processor-docker-dockerfile docker-save:/usr/local/bin/packer-post-processor-docker-save vagrant-cloud:/usr/local/bin/packer-post-processor-vagrant-cloud vagrant:/usr/local/bin/packer-post-processor-vagrant vsphere:/usr/local/bin/packer-post-processor-vsphere artifice:/usr/local/bin/packer-post-processor-artifice atlas:/usr/local/bin/packer-post-processor-atlas docker-import:/usr/local/bin/packer-post-processor-docker-import docker-push:/usr/local/bin/packer-post-processor-docker-push docker-tag:/usr/local/bin/packer-post-processor-docker-tag] Provisioners:map[windows-restart:/usr/local/bin/packer-provisioner-windows-restart file:/usr/local/bin/packer-provisioner-file puppet-server:/usr/local/bin/packer-provisioner-puppet-server salt-masterless:/usr/local/bin/packer-provisioner-salt-masterless shell-local:/usr/local/bin/packer-provisioner-shell-local puppet-masterless:/usr/local/bin/packer-provisioner-puppet-masterless shell:/usr/local/bin/packer-provisioner-shell windows-shell:/usr/local/bin/packer-provisioner-windows-shell ansible-local:/usr/local/bin/packer-provisioner-ansible-local chef-client:/usr/local/bin/packer-provisioner-chef-client chef-solo:/usr/local/bin/packer-provisioner-chef-solo powershell:/usr/local/bin/packer-provisioner-powershell]}
2017/04/05 23:02:42 Setting cache directory: /var/lib/jenkins/workspace/tomcat_master-WVOBJYHTLIIPM2AWH7UAEK7T6I5VREVYYQPTUYABIPLIGQ2HWMXA@2/packer_cache
2017/04/05 23:02:42 Loading builder: googlecompute
2017/04/05 23:02:42 Creating plugin client for path: /usr/local/bin/packer-builder-googlecompute
2017/04/05 23:02:42 Starting plugin: /usr/local/bin/packer-builder-googlecompute []string{"/usr/local/bin/packer-builder-googlecompute"}
2017/04/05 23:02:42 Detected home directory from env var: /var/lib/jenkins
2017/04/05 23:02:43 Waiting for RPC address for: /usr/local/bin/packer-builder-googlecompute
2017/04/05 23:02:43 packer-builder-googlecompute: 2017/04/05 23:02:43 Plugin minimum port: 10000
2017/04/05 23:02:43 packer-builder-googlecompute: 2017/04/05 23:02:43 Plugin maximum port: 25000
2017/04/05 23:02:43 packer-builder-googlecompute: 2017/04/05 23:02:43 Plugin address: unix /tmp/packer-plugin620303481
2017/04/05 23:02:43 packer-builder-googlecompute: 2017/04/05 23:02:43 Waiting for connection...
2017/04/05 23:02:43 packer-builder-googlecompute: 2017/04/05 23:02:43 Serving a plugin connection...
2017/04/05 23:02:43 Loading provisioner: shell
2017/04/05 23:02:43 Creating plugin client for path: /usr/local/bin/packer-provisioner-shell
2017/04/05 23:02:43 Starting plugin: /usr/local/bin/packer-provisioner-shell []string{"/usr/local/bin/packer-provisioner-shell"}
2017/04/05 23:02:43 Waiting for RPC address for: /usr/local/bin/packer-provisioner-shell
2017/04/05 23:02:43 packer-provisioner-shell: 2017/04/05 23:02:43 Plugin minimum port: 10000
2017/04/05 23:02:43 packer-provisioner-shell: 2017/04/05 23:02:43 Plugin maximum port: 25000
2017/04/05 23:02:43 packer-provisioner-shell: 2017/04/05 23:02:43 Plugin address: unix /tmp/packer-plugin779654371
2017/04/05 23:02:43 packer-provisioner-shell: 2017/04/05 23:02:43 Waiting for connection...
2017/04/05 23:02:43 packer-provisioner-shell: 2017/04/05 23:02:43 Serving a plugin connection...
2017/04/05 23:02:43 Loading provisioner: shell-local
2017/04/05 23:02:43 Creating plugin client for path: /usr/local/bin/packer-provisioner-shell-local
2017/04/05 23:02:43 Starting plugin: /usr/local/bin/packer-provisioner-shell-local []string{"/usr/local/bin/packer-provisioner-shell-local"}
2017/04/05 23:02:43 Waiting for RPC address for: /usr/local/bin/packer-provisioner-shell-local
2017/04/05 23:02:43 packer-provisioner-shell-local: 2017/04/05 23:02:43 Plugin minimum port: 10000
2017/04/05 23:02:43 packer-provisioner-shell-local: 2017/04/05 23:02:43 Plugin maximum port: 25000
2017/04/05 23:02:43 packer-provisioner-shell-local: 2017/04/05 23:02:43 Plugin address: unix /tmp/packer-plugin518769160
2017/04/05 23:02:43 packer-provisioner-shell-local: 2017/04/05 23:02:43 Waiting for connection...
2017/04/05 23:02:43 packer-provisioner-shell-local: 2017/04/05 23:02:43 Serving a plugin connection...
Failed to initialize build 'gcp_image': provisioner type not found: ansible
kikitux commented 7 years ago

Thats a very old packer.

Any change you can update?

ezlee commented 7 years ago

I tried to use packer 1.0.0, but same issue. It worked with 0.8.6 2 weeks ago, I have to reinstall jenkins on the same server, and didn't change packer install, and now, it has this issue for packer ansible provisioner.

rickard-von-essen commented 7 years ago

Your install is broken. Remove your current install directory and reinstall from packer.io/downloads. Be sure to read the note about upgrading from < 0.9.0.

ezlee commented 7 years ago

how could it be broken? It is just one "packer" binary file to be copied to /usr/local/bin and all the other plugin binaries. I only have a packer-provisioner-ansible-local plugin and do not have the packer-provisioner-ansible plugin, but it worked for both provisioners before. I reinstalled Jenkins only, didn't make any changes for packer.

rickard-von-essen commented 7 years ago

Packer now ships as a single binary. When upgrading from Packer < 0.9.0, you will need to remove the old packer-* plugins from your installation path.

There should be no more plugin binaries.

ezlee commented 7 years ago

yes, didn't notice that. thanks a lot!

karthik101 commented 7 years ago

Is post-processor-docker-dockerfile still available? i get error: Failed to initialize build 'docker': post-processor type not found: docker-dockerfile