packerlicious - a python wrapper for packer templates.
Project description
About
packerlicious - a python library to create packer templates.
Project follows semantic versioning , v0.x.x API should be considered unstable, API will change frequently, please plan accordingly.
This project leverages the logic engine of troposphere.
Installation
packerlicious can be installed via pip:
$ pip install packerlicious
Examples
Below is the packerlicious equivalent of packer’s example template
>>> from packerlicious import builder, provisioner, Template
>>> template = Template()
>>> template.add_builder(
... builder.AmazonEbs(
... access_key="...",
... secret_key="...",
... region = "us-east-1",
... source_ami="ami-fce3c696",
... instance_type="t2.micro",
... ssh_username="ubuntu",
... ami_name="packer {{timestamp}}"
... )
... )
<packerlicious.builder.AmazonEbs object at 0x104e87ad0>
>>> template.add_provisioner(
... provisioner.Shell(
... script="setup_things.sh"
... )
... )
<packerlicious.provisioner.Shell object at 0x1048c08d0>
>>> print(template.to_json())
{
"builders": [
{
"access_key": "...",
"ami_name": "packer {{timestamp}}",
"instance_type": "t2.micro",
"region": "us-east-1",
"secret_key": "...",
"source_ami": "ami-fce3c696",
"ssh_username": "ubuntu",
"type": "amazon-ebs"
}
],
"provisioners": [
{
"script": "setup_things.sh",
"type": "shell"
}
]
}
Currently supported Packer resources
Builders:
alicloud-ecs
amazon-ebs
amazon-instance
azure-arm
cloudstack
digitalocean
docker
file
googlecompute
hyperv-iso
null
oneandone
openstack
profitbricks
qemu
triton
virtualbox-iso
virtualbox-ovf
vmware-iso
vmware-vmx
Post Processors:
alicloud-import
amazon-import
artifice
atlas
checksum
compress
docker-import
docker-push
docker-save
docker-tag
googlecompute-export
manifest
shell-local
vagrant
vagrant-cloud
vsphere
Provisioners:
ansible-local
ansible
chef-client
chef-solo
converge
file
powershell
puppet-masterless
puppet-server
salt-masterless
shell
shell-local
windows-shell
windows-restart
Licensing
packerlicious is licensed under the Apache license 2.0. See LICENSE for the full license text.
packerlicious contains source code from troposphere which is licensed under the BSD 2-Clause license
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.