1: <?php
2: /**
3: * PHP OpenCloud library.
4: *
5: * @copyright 2013 Rackspace Hosting, Inc. See LICENSE for information.
6: * @license https://www.apache.org/licenses/LICENSE-2.0
7: * @author Glen Campbell <glen.campbell@rackspace.com>
8: * @author Jamie Hannaford <jamie.hannaford@rackspace.com>
9: */
10:
11: namespace OpenCloud\Autoscale\Resource;
12:
13: /**
14: * This configuration specifies what to do when we want to create a new server.
15: * What image to boot, on what flavor, and which load balancer to connect it to.
16: *
17: * The Launch Configuration Contains:
18: *
19: * - Launch Configuration Type (Only type currently supported is "launch_server")
20: * - Arguments:
21: * - Server
22: * - name
23: * - flavor
24: * - imageRef (This is the ID of the Cloud Server image you will boot)
25: * - Load Balancer
26: * - loadBalancerId
27: * - port
28: *
29: * @link https://github.com/rackerlabs/otter/blob/master/doc/getting_started.rst
30: * @link http://docs.autoscale.apiary.io/
31: */
32: class LaunchConfiguration extends AbstractResource
33: {
34:
35: public $type;
36: public $args;
37:
38: protected static $json_name = 'launchConfiguration';
39: protected static $url_resource = 'launch';
40:
41: public $createKeys = array(
42: 'type',
43: 'args'
44: );
45:
46: /**
47: * {@inheritDoc}
48: */
49: public function create($params = array())
50: {
51: return $this->noCreate();
52: }
53:
54: /**
55: * {@inheritDoc}
56: */
57: public function delete()
58: {
59: return $this->noDelete();
60: }
61:
62: }