diff --git a/.gitignore b/.gitignore index 6d63979..5cf4885 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ pom.xml.asc *.wsdl .ritz-exception-filters .nrepl-port +/bin/ diff --git a/README.md b/README.md index df61602..fd288e3 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,17 @@ key in the node-spec's `:image`. You must specify the `:os-family`, `:os-version` and `:login-user` with ami specific information. +### Hardware + +The hardware to use for the node is passed as a string to the `:hardware-id` +key in the node-spec's `:hardware`. + +```clj +(node-spec ... :hardware {:hardware-id "t2.micro"}) +``` + +The defined hardware types can be found here: https://github.com/pallet/pallet-aws/blob/develop/src/pallet/compute/ec2/static.clj + ### Availability Zones The availability zone can be specifed in the `:location` key of the node-spec. @@ -52,6 +63,15 @@ The availability zone can be specifed in the `:location` key of the node-spec. (node-spec ... :location {:location-id "us-east-1d"}) ``` +If you want to user other locations, you've to adjust the service endpoint in your provider also: + +```clj +(instantiate-provider :pallet-ec2 :endpoint "eu-central-1") + +(node-spec ... :location {:location-id "eu-central-1a"}) +``` + + ### KeyPairs By default, pallet creates a keypair based on the admin username and key credentials. @@ -100,7 +120,7 @@ that the volume supports. Range is 100 to 4000. ### Network Interfaces -The provider specific `:network-interface` key takes a sequence of +The provider specific `:network-interfaces` key takes a sequence of maps with the following keys (and key paths): `:network-interface-id` @@ -157,6 +177,17 @@ with a new network interface, not an existing one. Default: If launching into a default subnet, the default value is true. If launching into a nondefault subnet, the default value is false. +example: +```clj +(node-spec ... :provider {:pallet-ec2 { + :network-interfaces + [{:device-index 0 + :groups ["sg-xxxxx"] + :subnet-id "subnet-xxxxxx" + :associate-public-ip-address true + :delete-on-termination true}]}) +``` + ### IAM Roles An IAM profile can be specified on the `:iam-instance-profile` diff --git a/project.clj b/project.clj index ec65d9f..094cfe0 100644 --- a/project.clj +++ b/project.clj @@ -1,10 +1,10 @@ -(defproject com.palletops/pallet-aws "0.2.8-SNAPSHOT" +(defproject org.domaindrivenarchitecture/pallet-aws "0.2.8.2" :description "A provider for using Pallet with AWS EC2, based on the AWS SDK." :url "http://palletops.com" :license {:name "All rights reserved"} :scm {:url "git@github.com:pallet/pallet-aws.git"} - :dependencies [[com.palletops/pallet-aws-ops "0.2.2" + :dependencies [[org.domaindrivenarchitecture/pallet-aws-ops "0.2.3.1" :exclusions [commons-logging]] - [com.palletops/pallet "0.8.0-RC.9"] - [org.clojure/core.match "0.2.0" + [com.palletops/pallet "0.8.12"] + [org.clojure/core.match "0.2.2" :exclusions [org.clojure/clojure]]])