removing plural from model names. some cleanup
diff --git a/planetstack/core/admin.py b/planetstack/core/admin.py
index e0664a5..9e9d0c6 100644
--- a/planetstack/core/admin.py
+++ b/planetstack/core/admin.py
@@ -414,6 +414,13 @@
def queryset(self, request):
return ControllerPrivilege.select_by_user(request.user)
+class ControllerSiteInline(PlStackTabularInline):
+ model = ControllerSite
+ extra = 0
+ suit_classes = 'suit-tab suit-tab-admin-only'
+ fields = ['controller', 'site_deployment', 'tenant_id']
+
+
class SitePrivilegeInline(PlStackTabularInline):
model = SitePrivilege
extra = 0
@@ -432,8 +439,8 @@
def queryset(self, request):
return SitePrivilege.select_by_user(request.user)
-class SiteDeploymentsInline(PlStackTabularInline):
- model = SiteDeployments
+class SiteDeploymentInline(PlStackTabularInline):
+ model = SiteDeployment
extra = 0
suit_classes = 'suit-tab suit-tab-deployments'
fields = ['backend_status_icon', 'deployment','site', 'controller']
@@ -449,10 +456,10 @@
if db_field.name == 'controller':
kwargs['queryset'] = Controller.select_by_user(request.user)
- return super(SiteDeploymentsInline, self).formfield_for_foreignkey(db_field, request, **kwargs)
+ return super(SiteDeploymentInline, self).formfield_for_foreignkey(db_field, request, **kwargs)
def queryset(self, request):
- return SiteDeployments.select_by_user(request.user)
+ return SiteDeployment.select_by_user(request.user)
class SlicePrivilegeInline(PlStackTabularInline):
@@ -597,7 +604,7 @@
# create/destroy the through models ourselves. There has to be
# a better way...
- self.manipulate_m2m_objs(deployment, self.cleaned_data['sites'], deployment.sitedeployments.all(), SiteDeployments, "deployment", "site")
+ self.manipulate_m2m_objs(deployment, self.cleaned_data['sites'], deployment.sitedeployments.all(), SiteDeployment, "deployment", "site")
self.manipulate_m2m_objs(deployment, self.cleaned_data['images'], deployment.imagedeployments.all(), ImageDeployments, "deployment", "image")
# manipulate_m2m_objs doesn't work for Flavor/Deployment relationship
# so well handle that manually here
@@ -656,7 +663,7 @@
class ControllerAdminForm(forms.ModelForm):
site_deployments = forms.ModelMultipleChoiceField(
- queryset=SiteDeployments.objects.all(),
+ queryset=SiteDeployment.objects.all(),
required=False,
help_text="Select which sites deployments are managed by this controller",
widget=FilteredSelectMultiple(
@@ -710,7 +717,7 @@
# save_m2m() doesn't seem to work with 'through' relations. So we
# create/destroy the through models ourselves. There has to be
# a better way...
- #self.manipulate_m2m_objs(controller, self.cleaned_data['site_deployments'], controller.controllersitedeployments.all(), ControllerSiteDeployments, "controller", "site_deployment")
+ self.manipulate_m2m_objs(controller, self.cleaned_data['site_deployments'], controller.controllersitedeployments.all(), ControllerSite, "controller", "site_deployment")
pass
self.save_m2m()
@@ -721,7 +728,7 @@
model = Controller
fieldList = ['name', 'version', 'backend_type', 'auth_url', 'admin_user', 'admin_tenant','admin_password']
#fieldsets = [(None, {'fields': fieldList, 'classes':['suit-tab suit-tab-general']})]
- inlines = [] # ,ControllerImagesInline]
+ inlines = [ControllerSiteInline] # ,ControllerImagesInline]
list_display = ['backend_status_icon', 'name', 'version', 'backend_type']
list_display_links = ('backend_status_icon', 'name', )
readonly_fields = ('backend_status_text',)
@@ -787,7 +794,7 @@
list_display = ('backend_status_icon', 'name', 'login_base','site_url', 'enabled')
list_display_links = ('backend_status_icon', 'name', )
filter_horizontal = ('deployments',)
- inlines = [SliceInline,UserInline,TagInline, SitePrivilegeInline, SiteDeploymentsInline]
+ inlines = [SliceInline,UserInline,TagInline, SitePrivilegeInline, SiteDeploymentInline]
search_fields = ['name']
def queryset(self, request):
@@ -888,8 +895,8 @@
raise forms.ValidationError('slice name must begin with %s' % site.login_base)
return cleaned_data
-class ControllerSlicesInline(PlStackTabularInline):
- model = ControllerSlices
+class ControllerSliceInline(PlStackTabularInline):
+ model = ControllerSlice
extra = 0
verbose_name = "Controller Slices"
verbose_name_plural = "Controller Slices"
@@ -905,7 +912,7 @@
list_display = ('backend_status_icon', 'name', 'site','serviceClass', 'slice_url', 'max_slivers')
list_display_links = ('backend_status_icon', 'name', )
inlines = [SlicePrivilegeInline,SliverInline, TagInline, ReservationInline,SliceNetworkInline]
- admin_inlines = [ControllerSlicesInline]
+ admin_inlines = [ControllerSliceInline]
user_readonly_fields = fieldList
@@ -1472,8 +1479,8 @@
fields = ['backend_status_icon', 'network','slice']
readonly_fields = ('backend_status_icon', )
-class ControllerNetworksInline(PlStackTabularInline):
- model = ControllerNetworks
+class ControllerNetworkInline(PlStackTabularInline):
+ model = ControllerNetwork
extra = 0
verbose_name_plural = "Controller Networks"
verbose_name = "Controller Network"
@@ -1495,7 +1502,7 @@
readonly_fields = ("subnet", )
inlines = [NetworkParameterInline, NetworkSliversInline, NetworkSlicesInline, RouterInline]
- admin_inlines = [ControllerNetworksInline]
+ admin_inlines = [ControllerNetworkInline]
form=NetworkForm
diff --git a/planetstack/core/fixtures/demo_data.json b/planetstack/core/fixtures/demo_data.json
index 400148f..12ee426 100644
--- a/planetstack/core/fixtures/demo_data.json
+++ b/planetstack/core/fixtures/demo_data.json
@@ -636,7 +636,7 @@
},
{
"pk": 1,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-07T23:52:01.453Z",
"created": "2014-05-07T23:52:01.453Z",
@@ -650,7 +650,7 @@
},
{
"pk": 2,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-07T23:52:01.455Z",
"created": "2014-05-07T23:52:01.455Z",
@@ -664,7 +664,7 @@
},
{
"pk": 3,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-07T23:52:01.456Z",
"created": "2014-05-07T23:52:01.456Z",
@@ -678,7 +678,7 @@
},
{
"pk": 4,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-07T23:52:01.457Z",
"created": "2014-05-07T23:52:01.456Z",
@@ -692,7 +692,7 @@
},
{
"pk": 5,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-07T23:52:01.457Z",
"created": "2014-05-07T23:52:01.457Z",
@@ -706,7 +706,7 @@
},
{
"pk": 6,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-07T23:52:01.458Z",
"created": "2014-05-07T23:52:01.458Z",
@@ -720,7 +720,7 @@
},
{
"pk": 7,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:00:37.305Z",
"created": "2014-05-08T00:00:37.305Z",
@@ -734,7 +734,7 @@
},
{
"pk": 8,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:01:18.181Z",
"created": "2014-05-08T00:01:18.181Z",
@@ -748,7 +748,7 @@
},
{
"pk": 9,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:01:29.768Z",
"created": "2014-05-08T00:01:29.768Z",
@@ -762,7 +762,7 @@
},
{
"pk": 10,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:01:52.173Z",
"created": "2014-05-08T00:01:52.173Z",
@@ -776,7 +776,7 @@
},
{
"pk": 11,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:02:03.435Z",
"created": "2014-05-08T00:02:03.435Z",
@@ -790,7 +790,7 @@
},
{
"pk": 12,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:02:16.038Z",
"created": "2014-05-08T00:02:16.038Z",
@@ -804,7 +804,7 @@
},
{
"pk": 13,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:02:33.626Z",
"created": "2014-05-08T00:02:33.626Z",
@@ -818,7 +818,7 @@
},
{
"pk": 14,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:02:46.549Z",
"created": "2014-05-08T00:02:46.549Z",
@@ -832,7 +832,7 @@
},
{
"pk": 15,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:03:01.445Z",
"created": "2014-05-08T00:03:01.445Z",
@@ -846,7 +846,7 @@
},
{
"pk": 16,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:03:18.238Z",
"created": "2014-05-08T00:03:18.238Z",
@@ -860,7 +860,7 @@
},
{
"pk": 17,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:03:32.156Z",
"created": "2014-05-08T00:03:32.156Z",
@@ -874,7 +874,7 @@
},
{
"pk": 18,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:03:45.449Z",
"created": "2014-05-08T00:03:45.448Z",
@@ -888,7 +888,7 @@
},
{
"pk": 19,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:03:59.510Z",
"created": "2014-05-08T00:03:59.510Z",
@@ -902,7 +902,7 @@
},
{
"pk": 20,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:04:12.516Z",
"created": "2014-05-08T00:04:12.516Z",
@@ -916,7 +916,7 @@
},
{
"pk": 21,
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"fields": {
"updated": "2014-05-08T00:04:25.576Z",
"created": "2014-05-08T00:04:25.576Z",
@@ -1851,7 +1851,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-08-27T22:40:05.088Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "HyperCache",
"service": 14,
"created": "2013-04-03T23:14:11.072Z",
@@ -1864,7 +1864,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -1875,7 +1875,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:12:27.541Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "Syndicate",
"service": 5,
"created": "2013-04-03T23:14:11.072Z",
@@ -1888,7 +1888,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -1899,7 +1899,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:17:33.686Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "DnsRedir",
"service": 4,
"created": "2013-12-04T22:48:35.584Z",
@@ -1912,7 +1912,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 8,
"enacted": null
@@ -1923,7 +1923,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:18:00.528Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "DnsDemux",
"service": 4,
"created": "2013-12-04T22:49:23.051Z",
@@ -1936,7 +1936,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 8,
"enacted": null
@@ -1947,7 +1947,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:19:56.253Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "Infrastructure",
"service": null,
"created": "2013-12-09T14:13:15.392Z",
@@ -1960,7 +1960,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -1971,7 +1971,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:15:29.953Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "Stork",
"service": 8,
"created": "2013-12-13T21:49:59.476Z",
@@ -1984,7 +1984,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -1995,7 +1995,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:16:01.742Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "Owl",
"service": 8,
"created": "2013-12-13T21:52:15.590Z",
@@ -2008,7 +2008,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -2019,7 +2019,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:15:02.712Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "Hadoop",
"service": null,
"created": "2013-12-13T21:54:20.895Z",
@@ -2032,7 +2032,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -2043,7 +2043,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:14:27.648Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "test",
"service": null,
"created": "2013-12-13T21:56:57.299Z",
@@ -2056,7 +2056,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -2067,7 +2067,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-03-23T23:14:00.911Z",
- "imagePreference": "Ubuntu 12.04 LTS",
+ "image_preference": "Ubuntu 12.04 LTS",
"name": "test2",
"service": null,
"created": "2013-12-13T22:00:03.049Z",
@@ -2080,7 +2080,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank",
+ "mount_data_sets": "GenBank",
"backend_status": "Provisioning in progress",
"creator": 1,
"enacted": null
@@ -2091,7 +2091,7 @@
"model": "core.slice",
"fields": {
"updated": "2014-05-27T14:05:40.950Z",
- "imagePreference": "Hadoop 2.4.0",
+ "image_preference": "Hadoop 2.4.0",
"name": "Analytics",
"service": null,
"created": "2014-05-20T17:54:07.100Z",
@@ -2104,7 +2104,7 @@
"omf_friendly": false,
"network": "Private Only",
"max_slivers": 10,
- "mountDataSets": "GenBank-11-2013",
+ "mount_data_sets": "GenBank-11-2013",
"backend_status": "Provisioning in progress",
"creator": 8,
"enacted": null
@@ -12784,10 +12784,10 @@
"created": "2013-12-09T14:15:16.899Z",
"deleted": false,
"description": "Connect a sliver to the public network using dedicated public IPv4 address",
- "sharedNetworkName": "ext-net",
- "guaranteedBandwidth": 0,
+ "shared_network_name": "ext-net",
+ "guaranteed_bandwidth": 0,
"visibility": "public",
- "sharedNetworkId": "",
+ "shared_network_id": "",
"translation": "none",
"backend_status": "Provisioning in progress",
"enacted": "2014-05-12T19:24:09Z"
@@ -12802,10 +12802,10 @@
"created": "2013-12-09T14:17:29.551Z",
"deleted": false,
"description": "Connect a sliver to the public network via NAT, with port forwarding",
- "sharedNetworkName": "nat-net",
- "guaranteedBandwidth": 0,
+ "shared_network_name": "nat-net",
+ "guaranteed_bandwidth": 0,
"visibility": "private",
- "sharedNetworkId": "",
+ "shared_network_id": "",
"translation": "NAT",
"backend_status": "Provisioning in progress",
"enacted": "2014-05-12T19:23:54Z"
@@ -12820,10 +12820,10 @@
"created": "2013-12-09T14:18:02.336Z",
"deleted": false,
"description": "A private virtual network",
- "sharedNetworkName": "",
- "guaranteedBandwidth": 0,
+ "shared_network_name": "",
+ "guaranteed_bandwidth": 0,
"visibility": "private",
- "sharedNetworkId": "",
+ "shared_network_id": "",
"translation": "none",
"backend_status": "Provisioning in progress",
"enacted": "2014-05-12T19:23:30Z"
@@ -12841,10 +12841,10 @@
"created": "2013-12-09T14:24:19.970Z",
"deleted": false,
"network_id": "7cb4291d-f8d3-4797-83b0-8deefd85bdf5",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -12864,10 +12864,10 @@
"created": "2013-12-09T14:31:41.605Z",
"deleted": false,
"network_id": "810b4cb8-9d8e-4eee-becc-676785a07725",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -12887,10 +12887,10 @@
"created": "2013-12-09T14:33:10.312Z",
"deleted": false,
"network_id": "4b37f048-11de-4ddd-acaf-2fc5e8716f0e",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -12910,10 +12910,10 @@
"created": "2013-12-09T14:34:55.754Z",
"deleted": false,
"network_id": "684386d7-1286-4e58-acda-8ff45deac99e",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -12933,10 +12933,10 @@
"created": "2013-12-09T14:36:09.261Z",
"deleted": false,
"network_id": "fa090174-ec59-4b7a-812b-9206d911fb61",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -12956,10 +12956,10 @@
"created": "2013-12-09T14:37:02.420Z",
"deleted": false,
"network_id": "017a3914-5eaf-4bcb-8609-6d17ebcdf075",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -12979,10 +12979,10 @@
"created": "2013-12-09T14:38:11.552Z",
"deleted": false,
"network_id": "fdf0e3b1-439b-4673-b56e-d9dfe52b2bb7",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13002,10 +13002,10 @@
"created": "2013-12-09T14:39:51.262Z",
"deleted": false,
"network_id": "fdf0e3b1-439b-4673-b56e-d9dfe52b2bb7",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13025,10 +13025,10 @@
"created": "2013-12-09T14:41:00.237Z",
"deleted": false,
"network_id": "fdf0e3b1-439b-4673-b56e-d9dfe52b2bb7",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13048,10 +13048,10 @@
"created": "2013-12-09T14:42:03.158Z",
"deleted": false,
"network_id": "ecdbaf66-b659-4d59-b0b7-1bf6d232ccba",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13071,10 +13071,10 @@
"created": "2013-12-09T14:42:49.781Z",
"deleted": false,
"network_id": "ae4d42e8-a97c-440d-9533-4bcbd62dfb00",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "public-net",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13094,10 +13094,10 @@
"created": "2013-12-13T21:51:04.425Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": true,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": true,
"template": 4,
"owner": 11,
"backend_status": "Provisioning in progress",
@@ -13117,10 +13117,10 @@
"created": "2013-12-13T21:53:07.783Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": true,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": true,
"template": 4,
"owner": 12,
"backend_status": "Provisioning in progress",
@@ -13140,10 +13140,10 @@
"created": "2013-12-13T21:55:51.703Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": true,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": true,
"template": 4,
"owner": 13,
"backend_status": "Provisioning in progress",
@@ -13163,10 +13163,10 @@
"created": "2013-12-13T21:57:38.995Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 14,
"backend_status": "Provisioning in progress",
@@ -13186,10 +13186,10 @@
"created": "2013-12-13T22:00:40.549Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 3,
"owner": 15,
"backend_status": "Provisioning in progress",
@@ -13209,10 +13209,10 @@
"created": "2013-12-18T22:05:09.944Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 4,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13232,10 +13232,10 @@
"created": "2013-12-18T22:05:50.112Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 10,
"backend_status": "Provisioning in progress",
@@ -13255,10 +13255,10 @@
"created": "2013-12-18T22:13:17.310Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 4,
"owner": 9,
"backend_status": "Provisioning in progress",
@@ -13278,10 +13278,10 @@
"created": "2013-12-18T22:13:38.194Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 9,
"backend_status": "Provisioning in progress",
@@ -13301,10 +13301,10 @@
"created": "2013-12-18T22:16:19.797Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 4,
"owner": 8,
"backend_status": "Provisioning in progress",
@@ -13324,10 +13324,10 @@
"created": "2013-12-18T22:16:38.335Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 8,
"backend_status": "Provisioning in progress",
@@ -13347,13 +13347,13 @@
"created": "2013-12-18T22:24:19.109Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [
+ "permitted_slices": [
6,
8
],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 4,
"owner": 4,
"backend_status": "Provisioning in progress",
@@ -13373,10 +13373,10 @@
"created": "2013-12-18T22:24:38.066Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 4,
"backend_status": "Provisioning in progress",
@@ -13396,10 +13396,10 @@
"created": "2013-12-18T22:26:46.435Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 4,
"owner": 6,
"backend_status": "Provisioning in progress",
@@ -13419,10 +13419,10 @@
"created": "2013-12-18T22:27:12.647Z",
"deleted": false,
"network_id": "",
- "permittedSlices": [],
+ "permitted_slices": [],
"labels": "",
- "guaranteedBandwidth": 0,
- "permitAllSlices": false,
+ "guaranteed_bandwidth": 0,
+ "permit_all_slices": false,
"template": 1,
"owner": 6,
"backend_status": "Provisioning in progress",
diff --git a/planetstack/core/fixtures/initial_data.json b/planetstack/core/fixtures/initial_data.json
index aef01f1..a7abdbe 100644
--- a/planetstack/core/fixtures/initial_data.json
+++ b/planetstack/core/fixtures/initial_data.json
@@ -721,7 +721,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-06-20T01:53:28.687Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 19
},
{
@@ -734,7 +734,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-06-20T01:53:34.657Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 20
},
{
@@ -747,7 +747,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-06-20T01:53:40.604Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 21
},
{
@@ -760,7 +760,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-06-20T01:53:47.047Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 22
},
{
@@ -773,7 +773,7 @@
"backend_status": "Authorization Failed: unsupported operand type(s) for +: 'NoneType' and 'str'",
"enacted": "2014-08-08T03:49:32.318Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 27
},
{
@@ -786,7 +786,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-08-06T17:46:03.289Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 28
},
{
@@ -799,7 +799,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-08-06T17:46:07.804Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 29
},
{
@@ -812,7 +812,7 @@
"backend_status": "Provisioning in progress",
"enacted": "2014-08-06T17:46:12.521Z"
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 30
},
{
@@ -825,7 +825,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 31
},
{
@@ -838,7 +838,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 32
},
{
@@ -851,7 +851,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 33
},
{
@@ -864,7 +864,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 34
},
{
@@ -877,7 +877,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 35
},
{
@@ -890,7 +890,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 36
},
{
@@ -903,7 +903,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 37
},
{
@@ -916,7 +916,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 38
},
{
@@ -929,7 +929,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 39
},
{
@@ -942,7 +942,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 40
},
{
@@ -955,7 +955,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 41
},
{
@@ -968,7 +968,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 42
},
{
@@ -981,7 +981,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 43
},
{
@@ -994,7 +994,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 44
},
{
@@ -1007,7 +1007,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 45
},
{
@@ -1020,7 +1020,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 46
},
{
@@ -1033,7 +1033,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 47
},
{
@@ -1046,7 +1046,7 @@
"backend_status": "Provisioning in progress",
"enacted": null
},
- "model": "core.sitedeployments",
+ "model": "core.sitedeployment",
"pk": 48
},
{
diff --git a/planetstack/core/migrations/0001_initial.py b/planetstack/core/migrations/0001_initial.py
index 8e1ec76..d440ded 100644
--- a/planetstack/core/migrations/0001_initial.py
+++ b/planetstack/core/migrations/0001_initial.py
@@ -41,7 +41,7 @@
('enacted', models.DateTimeField(default=None, null=True)),
('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
('deleted', models.BooleanField(default=False)),
- ('timezone', timezones.fields.TimeZoneField(default=b'America/New_York', max_length=100, choices=[(b'Pacific/Midway', b'(GMT-1100) Pacific/Midway'), (b'Pacific/Niue', b'(GMT-1100) Pacific/Niue'), (b'Pacific/Pago_Pago', b'(GMT-1100) Pacific/Pago_Pago'), (b'America/Adak', b'(GMT-1000) America/Adak'), (b'Pacific/Honolulu', b'(GMT-1000) Pacific/Honolulu'), (b'Pacific/Johnston', b'(GMT-1000) Pacific/Johnston'), (b'Pacific/Rarotonga', b'(GMT-1000) Pacific/Rarotonga'), (b'Pacific/Tahiti', b'(GMT-1000) Pacific/Tahiti'), (b'US/Hawaii', b'(GMT-1000) US/Hawaii'), (b'Pacific/Marquesas', b'(GMT-0930) Pacific/Marquesas'), (b'America/Anchorage', b'(GMT-0900) America/Anchorage'), (b'America/Juneau', b'(GMT-0900) America/Juneau'), (b'America/Nome', b'(GMT-0900) America/Nome'), (b'America/Sitka', b'(GMT-0900) America/Sitka'), (b'America/Yakutat', b'(GMT-0900) America/Yakutat'), (b'Pacific/Gambier', b'(GMT-0900) Pacific/Gambier'), (b'US/Alaska', b'(GMT-0900) US/Alaska'), (b'America/Dawson', b'(GMT-0800) America/Dawson'), (b'America/Los_Angeles', b'(GMT-0800) America/Los_Angeles'), (b'America/Metlakatla', b'(GMT-0800) America/Metlakatla'), (b'America/Santa_Isabel', b'(GMT-0800) America/Santa_Isabel'), (b'America/Tijuana', b'(GMT-0800) America/Tijuana'), (b'America/Vancouver', b'(GMT-0800) America/Vancouver'), (b'America/Whitehorse', b'(GMT-0800) America/Whitehorse'), (b'Canada/Pacific', b'(GMT-0800) Canada/Pacific'), (b'Pacific/Pitcairn', b'(GMT-0800) Pacific/Pitcairn'), (b'US/Pacific', b'(GMT-0800) US/Pacific'), (b'America/Boise', b'(GMT-0700) America/Boise'), (b'America/Cambridge_Bay', b'(GMT-0700) America/Cambridge_Bay'), (b'America/Chihuahua', b'(GMT-0700) America/Chihuahua'), (b'America/Creston', b'(GMT-0700) America/Creston'), (b'America/Dawson_Creek', b'(GMT-0700) America/Dawson_Creek'), (b'America/Denver', b'(GMT-0700) America/Denver'), (b'America/Edmonton', b'(GMT-0700) America/Edmonton'), (b'America/Hermosillo', b'(GMT-0700) America/Hermosillo'), (b'America/Inuvik', b'(GMT-0700) America/Inuvik'), (b'America/Mazatlan', b'(GMT-0700) America/Mazatlan'), (b'America/Ojinaga', b'(GMT-0700) America/Ojinaga'), (b'America/Phoenix', b'(GMT-0700) America/Phoenix'), (b'America/Yellowknife', b'(GMT-0700) America/Yellowknife'), (b'Canada/Mountain', b'(GMT-0700) Canada/Mountain'), (b'US/Arizona', b'(GMT-0700) US/Arizona'), (b'US/Mountain', b'(GMT-0700) US/Mountain'), (b'America/Bahia_Banderas', b'(GMT-0600) America/Bahia_Banderas'), (b'America/Belize', b'(GMT-0600) America/Belize'), (b'America/Cancun', b'(GMT-0600) America/Cancun'), (b'America/Chicago', b'(GMT-0600) America/Chicago'), (b'America/Costa_Rica', b'(GMT-0600) America/Costa_Rica'), (b'America/El_Salvador', b'(GMT-0600) America/El_Salvador'), (b'America/Guatemala', b'(GMT-0600) America/Guatemala'), (b'America/Indiana/Knox', b'(GMT-0600) America/Indiana/Knox'), (b'America/Indiana/Tell_City', b'(GMT-0600) America/Indiana/Tell_City'), (b'America/Managua', b'(GMT-0600) America/Managua'), (b'America/Matamoros', b'(GMT-0600) America/Matamoros'), (b'America/Menominee', b'(GMT-0600) America/Menominee'), (b'America/Merida', b'(GMT-0600) America/Merida'), (b'America/Mexico_City', b'(GMT-0600) America/Mexico_City'), (b'America/Monterrey', b'(GMT-0600) America/Monterrey'), (b'America/North_Dakota/Beulah', b'(GMT-0600) America/North_Dakota/Beulah'), (b'America/North_Dakota/Center', b'(GMT-0600) America/North_Dakota/Center'), (b'America/North_Dakota/New_Salem', b'(GMT-0600) America/North_Dakota/New_Salem'), (b'America/Rainy_River', b'(GMT-0600) America/Rainy_River'), (b'America/Rankin_Inlet', b'(GMT-0600) America/Rankin_Inlet'), (b'America/Regina', b'(GMT-0600) America/Regina'), (b'America/Resolute', b'(GMT-0600) America/Resolute'), (b'America/Swift_Current', b'(GMT-0600) America/Swift_Current'), (b'America/Tegucigalpa', b'(GMT-0600) America/Tegucigalpa'), (b'America/Winnipeg', b'(GMT-0600) America/Winnipeg'), (b'Canada/Central', b'(GMT-0600) Canada/Central'), (b'Pacific/Galapagos', b'(GMT-0600) Pacific/Galapagos'), (b'US/Central', b'(GMT-0600) US/Central'), (b'America/Atikokan', b'(GMT-0500) America/Atikokan'), (b'America/Bogota', b'(GMT-0500) America/Bogota'), (b'America/Cayman', b'(GMT-0500) America/Cayman'), (b'America/Detroit', b'(GMT-0500) America/Detroit'), (b'America/Eirunepe', b'(GMT-0500) America/Eirunepe'), (b'America/Guayaquil', b'(GMT-0500) America/Guayaquil'), (b'America/Havana', b'(GMT-0500) America/Havana'), (b'America/Indiana/Indianapolis', b'(GMT-0500) America/Indiana/Indianapolis'), (b'America/Indiana/Marengo', b'(GMT-0500) America/Indiana/Marengo'), (b'America/Indiana/Petersburg', b'(GMT-0500) America/Indiana/Petersburg'), (b'America/Indiana/Vevay', b'(GMT-0500) America/Indiana/Vevay'), (b'America/Indiana/Vincennes', b'(GMT-0500) America/Indiana/Vincennes'), (b'America/Indiana/Winamac', b'(GMT-0500) America/Indiana/Winamac'), (b'America/Iqaluit', b'(GMT-0500) America/Iqaluit'), (b'America/Jamaica', b'(GMT-0500) America/Jamaica'), (b'America/Kentucky/Louisville', b'(GMT-0500) America/Kentucky/Louisville'), (b'America/Kentucky/Monticello', b'(GMT-0500) America/Kentucky/Monticello'), (b'America/Lima', b'(GMT-0500) America/Lima'), (b'America/Montreal', b'(GMT-0500) America/Montreal'), (b'America/Nassau', b'(GMT-0500) America/Nassau'), (b'America/New_York', b'(GMT-0500) America/New_York'), (b'America/Nipigon', b'(GMT-0500) America/Nipigon'), (b'America/Panama', b'(GMT-0500) America/Panama'), (b'America/Pangnirtung', b'(GMT-0500) America/Pangnirtung'), (b'America/Port-au-Prince', b'(GMT-0500) America/Port-au-Prince'), (b'America/Rio_Branco', b'(GMT-0500) America/Rio_Branco'), (b'America/Thunder_Bay', b'(GMT-0500) America/Thunder_Bay'), (b'America/Toronto', b'(GMT-0500) America/Toronto'), (b'Canada/Eastern', b'(GMT-0500) Canada/Eastern'), (b'Pacific/Easter', b'(GMT-0500) Pacific/Easter'), (b'US/Eastern', b'(GMT-0500) US/Eastern'), (b'America/Caracas', b'(GMT-0430) America/Caracas'), (b'America/Anguilla', b'(GMT-0400) America/Anguilla'), (b'America/Antigua', b'(GMT-0400) America/Antigua'), (b'America/Aruba', b'(GMT-0400) America/Aruba'), (b'America/Barbados', b'(GMT-0400) America/Barbados'), (b'America/Blanc-Sablon', b'(GMT-0400) America/Blanc-Sablon'), (b'America/Boa_Vista', b'(GMT-0400) America/Boa_Vista'), (b'America/Curacao', b'(GMT-0400) America/Curacao'), (b'America/Dominica', b'(GMT-0400) America/Dominica'), (b'America/Glace_Bay', b'(GMT-0400) America/Glace_Bay'), (b'America/Goose_Bay', b'(GMT-0400) America/Goose_Bay'), (b'America/Grand_Turk', b'(GMT-0400) America/Grand_Turk'), (b'America/Grenada', b'(GMT-0400) America/Grenada'), (b'America/Guadeloupe', b'(GMT-0400) America/Guadeloupe'), (b'America/Guyana', b'(GMT-0400) America/Guyana'), (b'America/Halifax', b'(GMT-0400) America/Halifax'), (b'America/Kralendijk', b'(GMT-0400) America/Kralendijk'), (b'America/La_Paz', b'(GMT-0400) America/La_Paz'), (b'America/Lower_Princes', b'(GMT-0400) America/Lower_Princes'), (b'America/Manaus', b'(GMT-0400) America/Manaus'), (b'America/Marigot', b'(GMT-0400) America/Marigot'), (b'America/Martinique', b'(GMT-0400) America/Martinique'), (b'America/Moncton', b'(GMT-0400) America/Moncton'), (b'America/Montserrat', b'(GMT-0400) America/Montserrat'), (b'America/Port_of_Spain', b'(GMT-0400) America/Port_of_Spain'), (b'America/Porto_Velho', b'(GMT-0400) America/Porto_Velho'), (b'America/Puerto_Rico', b'(GMT-0400) America/Puerto_Rico'), (b'America/Santo_Domingo', b'(GMT-0400) America/Santo_Domingo'), (b'America/St_Barthelemy', b'(GMT-0400) America/St_Barthelemy'), (b'America/St_Kitts', b'(GMT-0400) America/St_Kitts'), (b'America/St_Lucia', b'(GMT-0400) America/St_Lucia'), (b'America/St_Thomas', b'(GMT-0400) America/St_Thomas'), (b'America/St_Vincent', b'(GMT-0400) America/St_Vincent'), (b'America/Thule', b'(GMT-0400) America/Thule'), (b'America/Tortola', b'(GMT-0400) America/Tortola'), (b'Atlantic/Bermuda', b'(GMT-0400) Atlantic/Bermuda'), (b'Canada/Atlantic', b'(GMT-0400) Canada/Atlantic'), (b'America/St_Johns', b'(GMT-0330) America/St_Johns'), (b'Canada/Newfoundland', b'(GMT-0330) Canada/Newfoundland'), (b'America/Araguaina', b'(GMT-0300) America/Araguaina'), (b'America/Argentina/Buenos_Aires', b'(GMT-0300) America/Argentina/Buenos_Aires'), (b'America/Argentina/Catamarca', b'(GMT-0300) America/Argentina/Catamarca'), (b'America/Argentina/Cordoba', b'(GMT-0300) America/Argentina/Cordoba'), (b'America/Argentina/Jujuy', b'(GMT-0300) America/Argentina/Jujuy'), (b'America/Argentina/La_Rioja', b'(GMT-0300) America/Argentina/La_Rioja'), (b'America/Argentina/Mendoza', b'(GMT-0300) America/Argentina/Mendoza'), (b'America/Argentina/Rio_Gallegos', b'(GMT-0300) America/Argentina/Rio_Gallegos'), (b'America/Argentina/Salta', b'(GMT-0300) America/Argentina/Salta'), (b'America/Argentina/San_Juan', b'(GMT-0300) America/Argentina/San_Juan'), (b'America/Argentina/San_Luis', b'(GMT-0300) America/Argentina/San_Luis'), (b'America/Argentina/Tucuman', b'(GMT-0300) America/Argentina/Tucuman'), (b'America/Argentina/Ushuaia', b'(GMT-0300) America/Argentina/Ushuaia'), (b'America/Asuncion', b'(GMT-0300) America/Asuncion'), (b'America/Bahia', b'(GMT-0300) America/Bahia'), (b'America/Belem', b'(GMT-0300) America/Belem'), (b'America/Campo_Grande', b'(GMT-0300) America/Campo_Grande'), (b'America/Cayenne', b'(GMT-0300) America/Cayenne'), (b'America/Cuiaba', b'(GMT-0300) America/Cuiaba'), (b'America/Fortaleza', b'(GMT-0300) America/Fortaleza'), (b'America/Godthab', b'(GMT-0300) America/Godthab'), (b'America/Maceio', b'(GMT-0300) America/Maceio'), (b'America/Miquelon', b'(GMT-0300) America/Miquelon'), (b'America/Paramaribo', b'(GMT-0300) America/Paramaribo'), (b'America/Recife', b'(GMT-0300) America/Recife'), (b'America/Santarem', b'(GMT-0300) America/Santarem'), (b'America/Santiago', b'(GMT-0300) America/Santiago'), (b'Antarctica/Palmer', b'(GMT-0300) Antarctica/Palmer'), (b'Antarctica/Rothera', b'(GMT-0300) Antarctica/Rothera'), (b'Atlantic/Stanley', b'(GMT-0300) Atlantic/Stanley'), (b'America/Montevideo', b'(GMT-0200) America/Montevideo'), (b'America/Noronha', b'(GMT-0200) America/Noronha'), (b'America/Sao_Paulo', b'(GMT-0200) America/Sao_Paulo'), (b'Atlantic/South_Georgia', b'(GMT-0200) Atlantic/South_Georgia'), (b'America/Scoresbysund', b'(GMT-0100) America/Scoresbysund'), (b'Atlantic/Azores', b'(GMT-0100) Atlantic/Azores'), (b'Atlantic/Cape_Verde', b'(GMT-0100) Atlantic/Cape_Verde'), (b'Africa/Abidjan', b'(GMT+0000) Africa/Abidjan'), (b'Africa/Accra', b'(GMT+0000) Africa/Accra'), (b'Africa/Bamako', b'(GMT+0000) Africa/Bamako'), (b'Africa/Banjul', b'(GMT+0000) Africa/Banjul'), (b'Africa/Bissau', b'(GMT+0000) Africa/Bissau'), (b'Africa/Casablanca', b'(GMT+0000) Africa/Casablanca'), (b'Africa/Conakry', b'(GMT+0000) Africa/Conakry'), (b'Africa/Dakar', b'(GMT+0000) Africa/Dakar'), (b'Africa/El_Aaiun', b'(GMT+0000) Africa/El_Aaiun'), (b'Africa/Freetown', b'(GMT+0000) Africa/Freetown'), (b'Africa/Lome', b'(GMT+0000) Africa/Lome'), (b'Africa/Monrovia', b'(GMT+0000) Africa/Monrovia'), (b'Africa/Nouakchott', b'(GMT+0000) Africa/Nouakchott'), (b'Africa/Ouagadougou', b'(GMT+0000) Africa/Ouagadougou'), (b'Africa/Sao_Tome', b'(GMT+0000) Africa/Sao_Tome'), (b'America/Danmarkshavn', b'(GMT+0000) America/Danmarkshavn'), (b'Antarctica/Troll', b'(GMT+0000) Antarctica/Troll'), (b'Atlantic/Canary', b'(GMT+0000) Atlantic/Canary'), (b'Atlantic/Faroe', b'(GMT+0000) Atlantic/Faroe'), (b'Atlantic/Madeira', b'(GMT+0000) Atlantic/Madeira'), (b'Atlantic/Reykjavik', b'(GMT+0000) Atlantic/Reykjavik'), (b'Atlantic/St_Helena', b'(GMT+0000) Atlantic/St_Helena'), (b'Europe/Dublin', b'(GMT+0000) Europe/Dublin'), (b'Europe/Guernsey', b'(GMT+0000) Europe/Guernsey'), (b'Europe/Isle_of_Man', b'(GMT+0000) Europe/Isle_of_Man'), (b'Europe/Jersey', b'(GMT+0000) Europe/Jersey'), (b'Europe/Lisbon', b'(GMT+0000) Europe/Lisbon'), (b'Europe/London', b'(GMT+0000) Europe/London'), (b'GMT', b'(GMT+0000) GMT'), (b'UTC', b'(GMT+0000) UTC'), (b'Africa/Algiers', b'(GMT+0100) Africa/Algiers'), (b'Africa/Bangui', b'(GMT+0100) Africa/Bangui'), (b'Africa/Brazzaville', b'(GMT+0100) Africa/Brazzaville'), (b'Africa/Ceuta', b'(GMT+0100) Africa/Ceuta'), (b'Africa/Douala', b'(GMT+0100) Africa/Douala'), (b'Africa/Kinshasa', b'(GMT+0100) Africa/Kinshasa'), (b'Africa/Lagos', b'(GMT+0100) Africa/Lagos'), (b'Africa/Libreville', b'(GMT+0100) Africa/Libreville'), (b'Africa/Luanda', b'(GMT+0100) Africa/Luanda'), (b'Africa/Malabo', b'(GMT+0100) Africa/Malabo'), (b'Africa/Ndjamena', b'(GMT+0100) Africa/Ndjamena'), (b'Africa/Niamey', b'(GMT+0100) Africa/Niamey'), (b'Africa/Porto-Novo', b'(GMT+0100) Africa/Porto-Novo'), (b'Africa/Tunis', b'(GMT+0100) Africa/Tunis'), (b'Arctic/Longyearbyen', b'(GMT+0100) Arctic/Longyearbyen'), (b'Europe/Amsterdam', b'(GMT+0100) Europe/Amsterdam'), (b'Europe/Andorra', b'(GMT+0100) Europe/Andorra'), (b'Europe/Belgrade', b'(GMT+0100) Europe/Belgrade'), (b'Europe/Berlin', b'(GMT+0100) Europe/Berlin'), (b'Europe/Bratislava', b'(GMT+0100) Europe/Bratislava'), (b'Europe/Brussels', b'(GMT+0100) Europe/Brussels'), (b'Europe/Budapest', b'(GMT+0100) Europe/Budapest'), (b'Europe/Busingen', b'(GMT+0100) Europe/Busingen'), (b'Europe/Copenhagen', b'(GMT+0100) Europe/Copenhagen'), (b'Europe/Gibraltar', b'(GMT+0100) Europe/Gibraltar'), (b'Europe/Ljubljana', b'(GMT+0100) Europe/Ljubljana'), (b'Europe/Luxembourg', b'(GMT+0100) Europe/Luxembourg'), (b'Europe/Madrid', b'(GMT+0100) Europe/Madrid'), (b'Europe/Malta', b'(GMT+0100) Europe/Malta'), (b'Europe/Monaco', b'(GMT+0100) Europe/Monaco'), (b'Europe/Oslo', b'(GMT+0100) Europe/Oslo'), (b'Europe/Paris', b'(GMT+0100) Europe/Paris'), (b'Europe/Podgorica', b'(GMT+0100) Europe/Podgorica'), (b'Europe/Prague', b'(GMT+0100) Europe/Prague'), (b'Europe/Rome', b'(GMT+0100) Europe/Rome'), (b'Europe/San_Marino', b'(GMT+0100) Europe/San_Marino'), (b'Europe/Sarajevo', b'(GMT+0100) Europe/Sarajevo'), (b'Europe/Skopje', b'(GMT+0100) Europe/Skopje'), (b'Europe/Stockholm', b'(GMT+0100) Europe/Stockholm'), (b'Europe/Tirane', b'(GMT+0100) Europe/Tirane'), (b'Europe/Vaduz', b'(GMT+0100) Europe/Vaduz'), (b'Europe/Vatican', b'(GMT+0100) Europe/Vatican'), (b'Europe/Vienna', b'(GMT+0100) Europe/Vienna'), (b'Europe/Warsaw', b'(GMT+0100) Europe/Warsaw'), (b'Europe/Zagreb', b'(GMT+0100) Europe/Zagreb'), (b'Europe/Zurich', b'(GMT+0100) Europe/Zurich'), (b'Africa/Blantyre', b'(GMT+0200) Africa/Blantyre'), (b'Africa/Bujumbura', b'(GMT+0200) Africa/Bujumbura'), (b'Africa/Cairo', b'(GMT+0200) Africa/Cairo'), (b'Africa/Gaborone', b'(GMT+0200) Africa/Gaborone'), (b'Africa/Harare', b'(GMT+0200) Africa/Harare'), (b'Africa/Johannesburg', b'(GMT+0200) Africa/Johannesburg'), (b'Africa/Kigali', b'(GMT+0200) Africa/Kigali'), (b'Africa/Lubumbashi', b'(GMT+0200) Africa/Lubumbashi'), (b'Africa/Lusaka', b'(GMT+0200) Africa/Lusaka'), (b'Africa/Maputo', b'(GMT+0200) Africa/Maputo'), (b'Africa/Maseru', b'(GMT+0200) Africa/Maseru'), (b'Africa/Mbabane', b'(GMT+0200) Africa/Mbabane'), (b'Africa/Tripoli', b'(GMT+0200) Africa/Tripoli'), (b'Africa/Windhoek', b'(GMT+0200) Africa/Windhoek'), (b'Asia/Amman', b'(GMT+0200) Asia/Amman'), (b'Asia/Beirut', b'(GMT+0200) Asia/Beirut'), (b'Asia/Damascus', b'(GMT+0200) Asia/Damascus'), (b'Asia/Gaza', b'(GMT+0200) Asia/Gaza'), (b'Asia/Hebron', b'(GMT+0200) Asia/Hebron'), (b'Asia/Jerusalem', b'(GMT+0200) Asia/Jerusalem'), (b'Asia/Nicosia', b'(GMT+0200) Asia/Nicosia'), (b'Europe/Athens', b'(GMT+0200) Europe/Athens'), (b'Europe/Bucharest', b'(GMT+0200) Europe/Bucharest'), (b'Europe/Chisinau', b'(GMT+0200) Europe/Chisinau'), (b'Europe/Helsinki', b'(GMT+0200) Europe/Helsinki'), (b'Europe/Istanbul', b'(GMT+0200) Europe/Istanbul'), (b'Europe/Kaliningrad', b'(GMT+0200) Europe/Kaliningrad'), (b'Europe/Kiev', b'(GMT+0200) Europe/Kiev'), (b'Europe/Mariehamn', b'(GMT+0200) Europe/Mariehamn'), (b'Europe/Riga', b'(GMT+0200) Europe/Riga'), (b'Europe/Sofia', b'(GMT+0200) Europe/Sofia'), (b'Europe/Tallinn', b'(GMT+0200) Europe/Tallinn'), (b'Europe/Uzhgorod', b'(GMT+0200) Europe/Uzhgorod'), (b'Europe/Vilnius', b'(GMT+0200) Europe/Vilnius'), (b'Europe/Zaporozhye', b'(GMT+0200) Europe/Zaporozhye'), (b'Africa/Addis_Ababa', b'(GMT+0300) Africa/Addis_Ababa'), (b'Africa/Asmara', b'(GMT+0300) Africa/Asmara'), (b'Africa/Dar_es_Salaam', b'(GMT+0300) Africa/Dar_es_Salaam'), (b'Africa/Djibouti', b'(GMT+0300) Africa/Djibouti'), (b'Africa/Juba', b'(GMT+0300) Africa/Juba'), (b'Africa/Kampala', b'(GMT+0300) Africa/Kampala'), (b'Africa/Khartoum', b'(GMT+0300) Africa/Khartoum'), (b'Africa/Mogadishu', b'(GMT+0300) Africa/Mogadishu'), (b'Africa/Nairobi', b'(GMT+0300) Africa/Nairobi'), (b'Antarctica/Syowa', b'(GMT+0300) Antarctica/Syowa'), (b'Asia/Aden', b'(GMT+0300) Asia/Aden'), (b'Asia/Baghdad', b'(GMT+0300) Asia/Baghdad'), (b'Asia/Bahrain', b'(GMT+0300) Asia/Bahrain'), (b'Asia/Kuwait', b'(GMT+0300) Asia/Kuwait'), (b'Asia/Qatar', b'(GMT+0300) Asia/Qatar'), (b'Asia/Riyadh', b'(GMT+0300) Asia/Riyadh'), (b'Europe/Minsk', b'(GMT+0300) Europe/Minsk'), (b'Europe/Moscow', b'(GMT+0300) Europe/Moscow'), (b'Europe/Simferopol', b'(GMT+0300) Europe/Simferopol'), (b'Europe/Volgograd', b'(GMT+0300) Europe/Volgograd'), (b'Indian/Antananarivo', b'(GMT+0300) Indian/Antananarivo'), (b'Indian/Comoro', b'(GMT+0300) Indian/Comoro'), (b'Indian/Mayotte', b'(GMT+0300) Indian/Mayotte'), (b'Asia/Tehran', b'(GMT+0330) Asia/Tehran'), (b'Asia/Baku', b'(GMT+0400) Asia/Baku'), (b'Asia/Dubai', b'(GMT+0400) Asia/Dubai'), (b'Asia/Muscat', b'(GMT+0400) Asia/Muscat'), (b'Asia/Tbilisi', b'(GMT+0400) Asia/Tbilisi'), (b'Asia/Yerevan', b'(GMT+0400) Asia/Yerevan'), (b'Europe/Samara', b'(GMT+0400) Europe/Samara'), (b'Indian/Mahe', b'(GMT+0400) Indian/Mahe'), (b'Indian/Mauritius', b'(GMT+0400) Indian/Mauritius'), (b'Indian/Reunion', b'(GMT+0400) Indian/Reunion'), (b'Asia/Kabul', b'(GMT+0430) Asia/Kabul'), (b'Antarctica/Mawson', b'(GMT+0500) Antarctica/Mawson'), (b'Asia/Aqtau', b'(GMT+0500) Asia/Aqtau'), (b'Asia/Aqtobe', b'(GMT+0500) Asia/Aqtobe'), (b'Asia/Ashgabat', b'(GMT+0500) Asia/Ashgabat'), (b'Asia/Dushanbe', b'(GMT+0500) Asia/Dushanbe'), (b'Asia/Karachi', b'(GMT+0500) Asia/Karachi'), (b'Asia/Oral', b'(GMT+0500) Asia/Oral'), (b'Asia/Samarkand', b'(GMT+0500) Asia/Samarkand'), (b'Asia/Tashkent', b'(GMT+0500) Asia/Tashkent'), (b'Asia/Yekaterinburg', b'(GMT+0500) Asia/Yekaterinburg'), (b'Indian/Kerguelen', b'(GMT+0500) Indian/Kerguelen'), (b'Indian/Maldives', b'(GMT+0500) Indian/Maldives'), (b'Asia/Colombo', b'(GMT+0530) Asia/Colombo'), (b'Asia/Kolkata', b'(GMT+0530) Asia/Kolkata'), (b'Asia/Kathmandu', b'(GMT+0545) Asia/Kathmandu'), (b'Antarctica/Vostok', b'(GMT+0600) Antarctica/Vostok'), (b'Asia/Almaty', b'(GMT+0600) Asia/Almaty'), (b'Asia/Bishkek', b'(GMT+0600) Asia/Bishkek'), (b'Asia/Dhaka', b'(GMT+0600) Asia/Dhaka'), (b'Asia/Novosibirsk', b'(GMT+0600) Asia/Novosibirsk'), (b'Asia/Omsk', b'(GMT+0600) Asia/Omsk'), (b'Asia/Qyzylorda', b'(GMT+0600) Asia/Qyzylorda'), (b'Asia/Thimphu', b'(GMT+0600) Asia/Thimphu'), (b'Asia/Urumqi', b'(GMT+0600) Asia/Urumqi'), (b'Indian/Chagos', b'(GMT+0600) Indian/Chagos'), (b'Asia/Rangoon', b'(GMT+0630) Asia/Rangoon'), (b'Indian/Cocos', b'(GMT+0630) Indian/Cocos'), (b'Antarctica/Davis', b'(GMT+0700) Antarctica/Davis'), (b'Asia/Bangkok', b'(GMT+0700) Asia/Bangkok'), (b'Asia/Ho_Chi_Minh', b'(GMT+0700) Asia/Ho_Chi_Minh'), (b'Asia/Hovd', b'(GMT+0700) Asia/Hovd'), (b'Asia/Jakarta', b'(GMT+0700) Asia/Jakarta'), (b'Asia/Krasnoyarsk', b'(GMT+0700) Asia/Krasnoyarsk'), (b'Asia/Novokuznetsk', b'(GMT+0700) Asia/Novokuznetsk'), (b'Asia/Phnom_Penh', b'(GMT+0700) Asia/Phnom_Penh'), (b'Asia/Pontianak', b'(GMT+0700) Asia/Pontianak'), (b'Asia/Vientiane', b'(GMT+0700) Asia/Vientiane'), (b'Indian/Christmas', b'(GMT+0700) Indian/Christmas'), (b'Antarctica/Casey', b'(GMT+0800) Antarctica/Casey'), (b'Asia/Brunei', b'(GMT+0800) Asia/Brunei'), (b'Asia/Chita', b'(GMT+0800) Asia/Chita'), (b'Asia/Choibalsan', b'(GMT+0800) Asia/Choibalsan'), (b'Asia/Hong_Kong', b'(GMT+0800) Asia/Hong_Kong'), (b'Asia/Irkutsk', b'(GMT+0800) Asia/Irkutsk'), (b'Asia/Kuala_Lumpur', b'(GMT+0800) Asia/Kuala_Lumpur'), (b'Asia/Kuching', b'(GMT+0800) Asia/Kuching'), (b'Asia/Macau', b'(GMT+0800) Asia/Macau'), (b'Asia/Makassar', b'(GMT+0800) Asia/Makassar'), (b'Asia/Manila', b'(GMT+0800) Asia/Manila'), (b'Asia/Shanghai', b'(GMT+0800) Asia/Shanghai'), (b'Asia/Singapore', b'(GMT+0800) Asia/Singapore'), (b'Asia/Taipei', b'(GMT+0800) Asia/Taipei'), (b'Asia/Ulaanbaatar', b'(GMT+0800) Asia/Ulaanbaatar'), (b'Australia/Perth', b'(GMT+0800) Australia/Perth'), (b'Australia/Eucla', b'(GMT+0845) Australia/Eucla'), (b'Asia/Dili', b'(GMT+0900) Asia/Dili'), (b'Asia/Jayapura', b'(GMT+0900) Asia/Jayapura'), (b'Asia/Khandyga', b'(GMT+0900) Asia/Khandyga'), (b'Asia/Pyongyang', b'(GMT+0900) Asia/Pyongyang'), (b'Asia/Seoul', b'(GMT+0900) Asia/Seoul'), (b'Asia/Tokyo', b'(GMT+0900) Asia/Tokyo'), (b'Asia/Yakutsk', b'(GMT+0900) Asia/Yakutsk'), (b'Pacific/Palau', b'(GMT+0900) Pacific/Palau'), (b'Australia/Darwin', b'(GMT+0930) Australia/Darwin'), (b'Antarctica/DumontDUrville', b'(GMT+1000) Antarctica/DumontDUrville'), (b'Asia/Magadan', b'(GMT+1000) Asia/Magadan'), (b'Asia/Sakhalin', b'(GMT+1000) Asia/Sakhalin'), (b'Asia/Ust-Nera', b'(GMT+1000) Asia/Ust-Nera'), (b'Asia/Vladivostok', b'(GMT+1000) Asia/Vladivostok'), (b'Australia/Brisbane', b'(GMT+1000) Australia/Brisbane'), (b'Australia/Lindeman', b'(GMT+1000) Australia/Lindeman'), (b'Pacific/Chuuk', b'(GMT+1000) Pacific/Chuuk'), (b'Pacific/Guam', b'(GMT+1000) Pacific/Guam'), (b'Pacific/Port_Moresby', b'(GMT+1000) Pacific/Port_Moresby'), (b'Pacific/Saipan', b'(GMT+1000) Pacific/Saipan'), (b'Australia/Adelaide', b'(GMT+1030) Australia/Adelaide'), (b'Australia/Broken_Hill', b'(GMT+1030) Australia/Broken_Hill'), (b'Antarctica/Macquarie', b'(GMT+1100) Antarctica/Macquarie'), (b'Asia/Srednekolymsk', b'(GMT+1100) Asia/Srednekolymsk'), (b'Australia/Currie', b'(GMT+1100) Australia/Currie'), (b'Australia/Hobart', b'(GMT+1100) Australia/Hobart'), (b'Australia/Lord_Howe', b'(GMT+1100) Australia/Lord_Howe'), (b'Australia/Melbourne', b'(GMT+1100) Australia/Melbourne'), (b'Australia/Sydney', b'(GMT+1100) Australia/Sydney'), (b'Pacific/Efate', b'(GMT+1100) Pacific/Efate'), (b'Pacific/Guadalcanal', b'(GMT+1100) Pacific/Guadalcanal'), (b'Pacific/Kosrae', b'(GMT+1100) Pacific/Kosrae'), (b'Pacific/Noumea', b'(GMT+1100) Pacific/Noumea'), (b'Pacific/Pohnpei', b'(GMT+1100) Pacific/Pohnpei'), (b'Pacific/Norfolk', b'(GMT+1130) Pacific/Norfolk'), (b'Asia/Anadyr', b'(GMT+1200) Asia/Anadyr'), (b'Asia/Kamchatka', b'(GMT+1200) Asia/Kamchatka'), (b'Pacific/Funafuti', b'(GMT+1200) Pacific/Funafuti'), (b'Pacific/Kwajalein', b'(GMT+1200) Pacific/Kwajalein'), (b'Pacific/Majuro', b'(GMT+1200) Pacific/Majuro'), (b'Pacific/Nauru', b'(GMT+1200) Pacific/Nauru'), (b'Pacific/Tarawa', b'(GMT+1200) Pacific/Tarawa'), (b'Pacific/Wake', b'(GMT+1200) Pacific/Wake'), (b'Pacific/Wallis', b'(GMT+1200) Pacific/Wallis'), (b'Antarctica/McMurdo', b'(GMT+1300) Antarctica/McMurdo'), (b'Pacific/Auckland', b'(GMT+1300) Pacific/Auckland'), (b'Pacific/Enderbury', b'(GMT+1300) Pacific/Enderbury'), (b'Pacific/Fakaofo', b'(GMT+1300) Pacific/Fakaofo'), (b'Pacific/Fiji', b'(GMT+1300) Pacific/Fiji'), (b'Pacific/Tongatapu', b'(GMT+1300) Pacific/Tongatapu'), (b'Pacific/Chatham', b'(GMT+1345) Pacific/Chatham'), (b'Pacific/Apia', b'(GMT+1400) Pacific/Apia'), (b'Pacific/Kiritimati', b'(GMT+1400) Pacific/Kiritimati')])),
+ ('timezone', timezones.fields.TimeZoneField(default=b'America/New_York', max_length=100, choices=[(b'Pacific/Midway', b'(GMT-1100) Pacific/Midway'), (b'Pacific/Niue', b'(GMT-1100) Pacific/Niue'), (b'Pacific/Pago_Pago', b'(GMT-1100) Pacific/Pago_Pago'), (b'America/Adak', b'(GMT-1000) America/Adak'), (b'Pacific/Honolulu', b'(GMT-1000) Pacific/Honolulu'), (b'Pacific/Johnston', b'(GMT-1000) Pacific/Johnston'), (b'Pacific/Rarotonga', b'(GMT-1000) Pacific/Rarotonga'), (b'Pacific/Tahiti', b'(GMT-1000) Pacific/Tahiti'), (b'US/Hawaii', b'(GMT-1000) US/Hawaii'), (b'Pacific/Marquesas', b'(GMT-0930) Pacific/Marquesas'), (b'America/Anchorage', b'(GMT-0900) America/Anchorage'), (b'America/Juneau', b'(GMT-0900) America/Juneau'), (b'America/Nome', b'(GMT-0900) America/Nome'), (b'America/Sitka', b'(GMT-0900) America/Sitka'), (b'America/Yakutat', b'(GMT-0900) America/Yakutat'), (b'Pacific/Gambier', b'(GMT-0900) Pacific/Gambier'), (b'US/Alaska', b'(GMT-0900) US/Alaska'), (b'America/Dawson', b'(GMT-0800) America/Dawson'), (b'America/Los_Angeles', b'(GMT-0800) America/Los_Angeles'), (b'America/Metlakatla', b'(GMT-0800) America/Metlakatla'), (b'America/Santa_Isabel', b'(GMT-0800) America/Santa_Isabel'), (b'America/Tijuana', b'(GMT-0800) America/Tijuana'), (b'America/Vancouver', b'(GMT-0800) America/Vancouver'), (b'America/Whitehorse', b'(GMT-0800) America/Whitehorse'), (b'Canada/Pacific', b'(GMT-0800) Canada/Pacific'), (b'Pacific/Pitcairn', b'(GMT-0800) Pacific/Pitcairn'), (b'US/Pacific', b'(GMT-0800) US/Pacific'), (b'America/Boise', b'(GMT-0700) America/Boise'), (b'America/Cambridge_Bay', b'(GMT-0700) America/Cambridge_Bay'), (b'America/Chihuahua', b'(GMT-0700) America/Chihuahua'), (b'America/Creston', b'(GMT-0700) America/Creston'), (b'America/Dawson_Creek', b'(GMT-0700) America/Dawson_Creek'), (b'America/Denver', b'(GMT-0700) America/Denver'), (b'America/Edmonton', b'(GMT-0700) America/Edmonton'), (b'America/Hermosillo', b'(GMT-0700) America/Hermosillo'), (b'America/Inuvik', b'(GMT-0700) America/Inuvik'), (b'America/Mazatlan', b'(GMT-0700) America/Mazatlan'), (b'America/Ojinaga', b'(GMT-0700) America/Ojinaga'), (b'America/Phoenix', b'(GMT-0700) America/Phoenix'), (b'America/Shiprock', b'(GMT-0700) America/Shiprock'), (b'America/Yellowknife', b'(GMT-0700) America/Yellowknife'), (b'Canada/Mountain', b'(GMT-0700) Canada/Mountain'), (b'US/Arizona', b'(GMT-0700) US/Arizona'), (b'US/Mountain', b'(GMT-0700) US/Mountain'), (b'America/Bahia_Banderas', b'(GMT-0600) America/Bahia_Banderas'), (b'America/Belize', b'(GMT-0600) America/Belize'), (b'America/Cancun', b'(GMT-0600) America/Cancun'), (b'America/Chicago', b'(GMT-0600) America/Chicago'), (b'America/Costa_Rica', b'(GMT-0600) America/Costa_Rica'), (b'America/El_Salvador', b'(GMT-0600) America/El_Salvador'), (b'America/Guatemala', b'(GMT-0600) America/Guatemala'), (b'America/Indiana/Knox', b'(GMT-0600) America/Indiana/Knox'), (b'America/Indiana/Tell_City', b'(GMT-0600) America/Indiana/Tell_City'), (b'America/Managua', b'(GMT-0600) America/Managua'), (b'America/Matamoros', b'(GMT-0600) America/Matamoros'), (b'America/Menominee', b'(GMT-0600) America/Menominee'), (b'America/Merida', b'(GMT-0600) America/Merida'), (b'America/Mexico_City', b'(GMT-0600) America/Mexico_City'), (b'America/Monterrey', b'(GMT-0600) America/Monterrey'), (b'America/North_Dakota/Beulah', b'(GMT-0600) America/North_Dakota/Beulah'), (b'America/North_Dakota/Center', b'(GMT-0600) America/North_Dakota/Center'), (b'America/North_Dakota/New_Salem', b'(GMT-0600) America/North_Dakota/New_Salem'), (b'America/Rainy_River', b'(GMT-0600) America/Rainy_River'), (b'America/Rankin_Inlet', b'(GMT-0600) America/Rankin_Inlet'), (b'America/Regina', b'(GMT-0600) America/Regina'), (b'America/Resolute', b'(GMT-0600) America/Resolute'), (b'America/Swift_Current', b'(GMT-0600) America/Swift_Current'), (b'America/Tegucigalpa', b'(GMT-0600) America/Tegucigalpa'), (b'America/Winnipeg', b'(GMT-0600) America/Winnipeg'), (b'Canada/Central', b'(GMT-0600) Canada/Central'), (b'Pacific/Galapagos', b'(GMT-0600) Pacific/Galapagos'), (b'US/Central', b'(GMT-0600) US/Central'), (b'America/Atikokan', b'(GMT-0500) America/Atikokan'), (b'America/Bogota', b'(GMT-0500) America/Bogota'), (b'America/Cayman', b'(GMT-0500) America/Cayman'), (b'America/Detroit', b'(GMT-0500) America/Detroit'), (b'America/Eirunepe', b'(GMT-0500) America/Eirunepe'), (b'America/Grand_Turk', b'(GMT-0500) America/Grand_Turk'), (b'America/Guayaquil', b'(GMT-0500) America/Guayaquil'), (b'America/Havana', b'(GMT-0500) America/Havana'), (b'America/Indiana/Indianapolis', b'(GMT-0500) America/Indiana/Indianapolis'), (b'America/Indiana/Marengo', b'(GMT-0500) America/Indiana/Marengo'), (b'America/Indiana/Petersburg', b'(GMT-0500) America/Indiana/Petersburg'), (b'America/Indiana/Vevay', b'(GMT-0500) America/Indiana/Vevay'), (b'America/Indiana/Vincennes', b'(GMT-0500) America/Indiana/Vincennes'), (b'America/Indiana/Winamac', b'(GMT-0500) America/Indiana/Winamac'), (b'America/Iqaluit', b'(GMT-0500) America/Iqaluit'), (b'America/Jamaica', b'(GMT-0500) America/Jamaica'), (b'America/Kentucky/Louisville', b'(GMT-0500) America/Kentucky/Louisville'), (b'America/Kentucky/Monticello', b'(GMT-0500) America/Kentucky/Monticello'), (b'America/Lima', b'(GMT-0500) America/Lima'), (b'America/Montreal', b'(GMT-0500) America/Montreal'), (b'America/Nassau', b'(GMT-0500) America/Nassau'), (b'America/New_York', b'(GMT-0500) America/New_York'), (b'America/Nipigon', b'(GMT-0500) America/Nipigon'), (b'America/Panama', b'(GMT-0500) America/Panama'), (b'America/Pangnirtung', b'(GMT-0500) America/Pangnirtung'), (b'America/Port-au-Prince', b'(GMT-0500) America/Port-au-Prince'), (b'America/Rio_Branco', b'(GMT-0500) America/Rio_Branco'), (b'America/Thunder_Bay', b'(GMT-0500) America/Thunder_Bay'), (b'America/Toronto', b'(GMT-0500) America/Toronto'), (b'Canada/Eastern', b'(GMT-0500) Canada/Eastern'), (b'Pacific/Easter', b'(GMT-0500) Pacific/Easter'), (b'US/Eastern', b'(GMT-0500) US/Eastern'), (b'America/Caracas', b'(GMT-0430) America/Caracas'), (b'America/Anguilla', b'(GMT-0400) America/Anguilla'), (b'America/Antigua', b'(GMT-0400) America/Antigua'), (b'America/Aruba', b'(GMT-0400) America/Aruba'), (b'America/Barbados', b'(GMT-0400) America/Barbados'), (b'America/Blanc-Sablon', b'(GMT-0400) America/Blanc-Sablon'), (b'America/Boa_Vista', b'(GMT-0400) America/Boa_Vista'), (b'America/Curacao', b'(GMT-0400) America/Curacao'), (b'America/Dominica', b'(GMT-0400) America/Dominica'), (b'America/Glace_Bay', b'(GMT-0400) America/Glace_Bay'), (b'America/Goose_Bay', b'(GMT-0400) America/Goose_Bay'), (b'America/Grenada', b'(GMT-0400) America/Grenada'), (b'America/Guadeloupe', b'(GMT-0400) America/Guadeloupe'), (b'America/Guyana', b'(GMT-0400) America/Guyana'), (b'America/Halifax', b'(GMT-0400) America/Halifax'), (b'America/Kralendijk', b'(GMT-0400) America/Kralendijk'), (b'America/La_Paz', b'(GMT-0400) America/La_Paz'), (b'America/Lower_Princes', b'(GMT-0400) America/Lower_Princes'), (b'America/Manaus', b'(GMT-0400) America/Manaus'), (b'America/Marigot', b'(GMT-0400) America/Marigot'), (b'America/Martinique', b'(GMT-0400) America/Martinique'), (b'America/Moncton', b'(GMT-0400) America/Moncton'), (b'America/Montserrat', b'(GMT-0400) America/Montserrat'), (b'America/Port_of_Spain', b'(GMT-0400) America/Port_of_Spain'), (b'America/Porto_Velho', b'(GMT-0400) America/Porto_Velho'), (b'America/Puerto_Rico', b'(GMT-0400) America/Puerto_Rico'), (b'America/Santo_Domingo', b'(GMT-0400) America/Santo_Domingo'), (b'America/St_Barthelemy', b'(GMT-0400) America/St_Barthelemy'), (b'America/St_Kitts', b'(GMT-0400) America/St_Kitts'), (b'America/St_Lucia', b'(GMT-0400) America/St_Lucia'), (b'America/St_Thomas', b'(GMT-0400) America/St_Thomas'), (b'America/St_Vincent', b'(GMT-0400) America/St_Vincent'), (b'America/Thule', b'(GMT-0400) America/Thule'), (b'America/Tortola', b'(GMT-0400) America/Tortola'), (b'Atlantic/Bermuda', b'(GMT-0400) Atlantic/Bermuda'), (b'Canada/Atlantic', b'(GMT-0400) Canada/Atlantic'), (b'America/St_Johns', b'(GMT-0330) America/St_Johns'), (b'Canada/Newfoundland', b'(GMT-0330) Canada/Newfoundland'), (b'America/Araguaina', b'(GMT-0300) America/Araguaina'), (b'America/Argentina/Buenos_Aires', b'(GMT-0300) America/Argentina/Buenos_Aires'), (b'America/Argentina/Catamarca', b'(GMT-0300) America/Argentina/Catamarca'), (b'America/Argentina/Cordoba', b'(GMT-0300) America/Argentina/Cordoba'), (b'America/Argentina/Jujuy', b'(GMT-0300) America/Argentina/Jujuy'), (b'America/Argentina/La_Rioja', b'(GMT-0300) America/Argentina/La_Rioja'), (b'America/Argentina/Mendoza', b'(GMT-0300) America/Argentina/Mendoza'), (b'America/Argentina/Rio_Gallegos', b'(GMT-0300) America/Argentina/Rio_Gallegos'), (b'America/Argentina/Salta', b'(GMT-0300) America/Argentina/Salta'), (b'America/Argentina/San_Juan', b'(GMT-0300) America/Argentina/San_Juan'), (b'America/Argentina/San_Luis', b'(GMT-0300) America/Argentina/San_Luis'), (b'America/Argentina/Tucuman', b'(GMT-0300) America/Argentina/Tucuman'), (b'America/Argentina/Ushuaia', b'(GMT-0300) America/Argentina/Ushuaia'), (b'America/Asuncion', b'(GMT-0300) America/Asuncion'), (b'America/Bahia', b'(GMT-0300) America/Bahia'), (b'America/Belem', b'(GMT-0300) America/Belem'), (b'America/Campo_Grande', b'(GMT-0300) America/Campo_Grande'), (b'America/Cayenne', b'(GMT-0300) America/Cayenne'), (b'America/Cuiaba', b'(GMT-0300) America/Cuiaba'), (b'America/Fortaleza', b'(GMT-0300) America/Fortaleza'), (b'America/Godthab', b'(GMT-0300) America/Godthab'), (b'America/Maceio', b'(GMT-0300) America/Maceio'), (b'America/Miquelon', b'(GMT-0300) America/Miquelon'), (b'America/Paramaribo', b'(GMT-0300) America/Paramaribo'), (b'America/Recife', b'(GMT-0300) America/Recife'), (b'America/Santarem', b'(GMT-0300) America/Santarem'), (b'America/Santiago', b'(GMT-0300) America/Santiago'), (b'Antarctica/Palmer', b'(GMT-0300) Antarctica/Palmer'), (b'Antarctica/Rothera', b'(GMT-0300) Antarctica/Rothera'), (b'Atlantic/Stanley', b'(GMT-0300) Atlantic/Stanley'), (b'America/Montevideo', b'(GMT-0200) America/Montevideo'), (b'America/Noronha', b'(GMT-0200) America/Noronha'), (b'America/Sao_Paulo', b'(GMT-0200) America/Sao_Paulo'), (b'Atlantic/South_Georgia', b'(GMT-0200) Atlantic/South_Georgia'), (b'America/Scoresbysund', b'(GMT-0100) America/Scoresbysund'), (b'Atlantic/Azores', b'(GMT-0100) Atlantic/Azores'), (b'Atlantic/Cape_Verde', b'(GMT-0100) Atlantic/Cape_Verde'), (b'Africa/Abidjan', b'(GMT+0000) Africa/Abidjan'), (b'Africa/Accra', b'(GMT+0000) Africa/Accra'), (b'Africa/Bamako', b'(GMT+0000) Africa/Bamako'), (b'Africa/Banjul', b'(GMT+0000) Africa/Banjul'), (b'Africa/Bissau', b'(GMT+0000) Africa/Bissau'), (b'Africa/Casablanca', b'(GMT+0000) Africa/Casablanca'), (b'Africa/Conakry', b'(GMT+0000) Africa/Conakry'), (b'Africa/Dakar', b'(GMT+0000) Africa/Dakar'), (b'Africa/El_Aaiun', b'(GMT+0000) Africa/El_Aaiun'), (b'Africa/Freetown', b'(GMT+0000) Africa/Freetown'), (b'Africa/Lome', b'(GMT+0000) Africa/Lome'), (b'Africa/Monrovia', b'(GMT+0000) Africa/Monrovia'), (b'Africa/Nouakchott', b'(GMT+0000) Africa/Nouakchott'), (b'Africa/Ouagadougou', b'(GMT+0000) Africa/Ouagadougou'), (b'Africa/Sao_Tome', b'(GMT+0000) Africa/Sao_Tome'), (b'America/Danmarkshavn', b'(GMT+0000) America/Danmarkshavn'), (b'Atlantic/Canary', b'(GMT+0000) Atlantic/Canary'), (b'Atlantic/Faroe', b'(GMT+0000) Atlantic/Faroe'), (b'Atlantic/Madeira', b'(GMT+0000) Atlantic/Madeira'), (b'Atlantic/Reykjavik', b'(GMT+0000) Atlantic/Reykjavik'), (b'Atlantic/St_Helena', b'(GMT+0000) Atlantic/St_Helena'), (b'Europe/Dublin', b'(GMT+0000) Europe/Dublin'), (b'Europe/Guernsey', b'(GMT+0000) Europe/Guernsey'), (b'Europe/Isle_of_Man', b'(GMT+0000) Europe/Isle_of_Man'), (b'Europe/Jersey', b'(GMT+0000) Europe/Jersey'), (b'Europe/Lisbon', b'(GMT+0000) Europe/Lisbon'), (b'Europe/London', b'(GMT+0000) Europe/London'), (b'GMT', b'(GMT+0000) GMT'), (b'UTC', b'(GMT+0000) UTC'), (b'Africa/Algiers', b'(GMT+0100) Africa/Algiers'), (b'Africa/Bangui', b'(GMT+0100) Africa/Bangui'), (b'Africa/Brazzaville', b'(GMT+0100) Africa/Brazzaville'), (b'Africa/Ceuta', b'(GMT+0100) Africa/Ceuta'), (b'Africa/Douala', b'(GMT+0100) Africa/Douala'), (b'Africa/Kinshasa', b'(GMT+0100) Africa/Kinshasa'), (b'Africa/Lagos', b'(GMT+0100) Africa/Lagos'), (b'Africa/Libreville', b'(GMT+0100) Africa/Libreville'), (b'Africa/Luanda', b'(GMT+0100) Africa/Luanda'), (b'Africa/Malabo', b'(GMT+0100) Africa/Malabo'), (b'Africa/Ndjamena', b'(GMT+0100) Africa/Ndjamena'), (b'Africa/Niamey', b'(GMT+0100) Africa/Niamey'), (b'Africa/Porto-Novo', b'(GMT+0100) Africa/Porto-Novo'), (b'Africa/Tunis', b'(GMT+0100) Africa/Tunis'), (b'Arctic/Longyearbyen', b'(GMT+0100) Arctic/Longyearbyen'), (b'Europe/Amsterdam', b'(GMT+0100) Europe/Amsterdam'), (b'Europe/Andorra', b'(GMT+0100) Europe/Andorra'), (b'Europe/Belgrade', b'(GMT+0100) Europe/Belgrade'), (b'Europe/Berlin', b'(GMT+0100) Europe/Berlin'), (b'Europe/Bratislava', b'(GMT+0100) Europe/Bratislava'), (b'Europe/Brussels', b'(GMT+0100) Europe/Brussels'), (b'Europe/Budapest', b'(GMT+0100) Europe/Budapest'), (b'Europe/Copenhagen', b'(GMT+0100) Europe/Copenhagen'), (b'Europe/Gibraltar', b'(GMT+0100) Europe/Gibraltar'), (b'Europe/Ljubljana', b'(GMT+0100) Europe/Ljubljana'), (b'Europe/Luxembourg', b'(GMT+0100) Europe/Luxembourg'), (b'Europe/Madrid', b'(GMT+0100) Europe/Madrid'), (b'Europe/Malta', b'(GMT+0100) Europe/Malta'), (b'Europe/Monaco', b'(GMT+0100) Europe/Monaco'), (b'Europe/Oslo', b'(GMT+0100) Europe/Oslo'), (b'Europe/Paris', b'(GMT+0100) Europe/Paris'), (b'Europe/Podgorica', b'(GMT+0100) Europe/Podgorica'), (b'Europe/Prague', b'(GMT+0100) Europe/Prague'), (b'Europe/Rome', b'(GMT+0100) Europe/Rome'), (b'Europe/San_Marino', b'(GMT+0100) Europe/San_Marino'), (b'Europe/Sarajevo', b'(GMT+0100) Europe/Sarajevo'), (b'Europe/Skopje', b'(GMT+0100) Europe/Skopje'), (b'Europe/Stockholm', b'(GMT+0100) Europe/Stockholm'), (b'Europe/Tirane', b'(GMT+0100) Europe/Tirane'), (b'Europe/Vaduz', b'(GMT+0100) Europe/Vaduz'), (b'Europe/Vatican', b'(GMT+0100) Europe/Vatican'), (b'Europe/Vienna', b'(GMT+0100) Europe/Vienna'), (b'Europe/Warsaw', b'(GMT+0100) Europe/Warsaw'), (b'Europe/Zagreb', b'(GMT+0100) Europe/Zagreb'), (b'Europe/Zurich', b'(GMT+0100) Europe/Zurich'), (b'Africa/Blantyre', b'(GMT+0200) Africa/Blantyre'), (b'Africa/Bujumbura', b'(GMT+0200) Africa/Bujumbura'), (b'Africa/Cairo', b'(GMT+0200) Africa/Cairo'), (b'Africa/Gaborone', b'(GMT+0200) Africa/Gaborone'), (b'Africa/Harare', b'(GMT+0200) Africa/Harare'), (b'Africa/Johannesburg', b'(GMT+0200) Africa/Johannesburg'), (b'Africa/Kigali', b'(GMT+0200) Africa/Kigali'), (b'Africa/Lubumbashi', b'(GMT+0200) Africa/Lubumbashi'), (b'Africa/Lusaka', b'(GMT+0200) Africa/Lusaka'), (b'Africa/Maputo', b'(GMT+0200) Africa/Maputo'), (b'Africa/Maseru', b'(GMT+0200) Africa/Maseru'), (b'Africa/Mbabane', b'(GMT+0200) Africa/Mbabane'), (b'Africa/Tripoli', b'(GMT+0200) Africa/Tripoli'), (b'Africa/Windhoek', b'(GMT+0200) Africa/Windhoek'), (b'Asia/Amman', b'(GMT+0200) Asia/Amman'), (b'Asia/Beirut', b'(GMT+0200) Asia/Beirut'), (b'Asia/Damascus', b'(GMT+0200) Asia/Damascus'), (b'Asia/Gaza', b'(GMT+0200) Asia/Gaza'), (b'Asia/Hebron', b'(GMT+0200) Asia/Hebron'), (b'Asia/Jerusalem', b'(GMT+0200) Asia/Jerusalem'), (b'Asia/Nicosia', b'(GMT+0200) Asia/Nicosia'), (b'Europe/Athens', b'(GMT+0200) Europe/Athens'), (b'Europe/Bucharest', b'(GMT+0200) Europe/Bucharest'), (b'Europe/Chisinau', b'(GMT+0200) Europe/Chisinau'), (b'Europe/Helsinki', b'(GMT+0200) Europe/Helsinki'), (b'Europe/Istanbul', b'(GMT+0200) Europe/Istanbul'), (b'Europe/Kiev', b'(GMT+0200) Europe/Kiev'), (b'Europe/Mariehamn', b'(GMT+0200) Europe/Mariehamn'), (b'Europe/Riga', b'(GMT+0200) Europe/Riga'), (b'Europe/Sofia', b'(GMT+0200) Europe/Sofia'), (b'Europe/Tallinn', b'(GMT+0200) Europe/Tallinn'), (b'Europe/Uzhgorod', b'(GMT+0200) Europe/Uzhgorod'), (b'Europe/Vilnius', b'(GMT+0200) Europe/Vilnius'), (b'Europe/Zaporozhye', b'(GMT+0200) Europe/Zaporozhye'), (b'Africa/Addis_Ababa', b'(GMT+0300) Africa/Addis_Ababa'), (b'Africa/Asmara', b'(GMT+0300) Africa/Asmara'), (b'Africa/Dar_es_Salaam', b'(GMT+0300) Africa/Dar_es_Salaam'), (b'Africa/Djibouti', b'(GMT+0300) Africa/Djibouti'), (b'Africa/Juba', b'(GMT+0300) Africa/Juba'), (b'Africa/Kampala', b'(GMT+0300) Africa/Kampala'), (b'Africa/Khartoum', b'(GMT+0300) Africa/Khartoum'), (b'Africa/Mogadishu', b'(GMT+0300) Africa/Mogadishu'), (b'Africa/Nairobi', b'(GMT+0300) Africa/Nairobi'), (b'Antarctica/Syowa', b'(GMT+0300) Antarctica/Syowa'), (b'Asia/Aden', b'(GMT+0300) Asia/Aden'), (b'Asia/Baghdad', b'(GMT+0300) Asia/Baghdad'), (b'Asia/Bahrain', b'(GMT+0300) Asia/Bahrain'), (b'Asia/Kuwait', b'(GMT+0300) Asia/Kuwait'), (b'Asia/Qatar', b'(GMT+0300) Asia/Qatar'), (b'Asia/Riyadh', b'(GMT+0300) Asia/Riyadh'), (b'Europe/Kaliningrad', b'(GMT+0300) Europe/Kaliningrad'), (b'Europe/Minsk', b'(GMT+0300) Europe/Minsk'), (b'Indian/Antananarivo', b'(GMT+0300) Indian/Antananarivo'), (b'Indian/Comoro', b'(GMT+0300) Indian/Comoro'), (b'Indian/Mayotte', b'(GMT+0300) Indian/Mayotte'), (b'Asia/Tehran', b'(GMT+0330) Asia/Tehran'), (b'Asia/Baku', b'(GMT+0400) Asia/Baku'), (b'Asia/Dubai', b'(GMT+0400) Asia/Dubai'), (b'Asia/Muscat', b'(GMT+0400) Asia/Muscat'), (b'Asia/Tbilisi', b'(GMT+0400) Asia/Tbilisi'), (b'Asia/Yerevan', b'(GMT+0400) Asia/Yerevan'), (b'Europe/Moscow', b'(GMT+0400) Europe/Moscow'), (b'Europe/Samara', b'(GMT+0400) Europe/Samara'), (b'Europe/Simferopol', b'(GMT+0400) Europe/Simferopol'), (b'Europe/Volgograd', b'(GMT+0400) Europe/Volgograd'), (b'Indian/Mahe', b'(GMT+0400) Indian/Mahe'), (b'Indian/Mauritius', b'(GMT+0400) Indian/Mauritius'), (b'Indian/Reunion', b'(GMT+0400) Indian/Reunion'), (b'Asia/Kabul', b'(GMT+0430) Asia/Kabul'), (b'Antarctica/Mawson', b'(GMT+0500) Antarctica/Mawson'), (b'Asia/Aqtau', b'(GMT+0500) Asia/Aqtau'), (b'Asia/Aqtobe', b'(GMT+0500) Asia/Aqtobe'), (b'Asia/Ashgabat', b'(GMT+0500) Asia/Ashgabat'), (b'Asia/Dushanbe', b'(GMT+0500) Asia/Dushanbe'), (b'Asia/Karachi', b'(GMT+0500) Asia/Karachi'), (b'Asia/Oral', b'(GMT+0500) Asia/Oral'), (b'Asia/Samarkand', b'(GMT+0500) Asia/Samarkand'), (b'Asia/Tashkent', b'(GMT+0500) Asia/Tashkent'), (b'Indian/Kerguelen', b'(GMT+0500) Indian/Kerguelen'), (b'Indian/Maldives', b'(GMT+0500) Indian/Maldives'), (b'Asia/Colombo', b'(GMT+0530) Asia/Colombo'), (b'Asia/Kolkata', b'(GMT+0530) Asia/Kolkata'), (b'Asia/Kathmandu', b'(GMT+0545) Asia/Kathmandu'), (b'Antarctica/Vostok', b'(GMT+0600) Antarctica/Vostok'), (b'Asia/Almaty', b'(GMT+0600) Asia/Almaty'), (b'Asia/Bishkek', b'(GMT+0600) Asia/Bishkek'), (b'Asia/Dhaka', b'(GMT+0600) Asia/Dhaka'), (b'Asia/Qyzylorda', b'(GMT+0600) Asia/Qyzylorda'), (b'Asia/Thimphu', b'(GMT+0600) Asia/Thimphu'), (b'Asia/Yekaterinburg', b'(GMT+0600) Asia/Yekaterinburg'), (b'Indian/Chagos', b'(GMT+0600) Indian/Chagos'), (b'Asia/Rangoon', b'(GMT+0630) Asia/Rangoon'), (b'Indian/Cocos', b'(GMT+0630) Indian/Cocos'), (b'Antarctica/Davis', b'(GMT+0700) Antarctica/Davis'), (b'Asia/Bangkok', b'(GMT+0700) Asia/Bangkok'), (b'Asia/Ho_Chi_Minh', b'(GMT+0700) Asia/Ho_Chi_Minh'), (b'Asia/Hovd', b'(GMT+0700) Asia/Hovd'), (b'Asia/Jakarta', b'(GMT+0700) Asia/Jakarta'), (b'Asia/Novokuznetsk', b'(GMT+0700) Asia/Novokuznetsk'), (b'Asia/Novosibirsk', b'(GMT+0700) Asia/Novosibirsk'), (b'Asia/Omsk', b'(GMT+0700) Asia/Omsk'), (b'Asia/Phnom_Penh', b'(GMT+0700) Asia/Phnom_Penh'), (b'Asia/Pontianak', b'(GMT+0700) Asia/Pontianak'), (b'Asia/Vientiane', b'(GMT+0700) Asia/Vientiane'), (b'Indian/Christmas', b'(GMT+0700) Indian/Christmas'), (b'Antarctica/Casey', b'(GMT+0800) Antarctica/Casey'), (b'Asia/Brunei', b'(GMT+0800) Asia/Brunei'), (b'Asia/Choibalsan', b'(GMT+0800) Asia/Choibalsan'), (b'Asia/Chongqing', b'(GMT+0800) Asia/Chongqing'), (b'Asia/Harbin', b'(GMT+0800) Asia/Harbin'), (b'Asia/Hong_Kong', b'(GMT+0800) Asia/Hong_Kong'), (b'Asia/Kashgar', b'(GMT+0800) Asia/Kashgar'), (b'Asia/Krasnoyarsk', b'(GMT+0800) Asia/Krasnoyarsk'), (b'Asia/Kuala_Lumpur', b'(GMT+0800) Asia/Kuala_Lumpur'), (b'Asia/Kuching', b'(GMT+0800) Asia/Kuching'), (b'Asia/Macau', b'(GMT+0800) Asia/Macau'), (b'Asia/Makassar', b'(GMT+0800) Asia/Makassar'), (b'Asia/Manila', b'(GMT+0800) Asia/Manila'), (b'Asia/Shanghai', b'(GMT+0800) Asia/Shanghai'), (b'Asia/Singapore', b'(GMT+0800) Asia/Singapore'), (b'Asia/Taipei', b'(GMT+0800) Asia/Taipei'), (b'Asia/Ulaanbaatar', b'(GMT+0800) Asia/Ulaanbaatar'), (b'Asia/Urumqi', b'(GMT+0800) Asia/Urumqi'), (b'Australia/Perth', b'(GMT+0800) Australia/Perth'), (b'Australia/Eucla', b'(GMT+0845) Australia/Eucla'), (b'Asia/Dili', b'(GMT+0900) Asia/Dili'), (b'Asia/Irkutsk', b'(GMT+0900) Asia/Irkutsk'), (b'Asia/Jayapura', b'(GMT+0900) Asia/Jayapura'), (b'Asia/Pyongyang', b'(GMT+0900) Asia/Pyongyang'), (b'Asia/Seoul', b'(GMT+0900) Asia/Seoul'), (b'Asia/Tokyo', b'(GMT+0900) Asia/Tokyo'), (b'Pacific/Palau', b'(GMT+0900) Pacific/Palau'), (b'Australia/Darwin', b'(GMT+0930) Australia/Darwin'), (b'Antarctica/DumontDUrville', b'(GMT+1000) Antarctica/DumontDUrville'), (b'Asia/Yakutsk', b'(GMT+1000) Asia/Yakutsk'), (b'Australia/Brisbane', b'(GMT+1000) Australia/Brisbane'), (b'Australia/Lindeman', b'(GMT+1000) Australia/Lindeman'), (b'Pacific/Chuuk', b'(GMT+1000) Pacific/Chuuk'), (b'Pacific/Guam', b'(GMT+1000) Pacific/Guam'), (b'Pacific/Port_Moresby', b'(GMT+1000) Pacific/Port_Moresby'), (b'Pacific/Saipan', b'(GMT+1000) Pacific/Saipan'), (b'Australia/Adelaide', b'(GMT+1030) Australia/Adelaide'), (b'Australia/Broken_Hill', b'(GMT+1030) Australia/Broken_Hill'), (b'Antarctica/Macquarie', b'(GMT+1100) Antarctica/Macquarie'), (b'Asia/Sakhalin', b'(GMT+1100) Asia/Sakhalin'), (b'Asia/Vladivostok', b'(GMT+1100) Asia/Vladivostok'), (b'Australia/Currie', b'(GMT+1100) Australia/Currie'), (b'Australia/Hobart', b'(GMT+1100) Australia/Hobart'), (b'Australia/Lord_Howe', b'(GMT+1100) Australia/Lord_Howe'), (b'Australia/Melbourne', b'(GMT+1100) Australia/Melbourne'), (b'Australia/Sydney', b'(GMT+1100) Australia/Sydney'), (b'Pacific/Efate', b'(GMT+1100) Pacific/Efate'), (b'Pacific/Guadalcanal', b'(GMT+1100) Pacific/Guadalcanal'), (b'Pacific/Kosrae', b'(GMT+1100) Pacific/Kosrae'), (b'Pacific/Noumea', b'(GMT+1100) Pacific/Noumea'), (b'Pacific/Pohnpei', b'(GMT+1100) Pacific/Pohnpei'), (b'Pacific/Norfolk', b'(GMT+1130) Pacific/Norfolk'), (b'Asia/Anadyr', b'(GMT+1200) Asia/Anadyr'), (b'Asia/Kamchatka', b'(GMT+1200) Asia/Kamchatka'), (b'Asia/Magadan', b'(GMT+1200) Asia/Magadan'), (b'Pacific/Funafuti', b'(GMT+1200) Pacific/Funafuti'), (b'Pacific/Kwajalein', b'(GMT+1200) Pacific/Kwajalein'), (b'Pacific/Majuro', b'(GMT+1200) Pacific/Majuro'), (b'Pacific/Nauru', b'(GMT+1200) Pacific/Nauru'), (b'Pacific/Tarawa', b'(GMT+1200) Pacific/Tarawa'), (b'Pacific/Wake', b'(GMT+1200) Pacific/Wake'), (b'Pacific/Wallis', b'(GMT+1200) Pacific/Wallis'), (b'Antarctica/McMurdo', b'(GMT+1300) Antarctica/McMurdo'), (b'Antarctica/South_Pole', b'(GMT+1300) Antarctica/South_Pole'), (b'Pacific/Auckland', b'(GMT+1300) Pacific/Auckland'), (b'Pacific/Enderbury', b'(GMT+1300) Pacific/Enderbury'), (b'Pacific/Fakaofo', b'(GMT+1300) Pacific/Fakaofo'), (b'Pacific/Fiji', b'(GMT+1300) Pacific/Fiji'), (b'Pacific/Tongatapu', b'(GMT+1300) Pacific/Tongatapu'), (b'Pacific/Chatham', b'(GMT+1345) Pacific/Chatham'), (b'Pacific/Apia', b'(GMT+1400) Pacific/Apia'), (b'Pacific/Kiritimati', b'(GMT+1400) Pacific/Kiritimati')])),
],
options={
},
@@ -159,7 +159,7 @@
bases=(models.Model,),
),
migrations.CreateModel(
- name='ControllerNetworks',
+ name='ControllerNetwork',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
@@ -211,7 +211,24 @@
bases=(models.Model,),
),
migrations.CreateModel(
- name='ControllerSlices',
+ name='ControllerSite',
+ fields=[
+ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+ ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
+ ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
+ ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
+ ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
+ ('deleted', models.BooleanField(default=False)),
+ ('tenant_id', models.CharField(help_text=b'Keystone tenant id', max_length=200, null=True, db_index=True, blank=True)),
+ ('controller', models.ForeignKey(related_name=b'controllersite', blank=True, to='core.Controller', null=True)),
+ ],
+ options={
+ 'abstract': False,
+ },
+ bases=(models.Model,),
+ ),
+ migrations.CreateModel(
+ name='ControllerSlice',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
@@ -220,7 +237,7 @@
('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
('deleted', models.BooleanField(default=False)),
('tenant_id', models.CharField(help_text=b'Keystone tenant id', max_length=200, null=True, blank=True)),
- ('controller', models.ForeignKey(related_name=b'controllerslices', to='core.Controller')),
+ ('controller', models.ForeignKey(related_name=b'controllerslice', to='core.Controller')),
],
options={
'abstract': False,
@@ -228,7 +245,7 @@
bases=(models.Model,),
),
migrations.CreateModel(
- name='ControllerUsers',
+ name='ControllerUser',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
@@ -399,11 +416,11 @@
('subnet', models.CharField(max_length=32, blank=True)),
('ports', models.CharField(blank=True, max_length=1024, null=True, validators=[core.models.network.ValidateNatList])),
('labels', models.CharField(max_length=1024, null=True, blank=True)),
- ('guaranteedBandwidth', models.IntegerField(default=0)),
- ('permitAllSlices', models.BooleanField(default=False)),
- ('topologyParameters', models.TextField(null=True, blank=True)),
- ('controllerUrl', models.CharField(max_length=1024, null=True, blank=True)),
- ('controllerParameters', models.TextField(null=True, blank=True)),
+ ('guaranteed_bandwidth', models.IntegerField(default=0)),
+ ('permit_all_slices', models.BooleanField(default=False)),
+ ('topology_parameters', models.TextField(null=True, blank=True)),
+ ('controller_url', models.CharField(max_length=1024, null=True, blank=True)),
+ ('controller_parameters', models.TextField(null=True, blank=True)),
('network_id', models.CharField(help_text=b'Quantum network', max_length=256, null=True, blank=True)),
('router_id', models.CharField(help_text=b'Quantum router id', max_length=256, null=True, blank=True)),
('subnet_id', models.CharField(help_text=b'Quantum subnet id', max_length=256, null=True, blank=True)),
@@ -493,13 +510,13 @@
('deleted', models.BooleanField(default=False)),
('name', models.CharField(max_length=32)),
('description', models.CharField(max_length=1024, null=True, blank=True)),
- ('guaranteedBandwidth', models.IntegerField(default=0)),
+ ('guaranteed_bandwidth', models.IntegerField(default=0)),
('visibility', models.CharField(default=b'private', max_length=30, choices=[(b'public', b'public'), (b'private', b'private')])),
('translation', models.CharField(default=b'none', max_length=30, choices=[(b'none', b'none'), (b'NAT', b'NAT')])),
- ('sharedNetworkName', models.CharField(max_length=30, null=True, blank=True)),
- ('sharedNetworkId', models.CharField(help_text=b'Quantum network', max_length=256, null=True, blank=True)),
- ('topologyKind', models.CharField(default=b'BigSwitch', max_length=30, choices=[(b'bigswitch', b'BigSwitch'), (b'physical', b'Physical'), (b'custom', b'Custom')])),
- ('controllerKind', models.CharField(default=None, max_length=30, null=True, blank=True, choices=[(None, b'None'), (b'onos', b'ONOS'), (b'custom', b'Custom')])),
+ ('shared_network_name', models.CharField(max_length=30, null=True, blank=True)),
+ ('shared_network_id', models.CharField(help_text=b'Quantum network', max_length=256, null=True, blank=True)),
+ ('topology_kind', models.CharField(default=b'BigSwitch', max_length=30, choices=[(b'bigswitch', b'BigSwitch'), (b'physical', b'Physical'), (b'custom', b'Custom')])),
+ ('controller_kind', models.CharField(default=None, max_length=30, null=True, blank=True, choices=[(None, b'None'), (b'onos', b'ONOS'), (b'custom', b'Custom')])),
],
options={
'abstract': False,
@@ -804,7 +821,7 @@
bases=(models.Model,),
),
migrations.CreateModel(
- name='SiteDeployments',
+ name='SiteDeployment',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
@@ -812,11 +829,10 @@
('enacted', models.DateTimeField(default=None, null=True, blank=True)),
('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
('deleted', models.BooleanField(default=False)),
- ('tenant_id', models.CharField(help_text=b'Keystone tenant id', max_length=200, null=True, blank=True)),
('availability_zone', models.CharField(help_text=b'OpenStack availability zone', max_length=200, null=True, blank=True)),
- ('controller', models.ForeignKey(related_name=b'sitedeployments', blank=True, to='core.Controller', null=True)),
- ('deployment', models.ForeignKey(related_name=b'sitedeployments', to='core.Deployment')),
- ('site', models.ForeignKey(related_name=b'sitedeployments', to='core.Site')),
+ ('controller', models.ForeignKey(related_name=b'sitedeployment', blank=True, to='core.Controller', null=True)),
+ ('deployment', models.ForeignKey(related_name=b'sitedeployment', to='core.Deployment')),
+ ('site', models.ForeignKey(related_name=b'sitedeployment', to='core.Site')),
],
options={
'abstract': False,
@@ -869,9 +885,9 @@
('description', models.TextField(help_text=b'High level description of the slice and expected activities', max_length=1024, blank=True)),
('slice_url', models.URLField(max_length=512, blank=True)),
('max_slivers', models.IntegerField(default=10)),
- ('imagePreference', models.CharField(default=b'Ubuntu 12.04 LTS', max_length=256, null=True, blank=True)),
('network', models.CharField(default=b'Private Only', max_length=256, null=True, blank=True)),
- ('mountDataSets', models.CharField(default=b'GenBank', max_length=256, null=True, blank=True)),
+ ('image_preference', models.CharField(default=b'Ubuntu 12.04 LTS', max_length=256, null=True, blank=True)),
+ ('mount_data_sets', models.CharField(default=b'GenBank', max_length=256, null=True, blank=True)),
('creator', models.ForeignKey(related_name=b'slices', blank=True, to=settings.AUTH_USER_MODEL, null=True)),
('service', models.ForeignKey(related_name=b'service', blank=True, to='core.Service', null=True)),
('serviceClass', models.ForeignKey(related_name=b'slices', default=core.models.serviceclass.get_default_serviceclass, to='core.ServiceClass', null=True)),
@@ -1089,7 +1105,7 @@
migrations.AddField(
model_name='site',
name='deployments',
- field=models.ManyToManyField(help_text=b'Select which sites are allowed to host nodes in this deployment', related_name=b'sites', through='core.SiteDeployments', to='core.Deployment', blank=True),
+ field=models.ManyToManyField(help_text=b'Select which sites are allowed to host nodes in this deployment', related_name=b'sites', through='core.SiteDeployment', to='core.Deployment', blank=True),
preserve_default=True,
),
migrations.AddField(
@@ -1137,7 +1153,7 @@
migrations.AddField(
model_name='node',
name='site_deployment',
- field=models.ForeignKey(related_name=b'nodes', to='core.SiteDeployments'),
+ field=models.ForeignKey(related_name=b'nodes', to='core.SiteDeployment'),
preserve_default=True,
),
migrations.AddField(
@@ -1166,7 +1182,7 @@
),
migrations.AddField(
model_name='network',
- name='permittedSlices',
+ name='permitted_slices',
field=models.ManyToManyField(related_name=b'availableNetworks', to='core.Slice', blank=True),
preserve_default=True,
),
@@ -1207,15 +1223,15 @@
preserve_default=True,
),
migrations.AddField(
- model_name='controllerslices',
+ model_name='controllerslice',
name='slice',
- field=models.ForeignKey(related_name=b'controllerslices', to='core.Slice'),
+ field=models.ForeignKey(related_name=b'controllerslice', to='core.Slice'),
preserve_default=True,
),
migrations.AddField(
- model_name='controllersitedeployments',
- name='site_deployment',
- field=models.ForeignKey(related_name=b'controllersitedeployments', to='core.SiteDeployments'),
+ model_name='controllersite',
+ name='site',
+ field=models.ForeignKey(related_name=b'controllersite', to='core.Site'),
preserve_default=True,
),
migrations.AddField(
@@ -1231,7 +1247,7 @@
preserve_default=True,
),
migrations.AddField(
- model_name='controllernetworks',
+ model_name='controllernetwork',
name='network',
field=models.ForeignKey(related_name=b'controllernetworks', to='core.Network'),
preserve_default=True,
diff --git a/planetstack/core/migrations/0002_network_field_case.py b/planetstack/core/migrations/0002_network_field_case.py
deleted file mode 100644
index aa94338..0000000
--- a/planetstack/core/migrations/0002_network_field_case.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.db import models, migrations
-import timezones.fields
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('core', '0001_initial'),
- ]
-
- operations = [
- migrations.RenameField(
- model_name='networktemplate',
- old_name='controllerKind',
- new_name='controller_kind',
- ),
- migrations.RenameField(
- model_name='networktemplate',
- old_name='guaranteedBandwidth',
- new_name='guaranteed_bandwidth',
- ),
- migrations.RenameField(
- model_name='networktemplate',
- old_name='sharedNetworkId',
- new_name='shared_network_id',
- ),
- migrations.RenameField(
- model_name='networktemplate',
- old_name='sharedNetworkName',
- new_name='shared_network_name',
- ),
- migrations.RenameField(
- model_name='networktemplate',
- old_name='topologyKind',
- new_name='topology_kind',
- ),
- ]
diff --git a/planetstack/core/migrations/0003_network_field_case.py b/planetstack/core/migrations/0003_network_field_case.py
deleted file mode 100644
index d063363..0000000
--- a/planetstack/core/migrations/0003_network_field_case.py
+++ /dev/null
@@ -1,45 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.db import models, migrations
-import timezones.fields
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('core', '0002_network_field_case'),
- ]
-
- operations = [
- migrations.RenameField(
- model_name='network',
- old_name='controllerParameters',
- new_name='controller_parameters',
- ),
- migrations.RenameField(
- model_name='network',
- old_name='controllerUrl',
- new_name='controller_url',
- ),
- migrations.RenameField(
- model_name='network',
- old_name='guaranteedBandwidth',
- new_name='guaranteed_bandwidth',
- ),
- migrations.RenameField(
- model_name='network',
- old_name='permitAllSlices',
- new_name='permit_all_slices',
- ),
- migrations.RenameField(
- model_name='network',
- old_name='permittedSlices',
- new_name='permitted_slices',
- ),
- migrations.RenameField(
- model_name='network',
- old_name='topologyParameters',
- new_name='topology_parameters',
- ),
- ]
diff --git a/planetstack/core/migrations/0004_slice_field_case.py b/planetstack/core/migrations/0004_slice_field_case.py
deleted file mode 100644
index 0b911b3..0000000
--- a/planetstack/core/migrations/0004_slice_field_case.py
+++ /dev/null
@@ -1,25 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.db import models, migrations
-import timezones.fields
-
-
-class Migration(migrations.Migration):
-
- dependencies = [
- ('core', '0003_network_field_case'),
- ]
-
- operations = [
- migrations.RenameField(
- model_name='slice',
- old_name='imagePreference',
- new_name='image_preference',
- ),
- migrations.RenameField(
- model_name='slice',
- old_name='mountDataSets',
- new_name='mount_data_sets',
- ),
- ]
diff --git a/planetstack/core/models/__init__.py b/planetstack/core/models/__init__.py
index 3a63602..79c6611 100644
--- a/planetstack/core/models/__init__.py
+++ b/planetstack/core/models/__init__.py
@@ -5,13 +5,13 @@
from .service import ServiceAttribute
from .tag import Tag
from .role import Role
-from .site import Site, Deployment, DeploymentRole, DeploymentPrivilege, Controller, ControllerRole, ControllerPrivilege, SiteDeployments
+from .site import Site, Deployment, DeploymentRole, DeploymentPrivilege, Controller, ControllerRole, ControllerPrivilege, ControllerSite, SiteDeployment
from .dashboard import DashboardView, ControllerDashboardView
from .user import User, UserDashboardView
from .serviceclass import ServiceClass
from .site import ControllerManager, ControllerDeletionManager, ControllerLinkManager,ControllerLinkDeletionManager
-from .slice import Slice, ControllerSlices
-from .controllerusers import ControllerUsers
+from .slice import Slice, ControllerSlice
+from .controlleruser import ControllerUser
from .image import Image, ImageDeployments, ControllerImages
from .node import Node
from .serviceresource import ServiceResource
@@ -26,6 +26,6 @@
from .sliver import Sliver
from .reservation import ReservedResource
from .reservation import Reservation
-from .network import Network, NetworkParameterType, NetworkParameter, NetworkSliver, NetworkTemplate, Router, NetworkSlice, ControllerNetworks
+from .network import Network, NetworkParameterType, NetworkParameter, NetworkSliver, NetworkTemplate, Router, NetworkSlice, ControllerNetwork
from .billing import Account, Invoice, Charge, UsableObject, Payment
diff --git a/planetstack/core/models/controllerusers.py b/planetstack/core/models/controlleruser.py
similarity index 84%
rename from planetstack/core/models/controllerusers.py
rename to planetstack/core/models/controlleruser.py
index 5a3568a..d0fda11 100644
--- a/planetstack/core/models/controllerusers.py
+++ b/planetstack/core/models/controlleruser.py
@@ -6,7 +6,7 @@
from core.models import PlCoreBase,User,Controller
from core.models import Controller,ControllerLinkManager,ControllerLinkDeletionManager
-class ControllerUsers(PlCoreBase):
+class ControllerUser(PlCoreBase):
objects = ControllerLinkManager()
deleted_objects = ControllerLinkDeletionManager()
@@ -19,8 +19,8 @@
@staticmethod
def select_by_user(user):
if user.is_admin:
- qs = ControllerUsers.objects.all()
+ qs = ControllerUser.objects.all()
else:
users = Users.select_by_user(user)
- qs = ControllerUsers.objects.filter(user__in=users)
+ qs = ControllerUser.objects.filter(user__in=users)
return qs
diff --git a/planetstack/core/models/network.py b/planetstack/core/models/network.py
index 554bbf5..cfaffc3 100644
--- a/planetstack/core/models/network.py
+++ b/planetstack/core/models/network.py
@@ -143,7 +143,7 @@
qs = Network.objects.filter(owner__in=slices)
return qs
-class ControllerNetworks(PlCoreBase):
+class ControllerNetwork(PlCoreBase):
objects = ControllerLinkManager()
deleted_objects = ControllerLinkDeletionManager()
diff --git a/planetstack/core/models/node.py b/planetstack/core/models/node.py
index 2ff503e..0884ec1 100644
--- a/planetstack/core/models/node.py
+++ b/planetstack/core/models/node.py
@@ -1,7 +1,7 @@
import os
from django.db import models
from core.models import PlCoreBase
-from core.models import SiteDeployments
+from core.models import SiteDeployment
from core.models import Tag
from django.contrib.contenttypes import generic
@@ -9,7 +9,7 @@
class Node(PlCoreBase):
name = models.CharField(max_length=200, unique=True, help_text="Name of the Node")
- site_deployment = models.ForeignKey(SiteDeployments, related_name='nodes')
+ site_deployment = models.ForeignKey(SiteDeployment, related_name='nodes')
tags = generic.GenericRelation(Tag)
def __unicode__(self): return u'%s' % (self.name)
diff --git a/planetstack/core/models/site.py b/planetstack/core/models/site.py
index 69863eb..6b1f3df 100644
--- a/planetstack/core/models/site.py
+++ b/planetstack/core/models/site.py
@@ -105,7 +105,7 @@
abbreviated_name = models.CharField(max_length=80)
#deployments = models.ManyToManyField('Deployment', blank=True, related_name='sites')
- deployments = models.ManyToManyField('Deployment', through='SiteDeployments', blank=True, help_text="Select which sites are allowed to host nodes in this deployment", related_name='sites')
+ deployments = models.ManyToManyField('Deployment', through='SiteDeployment', blank=True, help_text="Select which sites are allowed to host nodes in this deployment", related_name='sites')
tags = generic.GenericRelation(Tag)
def __unicode__(self): return u'%s' % (self.name)
@@ -308,14 +308,19 @@
def __unicode__(self): return u'%s %s %s' % (self.name, self.backend_type, self.version)
-class SiteDeployments(PlCoreBase):
+class SiteDeployment(PlCoreBase):
objects = ControllerLinkManager()
deleted_objects = ControllerLinkDeletionManager()
- site = models.ForeignKey(Site,related_name='sitedeployments')
- deployment = models.ForeignKey(Deployment,related_name='sitedeployments')
- controller = models.ForeignKey(Controller, null=True, blank=True, related_name='sitedeployments')
+ site = models.ForeignKey(Site,related_name='sitedeployment')
+ deployment = models.ForeignKey(Deployment,related_name='sitedeployment')
+ controller = models.ForeignKey(Controller, null=True, blank=True, related_name='sitedeployment')
availability_zone = models.CharField(max_length=200, null=True, blank=True, help_text="OpenStack availability zone")
- tenant_id = models.CharField(null=True, blank=True, max_length=200, db_index=True, help_text="Keystone tenant id")
def __unicode__(self): return u'%s %s' % (self.deployment, self.site)
+
+class ControllerSite(PlCoreBase):
+
+ site = models.ForeignKey(Site,related_name='controllersite')
+ controller = models.ForeignKey(Controller, null=True, blank=True, related_name='controllersite')
+ tenant_id = models.CharField(null=True, blank=True, max_length=200, db_index=True, help_text="Keystone tenant id")
diff --git a/planetstack/core/models/slice.py b/planetstack/core/models/slice.py
index 52a5dd6..e182388 100644
--- a/planetstack/core/models/slice.py
+++ b/planetstack/core/models/slice.py
@@ -94,7 +94,7 @@
nets = Network.objects.filter(slices=self)
nets.delete()
# delete slice controllers
- slice_controllers = ControllerSlices.objects.filter(slice=self)
+ slice_controllers = ControllerSlice.objects.filter(slice=self)
slice_controllers.delete()
# delete slice privilege
slice_privileges = SlicePrivilege.objects.filter(slice=self)
@@ -129,7 +129,7 @@
qs = SlicePrivilege.objects.filter(id__in=sp_ids)
return qs
-class ControllerSlices(PlCoreBase):
+class ControllerSlice(PlCoreBase):
objects = ControllerLinkManager()
deleted_objects = ControllerLinkDeletionManager()
@@ -142,10 +142,10 @@
@staticmethod
def select_by_user(user):
if user.is_admin:
- qs = ControllerSlices.objects.all()
+ qs = ControllerSlice.objects.all()
else:
slices = Slice.select_by_user(user)
- qs = ControllerSlices.objects.filter(slice__in=slices)
+ qs = ControllerSlice.objects.filter(slice__in=slices)
return qs
def get_cpu_stats(self):
diff --git a/planetstack/core/static/dashboardStatic.PNG b/planetstack/core/static/dashboardStatic.PNG
old mode 100755
new mode 100644
Binary files differ
diff --git a/planetstack/core/static/logo_opague_circles.png b/planetstack/core/static/logo_opague_circles.png
old mode 100755
new mode 100644
Binary files differ
diff --git a/planetstack/core/static/open-cloud-themed1.png b/planetstack/core/static/open-cloud-themed1.png
old mode 100755
new mode 100644
Binary files differ
diff --git a/planetstack/core/static/opencloudApp.png b/planetstack/core/static/opencloudApp.png
old mode 100755
new mode 100644
Binary files differ
diff --git a/planetstack/core/xoslib/static/js/xoslib/xos-backbone.js b/planetstack/core/xoslib/static/js/xoslib/xos-backbone.js
index 952dfb4..28fd72b 100644
--- a/planetstack/core/xoslib/static/js/xoslib/xos-backbone.js
+++ b/planetstack/core/xoslib/static/js/xoslib/xos-backbone.js
@@ -500,7 +500,7 @@
});
define_model(this, {urlRoot: SITEDEPLOYMENT_API,
- relatedCollections: {"controllerSiteDeployments": "site_deployment"},
+ relatedCollections: {"controllerSiteDeployment": "site_deployment"},
foreignCollections: ["sites", "deployments", "controllers"],
foreignFields: {"site": "sites", "deployment": "deployments", "controller": "controllers"},
modelName: "siteDeployment",
diff --git a/planetstack/core/xoslib/up.sh b/planetstack/core/xoslib/up.sh
old mode 100755
new mode 100644