Commit Graph

207 Commits

Author SHA1 Message Date
Andrei Ozerov 3316d40527 OpenStack builder: make volume type optional
Volume type parameter should be optional as described in API reference:
https://developer.openstack.org/api-ref/block-storage/v3/#create-a-volume

It should be enforced by the OpenStack cluster if not specified.
2018-08-16 12:40:11 +02:00
Andrei Ozerov 572cdeecd1 OpenStack builder: create image from blockstorage
Allow to create final image from the Block Storage service volume.
2018-08-16 12:40:11 +02:00
Andrei Ozerov c0ffe7eb89 OpenStack builder: add StepDetachVolume
Add a step of detaching Compute instance volume if it's created using
the Block Storage service.
It is needed to create a final image.

This commit also moves common volume functions to a different file and
fixes some messages in the StepCreateVolume.
2018-08-16 12:40:11 +02:00
Andrei Ozerov 005f7e56a7 OpenStack builder: cleanup blockDeviceMappingV2
There is no need to indicate type of the list elements, remove it.
2018-08-16 12:40:11 +02:00
Andrei Ozerov d51e683bf7 OpenStack builder: add Block Storage volumes
This commit allows user to use the Block Storage v3 volume as the
Compute instance root volume.
Also it adds new volume-related parameters to the builder.
2018-08-16 12:40:11 +02:00
Rickard von Essen 074b170ed4 Fixed exec bit 2018-08-15 16:13:34 +02:00
Rickard von Essen c962e7b856 Simplified loop code 2018-08-15 13:12:47 +02:00
chbell43 aaa42543e6 fix formatting 2018-08-03 21:32:34 +00:00
chbell43 5f9d4b729f add support for ports to the OpenStack builder
For networks that have multiple subnets, we may want to target a single
subnet.  OpenStack doesn't let you target a single subnet in a network
and so you need to make a port.
2018-08-03 20:46:36 +00:00
Matthew Hooker 3bdf1f1849 openstack: Add support for token authorization and cloud.yaml
via config options `cloud` and `token` and environment variables
OS_CLOUD and OS_TOKEN.
2018-06-08 21:38:26 +02:00
Yang Youseok 1f4212efa7 builder/openstack: Add instance_name config to OpenStack builder
RFC952 restricts hostname not to use underline(_) and period(.), so
private cloud with legacy DNS system does not allow just to use
image_name for name of server.

Add instance_name config option for servers which packer creates to
make instance_name configurable. If instance_name is not specified,
by default it works like the past using image_name for instance_name.
2018-03-22 11:20:14 +09:00
Josh Soref 5010bfda39 spelling: comes 2018-03-13 07:20:55 +00:00
Edward c29e5de381
Remove the deprecated extensions
The Nova extension API was deprecated from OpenStack N release.
this parts of code cannot work well with the newest OpenStack version.

This patch is to remove the relative parts:
1. Remove the step_load_extensions.go
2. Remove the step of extension from builder.go
3. Remove the parameter parsing from step_stop_server.go

Resolves: #5581
2018-02-06 17:36:47 -08:00
Matthew Hooker 7a189a83a1
fix imports
`find . -type f -name '*.go' -not -path "./vendor/*" -exec goimports -w {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker a831d522be
change run signatures
Run now takes a context as well as a statebag. We'll assign the context
to the blank identifier to prevent namespace collisions. We'll let the
step authors opt-in to using the context.

`find . -iname "step_*.go" -exec gsed -i'' 's/func \(.*\)Run(/func \1Run(_ context.Context, /' {} \;`
2018-01-24 17:09:17 -08:00
Matthew Hooker 366dc3da0a
move multistep imports to helper.
gomvpkg -from "github.com/mitchellh/multistep" -to "github.com/hashicorp/packer/helper/multistep"
2018-01-24 17:09:15 -08:00
Matthew Hooker ebe995c0ff
run goimports 2018-01-22 17:21:10 -08:00
Matthew Hooker f6eb4e1b40
use cleanhttp to get a default transport. 2017-05-24 11:05:59 -07:00
r_takaishi 4fc0616bc9 fix go vet fail 2017-05-24 17:57:21 +09:00
r_takaishi db58854b0b make fmt 2017-05-24 16:28:13 +09:00
r_takaishi 37e6539bff use DefaultTransport 2017-05-24 16:19:30 +09:00
r_takaishi 67ce2da59e add cacert config to specify custom CA certificate file 2017-05-24 14:21:16 +09:00
r_takaishi 1de9eb2cfd support client certificate file
When AUTH_URL and each endpoints need SSL client authentication, we
have to specify cert file and private key file.
So, add optional config, cert and key.
2017-05-24 10:23:12 +09:00
Matthew Hooker e67d1fd676 Merge pull request #4900 from rogers0/PR/crypto-CVE-ABI-change
handle ABI change of golang-golang-x-crypto-dev
2017-05-18 12:06:08 -07:00
Matthew Hooker ee5d13611f
update ssh client usage for new crypto/ssh version 2017-05-18 12:01:44 -07:00
numa b15c3a5c92 Fix error message
I've matched the error message to the document
2017-05-18 18:40:16 +09:00
Matthew Hooker 80d6cd91fd
remove unneeded keypair var 2017-05-01 10:17:21 -07:00
Matthew Hooker 602fd64c5d
builder/amazon: set flag to delete temporary keypair 2017-04-30 14:24:22 -07:00
Matthew Hooker 81522dced0
move packer to hashicorp 2017-04-04 13:39:01 -07:00
Matthew Hooker 230079f73a
spell fixes 2017-03-28 20:36:19 -07:00
Rickard von Essen 6cd3cb18da
builder/openstack: validate ssh key name/file
This is a port for OpenStack of PR #4665
2017-03-14 20:47:40 +01:00
Rickard von Essen 4c5461102a
amazon: Added (more) support for SSH Agent and temporary keypair names 2017-03-13 07:29:59 +01:00
Larry Bordowitz c5b8a1069a Add ssh agent to enable SSH-CA authentication. 2017-03-10 08:45:50 -08:00
Joshua Randall e9cfaa2730 add reuse_ips option for openstack builder
add reuse_ips option and use it to control whether openstack builder
will attempt to reuse existing unassigned floating ips rather than
allocating a new one.

fix #4551
2017-02-16 12:44:03 +00:00
Matthew Hooker d4b043451f Merge pull request #4357 from dave2/gh-4215
Openstack builder should use existing floating IPs before allocating them
2017-01-17 11:14:59 -08:00
Tom-Byrne d7545c4ba0 support OpenStack instance metadata 2017-01-05 14:42:32 +00:00
Zanetti, David 08ef89f032 Openstack builder should use existing floating IPs before allocating them
Rather than always creating a new floating IP, search the provided pool
for an unallocated address and use this instead. Only allocate a temporary
address if there is no spare address in the pool.

Closes #4215
2017-01-05 08:59:49 +13:00
Matthew Hooker f1dd0811d8
builders/openstack: fix for finding resource by ID.
Pass server serviceClient to create params so it can look up resources by ID.
Resolves #4299
2016-12-19 13:47:09 -08:00
Matthew Hooker 754ed931e9
be nice if user gets the image visibility case wrong 2016-12-14 16:08:36 -08:00
Matthew Hooker 1408c3fde8
bugfix 2016-12-14 01:01:57 -08:00
Matthew Hooker 00e4585ce5
first pass at adding new members 2016-12-13 16:32:30 -08:00
Matthew Hooker cbe7e9113a
return early if no set visibility 2016-12-13 16:32:15 -08:00
Matthew Hooker 99667df17e
update image visibility own step 2016-12-13 16:28:54 -08:00
Matthew Hooker 7bd211cf61
first attempt at modifying visibility 2016-12-13 15:21:20 -08:00
Matthew Hooker 6a6e735d16
use 404 error type 2016-12-13 14:20:39 -08:00
Zanetti, David 01e3e7f7a3
Second part of resync of gophercloud 2016-12-13 14:06:01 -08:00
Dave Buckley 91562636d4 Allow reauth to keystone after token expiry 2016-12-07 01:36:10 +00:00
Rickard von Essen 96e9a8e6e9 Removed default value for ssh_username 2016-11-17 22:30:34 +01:00
Rickard von Essen ba8cfbd222
builder/openstack: Support using SSH password.
This adds support for using ssh_password to connect to a OpenStack
instance. If ssh_password is defined creation of the temporary keypair
is skipped.
2016-10-08 23:18:19 +02:00
Orivej Desh 6762965696 Add -on-error command line argument to allow preserving artifacts on builder errors
Resolves #409
2016-09-16 12:15:00 +00:00
Christopher Boumenot bbf286dcbe Fix go fmt issues. (#3463) 2016-04-22 10:44:54 -07:00
Rickard von Essen 88a84f5fb2 Merge pull request #3209 from rickard-von-essen/openstack-get-password
Get admin password of booted instance when using WinRM
2016-02-20 10:29:38 +01:00
Nathan Mische 335a2010bf Moving SSH IP version validation to prepare function. 2016-02-17 10:52:29 +01:00
Nathan Mische 8396a2db1e Adding ability to select IP version for SSH connections to OpenStack instances. Addresses #3047 2016-02-17 10:28:18 +01:00
Rickard von Essen 5368697413 Get admin password of booted instance when using WinRM
Fixes #2663
2016-02-16 11:06:22 +01:00
Rickard von Essen c3bc87cb71 OpenStack: Change some log messages about SSH to connect. 2016-02-16 10:55:21 +01:00
Rickard von Essen 6855c480ad OpenStack: convert SSH keys from BER to DER with OpenSSL, work around for GH-2526.
Try to parse the temporary keypair received from OpenStack, if it fails
try to use OpenSSL to convert it from BER encoding to DER.
2016-02-09 12:50:00 +01:00
Chris Bednarski 2dd8ad9449 Merge pull request #2577 from cybercom-finland/os_source_image_name
Support source_image_name in OpenStack builder
2016-01-28 15:40:13 -08:00
Chris Bednarski b7ba9a507d Merge pull request #3041 from msabramo/GH-3038_openstack_builder_auto_set_image_type_to_image
openstack builder: Set image_type to "image"
2016-01-21 18:39:08 -08:00
Marc Abramowitz 3e0914b6a2 openstack builder: Set image_type to "image"
so that built images are treated as images and not as snapshots.

Fixes: GH-3038
2016-01-06 15:00:31 -08:00
Marc Abramowitz 4b9c4cc3e6 openstack: WaitForImage: treat 404 as retryable
Addresses comment at
https://github.com/mitchellh/packer/issues/1415#issuecomment-165739549
2015-12-18 10:37:31 -08:00
Marc Abramowitz b08b88b019 openstack: Add maxNumErrors for WaitForImage
This partly addresses comment at
https://github.com/mitchellh/packer/issues/1415#issuecomment-165739549
2015-12-18 10:27:18 -08:00
Marc Abramowitz 39d6eda370 Make the OpenStack builder more informative
about the servers, images, and keypairs that it's dealing with.
2015-12-17 11:12:52 -08:00
Ian Duffy b57140da47 Add support for using cloud-init via a ConfigDrive
Signed-off-by: Ian Duffy <ian@ianduffy.ie>
2015-12-08 12:45:26 +00:00
Toni Ylenius cbb2b538bd Support source_image_name in OpenStack builder
As gophercloud supports source_image_name let's allow that in builder
configuration also. This an alternative way of providing source_image.
2015-08-10 16:37:22 +03:00
Chris Bednarski abb67fdd79 Fix govet issues 2015-08-05 19:41:29 -07:00
Chris Bednarski 28d1295460 Merge branch 'openstack_metadata' of https://github.com/trumant/packer into trumant-openstack_metadata 2015-07-30 14:38:03 -07:00
Chris Bednarski 5cd6e19467 Merge pull request #2451 from monsterzz/b-openstack-ipv6-ssh-support
Fix handling IPv6 when ssh_interface set (openstack builder)
2015-07-30 14:36:17 -07:00
Chris Bednarski c73314cd38 Merge pull request #2514 from hazelesque/rackconnect-v2-update-accessipv4
openstack: store updated accessIPv4 from RackConnect
2015-07-27 16:43:17 -07:00
Chris Bednarski 715662f60b Reformat 2015-07-27 16:42:06 -07:00
Chris Bednarski ff6a091531 Merge pull request #2512 from hazelesque/openstack-support-using-existing-keypair
openstack builder: support using existing keypair
2015-07-27 16:41:17 -07:00
Hazel Smith a7da0ffde1 openstack: store updated accessIPv4 from RackConnect 2015-07-27 23:07:25 +01:00
Hazel Smith b47eb4cea9 openstack builder: support using existing keypair 2015-07-27 23:05:51 +01:00
Hazel Smith ce54dba2d3 openstack builder: log which IP address SSH will use 2015-07-27 23:00:06 +01:00
Travis Truman 988cf2fecf Fixes #2434 by adding OpenStack Glance metadata support 2015-07-15 21:31:13 -04:00
Gleb M Borisov 8495a8c919 Fix handling IPv6 when ssh_interface set (openstack builder) 2015-07-15 02:11:46 +03:00
Mitchell Hashimoto 84189f7a28 builder/*: properly save interpolation context 2015-06-22 09:22:42 -07:00
Mitchell Hashimoto a95408aa21 Merge pull request #2224 from mitchellh/f-os-userdata
builder/openstack: support user data [GH-1867]
2015-06-15 09:35:49 -07:00
Mitchell Hashimoto 3edff00696 Merge pull request #2223 from mitchellh/b-stop-openstack
builder/openstack: load extensions, stop server if supported
2015-06-15 09:35:36 -07:00
Mitchell Hashimoto d8cc24f86e builder/openstack: no more port 2015-06-15 09:34:35 -07:00
Mitchell Hashimoto 5167c65f87 Merge branch 'b-openstack-privage' 2015-06-15 09:33:58 -07:00
Mitchell Hashimoto 115d583cff helper/communicator: make host more generic 2015-06-13 19:23:33 -04:00
Mitchell Hashimoto f55e2d2c4b builder/openstack: convert to helper/comm 2015-06-13 18:34:37 -04:00
Mitchell Hashimoto b3a9712402 builder/openstack: support user data [GH-1867] 2015-06-12 22:55:39 -04:00
Mitchell Hashimoto b6d6a71c6e builder/openstack: wait for more states 2015-06-12 22:50:59 -04:00
Mitchell Hashimoto 48b674d331 builder/openstack: load extensions, stop server if supported 2015-06-12 18:04:46 -04:00
Mitchell Hashimoto a3863c3495 builder/openstack: update floating IP messaging 2015-06-12 15:23:05 -04:00
Mitchell Hashimoto 2c683c5057 builder/openstack: prioritize ssh interfaces 2015-06-12 14:28:27 -04:00
Mitchell Hashimoto 31abc93f50 builder/openstack: support ssh_interface [GH-2087] 2015-06-12 14:22:32 -04:00
Mitchell Hashimoto 693f04afcc builder/openstack: AZ support 2015-06-12 11:10:10 -04:00
Mitchell Hashimoto 92b6b5c387 builder/openstack: can ref flavor by name 2015-06-12 10:32:31 -04:00
Mitchell Hashimoto ad374e82af builder/openstack: shuffle some fields to note unused fields 2015-06-12 10:05:03 -04:00
Mitchell Hashimoto 5d32a1f6e0 builder/openstack: use IP not FixedIP 2015-06-12 10:02:04 -04:00
Mitchell Hashimoto 590177ea4b builder/openstack: fix unit tests 2015-06-12 00:35:54 -04:00
Mitchell Hashimoto e724b5fe80 builder/openstack: support legacy env vars 2015-06-12 00:33:52 -04:00
Mitchell Hashimoto 50e2eb30e6 builder/openstack: modifications to work with rackspace 2015-06-12 00:28:38 -04:00
Mitchell Hashimoto a0d41fcd14 builder/openstack 2015-06-12 00:16:43 -04:00
Mitchell Hashimoto 23a48d6619 go fmt 2015-06-08 21:34:20 -07:00
Mitchell Hashimoto a8cd2a2223 Merge pull request #2038 from trumant/openstack_access_config_tests_env_clarity
Tests were failing incorrectly when OpenStack environment variables were...
2015-06-08 21:19:47 -07:00
jszwedko b1497b951c code.google.com/p/go.crypto/ssh -> golang.org/x/crypto/ssh
code.google.com/p/go.crypto/ssh is now at golang.org/x/crypto/ssh as of
https://code.google.com/p/go/source/detail?spec=svn.crypto.69e2a90ed92d03812364aeb947b7068dc42e561e&repo=crypto&r=8fec09c61d5d66f460d227fd1df3473d7e015bc6

Using the code.google.com import redirects properly, but runs into
issues if you try to use a subpackage of `ssh`, e.g. `agent` which
refers to golang.org/x/crypto/ssh causing conflicts if your types expect
code.google.com/p/go.crypto/ssh.

This is a precursor to a PR for #1066.
2015-05-28 08:17:49 -07:00