Personality OS Parameter

Version 4 (Nikos Skalkotos, 05/10/2012 05:01 pm)

1 1 Nikos Skalkotos
h1. Personality OS Parameter
2 1 Nikos Skalkotos
3 1 Nikos Skalkotos
This parameter is an extension of the "Server Personality":http://docs.openstack.org/api/openstack-compute/1.1/content/Server_Personality-d1e2543.html notation proposed by the OpenStack Compute API v1.1 and defines a list of files to be injected into the image filesystem.
4 1 Nikos Skalkotos
5 1 Nikos Skalkotos
h2. Format
6 1 Nikos Skalkotos
7 1 Nikos Skalkotos
The format of this parameter is a JSON array of objects. Each object in the array supports the following keys:
8 1 Nikos Skalkotos
9 3 Nikos Skalkotos
* *path:* The absolute path of the file (string)
10 3 Nikos Skalkotos
* *contents:* The content of the file encoded as a base64 string (string)
11 3 Nikos Skalkotos
* *owner:* The user ownership of the file (string)
12 3 Nikos Skalkotos
* *group:* The group ownership of the file (string)
13 3 Nikos Skalkotos
* *mode:* The permission mode of the file (number)
14 1 Nikos Skalkotos
15 2 Nikos Skalkotos
The first two (path, contents) are mandatory. The others (owner, group, mode) are optional and their default value is root, root and 0440 respectively.
16 1 Nikos Skalkotos
17 1 Nikos Skalkotos
h2. Example
18 1 Nikos Skalkotos
19 4 Nikos Skalkotos
The JSON string below defines two files (/tmp/test1, /tmp/test2) whose content is @test1\n@ and @test2\n@, they are both owned by @root:root@ and their permissions are @-rw-r--r--@.
20 1 Nikos Skalkotos
21 1 Nikos Skalkotos
<pre>
22 1 Nikos Skalkotos
[
23 1 Nikos Skalkotos
    {
24 1 Nikos Skalkotos
        "path": "/tmp/test1",
25 1 Nikos Skalkotos
        "contents": "dGVzdDENCg==",
26 1 Nikos Skalkotos
        "owner": "root",
27 1 Nikos Skalkotos
        "group": "root",
28 3 Nikos Skalkotos
        "mode": 0644
29 1 Nikos Skalkotos
    },
30 1 Nikos Skalkotos
    {
31 1 Nikos Skalkotos
        "path": "/tmp/test2",
32 1 Nikos Skalkotos
        "contents": "dGVzdDINCg==",
33 1 Nikos Skalkotos
        "owner": "root",
34 1 Nikos Skalkotos
        "group": "root",
35 4 Nikos Skalkotos
        "mode": 420
36 1 Nikos Skalkotos
    }
37 1 Nikos Skalkotos
]
38 1 Nikos Skalkotos
</pre>