Commit graph

147 commits

Author SHA1 Message Date
Megan Marsh
88b7b0e14a remove sdk 2020-12-17 13:29:25 -08:00
Megan Marsh
39ab646236
move plugin and rpc code into sdk; other minor tweaks (#10359) 2020-12-09 12:39:54 +01:00
Megan Marsh
b69d69095e move postprocessor to sdk, fix generation code 2020-12-01 14:48:55 -08:00
Megan Marsh
be5763ec41 move provisioner interface into sdk 2020-12-01 14:25:14 -08:00
Megan Marsh
ada91b24e9 extract builder interface to sdk 2020-12-01 13:42:42 -08:00
Jeff Wong
a140c13943
[proxmox] add proxmox builder alias
Adds an alias for `proxmox` that points to proxmox-iso builder for
backwards compatibility
2020-10-07 23:43:12 -07:00
Adrien Delorme
3e0633fc20 scripts/generate-plugins.go: ignore "common" packages 2020-10-07 11:43:15 +02:00
Calle Pettersson
905869308d Split proxmox builder into a common part and iso/clone builders
Clone builder is still just a stub. Proof-of-concept for #9626

Signed-off-by: Calle Pettersson <calle@cape.nu>
2020-09-04 23:53:09 +02:00
Gennady Lipenkov
553d203e68 Add yandex-import post-processor 2020-07-08 22:01:52 +03:00
Gennady Lipenkov
d5a6781fb7 Add new 'yandex-export' post-processor 2020-04-27 02:20:30 +03:00
Vaijanath Angadihiremath
fd21b669db Fixing the linting errors now required for merging 2020-04-02 17:22:16 -07:00
Vaijanath Angadihiremath
c815a5df67 Fixing the Make Ci errors 2020-04-02 17:18:41 -07:00
Vaijanath Angadihiremath
645cdf1a59 Updating the modules to include update to autorest 12.4 2020-04-02 17:13:36 -07:00
Megan Marsh
073eda76aa remove extraneous files from when vsphere builder was a plugin, and move README into packer website as separated docs for vsphere-clone and vsphere-iso. Move option descriptions into struct code, and generate documentation directly from those structs as we do inside of the other builders 2020-01-07 16:59:31 -08:00
mingsheng.su
2c513fce64 update ucloud packer 2019-10-29 16:11:43 -07:00
mingsheng.su
61f9d3a9fe add ucloud import 2019-10-29 16:11:43 -07:00
Paul Meyer
7297d74c98 Add azure-chroot builder plugin 2019-10-15 21:13:37 +00:00
xiaohan.liang
f4fc9dd09a Rewrite all files, remove sensitive information 2019-08-09 15:00:23 +08:00
Thomas Meckel
2a531f8ad6 Merged changes from local branch 2019-07-26 12:29:44 +02:00
Marin Salinas
80dadaf3f1 feature: add bsuvolume builder and acceptance test 2019-07-18 09:39:08 -07:00
Marin Salinas
0c47ee55e6 feature: add chroot builder structure 2019-07-18 09:39:07 -07:00
Marin Salinas
c4e69d3169 wip: add bsu plugin acc testing 2019-07-18 09:39:07 -07:00
Marin Salinas
1281f28f6d add prevalidate step 2019-07-18 09:39:07 -07:00
Marc Falzon
00c2df24df Add Exoscale Import post-processor
This change adds a new `exoscale-import` post-processor allowing users
to create Private Templates on Exoscale.
2019-07-01 08:40:26 +02:00
mingsheng.su
c8bab9b382 add ucloud packer 2019-06-13 15:16:49 +08:00
Marques Johansson
99987c2d56 Add Linode Images builder
Packer Builder for [Linode Images](https://www.linode.com/docs/platform/disk-images/linode-images/)

Adds the following builder:

  * `linode`

Based on https://github.com/linode/packer-builder-linode (MPL/2)
(formerly maintained by @dradtke).  Includes website docs and tests.

Relates to #174, #3131
2019-04-15 20:40:59 -04:00
Adrien Delorme
97f2914c6a
Merge pull request #7484 from yandex-cloud/yandex-cloud-builder
Builder for Yandex.Cloud
2019-04-15 14:02:43 +02:00
Adrien Delorme
d2f036ec44 Revert "Revert "Merge pull request #7391 from carlpett/proxmox-builder""
This reverts commit 032527ecfe.
2019-04-12 12:26:34 +02:00
Gennady Lipenkov
8f53ca5e5e Add 'yandex' plugin as Builder 2019-04-12 01:00:54 +03:00
Adrien Delorme
032527ecfe Revert "Merge pull request #7391 from carlpett/proxmox-builder"
This reverts commit b7d62b2ae0, reversing
changes made to c36eaf16f7.
2019-04-11 14:19:25 +02:00
Adrien Delorme
0b4ada9690 make sleep provisioner available to packer 2019-04-08 20:09:22 +02:00
Calle Pettersson
9f8fc37fde Implement Proxmox builder 2019-04-04 15:20:46 -07:00
Miłosz Smółka
94a7a07c87 Merge branch 'master' into hyperone 2019-02-24 15:16:21 +01:00
Megan Marsh
75f574bd4b
Merge pull request #7221 from hashicorp/vagrant_builder
Vagrant builder
2019-02-15 10:05:44 -08:00
Megan Marsh
be21850e32
Merge pull request #7060 from andrewsomething/do-post-processor
Add digitalocean-import post-processor.
2019-02-14 11:58:00 -08:00
xinau
c207451f7e Merge branch 'master' of https://github.com/hashicorp/packer into packer-provisioner-inspec 2019-02-12 05:32:05 +00:00
Miłosz Smółka
228829139b Merge branch 'master' into hyperone 2019-02-07 14:12:13 +01:00
Megan Marsh
ad21367b21 vagrant builder 2019-02-04 14:08:43 -08:00
Adrien Delorme
8621949e01 make generate 2019-02-04 15:16:38 +01:00
Miłosz Smółka
be30415395 Add HyperOne builder 2019-01-23 14:04:05 +01:00
xinau
f5b13e3cb5 added inspec.io provisioner 2019-01-20 15:43:47 +00:00
Adrien Delorme
7655d2efb2
Add tencent cloud builder (#7135 & #6839) 2018-12-20 17:09:44 +01:00
Andrew Starr-Bochicchio
c0c5c6afac Add DigitalOcean post-processor. 2018-11-29 21:00:57 -05:00
Megan Marsh
ba25e68fe0 add a new breakpoint provisioner 2018-11-29 14:32:52 -08:00
Lukas Kämmerling
270110767c
Add hcloud Builder 2018-10-17 12:15:47 +02:00
Matthew Hooker
ddf23a2c46
Complete Atlas deprecation.
Removes the push command and the Atlas post-processor.  Please see our
guide on building immutable infrastructure with Packer on CI/CD for
ideas on implementing these features yourself.
https://www.packer.io/guides/packer-on-cicd/
2018-08-02 20:23:28 -07:00
Sean Malloy
3622a669dc Add new post processor googlecompute-import 2018-06-26 21:39:55 -05:00
Edouard BONLIEU
7e36cfcff1
Add Scaleway builder 2018-02-08 12:09:24 -08:00
Matthew Hooker
6205c71f98
Merge pull request #5791 from YuSungDuk/master
Naver Cloud Platform builder
2018-02-08 11:10:18 -08:00
Megan Marsh
7d85b31b29
make fmt 2018-01-25 14:34:03 -08:00
Megan Marsh
46c3113613
it compiles :) 2018-01-25 14:34:00 -08:00
유성덕
5189d65467 Support Naver Cloud Platform 2018-01-11 18:57:53 +09:00
Matthew Hooker
fcfdff0efd rerun scripts/generate-plugins.go 2017-10-11 22:05:52 +05:30
Taliesin Sisson
efa62e1550 Can specify an iso, vhd or vhdx for download. If it is a vhd or vhdx it is used as the hard drive for spinning up a new machine, importing an exported virtual machine or cloning a virtual machine.
Can import a virtual machine from a folder
Can clone an existing virtual machine
2017-10-11 22:05:45 +05:30
Taliesin Sisson
452fcbd9a1 Only attach dvd drive if there is one
Fix debug messages for cloning

Add hyperv-vmcx as a builder from command line
2017-10-11 21:42:32 +05:30
Andrew Pryde
6fd2f6701d
Rename Oracle BMCS builder to OCI
Oracle Bare Metal Cloud Services (BMCS) has been rebranded as Oracle
Cloud Infrastructure (OCI).
2017-09-12 10:40:56 -07:00
Matthew Hooker
624b1e5110 Merge pull request #4554 from prydie/f-oracle-bmcs
Oracle Bare Metal Cloud Services (BMCS) builder
2017-09-11 09:42:14 -07:00
Megan Marsh
8d24b3930a cleanup imports and rebase artifacts 2017-09-05 15:23:22 -07:00
Michele Catalano
f4f0ab9f50 add integrate lxc builder in packer
add lxc with scripts/generate-plugins.go
2017-09-05 15:17:15 -07:00
Chris Lundquist
7366b6c78e [lxd] first pass 2017-09-05 12:44:39 -07:00
Andrew Pryde
630ee5d650 Change imports mitchelh/packer -> hashicorp/packer 2017-08-02 09:53:48 +01:00
Andrew Pryde
9728f890cf Implemented and documented oracle-bmcs builder
Implements a new Packer builder (oracle-bmcs) which adds support for
building custom images for Oracle Bare Metal Cloud Services (BMCS)
https://cloud.oracle.com/en_US/bare-metal.

Additionally includes documentation for the oracle-bmcs builder.
2017-08-02 09:53:48 +01:00
bugbuilder
3cc9f204ac Moving vsphere-tpl to vsphere-template, fixed root folder creation and updated docs 2017-07-10 20:52:48 -04:00
bugbuilder
dc2124aa2a Initial vSphere-tpl post-processor 2017-07-09 14:12:37 -04:00
zhuzhih2017
d646e1d035 refactor the code according hashicorp rename the repository 2017-04-18 15:14:45 +08:00
Matthew Hooker
81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
zhuzhih2017
0400ebae95 Fix the code according PR review 2017-03-12 10:22:25 +08:00
zhuzhih2017
fadfb696dd Add packer plugin which support alicloud ecs images 2017-03-03 16:56:17 +08:00
James Nugent
635aeb765b amazon/ebssurrogate: Add New Builder
This commit adds a new type of builder which builds an AMI based on a
snapshot of an EBS volume which is provisioned on a "surrogate"
instance. This can be used to build operating system images from
scratch, but unlike the `chroot` builder does not require running from
an AWS EC2 instance.
2017-02-21 18:38:19 -06:00
Chris Bednarski
ee2d636840 Improve delay between key events
- Can now tune delay using PACKER_KEY_INTERVAL
- Added implementation to all of VMware and QEMU
- Removed double delay for QEMU
- Default key delay of 100ms (as before)
- Added docs to QEMU and VMware pages
2017-01-14 17:56:04 -08:00
James Nugent
e15be036d7 builder: add Triton builder
This is a builder for Joyent's Triton system. It was originally at
jen20/packer-builder-triton, and subsequently at
joyent/packer-builder-triton on GitHub. The following commit vendors the
dependencies.
2016-12-24 10:25:31 +01:00
Taliesin Sisson
335615408a Run go fmt on files 2016-12-12 22:45:19 +00:00
Taliesin Sisson
4721327bf6 Fix duplicate imports 2016-12-12 22:44:51 +00:00
Taliesin Sisson
ccf506ee22 Must point to iso hyperv plugin 2016-12-12 22:44:23 +00:00
Taliesin Sisson
25baa26a7a Incude hyperv as part of the plugins 2016-12-12 22:44:23 +00:00
jasminSPC
4bcba37f38 Packer Builder 1&1 2016-11-13 23:34:36 +01:00
Matthew Hooker
6b7ac8ee90 make generate 2016-11-02 11:48:32 -07:00
James Nugent
b1ff8c3bfc builder/amazon: Add ebs-volume builder
This commit adds a builder that works like EBS builders, except does not
create an AMI, and instead is intended to create EBS volumes in an
initialized state. For example, the following template can be used to
create and export a set of 3 EBS Volumes in a ZFS zpool named `data` for
importing by instances running production systems:

```
{
	"variables": {
		"aws_access_key_id": "{{ env `AWS_ACCESS_KEY_ID` }}",
		"aws_secret_access_key": "{{ env `AWS_SECRET_ACCESS_KEY` }}",
		"region": "{{ env `AWS_REGION` }}",
		"source_ami": "{{ env `PACKER_SOURCE_AMI` }}",
		"vpc_id": "{{ env `PACKER_VPC_ID` }}",
		"subnet_id": "{{ env `PACKER_SUBNET_ID` }}"
	},
	"builders": [{
		"type": "amazon-ebs-volume",
		"access_key": "{{ user `aws_access_key_id` }}",
		"secret_key": "{{ user `aws_secret_access_key` }}",
		"region": "{{user `region`}}",
		"spot_price_auto_product": "Linux/UNIX (Amazon VPC)",

		"ssh_pty": true,
		"instance_type": "t2.medium",
		"vpc_id": "{{user `vpc_id` }}",
		"subnet_id": "{{user `subnet_id` }}",
		"associate_public_ip_address": true,
		"source_ami": "{{user `source_ami` }}",
		"ssh_username": "ubuntu",
		"ssh_timeout": "5m",

		"ebs_volumes": [
			{
				"device_name": "/dev/xvdf",
				"delete_on_termination": false,
				"volume_size": 10,
				"volume_type": "gp2",
				"tags": {
					"Name": "TeamCity-Data1",
					"zpool": "data",
					"Component": "TeamCity"
				}
			},
			{
				"device_name": "/dev/xvdg",
				"delete_on_termination": false,
				"volume_size": 10,
				"volume_type": "gp2",
				"tags": {
					"Name": "TeamCity-Data2",
					"zpool": "data",
					"Component": "TeamCity"
				}
			},
			{
				"device_name": "/dev/xvdh",
				"delete_on_termination": false,
				"volume_size": 10,
				"volume_type": "gp2",
				"tags": {
					"Name": "TeamCity-Data3",
					"zpool": "data",
					"Component": "TeamCity"
				}
			}
		]
	}],
	"provisioners": [
	{
		"type": "shell",
		"start_retry_timeout": "10m",
		"inline": [
			"DEBIAN_FRONTEND=noninteractive sudo apt-get update",
			"DEBIAN_FRONTEND=noninteractive sudo apt-get install -y zfs",
			"lsblk",
			"sudo parted /dev/xvdf --script mklabel GPT",
			"sudo parted /dev/xvdg --script mklabel GPT",
			"sudo parted /dev/xvdh --script mklabel GPT",
			"sudo zpool create -m none data raidz xvdf xvdg xvdh",
			"sudo zpool status",
			"sudo zpool export data",
			"sudo zpool status"
		]
	}
	]
}
```

StepModifyInstance and StepStopInstance are now shared between EBS and
EBS-Volume builders - move them into the AWS common directory and rename
them to indicate that they only apply to EBS-backed builders.
2016-11-02 12:56:39 -04:00
Matthew Hooker
01be917450 Merge pull request #3660 from StackPointCloud/packer-builder-profitbricks
Packer Builder ProfitBricks
2016-10-31 15:45:24 -07:00
Sander van Harmelen
dbf3bf56d4 Add a CloudStack Builder 2016-10-16 15:29:18 +02:00
Matthew Hooker
a8e57d83d2 gofmt project.
noticed many unrelated changes being added to patches because of gofmt.

ran `find . -not -path "./vendor/*" -name "*.go" -exec gofmt -w {} \;`
2016-09-29 14:13:06 -07:00
jasminSPC
d84b3af863 Fixed tests 2016-08-31 14:11:10 +02:00
Scott Crunkleton
d2e65e6433 Generated command/plugin.go using scripts/generate-plugins.go. 2016-08-15 14:36:26 -07:00
crunk1
55b5a45ae4 Created googlecompute-export post-processor. Modified the googlecompute builder to pass a few configuration values to its resulting artifact. These values can then be used in googlecompute-export post-processor.
Added documentation and changed authentication stuff on temporary VM.
2016-08-15 14:36:26 -07:00
Chris Bednarski
db593a517d Added manifest post-processor, which creates a manifest of build artifacts 2016-06-10 15:57:01 -07:00
Vasiliy Tolstov
d64603e137 initial import of checksum post-processor (#3492)
Signed-off-by: Vasiliy Tolstov <v.tolstov@selfip.ru>
2016-05-18 17:31:16 -07:00
Chris Bednarski
5b5888b230 Initial import of Microsoft contributed code 2016-03-14 20:08:35 -07:00
Chris Bednarski
53176f8cdb Added amazon s3 service to vendor, to support the amazon-import feature 2016-02-12 10:41:26 -08:00
Chris Bednarski
58ebd6a9fd Merge branch 'deps' 2016-02-05 14:22:00 -08:00
Chris Bednarski
93547ad91c Regenerate command/plugin and apply go fmt (now handled by the makefile) 2016-02-05 11:18:36 -08:00
Marat Bakeev
c95b2b483f Merge branch ansible-provisioner of https://github.com/dkhenry/packer 2016-02-05 15:40:17 +13:00
Chris Bednarski
6783bc3fb0 Added generator for command/plugin.go so we don't have to edit it by hand to add new plugins 2015-10-21 16:57:38 -07:00
Chris Bednarski
bfe5b5b4b6 Change if/else logic to switch 2015-10-21 16:57:38 -07:00
Chris Bednarski
1641a5e0cb Replace string splitting with a regexp; this is clearer and less code because of the post-processor case 2015-10-21 16:57:38 -07:00
Chris Bednarski
e080e73b04 Add some exit codes and use a constant for -PACKERSPACE- 2015-10-21 16:57:38 -07:00
Chris Bednarski
9fa93712a1 Added integrated post-processors 2015-10-21 16:57:38 -07:00
Chris Bednarski
d09a9ab0c7 Implemented internal plugins
- Internal plugins are compiled into the same packer binary and invoked through the plugin command
- Search paths allow disk-based plugins to override and should function as normal
- This should allow for a 94% space savings vs statically compiling all the plugins as separate binaries.. approximately 24mb vs 431mb
2015-10-21 16:57:38 -07:00