Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
salt-cloud doesn't like my profile...
# provider
aws-ec2-east:
driver: ec2
id: <obfuscated>
key: <obfuscated>
keyname: salt-e
minion:
master: <obfuscated>
private_key: /root/.ssh/salt-e.pem
ssh_interface: private_ips
ssh_username: ec2-user
# profile
app-server-dev-east:
availability_zone: us-east-1c
block_device_mappings:
- DeviceName: /dev/sda1
Ebs.VolumeSize: 10
Ebs.VolumeType: gp2
- DeviceName: /dev/sdf
Ebs.VolumeSize: 10
Ebs.VolumeType: gp2
del_all_vols_on_destroy: true
del_root_vol_on_destroy: true
grains:
owner_code: OT
role_code: AP
type_code: VM
iam_profile: arn:aws:iam::<obfuscated>:instance-profile/aws-opsworks-ec2-role
image: ami-c58c1dd3
location: us-east-1
provider: aws-ec2-east
rename_on_destroy: true
securitygroup:
- AWS-OpsWorks-Custom-Server
- AWS-OpsWorks-Default-Server
- AWS-OpsWorks-Java-App-Server
size: m3.medium
sync_after_install: grains
tag:
Environment: dev
# stacktrace
[root@OTCMVM0000 cloud.profiles.d]# salt-cloud --profile=app-server-dev-east dnasar_saltstack_50 -l debug
[DEBUG ] Reading configuration from /etc/salt/cloud
[DEBUG ] Missing configuration file: /etc/salt/master
[DEBUG ] Including configuration from '/etc/salt/master.d/engine.conf'
[DEBUG ] Reading configuration from /etc/salt/master.d/engine.conf
[DEBUG ] Including configuration from '/etc/salt/master.d/f_defaults.conf'
[DEBUG ] Reading configuration from /etc/salt/master.d/f_defaults.conf
[DEBUG ] Including configuration from '/etc/salt/master.d/lxc_profiles.conf'
[DEBUG ] Reading configuration from /etc/salt/master.d/lxc_profiles.conf
[DEBUG ] Including configuration from '/etc/salt/master.d/reactor.conf'
[DEBUG ] Reading configuration from /etc/salt/master.d/reactor.conf
[DEBUG ] Using cached minion ID from /etc/salt/minion_id: OTCMVM0000
[DEBUG ] Missing configuration file: /etc/salt/cloud.providers
[DEBUG ] Including configuration from '/etc/salt/cloud.providers.d/aws-ec2-east.conf'
[DEBUG ] Reading configuration from /etc/salt/cloud.providers.d/aws-ec2-east.conf
[DEBUG ] Missing configuration file: /etc/salt/cloud.profiles
[DEBUG ] Including configuration from '/etc/salt/cloud.profiles.d/app-server-dev-east.conf'
[DEBUG ] Reading configuration from /etc/salt/cloud.profiles.d/app-server-dev-east.conf
[DEBUG ] Configuration file path: /etc/salt/cloud
[WARNING ] Insecure logging configuration detected! Sensitive data may be logged.
[INFO ] salt-cloud starting
[DEBUG ] Could not LazyLoad parallels.avail_sizes: 'parallels' __virtual__ returned False
[DEBUG ] LazyLoaded parallels.avail_locations
[DEBUG ] LazyLoaded proxmox.avail_sizes
[DEBUG ] Could not LazyLoad saltify.destroy: 'saltify.destroy' is not available.
[DEBUG ] Could not LazyLoad saltify.avail_sizes: 'saltify.avail_sizes' is not available.
[DEBUG ] Could not LazyLoad saltify.avail_images: 'saltify.avail_images' is not available.
[DEBUG ] Could not LazyLoad saltify.avail_locations: 'saltify.avail_locations' is not available.
[DEBUG ] Could not LazyLoad rackspace.reboot: 'rackspace.reboot' is not available.
[DEBUG ] LazyLoaded openstack.list_locations
[DEBUG ] Could not LazyLoad rackspace.list_locations: 'rackspace.list_locations' is not available.
[DEBUG ] Could not LazyLoad parallels.avail_sizes: 'parallels' __virtual__ returned False
[DEBUG ] LazyLoaded parallels.avail_locations
[DEBUG ] LazyLoaded proxmox.avail_sizes
[DEBUG ] Could not LazyLoad saltify.destroy: 'saltify.destroy' is not available.
[DEBUG ] Could not LazyLoad saltify.avail_sizes: 'saltify.avail_sizes' is not available.
[DEBUG ] Could not LazyLoad saltify.avail_images: 'saltify.avail_images' is not available.
[DEBUG ] Could not LazyLoad saltify.avail_locations: 'saltify.avail_locations' is not available.
[DEBUG ] Could not LazyLoad rackspace.reboot: 'rackspace.reboot' is not available.
[DEBUG ] LazyLoaded openstack.list_locations
[DEBUG ] Could not LazyLoad rackspace.list_locations: 'rackspace.list_locations' is not available.
[DEBUG ] Using AWS endpoint: ec2.us-east-1.amazonaws.com
[DEBUG ] AWS Request: https://ec2.us-east-1.amazonaws.com/?Action=DescribeInstances&Version=2014-10-01
[INFO ] Starting new HTTPS connection (1): ec2.us-east-1.amazonaws.com
[DEBUG ] "GET /?Action=DescribeInstances&Version=2014-10-01 HTTP/1.1" 200 None
[DEBUG ] AWS Response Status Code: 200
[DEBUG ] LazyLoaded cloud.cache_node_list
[DEBUG ] Generating minion keys for 'dnasar_saltstack_50'
[DEBUG ] LazyLoaded cloud.fire_event
[DEBUG ] MasterEvent PUB socket URI: /var/run/salt/master/master_event_pub.ipc
[DEBUG ] MasterEvent PULL socket URI: /var/run/salt/master/master_event_pull.ipc
[DEBUG ] Initializing new IPCClient for path: /var/run/salt/master/master_event_pull.ipc
[DEBUG ] Sending event: tag = salt/cloud/dnasar_saltstack_50/creating; data = {'profile': 'app-server-dev-east', 'event': 'starting create', '_stamp': '2017-05-24T19:23:08.823599', 'name': 'dnasar_saltstack_50', 'provider': 'aws-ec2-east:ec2'}
[INFO ] Creating Cloud VM dnasar_saltstack_50 in us-east-1
[DEBUG ] Using AWS endpoint: ec2.us-east-1.amazonaws.com
[DEBUG ] AWS Request: https://ec2.us-east-1.amazonaws.com/?Action=DescribeAvailabilityZones&Filter.0.Name=region-name&Filter.0.Value.0=us-east-1&Version=2014-10-01
[INFO ] Starting new HTTPS connection (1): ec2.us-east-1.amazonaws.com
[DEBUG ] "GET /?Action=DescribeAvailabilityZones&Filter.0.Name=region-name&Filter.0.Value.0=us-east-1&Version=2014-10-01 HTTP/1.1" 200 None
[DEBUG ] AWS Response Status Code: 200
[INFO ] Attempting to look up root device name for image id ami-c58c1dd3 on VM dnasar_saltstack_50
[DEBUG ] Using AWS endpoint: ec2.us-east-1.amazonaws.com
[DEBUG ] AWS Request: https://ec2.us-east-1.amazonaws.com/?Action=DescribeImages&ImageId.1=ami-c58c1dd3&Version=2014-10-01
[INFO ] Starting new HTTPS connection (1): ec2.us-east-1.amazonaws.com
[DEBUG ] "GET /?Action=DescribeImages&ImageId.1=ami-c58c1dd3&Version=2014-10-01 HTTP/1.1" 200 None
[DEBUG ] AWS Response Status Code: 200
[DEBUG ] EC2 Response: '[{'virtualizationType': 'hvm', 'imageOwnerAlias': 'amazon', 'name': 'amzn-ami-hvm-2017.03.0.20170417-x86_64-gp2', 'imageOwnerId': '137112412989', 'hypervisor': 'xen', 'isPublic': 'true', 'sriovNetSupport': 'simple', 'imageId': 'ami-c58c1dd3', 'imageState': 'available', 'blockDeviceMapping': {'item': {'deviceName': '/dev/xvda', 'ebs': {'snapshotId': 'snap-0120309fef406aa90', 'deleteOnTermination': 'true', 'volumeSize': '8', 'volumeType': 'gp2', 'encrypted': 'false'}}}, 'architecture': 'x86_64', 'imageLocation': 'amazon/amzn-ami-hvm-2017.03.0.20170417-x86_64-gp2', 'rootDeviceType': 'ebs', 'creationDate': '2017-04-17T08:14:59.000Z', 'rootDeviceName': '/dev/xvda', 'imageType': 'machine', 'description': 'Amazon Linux AMI 2017.03.0.20170417 x86_64 HVM GP2'}]'
[INFO ] Found root device name: /dev/xvda
[ERROR ] There was a profile error: list index out of range
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/salt/cloud/cli.py", line 284, in run
self.config.get('names')
File "/usr/lib/python2.7/dist-packages/salt/cloud/__init__.py", line 1461, in run_profile
ret[name] = self.create(vm_)
File "/usr/lib/python2.7/dist-packages/salt/cloud/__init__.py", line 1291, in create
output = self.clouds[func](vm_)
File "/usr/lib/python2.7/dist-packages/salt/cloud/clouds/ec2.py", line 2511, in create
data, vm_ = request_instance(vm_, location)
File "/usr/lib/python2.7/dist-packages/salt/cloud/clouds/ec2.py", line 1885, in request_instance
if ex_blockdevicemappings and 'Ebs.VolumeType' not in ex_blockdevicemappings[dev_index]:
IndexError: list index out of range
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment