provisionr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From as...@apache.org
Subject [06/21] PROVISIONR-20. Change groupId from com.axemblr.provisionr to org.apache.provisionr
Date Mon, 01 Apr 2013 08:52:29 GMT
http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/main/resources/org/apache/provisionr/amazon/ubuntu.csv
----------------------------------------------------------------------
diff --git a/providers/amazon/src/main/resources/org/apache/provisionr/amazon/ubuntu.csv b/providers/amazon/src/main/resources/org/apache/provisionr/amazon/ubuntu.csv
new file mode 100644
index 0000000..1751b94
--- /dev/null
+++ b/providers/amazon/src/main/resources/org/apache/provisionr/amazon/ubuntu.csv
@@ -0,0 +1,221 @@
+region, name, version, arch, type, release, ami-id, aki-id
+ap-northeast-1, natty, 11.04 EOL, amd64, ebs, 20121028, ami-087bc509, aki-d409a2d5
+ap-northeast-1, natty, 11.04 EOL, i386, ebs, 20121028, ami-067bc507, aki-d209a2d3
+ap-northeast-1, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-e67ac4e7, aki-d409a2d5
+ap-northeast-1, natty, 11.04 EOL, i386, instance-store, 20121028, ami-8c7ac48d, aki-d209a2d3
+ap-southeast-1, natty, 11.04 EOL, amd64, ebs, 20121028, ami-240e4d76, aki-11d5aa43
+ap-southeast-1, natty, 11.04 EOL, i386, ebs, 20121028, ami-260e4d74, aki-13d5aa41
+ap-southeast-1, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-220e4d70, aki-11d5aa43
+ap-southeast-1, natty, 11.04 EOL, i386, instance-store, 20121028, ami-180e4d4a, aki-13d5aa41
+eu-west-1, natty, 11.04 EOL, amd64, hvm, 20121028, ami-7b14170f, hvm
+eu-west-1, natty, 11.04 EOL, amd64, ebs, 20121028, ami-7914170d, aki-4feec43b
+eu-west-1, natty, 11.04 EOL, i386, ebs, 20121028, ami-7f14170b, aki-4deec439
+eu-west-1, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-d71516a3, aki-4feec43b
+eu-west-1, natty, 11.04 EOL, i386, instance-store, 20121028, ami-23151657, aki-4deec439
+sa-east-1, natty, 11.04 EOL, amd64, ebs, 20121028, ami-d0548dcd, aki-d63ce3cb
+sa-east-1, natty, 11.04 EOL, i386, ebs, 20121028, ami-d6548dcb, aki-863ce39b
+sa-east-1, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-a2548dbf, aki-d63ce3cb
+sa-east-1, natty, 11.04 EOL, i386, instance-store, 20121028, ami-b6548dab, aki-863ce39b
+us-east-1, natty, 11.04 EOL, amd64, hvm, 20121028, ami-beb10ad7, hvm
+us-east-1, natty, 11.04 EOL, amd64, ebs, 20121028, ami-bab10ad3, aki-427d952b
+us-east-1, natty, 11.04 EOL, i386, ebs, 20121028, ami-a6b10acf, aki-407d9529
+us-east-1, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-1cb30875, aki-427d952b
+us-east-1, natty, 11.04 EOL, i386, instance-store, 20121028, ami-96b803ff, aki-407d9529
+us-west-1, natty, 11.04 EOL, amd64, ebs, 20121028, ami-132c0a56, aki-9ba0f1de
+us-west-1, natty, 11.04 EOL, i386, ebs, 20121028, ami-112c0a54, aki-99a0f1dc
+us-west-1, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-712c0a34, aki-9ba0f1de
+us-west-1, natty, 11.04 EOL, i386, instance-store, 20121028, ami-b12f09f4, aki-99a0f1dc
+us-west-2, natty, 11.04 EOL, amd64, hvm, 20121028, ami-70b23b40, hvm
+us-west-2, natty, 11.04 EOL, amd64, ebs, 20121028, ami-0eb23b3e, aki-ace26f9c
+us-west-2, natty, 11.04 EOL, i386, ebs, 20121028, ami-0ab23b3a, aki-dce26fec
+us-west-2, natty, 11.04 EOL, amd64, instance-store, 20121028, ami-3ab23b0a, aki-ace26f9c
+us-west-2, natty, 11.04 EOL, i386, instance-store, 20121028, ami-a2b33a92, aki-dce26fec
+ap-northeast-1, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-8876ca89, aki-d409a2d5
+ap-northeast-1, lucid, 10.04 LTS, i386, ebs, 20120913, ami-8676ca87, aki-d209a2d3
+ap-northeast-1, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-6c76ca6d, aki-d409a2d5
+ap-northeast-1, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-2676ca27, aki-d209a2d3
+ap-southeast-1, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-903575c2, aki-11d5aa43
+ap-southeast-1, lucid, 10.04 LTS, i386, ebs, 20120913, ami-923575c0, aki-13d5aa41
+ap-southeast-1, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-ec3575be, aki-11d5aa43
+ap-southeast-1, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-fe3575ac, aki-13d5aa41
+ap-southeast-2, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-9b8611a1, aki-31990e0b
+ap-southeast-2, lucid, 10.04 LTS, i386, ebs, 20120913, ami-a786119d, aki-33990e09
+ap-southeast-2, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-af861195, aki-31990e0b
+ap-southeast-2, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-49861173, aki-33990e09
+eu-west-1, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-5d4a4b29, aki-4feec43b
+eu-west-1, lucid, 10.04 LTS, i386, ebs, 20120913, ami-534a4b27, aki-4deec439
+eu-west-1, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-794a4b0d, aki-4feec43b
+eu-west-1, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-8f4b4afb, aki-4deec439
+sa-east-1, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-6ac91077, aki-d63ce3cb
+sa-east-1, lucid, 10.04 LTS, i386, ebs, 20120913, ami-68c91075, aki-863ce39b
+sa-east-1, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-6ec91073, aki-d63ce3cb
+sa-east-1, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-7ec91063, aki-863ce39b
+us-east-1, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-c7b202ae, aki-427d952b
+us-east-1, lucid, 10.04 LTS, i386, ebs, 20120913, ami-c5b202ac, aki-407d9529
+us-east-1, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-1db20274, aki-427d952b
+us-east-1, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-53b2023a, aki-407d9529
+us-west-1, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-bb88acfe, aki-9ba0f1de
+us-west-1, lucid, 10.04 LTS, i386, ebs, 20120913, ami-b988acfc, aki-99a0f1dc
+us-west-1, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-bd88acf8, aki-9ba0f1de
+us-west-1, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-a188ace4, aki-99a0f1dc
+us-west-2, lucid, 10.04 LTS, amd64, ebs, 20120913, ami-1a4fc12a, aki-ace26f9c
+us-west-2, lucid, 10.04 LTS, i386, ebs, 20120913, ami-184fc128, aki-dce26fec
+us-west-2, lucid, 10.04 LTS, amd64, instance-store, 20120913, ami-3e4fc10e, aki-ace26f9c
+us-west-2, lucid, 10.04 LTS, i386, instance-store, 20120913, ami-304fc100, aki-dce26fec
+ap-northeast-1, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-d669d6d7, aki-d069d6d1
+ap-northeast-1, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-ca69d6cb, aki-c469d6c5
+ap-southeast-1, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-f4a8e8a6, aki-f2a8e8a0
+ap-southeast-1, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-cca8e89e, aki-c0a8e892
+eu-west-1, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-897575fd, aki-877575f3
+eu-west-1, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-917575e5, aki-a97575dd
+sa-east-1, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-7008d16d, aki-7e08d163
+sa-east-1, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-4208d15f, aki-4a08d157
+us-east-1, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-3c229e55, aki-5e229e37
+us-east-1, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-6c229e05, aki-9c219df5
+us-west-1, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-3ff8df7a, aki-37f8df72
+us-west-1, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-2ff8df6a, aki-25f8df60
+us-west-2, hardy, 8.04 LTS, amd64, instance-store, 20121003, ami-dc31bfec, aki-d631bfe6
+us-west-2, hardy, 8.04 LTS, i386, instance-store, 20121003, ami-ea31bfda, aki-e231bfd2
+ap-northeast-1, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-741dac75, aki-d409a2d5
+ap-northeast-1, maverick, 10.10 EOL, i386, ebs, 20120410, ami-721dac73, aki-d209a2d3
+ap-northeast-1, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-701dac71, aki-d409a2d5
+ap-northeast-1, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-641dac65, aki-d209a2d3
+ap-southeast-1, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-0e8acd5c, aki-11d5aa43
+ap-southeast-1, maverick, 10.10 EOL, i386, ebs, 20120410, ami-0a8acd58, aki-13d5aa41
+ap-southeast-1, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-1a8acd48, aki-11d5aa43
+ap-southeast-1, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-608acd32, aki-13d5aa41
+eu-west-1, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-c57942b1, aki-4feec43b
+eu-west-1, maverick, 10.10 EOL, i386, ebs, 20120410, ami-db7942af, aki-4deec439
+eu-west-1, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-df7942ab, aki-4feec43b
+eu-west-1, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-d57942a1, aki-4deec439
+sa-east-1, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-10a9770d, aki-d63ce3cb
+sa-east-1, maverick, 10.10 EOL, i386, ebs, 20120410, ami-16a9770b, aki-863ce39b
+sa-east-1, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-1aa97707, aki-d63ce3cb
+sa-east-1, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-1ea97703, aki-863ce39b
+us-east-1, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-d78f57be, aki-427d952b
+us-east-1, maverick, 10.10 EOL, i386, ebs, 20120410, ami-d38f57ba, aki-407d9529
+us-east-1, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-098f5760, aki-427d952b
+us-east-1, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-7b8f5712, aki-407d9529
+us-west-1, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-3b154e7e, aki-9ba0f1de
+us-west-1, maverick, 10.10 EOL, i386, ebs, 20120410, ami-39154e7c, aki-99a0f1dc
+us-west-1, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-2b154e6e, aki-9ba0f1de
+us-west-1, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-1d154e58, aki-99a0f1dc
+us-west-2, maverick, 10.10 EOL, amd64, ebs, 20120410, ami-64fd7154, aki-ace26f9c
+us-west-2, maverick, 10.10 EOL, i386, ebs, 20120410, ami-62fd7152, aki-dce26fec
+us-west-2, maverick, 10.10 EOL, amd64, instance-store, 20120410, ami-7efd714e, aki-ace26f9c
+us-west-2, maverick, 10.10 EOL, i386, instance-store, 20120410, ami-76fd7146, aki-dce26fec
+ap-northeast-1, oneiric, 11.10, amd64, ebs, 20120918, ami-9405b995, aki-ee5df7ef
+ap-northeast-1, oneiric, 11.10, i386, ebs, 20120918, ami-9205b993, aki-ec5df7ed
+ap-northeast-1, oneiric, 11.10, amd64, instance-store, 20120918, ami-8005b981, aki-ee5df7ef
+ap-northeast-1, oneiric, 11.10, i386, instance-store, 20120918, ami-6a05b96b, aki-ec5df7ed
+ap-southeast-1, oneiric, 11.10, amd64, ebs, 20120918, ami-a86424fa, aki-aa225af8
+ap-southeast-1, oneiric, 11.10, i386, ebs, 20120918, ami-aa6424f8, aki-a4225af6
+ap-southeast-1, oneiric, 11.10, amd64, instance-store, 20120918, ami-a46424f6, aki-aa225af8
+ap-southeast-1, oneiric, 11.10, i386, instance-store, 20120918, ami-a26424f0, aki-a4225af6
+ap-southeast-2, oneiric, 11.10, amd64, ebs, 20120918, ami-818611bb, aki-31990e0b
+ap-southeast-2, oneiric, 11.10, i386, ebs, 20120918, ami-838611b9, aki-33990e09
+ap-southeast-2, oneiric, 11.10, amd64, instance-store, 20120918, ami-5186116b, aki-31990e0b
+ap-southeast-2, oneiric, 11.10, i386, instance-store, 20120918, ami-5d861167, aki-33990e09
+eu-west-1, oneiric, 11.10, amd64, hvm, 20120918, ami-3fcacb4b, hvm
+eu-west-1, oneiric, 11.10, amd64, ebs, 20120918, ami-3dcacb49, aki-62695816
+eu-west-1, oneiric, 11.10, i386, ebs, 20120918, ami-33cacb47, aki-64695810
+eu-west-1, oneiric, 11.10, amd64, instance-store, 20120918, ami-41cacb35, aki-62695816
+eu-west-1, oneiric, 11.10, i386, instance-store, 20120918, ami-6fcacb1b, aki-64695810
+sa-east-1, oneiric, 11.10, amd64, ebs, 20120918, ami-00f22b1d, aki-cc3ce3d1
+sa-east-1, oneiric, 11.10, i386, ebs, 20120918, ami-06f22b1b, aki-bc3ce3a1
+sa-east-1, oneiric, 11.10, amd64, instance-store, 20120918, ami-08f22b15, aki-cc3ce3d1
+sa-east-1, oneiric, 11.10, i386, instance-store, 20120918, ami-10f22b0d, aki-bc3ce3a1
+us-east-1, oneiric, 11.10, amd64, hvm, 20120918, ami-cfc072a6, hvm
+us-east-1, oneiric, 11.10, amd64, ebs, 20120918, ami-cdc072a4, aki-825ea7eb
+us-east-1, oneiric, 11.10, i386, ebs, 20120918, ami-cbc072a2, aki-805ea7e9
+us-east-1, oneiric, 11.10, amd64, instance-store, 20120918, ami-35c0725c, aki-825ea7eb
+us-east-1, oneiric, 11.10, i386, instance-store, 20120918, ami-71c07218, aki-805ea7e9
+us-west-1, oneiric, 11.10, amd64, ebs, 20120918, ami-fb5176be, aki-8d396bc8
+us-west-1, oneiric, 11.10, i386, ebs, 20120918, ami-ff5176ba, aki-83396bc6
+us-west-1, oneiric, 11.10, amd64, instance-store, 20120918, ami-e95176ac, aki-8d396bc8
+us-west-1, oneiric, 11.10, i386, instance-store, 20120918, ami-d951769c, aki-83396bc6
+us-west-2, oneiric, 11.10, amd64, hvm, 20120918, ami-b67af486, hvm
+us-west-2, oneiric, 11.10, amd64, ebs, 20120918, ami-b47af484, aki-98e26fa8
+us-west-2, oneiric, 11.10, i386, ebs, 20120918, ami-b27af482, aki-c2e26ff2
+us-west-2, oneiric, 11.10, amd64, instance-store, 20120918, ami-4a7af47a, aki-98e26fa8
+us-west-2, oneiric, 11.10, i386, instance-store, 20120918, ami-447af474, aki-c2e26ff2
+ap-northeast-1, karmic, 9.10 EOL, amd64, instance-store, 20100826, ami-2a0fa42b, aki-260fa427
+ap-northeast-1, karmic, 9.10 EOL, i386, instance-store, 20100826, ami-240fa425, aki-0a0fa40b
+ap-southeast-1, karmic, 9.10 EOL, amd64, instance-store, 20100826, ami-90344ac2, aki-ec344abe
+ap-southeast-1, karmic, 9.10 EOL, i386, instance-store, 20100826, ami-e6344ab4, aki-e2344ab0
+eu-west-1, karmic, 9.10 EOL, amd64, instance-store, 20100826, ami-28b9935c, aki-20b99354
+eu-west-1, karmic, 9.10 EOL, i386, instance-store, 20100826, ami-24b99350, aki-34b99340
+us-east-1, karmic, 9.10 EOL, amd64, instance-store, 20100826, ami-6832d801, aki-1c3dd775
+us-east-1, karmic, 9.10 EOL, i386, instance-store, 20100826, ami-563dd73f, aki-c43cd6ad
+us-west-1, karmic, 9.10 EOL, amd64, instance-store, 20100826, ami-0af0a14f, aki-68f0a12d
+us-west-1, karmic, 9.10 EOL, i386, instance-store, 20100826, ami-6ef0a12b, aki-5af0a11f
+ap-northeast-1, quantal, 12.10, amd64, ebs, 20121017, ami-3c07b83d, aki-ee5df7ef
+ap-northeast-1, quantal, 12.10, i386, ebs, 20121017, ami-3a07b83b, aki-ec5df7ed
+ap-northeast-1, quantal, 12.10, amd64, instance-store, 20121017, ami-0407b805, aki-ee5df7ef
+ap-northeast-1, quantal, 12.10, i386, instance-store, 20121017, ami-7008b771, aki-ec5df7ed
+ap-southeast-1, quantal, 12.10, amd64, ebs, 20121017, ami-8ed393dc, aki-aa225af8
+ap-southeast-1, quantal, 12.10, i386, ebs, 20121017, ami-88d393da, aki-a4225af6
+ap-southeast-1, quantal, 12.10, amd64, instance-store, 20121017, ami-e6d393b4, aki-aa225af8
+ap-southeast-1, quantal, 12.10, i386, instance-store, 20121017, ami-28d3937a, aki-a4225af6
+ap-southeast-2, quantal, 12.10, amd64, ebs, 20121017, ami-df8611e5, aki-31990e0b
+ap-southeast-2, quantal, 12.10, i386, ebs, 20121017, ami-d98611e3, aki-33990e09
+ap-southeast-2, quantal, 12.10, amd64, instance-store, 20121017, ami-db8611e1, aki-31990e0b
+ap-southeast-2, quantal, 12.10, i386, instance-store, 20121017, ami-e38611d9, aki-33990e09
+eu-west-1, quantal, 12.10, amd64, hvm, 20121017, ami-ebeded9f, hvm
+eu-west-1, quantal, 12.10, amd64, ebs, 20121017, ami-e9eded9d, aki-62695816
+eu-west-1, quantal, 12.10, i386, ebs, 20121017, ami-efeded9b, aki-64695810
+eu-west-1, quantal, 12.10, amd64, instance-store, 20121017, ami-69eded1d, aki-62695816
+eu-west-1, quantal, 12.10, i386, instance-store, 20121017, ami-b5ececc1, aki-64695810
+sa-east-1, quantal, 12.10, amd64, ebs, 20121017, ami-cc30e9d1, aki-cc3ce3d1
+sa-east-1, quantal, 12.10, i386, ebs, 20121017, ami-d230e9cf, aki-bc3ce3a1
+sa-east-1, quantal, 12.10, amd64, instance-store, 20121017, ami-d030e9cd, aki-cc3ce3d1
+sa-east-1, quantal, 12.10, i386, instance-store, 20121017, ami-b230e9af, aki-bc3ce3a1
+us-east-1, quantal, 12.10, amd64, hvm, 20121017, ami-9665dbff, hvm
+us-east-1, quantal, 12.10, amd64, ebs, 20121017, ami-9465dbfd, aki-825ea7eb
+us-east-1, quantal, 12.10, i386, ebs, 20121017, ami-9265dbfb, aki-805ea7e9
+us-east-1, quantal, 12.10, amd64, instance-store, 20121017, ami-e864da81, aki-825ea7eb
+us-east-1, quantal, 12.10, i386, instance-store, 20121017, ami-dc66d8b5, aki-805ea7e9
+us-west-1, quantal, 12.10, amd64, ebs, 20121017, ami-8f83a4ca, aki-8d396bc8
+us-west-1, quantal, 12.10, i386, ebs, 20121017, ami-8d83a4c8, aki-83396bc6
+us-west-1, quantal, 12.10, amd64, instance-store, 20121017, ami-fd83a4b8, aki-8d396bc8
+us-west-1, quantal, 12.10, i386, instance-store, 20121017, ami-0983a44c, aki-83396bc6
+us-west-2, quantal, 12.10, amd64, hvm, 20121017, ami-42f97072, hvm
+us-west-2, quantal, 12.10, amd64, ebs, 20121017, ami-40f97070, aki-98e26fa8
+us-west-2, quantal, 12.10, i386, ebs, 20121017, ami-5ef9706e, aki-c2e26ff2
+us-west-2, quantal, 12.10, amd64, instance-store, 20121017, ami-50f97060, aki-98e26fa8
+us-west-2, quantal, 12.10, i386, instance-store, 20121017, ami-00f97030, aki-c2e26ff2
+ap-northeast-1, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-eca719ed, aki-ee5df7ef
+ap-northeast-1, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-eaa719eb, aki-ec5df7ed
+ap-northeast-1, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-e0a719e1, aki-ee5df7ef
+ap-northeast-1, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-aca719ad, aki-ec5df7ed
+ap-southeast-1, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-fefcbcac, aki-aa225af8
+ap-southeast-1, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-f8fcbcaa, aki-a4225af6
+ap-southeast-1, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-fafcbca8, aki-aa225af8
+ap-southeast-1, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-d4fcbc86, aki-a4225af6
+ap-southeast-2, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-fb8611c1, aki-31990e0b
+ap-southeast-2, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-858611bf, aki-33990e09
+ap-southeast-2, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-cf8710f5, aki-31990e0b
+ap-southeast-2, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-898710b3, aki-33990e09
+eu-west-1, precise, 12.04 LTS, amd64, hvm, 20121026.1, ami-25656651, hvm
+eu-west-1, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-3b65664f, aki-62695816
+eu-west-1, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-3965664d, aki-64695810
+eu-west-1, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-a16665d5, aki-62695816
+eu-west-1, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-2966655d, aki-64695810
+sa-east-1, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-b45b82a9, aki-cc3ce3d1
+sa-east-1, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-ba5b82a7, aki-bc3ce3a1
+sa-east-1, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-805b829d, aki-cc3ce3d1
+sa-east-1, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-945b8289, aki-bc3ce3a1
+us-east-1, precise, 12.04 LTS, amd64, hvm, 20121026.1, ami-9078c0f9, hvm
+us-east-1, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-9c78c0f5, aki-825ea7eb
+us-east-1, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-9878c0f1, aki-805ea7e9
+us-east-1, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-9a873ff3, aki-825ea7eb
+us-east-1, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-52863e3b, aki-805ea7e9
+us-west-1, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-bb4f69fe, aki-8d396bc8
+us-west-1, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-b94f69fc, aki-83396bc6
+us-west-1, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-a34f69e6, aki-8d396bc8
+us-west-1, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-e34f69a6, aki-83396bc6
+us-west-2, precise, 12.04 LTS, amd64, hvm, 20121026.1, ami-60ab2250, hvm
+us-west-2, precise, 12.04 LTS, amd64, ebs, 20121026.1, ami-7eab224e, aki-98e26fa8
+us-west-2, precise, 12.04 LTS, i386, ebs, 20121026.1, ami-7cab224c, aki-c2e26ff2
+us-west-2, precise, 12.04 LTS, amd64, instance-store, 20121026.1, ami-1aab222a, aki-98e26fa8
+us-west-2, precise, 12.04 LTS, i386, instance-store, 20121026.1, ami-3aab220a, aki-c2e26ff2

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/main/resources/org/apache/provisionr/amazon/userdata.sh
----------------------------------------------------------------------
diff --git a/providers/amazon/src/main/resources/org/apache/provisionr/amazon/userdata.sh b/providers/amazon/src/main/resources/org/apache/provisionr/amazon/userdata.sh
new file mode 100644
index 0000000..9009fd6
--- /dev/null
+++ b/providers/amazon/src/main/resources/org/apache/provisionr/amazon/userdata.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+set -e -x
+export DEBIAN_FRONTEND=noninteractive
+
+# adds the distribution codename as a shell var
+. /etc/lsb-release
+
+# add the puppet package repository
+wget http://apt.puppetlabs.com/puppetlabs-release-$DISTRIB_CODENAME.deb
+dpkg -i puppetlabs-release-$DISTRIB_CODENAME.deb
+
+apt-get update
+apt-get install -y puppet-common
+
+# TODO implement a special action for global package upgrades 
+# apt-get upgrade -y
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java
deleted file mode 100644
index a23ffab..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon;
-
-import org.activiti.engine.ProcessEngine;
-import org.activiti.engine.ProcessEngineConfiguration;
-import org.activiti.engine.repository.Deployment;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-
-public class ProcessDefinitionSyntaxCheckTest {
-
-    private ProcessEngine processEngine;
-
-    @Before
-    public void setUp() {
-        processEngine = ProcessEngineConfiguration
-            .createStandaloneInMemProcessEngineConfiguration().buildProcessEngine();
-    }
-
-    @After
-    public void tearDown() {
-        processEngine.close();
-    }
-
-    @Test
-    public void testDeployment() {
-        assertCanBeDeployed("OSGI-INF/activiti/amazonPoolManagement.bpmn20.xml");
-        assertCanBeDeployed("OSGI-INF/activiti/amazonMachineSetup.bpmn20.xml");
-    }
-
-    private void assertCanBeDeployed(String resource) {
-        Deployment deployment = processEngine.getRepositoryService().createDeployment()
-            .addClasspathResource(resource).deploy();
-
-        assertThat(deployment).isNotNull();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/AmazonActivityLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/AmazonActivityLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/AmazonActivityLiveTest.java
deleted file mode 100644
index e0f8f56..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/AmazonActivityLiveTest.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.amazonaws.AmazonServiceException;
-import com.amazonaws.services.ec2.AmazonEC2;
-import com.amazonaws.services.ec2.model.DeleteSecurityGroupRequest;
-import com.axemblr.provisionr.amazon.AmazonProvisionr;
-import com.axemblr.provisionr.amazon.options.ProviderOptions;
-import com.axemblr.provisionr.amazon.core.ProviderClientCache;
-import com.axemblr.provisionr.amazon.core.ProviderClientCacheSupplier;
-import com.axemblr.provisionr.api.provider.Provider;
-import com.axemblr.provisionr.test.Generics;
-import com.axemblr.provisionr.test.ProvisionrLiveTestSupport;
-import com.google.common.base.Throwables;
-import java.lang.reflect.Constructor;
-import java.util.UUID;
-import org.activiti.engine.delegate.DelegateExecution;
-import org.junit.After;
-import org.junit.Before;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public abstract class AmazonActivityLiveTest<T extends AmazonActivity> extends ProvisionrLiveTestSupport {
-
-    private static final Logger LOG = LoggerFactory.getLogger(AmazonActivityLiveTest.class);
-
-    protected final String BUSINESS_KEY = "j-" + UUID.randomUUID().toString();
-
-    /**
-     * Cloud provider credentials collected from system properties
-     */
-    protected Provider provider;
-
-    /**
-     * Instance of the AmazonActivity being tested. Automatically created
-     * from the generic type class argument
-     */
-    protected T activity;
-
-    /**
-     * Amazon EC2 client
-     */
-    protected AmazonEC2 client;
-
-    /**
-     * A cache of AmazonEC2 client instances by Provider
-     */
-    private ProviderClientCache clientCache;
-
-    public AmazonActivityLiveTest() {
-        super(AmazonProvisionr.ID);
-    }
-
-    /**
-     * Create an instance using the default constructor for the class type argument
-     *
-     * @param klass
-     * @param clientCache cache for AmazonEC2 client connections
-     */
-    protected <A extends AmazonActivity> A createAmazonActivityInstance(
-        Class<A> klass, ProviderClientCache clientCache
-    ) {
-        try {
-            Constructor<A> constructor = klass.getConstructor(ProviderClientCache.class);
-            return (A) constructor.newInstance(clientCache);
-
-        } catch (Exception e) {
-            throw Throwables.propagate(e);
-        }
-    }
-
-    /**
-     * Retrieve the generic class type argument.
-     */
-    protected Class<T> getAmazonActivityClass() {
-        return Generics.getTypeParameter(getClass(), AmazonActivity.class);
-    }
-
-    @Before
-    public void setUp() throws Exception {
-        final String region = getProviderProperty(ProviderOptions.REGION, ProviderOptions.DEFAULT_REGION);
-
-        provider = collectProviderCredentialsFromSystemProperties()
-            .option(ProviderOptions.REGION, region).createProvider();
-        LOG.info("Using provider {}", provider);
-
-        clientCache = (new ProviderClientCacheSupplier()).get();
-        client = clientCache.getUnchecked(provider);
-
-        activity = createAmazonActivityInstance(getAmazonActivityClass(), clientCache);
-    }
-
-    @After
-    public void tearDown() throws Exception {
-        client.shutdown();
-    }
-
-    protected void executeActivitiesInSequence(
-        DelegateExecution execution, Class<? extends AmazonActivity>... classes
-    ) throws Exception {
-        for (Class<? extends AmazonActivity> klass : classes) {
-            createAmazonActivityInstance(klass, clientCache).execute(execution);
-        }
-    }
-
-    protected void quietlyDeleteSecurityGroupIfExists(String groupName) {
-        try {
-            client.deleteSecurityGroup(new DeleteSecurityGroupRequest().withGroupName(groupName));
-
-        } catch (AmazonServiceException e) {
-            if (!e.getErrorCode().equals("InvalidGroup.NotFound")) {
-                throw Throwables.propagate(e);
-            }
-        }
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/CreatePoolLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/CreatePoolLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/CreatePoolLiveTest.java
deleted file mode 100644
index 2bda59c..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/CreatePoolLiveTest.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package com.axemblr.provisionr.amazon.activities;
-
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-import com.axemblr.provisionr.api.access.AdminAccess;
-import com.axemblr.provisionr.api.hardware.BlockDevice;
-import com.axemblr.provisionr.api.hardware.Hardware;
-import com.axemblr.provisionr.api.network.Network;
-import com.axemblr.provisionr.api.network.Rule;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.api.software.Software;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-
-import java.util.ArrayList;
-
-import org.activiti.engine.delegate.DelegateExecution;
-
-public abstract class CreatePoolLiveTest<T extends AmazonActivity> extends AmazonActivityLiveTest<T> {
-
-    protected DelegateExecution execution;
-    protected Pool pool;
-    protected Hardware hardware;
-    protected Software software;
-
-    @SuppressWarnings("unchecked")
-    @Override
-    public void setUp() throws Exception {
-        super.setUp();
-        execution = mock(DelegateExecution.class);
-        pool = mock(Pool.class);
-
-        final AdminAccess adminAccess = AdminAccess.builder()
-            .username("admin")
-            .publicKey(getResourceAsString("keys/test.pub"))
-            .privateKey(getResourceAsString("keys/test"))
-            .createAdminAccess();
-
-        final Network network = Network.builder().addRules(
-            Rule.builder().anySource().tcp().port(22).createRule()).createNetwork();
-
-        hardware = mock(Hardware.class);
-        when(hardware.getType()).thenReturn("t1.micro");
-        when(hardware.getBlockDevices()).thenReturn(new ArrayList<BlockDevice>());
-
-        software = mock(Software.class);
-
-        when(pool.getProvider()).thenReturn(provider);
-        when(pool.getAdminAccess()).thenReturn(adminAccess);
-        when(pool.getNetwork()).thenReturn(network);
-
-        when(pool.getMinSize()).thenReturn(1);
-        when(pool.getExpectedSize()).thenReturn(1);
-
-        when(pool.getHardware()).thenReturn(hardware);
-
-        when(execution.getProcessBusinessKey()).thenReturn(BUSINESS_KEY);
-        when(execution.getVariable(CoreProcessVariables.POOL)).thenReturn(pool);
-
-        executeActivitiesInSequence(execution,
-            EnsureKeyPairExists.class,
-            EnsureSecurityGroupExists.class
-        );
-    }
-
-    @Override
-    @SuppressWarnings("unchecked")
-    public void tearDown() throws Exception {
-        executeActivitiesInSequence(execution,
-            DeleteSecurityGroup.class,
-            DeleteKeyPair.class
-        );
-        super.tearDown();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteKeyPairLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteKeyPairLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteKeyPairLiveTest.java
deleted file mode 100644
index 53a5ec7..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteKeyPairLiveTest.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.amazonaws.AmazonServiceException;
-import com.amazonaws.services.ec2.model.DeleteKeyPairRequest;
-import com.amazonaws.services.ec2.model.DescribeKeyPairsRequest;
-import com.amazonaws.services.ec2.model.DescribeKeyPairsResult;
-import com.amazonaws.services.ec2.model.ImportKeyPairRequest;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.amazon.core.ErrorCodes;
-import com.axemblr.provisionr.amazon.core.KeyPairs;
-import com.axemblr.provisionr.api.access.AdminAccess;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import org.activiti.engine.delegate.DelegateExecution;
-import static org.fest.assertions.api.Assertions.assertThat;
-import static org.junit.Assert.fail;
-import org.junit.Test;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-public class DeleteKeyPairLiveTest extends AmazonActivityLiveTest<DeleteKeyPair> {
-
-    private final String KEYPAIR_NAME = KeyPairs.formatNameFromBusinessKey(BUSINESS_KEY);
-
-    @Override
-    public void setUp() throws Exception {
-        super.setUp();
-
-        client.importKeyPair(new ImportKeyPairRequest().withKeyName(KEYPAIR_NAME)
-            .withPublicKeyMaterial(getResourceAsString("keys/test.pub")));
-    }
-
-    @Override
-    public void tearDown() throws Exception {
-        client.deleteKeyPair(new DeleteKeyPairRequest().withKeyName(KEYPAIR_NAME));
-        super.tearDown();
-    }
-
-    @Test
-    public void testDeleteKeyPair() throws Exception {
-        final AdminAccess adminAccess = AdminAccess.builder()
-            .username("admin")
-            .publicKey(getResourceAsString("keys/test.pub"))
-            .privateKey(getResourceAsString("keys/test"))
-            .createAdminAccess();
-
-        DelegateExecution execution = mock(DelegateExecution.class);
-        Pool pool = mock(Pool.class);
-
-        when(pool.getAdminAccess()).thenReturn(adminAccess);
-        when(pool.getProvider()).thenReturn(provider);
-
-        when(execution.getProcessBusinessKey()).thenReturn(BUSINESS_KEY);
-        when(execution.getVariable(CoreProcessVariables.POOL)).thenReturn(pool);
-
-        activity.execute(execution);
-        assertKeyNotFound(KEYPAIR_NAME);
-
-        /* the second call should just do nothing */
-        activity.execute(execution);
-    }
-
-    public void assertKeyNotFound(String keyName) {
-        final DescribeKeyPairsRequest request = new DescribeKeyPairsRequest().withKeyNames(keyName);
-        try {
-            DescribeKeyPairsResult result = client.describeKeyPairs(request);
-            fail("Found key " + result.getKeyPairs().get(0));
-
-        } catch (AmazonServiceException e) {
-            assertThat(e.getErrorCode()).isEqualTo(ErrorCodes.KEYPAIR_NOT_FOUND);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteSecurityGroupLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteSecurityGroupLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteSecurityGroupLiveTest.java
deleted file mode 100644
index b931dda..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/DeleteSecurityGroupLiveTest.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.amazonaws.AmazonServiceException;
-import com.amazonaws.services.ec2.model.CreateSecurityGroupRequest;
-import com.amazonaws.services.ec2.model.DescribeSecurityGroupsRequest;
-import com.amazonaws.services.ec2.model.SecurityGroup;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.amazon.core.SecurityGroups;
-import com.axemblr.provisionr.api.access.AdminAccess;
-import com.axemblr.provisionr.api.network.Network;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.api.software.Software;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import org.activiti.engine.delegate.DelegateExecution;
-import static org.fest.assertions.api.Assertions.assertThat;
-import static org.fest.assertions.api.Assertions.fail;
-import org.junit.After;
-import org.junit.Test;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class DeleteSecurityGroupLiveTest extends AmazonActivityLiveTest<DeleteSecurityGroup> {
-
-    private final String SECURITY_GROUP_NAME = SecurityGroups.formatNameFromBusinessKey(BUSINESS_KEY);
-
-    @After
-    public void tearDown() throws Exception {
-        quietlyDeleteSecurityGroupIfExists(SECURITY_GROUP_NAME);
-        super.tearDown();
-    }
-
-    @Test
-    public void testDeleteSecurityGroup() throws Exception {
-        DelegateExecution execution = mock(DelegateExecution.class);
-        Pool pool = mock(Pool.class);
-
-        when(pool.getProvider()).thenReturn(provider);
-        when(execution.getVariable(CoreProcessVariables.POOL)).thenReturn(pool);
-        when(execution.getProcessBusinessKey()).thenReturn(BUSINESS_KEY);
-
-        client.createSecurityGroup(new CreateSecurityGroupRequest()
-            .withGroupName(SECURITY_GROUP_NAME).withDescription("Just for test"));
-
-        activity.execute(execution);
-
-        try {
-            client.describeSecurityGroups(new DescribeSecurityGroupsRequest()
-                .withGroupNames(SECURITY_GROUP_NAME));
-            fail("Did not throw AmazonServiceException as expected");
-
-        } catch (AmazonServiceException e) {
-            assertThat(e.getErrorCode()).isEqualTo("InvalidGroup.NotFound");
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureKeyPairExistsLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureKeyPairExistsLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureKeyPairExistsLiveTest.java
deleted file mode 100644
index 94154e1..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureKeyPairExistsLiveTest.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.amazonaws.services.ec2.model.DeleteKeyPairRequest;
-import com.amazonaws.services.ec2.model.DescribeKeyPairsRequest;
-import com.amazonaws.services.ec2.model.DescribeKeyPairsResult;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.amazon.core.KeyPairs;
-import com.axemblr.provisionr.api.access.AdminAccess;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import org.activiti.engine.delegate.DelegateExecution;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.Test;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-public class EnsureKeyPairExistsLiveTest extends AmazonActivityLiveTest<EnsureKeyPairExists> {
-
-    /**
-     * Computed in an Amazon specific way
-     */
-    public static final String TEST_KEY_FINGERPRINT = "2f:e9:a0:bc:17:71:3a:7e:d7:c0:16:99:0d:62:8e:be";
-
-    private final String KEYPAIR_NAME = KeyPairs.formatNameFromBusinessKey(BUSINESS_KEY);
-
-    @Override
-    public void tearDown() throws Exception {
-        client.deleteKeyPair(new DeleteKeyPairRequest().withKeyName(KEYPAIR_NAME));
-        super.tearDown();
-    }
-
-    @Test
-    public void testEnsureKeyPairExists() throws Exception {
-        final AdminAccess adminAccess = AdminAccess.builder()
-            .username("admin")
-            .publicKey(getResourceAsString("keys/test.pub"))
-            .privateKey(getResourceAsString("keys/test"))
-            .createAdminAccess();
-
-        DelegateExecution execution = mock(DelegateExecution.class);
-        Pool pool = mock(Pool.class);
-
-        when(pool.getProvider()).thenReturn(provider);
-        when(pool.getAdminAccess()).thenReturn(adminAccess);
-
-        when(execution.getProcessBusinessKey()).thenReturn(BUSINESS_KEY);
-        when(execution.getVariable(CoreProcessVariables.POOL)).thenReturn(pool);
-
-        activity.execute(execution);
-        assertKeyPairWasImportedAsExpected();
-
-        /* the second call should just re-import the key */
-        activity.execute(execution);
-        assertKeyPairWasImportedAsExpected();
-    }
-
-    private void assertKeyPairWasImportedAsExpected() {
-        final DescribeKeyPairsRequest request = new DescribeKeyPairsRequest().withKeyNames(KEYPAIR_NAME);
-        DescribeKeyPairsResult result = client.describeKeyPairs(request);
-
-        assertThat(result.getKeyPairs()).hasSize(1);
-        assertThat(result.getKeyPairs().get(0).getKeyFingerprint()).isEqualTo(TEST_KEY_FINGERPRINT);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureSecurityGroupExistsLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureSecurityGroupExistsLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureSecurityGroupExistsLiveTest.java
deleted file mode 100644
index d630406..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/EnsureSecurityGroupExistsLiveTest.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.amazonaws.services.ec2.model.AuthorizeSecurityGroupIngressRequest;
-import com.amazonaws.services.ec2.model.DescribeSecurityGroupsRequest;
-import com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult;
-import com.amazonaws.services.ec2.model.IpPermission;
-import com.amazonaws.services.ec2.model.RevokeSecurityGroupIngressRequest;
-import com.amazonaws.services.ec2.model.SecurityGroup;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.amazon.core.SecurityGroups;
-import com.axemblr.provisionr.amazon.functions.ConvertIpPermissionToRule;
-import com.axemblr.provisionr.amazon.functions.ConvertRuleToIpPermission;
-import com.axemblr.provisionr.api.network.Network;
-import com.axemblr.provisionr.api.network.Rule;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import com.google.common.collect.ImmutableSet;
-import static com.google.common.collect.Iterables.getOnlyElement;
-import static com.google.common.collect.Iterables.transform;
-import static com.google.common.collect.Lists.newArrayList;
-import com.google.common.collect.Sets;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-import org.activiti.engine.delegate.DelegateExecution;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.After;
-import org.junit.Test;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class EnsureSecurityGroupExistsLiveTest extends AmazonActivityLiveTest<EnsureSecurityGroupExists> {
-
-    private static final Logger LOG = LoggerFactory.getLogger(EnsureSecurityGroupExistsLiveTest.class);
-
-    protected final String SECURITY_GROUP_NAME = SecurityGroups.formatNameFromBusinessKey(BUSINESS_KEY);
-
-    @After
-    public void tearDown() throws Exception {
-        quietlyDeleteSecurityGroupIfExists(SECURITY_GROUP_NAME);
-        super.tearDown();
-    }
-
-    @Test
-    public void testCreateSecurityGroup() throws Exception {
-        DelegateExecution execution = mock(DelegateExecution.class);
-
-        final ImmutableSet<Rule> ingressRules = ImmutableSet.of(
-            Rule.builder().anySource().icmp().createRule(),
-            Rule.builder().anySource().port(22).tcp().createRule(),
-            Rule.builder().anySource().port(53).udp().createRule()
-        );
-
-        final Network network = Network.builder().ingress(ingressRules).createNetwork();
-
-        Pool pool = mock(Pool.class);
-
-        when(pool.getProvider()).thenReturn(provider);
-        when(pool.getNetwork()).thenReturn(network);
-
-        when(execution.getVariable(CoreProcessVariables.POOL)).thenReturn(pool);
-        when(execution.getProcessBusinessKey()).thenReturn(BUSINESS_KEY);
-
-        activity.execute(execution);
-        assertSecurityGroupExistsWithRules(SECURITY_GROUP_NAME, ingressRules);
-
-        /* If any permissions is removed it should converge on a second run */
-        Set<Rule> expectedAfterRevoke = revokeAnyRule(ingressRules);
-        assertSecurityGroupExistsWithRules(SECURITY_GROUP_NAME, expectedAfterRevoke);
-
-        activity.execute(execution);
-        assertSecurityGroupExistsWithRules(SECURITY_GROUP_NAME, ingressRules);
-
-        /* If any permissions is added it should converge on a second run */
-        final IpPermission permission = new IpPermission().withIpProtocol("tcp")
-            .withIpRanges("0.0.0.0/0").withFromPort(100).withToPort(120);
-
-        client.authorizeSecurityGroupIngress(new AuthorizeSecurityGroupIngressRequest()
-            .withGroupName(SECURITY_GROUP_NAME).withIpPermissions(permission));
-
-        assertSecurityGroupExistsWithRules(SECURITY_GROUP_NAME, Sets.<Rule>union(ingressRules,
-            ImmutableSet.of(ConvertIpPermissionToRule.FUNCTION.apply(permission))));
-
-        activity.execute(execution);
-        assertSecurityGroupExistsWithRules(SECURITY_GROUP_NAME, ingressRules);
-    }
-
-    private Set<Rule> revokeAnyRule(Set<Rule> ingressRules) {
-        List<IpPermission> permissions = newArrayList(transform(ingressRules, ConvertRuleToIpPermission.FUNCTION));
-        Collections.shuffle(permissions);
-
-        IpPermission permission = permissions.get(0);
-        LOG.info(">> Revoking permission {} on {} for test.", permission, SECURITY_GROUP_NAME);
-
-        client.revokeSecurityGroupIngress(new RevokeSecurityGroupIngressRequest()
-            .withGroupName(SECURITY_GROUP_NAME).withIpPermissions(permission));
-
-        return Sets.difference(ingressRules, ImmutableSet.of(ConvertIpPermissionToRule.FUNCTION.apply(permission)));
-    }
-
-    public void assertSecurityGroupExistsWithRules(String groupName, final Set<Rule> ingressRules) {
-        DescribeSecurityGroupsResult result = client.describeSecurityGroups(
-            new DescribeSecurityGroupsRequest().withGroupNames(groupName));
-
-        assertThat(result.getSecurityGroups()).hasSize(1);
-        SecurityGroup group = getOnlyElement(result.getSecurityGroups());
-
-        assertThat(group.getIpPermissions()).hasSize(ingressRules.size());
-        assertThat(ingressRules).containsAll(transform(group.getIpPermissions(),
-            ConvertIpPermissionToRule.FUNCTION));
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/PublishListOfMachinesTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/PublishListOfMachinesTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/PublishListOfMachinesTest.java
deleted file mode 100644
index c560d19..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/PublishListOfMachinesTest.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.amazonaws.services.ec2.AmazonEC2;
-import com.amazonaws.services.ec2.model.DescribeInstancesRequest;
-import com.amazonaws.services.ec2.model.DescribeInstancesResult;
-import com.amazonaws.services.ec2.model.Instance;
-import com.amazonaws.services.ec2.model.Reservation;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.amazon.core.ProviderClientCache;
-import com.axemblr.provisionr.api.pool.Machine;
-import com.axemblr.provisionr.api.provider.Provider;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import com.axemblr.provisionr.test.ProcessVariablesCollector;
-import com.google.common.collect.Lists;
-import java.util.List;
-import org.activiti.engine.delegate.DelegateExecution;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.Test;
-import org.mockito.Matchers;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-public class PublishListOfMachinesTest {
-
-    @Test
-    public void testPublishListOfMachines() throws Exception {
-        AmazonEC2 client = mock(AmazonEC2.class);
-
-        ProviderClientCache clientCache = mock(ProviderClientCache.class);
-        when(clientCache.get(Matchers.<Provider>any())).thenReturn(client);
-
-        DelegateExecution execution = mock(DelegateExecution.class);
-        List<String> instanceIds = Lists.newArrayList("i-123", "i-456");
-        when(execution.getVariable(ProcessVariables.INSTANCE_IDS)).thenReturn(instanceIds);
-
-        when(client.describeInstances(Matchers.<DescribeInstancesRequest>any()))
-            .thenReturn(new DescribeInstancesResult()
-                .withReservations(new Reservation().withInstances(
-                    new Instance().withInstanceId("i-123").withPublicDnsName("i1.amazonaws.com")
-                        .withPublicIpAddress("1.2.3.4").withPrivateDnsName("i1.internal").withPrivateIpAddress("10.1.2.3"),
-                    new Instance().withInstanceId("i-456").withPublicDnsName("i2.amazonaws.com")
-                        .withPublicIpAddress("5.6.7.8").withPrivateDnsName("i2.internal").withPrivateIpAddress("10.4.5.6")
-                )));
-
-        ProcessVariablesCollector collector = new ProcessVariablesCollector();
-        collector.install(execution);
-
-        AmazonActivity activity = new PublishListOfMachines(clientCache);
-        activity.execute(client, null /* not used */, execution);
-
-        @SuppressWarnings("unchecked")
-        List<Machine> machines = (List<Machine>) collector.getVariable(CoreProcessVariables.MACHINES);
-
-        assertThat(machines).hasSize(2);
-        assertThat(machines.get(0).getPublicDnsName()).isEqualTo("i1.amazonaws.com");
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunOnDemandInstancesLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunOnDemandInstancesLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunOnDemandInstancesLiveTest.java
deleted file mode 100644
index d5bb4b1..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunOnDemandInstancesLiveTest.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import static org.fest.assertions.api.Assertions.assertThat;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import com.amazonaws.services.ec2.model.DescribeInstancesRequest;
-import com.amazonaws.services.ec2.model.DescribeInstancesResult;
-import com.amazonaws.services.ec2.model.DescribeVolumesRequest;
-import com.amazonaws.services.ec2.model.DescribeVolumesResult;
-import com.amazonaws.services.ec2.model.Instance;
-import com.amazonaws.services.ec2.model.InstanceBlockDeviceMapping;
-import com.amazonaws.services.ec2.model.TerminateInstancesRequest;
-import com.amazonaws.services.ec2.model.Volume;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.api.hardware.BlockDevice;
-import com.axemblr.provisionr.test.ProcessVariablesCollector;
-import com.google.common.collect.Lists;
-import com.google.common.util.concurrent.Uninterruptibles;
-
-import java.util.List;
-import java.util.concurrent.TimeUnit;
-
-import org.junit.Test;
-
-public class RunOnDemandInstancesLiveTest extends CreatePoolLiveTest<RunOnDemandInstances> {
-
-    private static final String UBUNTU_AMI_ID = "ami-1e831d77"; // Ubuntu 13.04 amd64
-    private ProcessVariablesCollector collector;
-
-    @Override
-    public void setUp() throws Exception {
-        super.setUp();
-        collector = new ProcessVariablesCollector();
-        collector.install(execution);
-    }
-
-    @Test
-    public void testRunInstances() throws Exception {
-
-        activity.execute(execution);
-
-        verify(execution).setVariable(eq(ProcessVariables.RESERVATION_ID), anyString());
-        verify(execution).setVariable(eq(ProcessVariables.INSTANCE_IDS), any());
-
-        @SuppressWarnings("unchecked")
-        List<String> instanceIds = (List<String>) collector.getVariable(ProcessVariables.INSTANCE_IDS);
-
-        /* the second call should do nothing */
-        activity.execute(execution);
-
-        DescribeInstancesResult result = client.describeInstances(new DescribeInstancesRequest()
-            .withInstanceIds(instanceIds));
-
-        assertThat(result.getReservations()).hasSize(1);
-        assertThat(result.getReservations().get(0).getInstances()).hasSize(1);
-
-    }
-
-    @Test
-    public void testRunInstancesWithBlockDevices() throws Exception {
-        // TODO: maybe we should also test for spot instances
-        BlockDevice blockDevice = mock(BlockDevice.class);
-        when(blockDevice.getSize()).thenReturn(8); // TODO: understand why it doesn't work for smaller volumes
-        when(blockDevice.getName()).thenReturn("/dev/sda1");
-        BlockDevice blockDevice2 = mock(BlockDevice.class);
-        when(blockDevice2.getSize()).thenReturn(16);
-        when(blockDevice2.getName()).thenReturn("/dev/sda4");
-        when(hardware.getBlockDevices()).thenReturn(Lists.newArrayList(blockDevice, blockDevice2));
-
-        activity.execute(execution);
-
-        Uninterruptibles.sleepUninterruptibly(30, TimeUnit.SECONDS);
-
-        @SuppressWarnings("unchecked")
-        List<String> instanceIds = (List<String>) collector.getVariable(ProcessVariables.INSTANCE_IDS);
-        DescribeInstancesResult result = client.describeInstances(new DescribeInstancesRequest()
-            .withInstanceIds(instanceIds));
-
-        Instance instance = result.getReservations().get(0).getInstances().get(0);
-        List<InstanceBlockDeviceMapping> bdm = instance.getBlockDeviceMappings();
-        assertThat(bdm).hasSize(2);
-        List<String> volumeIds = Lists.newArrayList();
-        for (int i = 0; i < bdm.size(); i++) {
-            assertThat(bdm.get(i).getDeviceName()).isEqualTo("/dev/sda" + ((i+1) * (i+1)));
-            assertThat(bdm.get(i).getEbs().getDeleteOnTermination()).isTrue();
-            volumeIds.add(bdm.get(i).getEbs().getVolumeId());
-        }
-
-        DescribeVolumesResult volumesResult = client.describeVolumes(
-                new DescribeVolumesRequest().withVolumeIds(volumeIds));
-        for (Volume volume : volumesResult.getVolumes()) {
-            assertThat(volume.getState()).isIn(Lists.newArrayList("creating", "available", "in-use"));
-        }
-        assertThat(volumesResult.getVolumes().get(0).getSize()).isNotEqualTo(volumesResult.getVolumes().get(1).getSize());
-    }
-
-    @Test
-    public void testRunInstancesWithABaseImageId() throws Exception {
-        when(software.getImageId()).thenReturn(UBUNTU_AMI_ID);
-        when(pool.getSoftware()).thenReturn(software);
-        activity.execute(execution);
-
-        @SuppressWarnings("unchecked")
-        List<String> instanceIds = (List<String>) collector.getVariable(ProcessVariables.INSTANCE_IDS);
-        DescribeInstancesResult result = client.describeInstances(new DescribeInstancesRequest()
-            .withInstanceIds(instanceIds));
-
-        Instance instance = result.getReservations().get(0).getInstances().get(0);
-        assertThat(instance.getImageId()).isEqualTo(UBUNTU_AMI_ID);
-    }
-
-    @Override
-    public void tearDown() throws Exception {
-        @SuppressWarnings("unchecked")
-        List<String> instanceIds = (List<String>) collector.getVariable(ProcessVariables.INSTANCE_IDS);
-        client.terminateInstances(new TerminateInstancesRequest().withInstanceIds(instanceIds));
-
-        // TODO: this behaves strangely, if it tries to delete the security group 
-        // and the instances are not yet killed, the test fails with an error
-        Uninterruptibles.sleepUninterruptibly(45, TimeUnit.SECONDS);
-        super.tearDown();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunSpotInstancesLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunSpotInstancesLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunSpotInstancesLiveTest.java
deleted file mode 100644
index 89d7d24..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/RunSpotInstancesLiveTest.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
-* Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*    http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
-
-package com.axemblr.provisionr.amazon.activities;
-
-import static org.fest.assertions.api.Assertions.assertThat;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.TimeUnit;
-
-import org.junit.Test;
-import org.mockito.ArgumentCaptor;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.amazonaws.services.ec2.model.DescribeSpotInstanceRequestsRequest;
-import com.amazonaws.services.ec2.model.DescribeSpotInstanceRequestsResult;
-import com.amazonaws.services.ec2.model.Filter;
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.amazon.options.ProviderOptions;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import com.axemblr.provisionr.test.ProcessVariablesCollector;
-import com.google.common.util.concurrent.Uninterruptibles;
-
-public class RunSpotInstancesLiveTest extends CreatePoolLiveTest<RunSpotInstances> {
-
-    /**
-     * This should be set a bit higher than the on demand instance
-     * price to avoid the situation in which the test fails because
-     * the spot bid is too low. 
-     */
-    public static String AMAZON_SPOT_BID = "0.04";
-
-    @Override
-    public void setUp() throws Exception {
-        super.setUp();
-
-        final String region = getProviderProperty(ProviderOptions.REGION, ProviderOptions.DEFAULT_REGION);
-        provider = collectProviderCredentialsFromSystemProperties()
-                .option(ProviderOptions.REGION, region)
-                .option(ProviderOptions.SPOT_BID, AMAZON_SPOT_BID)
-                .createProvider();
-        when(pool.getProvider()).thenReturn(provider);
-    }
-
-    @Test
-    public void testRunSpotInstances() throws Exception {
-        ProcessVariablesCollector collector = new ProcessVariablesCollector();
-        collector.install(execution);
-
-        activity.execute(execution);
-
-        @SuppressWarnings("unchecked")
-        ArgumentCaptor<List<String>> argument = (ArgumentCaptor<List<String>>) 
-                (Object) ArgumentCaptor.forClass(List.class);
-        verify(execution).setVariable(eq(ProcessVariables.SPOT_INSTANCE_REQUEST_IDS), argument.capture());
-        when(execution.getVariable(ProcessVariables.SPOT_INSTANCE_REQUEST_IDS)).thenReturn(argument.getValue());
-        /* The timeout is needed because the describe calls don't return immediately. */
-        // TODO: see if we can eliminate this after adding the process variables conditions
-        Uninterruptibles.sleepUninterruptibly(1, TimeUnit.MINUTES);
-
-        // shouldn't do anything
-        activity.execute(execution);
-
-        Uninterruptibles.sleepUninterruptibly(1, TimeUnit.MINUTES);
-
-        DescribeSpotInstanceRequestsResult result = client.describeSpotInstanceRequests(
-                new DescribeSpotInstanceRequestsRequest().withFilters(new Filter()
-                    .withName("launch-group").withValues(BUSINESS_KEY)));
-
-        assertThat(result.getSpotInstanceRequests()).hasSize(1);
-        /* we also need to sleep before the teardown */
-        Uninterruptibles.sleepUninterruptibly(1, TimeUnit.MINUTES);
-    }
-
-    @SuppressWarnings("unchecked")
-    @Override
-    public void tearDown() throws Exception {
-        // cleanup any pending requests or instances
-        ArgumentCaptor<List<String>> argument = (ArgumentCaptor<List<String>>) 
-                (Object) ArgumentCaptor.forClass(List.class);
-
-        executeActivitiesInSequence(execution,
-                CancelSpotRequests.class, 
-                GetInstanceIdsFromSpotRequests.class);
-
-        verify(execution).setVariable(eq(ProcessVariables.INSTANCE_IDS), argument.capture());
-        when(execution.getVariable(ProcessVariables.INSTANCE_IDS)).thenReturn(argument.getValue());
-
-        executeActivitiesInSequence(execution, TerminateInstances.class);
-        super.tearDown();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/SetupAdminAccessTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/SetupAdminAccessTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/SetupAdminAccessTest.java
deleted file mode 100644
index 1af2038..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/SetupAdminAccessTest.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2013 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.axemblr.provisionr.api.access.AdminAccess;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.core.activities.PuppetActivity;
-import com.axemblr.provisionr.test.TestConstants;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.Test;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-public class SetupAdminAccessTest {
-
-    @Test
-    public void testCreatePuppetScript() throws Exception {
-        Pool pool = mock(Pool.class);
-
-        final AdminAccess adminAccess = AdminAccess.builder()
-            .privateKey(TestConstants.PRIVATE_KEY)
-            .publicKey(TestConstants.PUBLIC_KEY)
-            .username(System.getProperty("user.name"))
-            .createAdminAccess();
-
-        when(pool.getAdminAccess()).thenReturn(adminAccess);
-
-        PuppetActivity activity = new SetupAdminAccess();
-        String content = activity.createPuppetScript(pool, null);
-
-        final String username = adminAccess.getUsername();
-
-        assertThat(content).contains(username)
-            .contains(adminAccess.getPublicKey().split(" ")[1])
-            .contains(String.format("user { \"%s\":", username))
-            .contains(String.format("file { \"/home/%s/.ssh\":", username));
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/TerminateInstancesLiveTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/TerminateInstancesLiveTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/TerminateInstancesLiveTest.java
deleted file mode 100644
index 360c2d0..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/activities/TerminateInstancesLiveTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.activities;
-
-import com.axemblr.provisionr.amazon.ProcessVariables;
-import com.axemblr.provisionr.api.access.AdminAccess;
-import com.axemblr.provisionr.api.hardware.Hardware;
-import com.axemblr.provisionr.api.network.Network;
-import com.axemblr.provisionr.api.network.Rule;
-import com.axemblr.provisionr.api.pool.Pool;
-import com.axemblr.provisionr.core.CoreProcessVariables;
-import com.axemblr.provisionr.test.ProcessVariablesCollector;
-import org.activiti.engine.delegate.DelegateExecution;
-import org.junit.Test;
-import org.mockito.Matchers;
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.doAnswer;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.when;
-
-public class TerminateInstancesLiveTest extends CreatePoolLiveTest<TerminateInstances> {
-
-    private ProcessVariablesCollector collector;
-
-    @Override
-    public void setUp() throws Exception {
-        super.setUp();
-
-        collector = new ProcessVariablesCollector();
-        collector.install(execution);
-    }
-
-    @Test
-    @SuppressWarnings("unchecked")
-    public void testTerminateInstances() throws Exception {
-        executeActivitiesInSequence(execution,
-                EnsureKeyPairExists.class,
-                EnsureSecurityGroupExists.class,
-                RunOnDemandInstances.class
-            );
-
-        when(execution.getVariable(ProcessVariables.INSTANCE_IDS))
-            .thenReturn(collector.getVariable(ProcessVariables.INSTANCE_IDS));
-
-        activity.execute(execution);
-
-        /* the second execution should do nothing */
-        activity.execute(execution);
-    }
-
-    @Test
-    @SuppressWarnings("unchecked")
-    public void testTerminateInstancesNoIdsPresent() throws Exception {
-        executeActivitiesInSequence(execution,
-                EnsureKeyPairExists.class,
-                EnsureSecurityGroupExists.class
-            );
-        when(execution.getVariable(ProcessVariables.INSTANCE_IDS)).thenReturn(null);
-
-        // should not throw any exception and should not do anything
-        activity.execute(execution);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/config/DefaultProviderConfigTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/config/DefaultProviderConfigTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/config/DefaultProviderConfigTest.java
deleted file mode 100644
index da54a3c..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/config/DefaultProviderConfigTest.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.config;
-
-import com.axemblr.provisionr.api.provider.Provider;
-import com.google.common.base.Optional;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.Test;
-
-public class DefaultProviderConfigTest {
-
-    @Test
-    public void testProviderIsAbsentIfCredentialsAreEmpty() {
-        DefaultProviderConfig config = new DefaultProviderConfig("", "", "us-east-1", "");
-        assertThat(config.createProvider().isPresent()).isFalse();
-    }
-
-    @Test
-    public void testProviderWithNoRegionAndEndpoint() {
-        DefaultProviderConfig config = new DefaultProviderConfig("access", "secret", "", "");
-
-        Optional<Provider> provider = config.createProvider();
-        assertThat(provider.isPresent()).isTrue();
-
-        assertThat(provider.get().getEndpoint().isPresent()).isFalse();
-        assertThat(provider.get().getOptions().containsKey("region")).isFalse();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableQueryTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableQueryTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableQueryTest.java
deleted file mode 100644
index fe3470b..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableQueryTest.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.core;
-
-import java.io.IOException;
-import org.junit.Test;
-
-public class ImageTableQueryTest {
-
-    public final ImageTable table;
-
-    public ImageTableQueryTest() throws IOException {
-        this.table = ImageTable.fromCsvResource("/com/axemblr/provisionr/amazon/ubuntu.csv");
-    }
-
-    @Test(expected = IllegalArgumentException.class)
-    public void testQueryFailsWithMultipleResults() {
-        table.query().filterBy("region", "us-east-1").singleResult();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableTest.java
deleted file mode 100644
index 8235906..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/core/ImageTableTest.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.core;
-
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.Maps;
-import com.google.common.collect.Table;
-import com.google.common.collect.Tables;
-import java.io.IOException;
-import java.util.Map;
-import static org.fest.assertions.api.Assertions.assertThat;
-import org.junit.Test;
-
-public class ImageTableTest {
-
-    @Test
-    public void testLoadAmiTableFromResource() throws IOException {
-        ImageTable table = ImageTable.fromCsvResource("/com/axemblr/provisionr/amazon/ubuntu.csv");
-
-        String id = table.query().filterBy("region", "us-east-1").filterBy("version", "12.04 LTS")
-            .filterBy("arch", "amd64").filterBy("type", "instance-store").singleResult();
-
-        assertThat(id).isEqualTo("ami-9a873ff3");
-    }
-
-    @Test
-    public void testExtractHeaderLine() throws Exception {
-        Iterable<String> headers = ImageTable.extractHeaders(ImmutableList.of("a,b,c", "1,2,3"));
-        assertThat(headers).containsAll(ImmutableList.of("a", "b", "c"));
-    }
-
-    @Test
-    @SuppressWarnings("unchecked")
-    public void testCombineHeadersWithLinePartsAsTableCells() {
-        final ImmutableList<String> headers = ImmutableList.of("a", "b");
-        final ImmutableList<String> lineParts = ImmutableList.of("1", "2");
-
-        Iterable<Table.Cell<String, String, String>> cells =
-            ImageTable.combineHeadersWithLinePartsAsTableCells(0, headers, lineParts);
-
-        assertThat(cells).contains(Tables.immutableCell("0", "a", "1"));
-    }
-
-    @Test
-    public void testZipIterators() {
-        Iterable<Map.Entry<String, String>> entries = ImageTable.zip(
-            ImmutableList.of("a", "b"), ImmutableList.of("1", "2"));
-
-        assertThat(entries).containsAll(ImmutableList.of(
-            Maps.immutableEntry("a", "1"), Maps.immutableEntry("b", "2")));
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/functions/ConvertIpPermissionToRuleAndBackTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/functions/ConvertIpPermissionToRuleAndBackTest.java b/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/functions/ConvertIpPermissionToRuleAndBackTest.java
deleted file mode 100644
index 6531112..0000000
--- a/providers/amazon/src/test/java/com/axemblr/provisionr/amazon/functions/ConvertIpPermissionToRuleAndBackTest.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.axemblr.provisionr.amazon.functions;
-
-import com.amazonaws.services.ec2.model.IpPermission;
-import com.axemblr.provisionr.api.network.Protocol;
-import com.axemblr.provisionr.api.network.Rule;
-import static org.fest.assertions.api.Assertions.assertThat;
-import static org.junit.Assert.assertNotNull;
-import org.junit.Test;
-
-public class ConvertIpPermissionToRuleAndBackTest {
-
-    @Test
-    public void testConvertTcpIpPermissionToRuleAndBack() {
-        IpPermission expected = new IpPermission().withFromPort(1).withToPort(1024)
-            .withIpProtocol("tcp").withIpRanges("0.0.0.0/0");
-
-        Rule rule = ConvertIpPermissionToRule.FUNCTION.apply(expected);
-        assertNotNull(rule);
-
-        assertThat(rule.getCidr()).isEqualTo("0.0.0.0/0");
-        assertThat(rule.getProtocol()).isEqualTo(Protocol.TCP);
-
-        assertThat(rule.getPorts().lowerEndpoint()).isEqualTo(1);
-        assertThat(rule.getPorts().upperEndpoint()).isEqualTo(1024);
-
-        IpPermission actual = ConvertRuleToIpPermission.FUNCTION.apply(rule);
-        assertThat(actual).isEqualTo(expected);
-    }
-
-    @Test
-    public void testConvertIcmpPermissionToRule() {
-        IpPermission expected = new IpPermission().withIpProtocol("icmp")
-            .withFromPort(-1).withToPort(-1).withIpRanges("0.0.0.0/0");
-
-        Rule rule = ConvertIpPermissionToRule.FUNCTION.apply(expected);
-        assertNotNull(rule);
-
-        assertThat(rule.getProtocol()).isEqualTo(Protocol.ICMP);
-        assertThat(rule.getCidr()).isEqualTo("0.0.0.0/0");
-
-        IpPermission actual = ConvertRuleToIpPermission.FUNCTION.apply(rule);
-        assertThat(actual).isEqualTo(expected);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-provisionr/blob/6ba40c4b/providers/amazon/src/test/java/org/apache/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java
----------------------------------------------------------------------
diff --git a/providers/amazon/src/test/java/org/apache/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java b/providers/amazon/src/test/java/org/apache/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java
new file mode 100644
index 0000000..97066d0
--- /dev/null
+++ b/providers/amazon/src/test/java/org/apache/provisionr/amazon/ProcessDefinitionSyntaxCheckTest.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.provisionr.amazon;
+
+import org.activiti.engine.ProcessEngine;
+import org.activiti.engine.ProcessEngineConfiguration;
+import org.activiti.engine.repository.Deployment;
+import static org.fest.assertions.api.Assertions.assertThat;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class ProcessDefinitionSyntaxCheckTest {
+
+    private ProcessEngine processEngine;
+
+    @Before
+    public void setUp() {
+        processEngine = ProcessEngineConfiguration
+            .createStandaloneInMemProcessEngineConfiguration().buildProcessEngine();
+    }
+
+    @After
+    public void tearDown() {
+        processEngine.close();
+    }
+
+    @Test
+    public void testDeployment() {
+        assertCanBeDeployed("OSGI-INF/activiti/amazonPoolManagement.bpmn20.xml");
+        assertCanBeDeployed("OSGI-INF/activiti/amazonMachineSetup.bpmn20.xml");
+    }
+
+    private void assertCanBeDeployed(String resource) {
+        Deployment deployment = processEngine.getRepositoryService().createDeployment()
+            .addClasspathResource(resource).deploy();
+
+        assertThat(deployment).isNotNull();
+    }
+}


Mime
View raw message