Statistics
| Branch: | Tag: | Revision:

root / lib / constants.py @ 7c18ef8e

History | View | Annotate | Download (2.4 kB)

1 a8083063 Iustin Pop
#!/usr/bin/python
2 a8083063 Iustin Pop
#
3 a8083063 Iustin Pop
4 a8083063 Iustin Pop
# Copyright (C) 2006, 2007 Google Inc.
5 a8083063 Iustin Pop
#
6 a8083063 Iustin Pop
# This program is free software; you can redistribute it and/or modify
7 a8083063 Iustin Pop
# it under the terms of the GNU General Public License as published by
8 a8083063 Iustin Pop
# the Free Software Foundation; either version 2 of the License, or
9 a8083063 Iustin Pop
# (at your option) any later version.
10 a8083063 Iustin Pop
#
11 a8083063 Iustin Pop
# This program is distributed in the hope that it will be useful, but
12 a8083063 Iustin Pop
# WITHOUT ANY WARRANTY; without even the implied warranty of
13 a8083063 Iustin Pop
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 a8083063 Iustin Pop
# General Public License for more details.
15 a8083063 Iustin Pop
#
16 a8083063 Iustin Pop
# You should have received a copy of the GNU General Public License
17 a8083063 Iustin Pop
# along with this program; if not, write to the Free Software
18 a8083063 Iustin Pop
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19 a8083063 Iustin Pop
# 02110-1301, USA.
20 a8083063 Iustin Pop
21 a8083063 Iustin Pop
22 a8083063 Iustin Pop
"""Module holding different constants."""
23 a8083063 Iustin Pop
24 7c18ef8e Michael Hanselmann
from ganeti import version
25 7c18ef8e Michael Hanselmann
26 a8083063 Iustin Pop
# various versions
27 0006af7d Michael Hanselmann
CONFIG_VERSION = 3
28 a8083063 Iustin Pop
PROTOCOL_VERSION = 2
29 7c18ef8e Michael Hanselmann
RELEASE_VERSION = version.RELEASE_VERSION
30 a8083063 Iustin Pop
OS_API_VERSION = 4
31 a8083063 Iustin Pop
EXPORT_VERSION = 0
32 a8083063 Iustin Pop
33 a8083063 Iustin Pop
34 a8083063 Iustin Pop
# file paths
35 a8083063 Iustin Pop
DATA_DIR = "/var/lib/ganeti"
36 a8083063 Iustin Pop
CLUSTER_CONF_FILE = DATA_DIR + "/config.data"
37 a8083063 Iustin Pop
SSL_CERT_FILE = DATA_DIR + "/server.pem"
38 a8083063 Iustin Pop
WATCHER_STATEFILE = DATA_DIR + "/restart_state"
39 82122173 Iustin Pop
SSH_KNOWN_HOSTS_FILE = DATA_DIR + "/known_hosts"
40 a8083063 Iustin Pop
41 a8083063 Iustin Pop
NODE_INITD_SCRIPT = "/etc/init.d/ganeti"
42 a8083063 Iustin Pop
DEFAULT_NODED_PORT = 1811
43 a8083063 Iustin Pop
FIRST_DRBD_PORT = 11000
44 a8083063 Iustin Pop
LAST_DRBD_PORT = 14999
45 880478f8 Iustin Pop
MASTER_SCRIPT = "ganeti-master"
46 a8083063 Iustin Pop
47 a8083063 Iustin Pop
LOG_DIR = "/var/log/ganeti"
48 a8083063 Iustin Pop
LOG_OS_DIR = LOG_DIR + "/os"
49 a8083063 Iustin Pop
LOG_NODESERVER = LOG_DIR + "/node-daemon.log"
50 a8083063 Iustin Pop
51 a8083063 Iustin Pop
OS_DIR = "/srv/ganeti/os"
52 a8083063 Iustin Pop
EXPORT_DIR = "/srv/ganeti/export"
53 a8083063 Iustin Pop
54 a8083063 Iustin Pop
EXPORT_CONF_FILE = "config.ini"
55 a8083063 Iustin Pop
56 a8083063 Iustin Pop
# hooks-related constants
57 a8083063 Iustin Pop
HOOKS_BASE_DIR = "/etc/ganeti/hooks"
58 a8083063 Iustin Pop
HOOKS_PHASE_PRE = "pre"
59 a8083063 Iustin Pop
HOOKS_PHASE_POST = "post"
60 a8083063 Iustin Pop
HOOKS_VERSION = 1
61 a8083063 Iustin Pop
62 a8083063 Iustin Pop
# hooks subject type (what object type does the LU deal with)
63 a8083063 Iustin Pop
HTYPE_CLUSTER = "CLUSTER"
64 a8083063 Iustin Pop
HTYPE_NODE = "NODE"
65 a8083063 Iustin Pop
HTYPE_INSTANCE = "INSTANCE"
66 a8083063 Iustin Pop
67 a8083063 Iustin Pop
HKR_SKIP = 0
68 a8083063 Iustin Pop
HKR_FAIL = 1
69 a8083063 Iustin Pop
HKR_SUCCESS = 2
70 a8083063 Iustin Pop
71 a8083063 Iustin Pop
# disk template types
72 a8083063 Iustin Pop
DT_DISKLESS = "diskless"
73 a8083063 Iustin Pop
DT_PLAIN = "plain"
74 a8083063 Iustin Pop
DT_LOCAL_RAID1 = "local_raid1"
75 a8083063 Iustin Pop
DT_REMOTE_RAID1 = "remote_raid1"
76 a8083063 Iustin Pop
77 a8083063 Iustin Pop
# instance creation modem
78 a8083063 Iustin Pop
INSTANCE_CREATE = "create"
79 a8083063 Iustin Pop
INSTANCE_IMPORT = "import"
80 a8083063 Iustin Pop
81 a8083063 Iustin Pop
DISK_TEMPLATES = frozenset([DT_DISKLESS, DT_PLAIN,
82 a8083063 Iustin Pop
                            DT_LOCAL_RAID1, DT_REMOTE_RAID1])
83 a8083063 Iustin Pop
84 a8083063 Iustin Pop
# import/export config options
85 a8083063 Iustin Pop
INISECT_EXP = "export"
86 a8083063 Iustin Pop
INISECT_INS = "instance"
87 38242904 Iustin Pop
88 38242904 Iustin Pop
# common exit codes
89 38242904 Iustin Pop
EXIT_NOTMASTER = 11
90 cf62a272 Michael Hanselmann
91 5c947f38 Iustin Pop
# tags
92 5c947f38 Iustin Pop
TAG_CLUSTER = "cluster"
93 5c947f38 Iustin Pop
TAG_NODE = "node"
94 5c947f38 Iustin Pop
TAG_INSTANCE = "instance"
95 5c947f38 Iustin Pop
MAX_TAG_LEN = 128
96 5c947f38 Iustin Pop
MAX_TAGS_PER_OBJ = 4096
97 5c947f38 Iustin Pop
98 cf62a272 Michael Hanselmann
# others
99 cf62a272 Michael Hanselmann
DEFAULT_BRIDGE = "xen-br0"
100 e31c43f7 Michael Hanselmann
SYNC_SPEED = 30 * 1024