blob: cf38c5a0861f47fe80b2d1a63b58a7bcfe44710c [file] [log] [blame]
Jude Cross986e3f52017-07-24 14:57:20 -07001# Copyright 2018 Rackspace US Inc. All rights reserved.
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may
4# not use this file except in compliance with the License. You may obtain
5# a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations
13# under the License.
14
15# API field names
16ACTIVE_CONNECTIONS = 'active_connections'
17ADMIN_STATE_UP = 'admin_state_up'
18BYTES_IN = 'bytes_in'
19BYTES_OUT = 'bytes_out'
20CREATED_AT = 'created_at'
21DESCRIPTION = 'description'
Adam Harwella795ae62018-04-23 12:11:19 -070022FLAVOR_ID = 'flavor_id'
Jude Cross986e3f52017-07-24 14:57:20 -070023ID = 'id'
24LISTENERS = 'listeners'
25LOADBALANCER = 'loadbalancer'
26NAME = 'name'
27OPERATING_STATUS = 'operating_status'
28POOLS = 'pools'
29PROJECT_ID = 'project_id'
30PROVIDER = 'provider'
31PROVISIONING_STATUS = 'provisioning_status'
32REQUEST_ERRORS = 'request_errors'
33TOTAL_CONNECTIONS = 'total_connections'
34UPDATED_AT = 'updated_at'
35VIP_ADDRESS = 'vip_address'
36VIP_NETWORK_ID = 'vip_network_id'
37VIP_PORT_ID = 'vip_port_id'
38VIP_SUBNET_ID = 'vip_subnet_id'
39VIP_QOS_POLICY_ID = 'vip_qos_policy_id'
Jude Crossfbbd2b42017-08-09 15:21:04 -070040PROTOCOL = 'protocol'
41PROTOCOL_PORT = 'protocol_port'
42LOADBALANCER_ID = 'loadbalancer_id'
43CONNECTION_LIMIT = 'connection_limit'
44INSERT_HEADERS = 'insert_headers'
45X_FORWARDED_FOR = 'X-Forwarded-For'
46X_FORWARDED_PORT = 'X-Forwarded-Port'
47TIMEOUT_CLIENT_DATA = 'timeout_client_data'
48TIMEOUT_MEMBER_CONNECT = 'timeout_member_connect'
49TIMEOUT_MEMBER_DATA = 'timeout_member_data'
50TIMEOUT_TCP_INSPECT = 'timeout_tcp_inspect'
51DEFAULT_TLS_CONTAINER_REF = 'default_tls_container_ref'
52SNI_CONTAINER_REFS = 'sni_container_refs'
53DEFAULT_POOL_ID = 'default_pool_id'
54L7_POLICIES = 'l7_policies'
Jude Cross986e3f52017-07-24 14:57:20 -070055
Adam Harwell8ffce3e2018-05-01 21:18:44 -070056LB_ALGORITHM = 'lb_algorithm'
57LB_ALGORITHM_ROUND_ROBIN = 'ROUND_ROBIN'
58LB_ALGORITHM_LEAST_CONNECTIONS = 'LEAST_CONNECTIONS'
59LB_ALGORITHM_SOURCE_IP = 'SOURCE_IP'
60SESSION_PERSISTENCE = 'session_persistence'
61LISTENER_ID = 'listener_id'
62LOADBALANCERS = 'loadbalancers'
63
Adam Harwellde3e0542018-05-03 18:21:06 -070064POOL_ID = 'pool_id'
65ADDRESS = 'address'
66WEIGHT = 'weight'
67BACKUP = 'backup'
68SUBNET_ID = 'subnet_id'
69MONITOR_ADDRESS = 'monitor_address'
70MONITOR_PORT = 'monitor_port'
71
Jude Cross986e3f52017-07-24 14:57:20 -070072# API valid fields
73SHOW_LOAD_BALANCER_RESPONSE_FIELDS = (
Adam Harwella795ae62018-04-23 12:11:19 -070074 ADMIN_STATE_UP, CREATED_AT, DESCRIPTION, FLAVOR_ID, ID, LISTENERS, NAME,
Jude Cross986e3f52017-07-24 14:57:20 -070075 OPERATING_STATUS, POOLS, PROJECT_ID, PROVIDER, PROVISIONING_STATUS,
76 UPDATED_AT, VIP_ADDRESS, VIP_NETWORK_ID, VIP_PORT_ID, VIP_SUBNET_ID,
77 VIP_QOS_POLICY_ID)
78
Jude Crossfbbd2b42017-08-09 15:21:04 -070079SHOW_LISTENER_RESPONSE_FIELDS = (
80 ID, NAME, DESCRIPTION, PROVISIONING_STATUS, OPERATING_STATUS,
81 ADMIN_STATE_UP, PROTOCOL, PROTOCOL_PORT, CONNECTION_LIMIT,
82 DEFAULT_TLS_CONTAINER_REF, SNI_CONTAINER_REFS, PROJECT_ID,
83 DEFAULT_POOL_ID, L7_POLICIES, INSERT_HEADERS, CREATED_AT, UPDATED_AT,
84 TIMEOUT_CLIENT_DATA, TIMEOUT_MEMBER_CONNECT, TIMEOUT_MEMBER_DATA,
85 TIMEOUT_TCP_INSPECT
86)
87
Adam Harwell8ffce3e2018-05-01 21:18:44 -070088SHOW_POOL_RESPONSE_FIELDS = (
89 ID, NAME, DESCRIPTION, PROVISIONING_STATUS, OPERATING_STATUS,
90 ADMIN_STATE_UP, PROTOCOL, LB_ALGORITHM, SESSION_PERSISTENCE,
91 CREATED_AT, UPDATED_AT
92)
93
Adam Harwellde3e0542018-05-03 18:21:06 -070094SHOW_MEMBER_RESPONSE_FIELDS = (
95 ID, NAME, PROVISIONING_STATUS, OPERATING_STATUS, ADMIN_STATE_UP,
96 ADDRESS, PROTOCOL_PORT, WEIGHT, BACKUP, MONITOR_PORT, MONITOR_ADDRESS
97)
98
Jude Cross986e3f52017-07-24 14:57:20 -070099# Other constants
100ACTIVE = 'ACTIVE'
101ADMIN_STATE_UP_TRUE = 'true'
102ASC = 'asc'
103DELETED = 'DELETED'
104DESC = 'desc'
105FIELDS = 'fields'
106OFFLINE = 'OFFLINE'
107ONLINE = 'ONLINE'
Adam Harwellde3e0542018-05-03 18:21:06 -0700108NO_MONITOR = 'NO_MONITOR'
Jude Cross986e3f52017-07-24 14:57:20 -0700109SORT = 'sort'
110
Jude Crossfbbd2b42017-08-09 15:21:04 -0700111# Protocols
112HTTP = 'HTTP'
113HTTPS = 'HTTPS'
114TCP = 'TCP'
115
Adam Harwell8ffce3e2018-05-01 21:18:44 -0700116# Session Persistence
117TYPE = 'type'
118COOKIE_NAME = 'cookie_name'
119SESSION_PERSISTENCE_SOURCE_IP = 'SOURCE_IP'
120SESSION_PERSISTENCE_HTTP_COOKIE = 'HTTP_COOKIE'
121SESSION_PERSISTENCE_APP_COOKIE = 'APP_COOKIE'
122
Jude Cross986e3f52017-07-24 14:57:20 -0700123# RBAC options
124ADVANCED = 'advanced'
125OWNERADMIN = 'owner_or_admin'
126NONE = 'none'