blob: 8e1ec7645787e7b1d494dd29e1103469bf29861c [file] [log] [blame]
Tony Mackfea49972014-12-25 19:17:54 -05001# -*- coding: utf-8 -*-
2from __future__ import unicode_literals
3
4from django.db import models, migrations
5import timezones.fields
6import core.models.sliver
7import core.models.network
8import geoposition.fields
9import encrypted_fields.fields
10import core.models.serviceclass
11import django.utils.timezone
12from django.conf import settings
13
14
15class Migration(migrations.Migration):
16
17 dependencies = [
18 ('contenttypes', '0001_initial'),
19 ]
20
21 operations = [
22 migrations.CreateModel(
23 name='User',
24 fields=[
25 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
26 ('password', models.CharField(max_length=128, verbose_name='password')),
27 ('last_login', models.DateTimeField(default=django.utils.timezone.now, verbose_name='last login')),
28 ('email', models.EmailField(unique=True, max_length=255, verbose_name=b'email address', db_index=True)),
29 ('username', models.CharField(default=b'Something', max_length=255)),
30 ('firstname', models.CharField(help_text=b"person's given name", max_length=200)),
31 ('lastname', models.CharField(help_text=b"person's surname", max_length=200)),
32 ('phone', models.CharField(help_text=b'phone number contact', max_length=100, null=True, blank=True)),
33 ('user_url', models.URLField(null=True, blank=True)),
34 ('public_key', models.TextField(help_text=b'Public key string', max_length=1024, null=True, blank=True)),
35 ('is_active', models.BooleanField(default=True)),
36 ('is_admin', models.BooleanField(default=True)),
37 ('is_staff', models.BooleanField(default=True)),
38 ('is_readonly', models.BooleanField(default=False)),
39 ('created', models.DateTimeField(auto_now_add=True)),
40 ('updated', models.DateTimeField(auto_now=True)),
41 ('enacted', models.DateTimeField(default=None, null=True)),
42 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
43 ('deleted', models.BooleanField(default=False)),
44 ('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')])),
45 ],
46 options={
47 },
48 bases=(models.Model,),
49 ),
50 migrations.CreateModel(
51 name='Account',
52 fields=[
53 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
54 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
55 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
56 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
57 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
58 ('deleted', models.BooleanField(default=False)),
59 ],
60 options={
61 'abstract': False,
62 },
63 bases=(models.Model,),
64 ),
65 migrations.CreateModel(
66 name='Charge',
67 fields=[
68 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
69 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
70 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
71 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
72 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
73 ('deleted', models.BooleanField(default=False)),
74 ('kind', models.CharField(default=b'besteffort', max_length=30, choices=[(b'besteffort', b'besteffort'), (b'reservation', b'reservation'), (b'monthlyfee', b'monthlyfee')])),
75 ('state', models.CharField(default=b'pending', max_length=30, choices=[(b'pending', b'pending'), (b'invoiced', b'invoiced')])),
76 ('date', models.DateTimeField()),
77 ('amount', models.FloatField(default=0.0)),
78 ('coreHours', models.FloatField(default=0.0)),
79 ('account', models.ForeignKey(related_name=b'charges', to='core.Account')),
80 ],
81 options={
82 'abstract': False,
83 },
84 bases=(models.Model,),
85 ),
86 migrations.CreateModel(
87 name='Controller',
88 fields=[
89 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
90 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
91 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
92 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
93 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
94 ('deleted', models.BooleanField(default=False)),
95 ('name', models.CharField(help_text=b'Name of the Controller', unique=True, max_length=200)),
96 ('version', models.CharField(help_text=b'Controller version', unique=True, max_length=200)),
97 ('backend_type', models.CharField(help_text=b'Type of compute controller, e.g. EC2, OpenStack, or OpenStack version', max_length=200, null=True, blank=True)),
98 ('auth_url', models.CharField(help_text=b'Auth url for the compute controller', max_length=200, null=True, blank=True)),
99 ('admin_user', models.CharField(help_text=b'Username of an admin user at this controller', max_length=200, null=True, blank=True)),
100 ('admin_password', models.CharField(help_text=b'Password of theadmin user at this controller', max_length=200, null=True, blank=True)),
101 ('admin_tenant', models.CharField(help_text=b'Name of the tenant the admin user belongs to', max_length=200, null=True, blank=True)),
102 ],
103 options={
104 'abstract': False,
105 },
106 bases=(models.Model,),
107 ),
108 migrations.CreateModel(
109 name='ControllerCredential',
110 fields=[
111 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
112 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
113 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
114 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
115 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
116 ('deleted', models.BooleanField(default=False)),
117 ('name', models.SlugField(help_text=b'The credential type, e.g. ec2', max_length=128)),
118 ('key_id', models.CharField(help_text=b'The backend id of this credential', max_length=1024)),
119 ('enc_value', encrypted_fields.fields.EncryptedCharField(help_text=b'The key value of this credential', max_length=1024)),
120 ('controller', models.ForeignKey(related_name=b'controllercredentials', to='core.Controller', help_text=b'The User this credential is associated with')),
121 ],
122 options={
123 'abstract': False,
124 },
125 bases=(models.Model,),
126 ),
127 migrations.CreateModel(
128 name='ControllerDashboardView',
129 fields=[
130 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
131 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
132 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
133 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
134 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
135 ('deleted', models.BooleanField(default=False)),
136 ('url', models.CharField(help_text=b'URL of Dashboard', max_length=1024)),
137 ('controller', models.ForeignKey(related_name=b'controllerdashboardviews', to='core.Controller')),
138 ],
139 options={
140 'abstract': False,
141 },
142 bases=(models.Model,),
143 ),
144 migrations.CreateModel(
145 name='ControllerImages',
146 fields=[
147 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
148 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
149 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
150 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
151 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
152 ('deleted', models.BooleanField(default=False)),
153 ('glance_image_id', models.CharField(help_text=b'Glance image id', max_length=200, null=True, blank=True)),
154 ('controller', models.ForeignKey(related_name=b'controllerimages', to='core.Controller')),
155 ],
156 options={
157 'abstract': False,
158 },
159 bases=(models.Model,),
160 ),
161 migrations.CreateModel(
162 name='ControllerNetworks',
163 fields=[
164 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
165 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
166 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
167 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
168 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
169 ('deleted', models.BooleanField(default=False)),
170 ('net_id', models.CharField(help_text=b'Quantum network', max_length=256, null=True, blank=True)),
171 ('router_id', models.CharField(help_text=b'Quantum router id', max_length=256, null=True, blank=True)),
172 ('subnet_id', models.CharField(help_text=b'Quantum subnet id', max_length=256, null=True, blank=True)),
173 ('subnet', models.CharField(max_length=32, blank=True)),
174 ('controller', models.ForeignKey(related_name=b'controllernetworks', to='core.Controller')),
175 ],
176 options={
177 'abstract': False,
178 },
179 bases=(models.Model,),
180 ),
181 migrations.CreateModel(
182 name='ControllerPrivilege',
183 fields=[
184 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
185 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
186 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
187 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
188 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
189 ('deleted', models.BooleanField(default=False)),
190 ('controller', models.ForeignKey(related_name=b'controllerprivileges', to='core.Controller')),
191 ],
192 options={
193 'abstract': False,
194 },
195 bases=(models.Model,),
196 ),
197 migrations.CreateModel(
198 name='ControllerRole',
199 fields=[
200 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
201 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
202 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
203 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
204 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
205 ('deleted', models.BooleanField(default=False)),
206 ('role', models.CharField(unique=True, max_length=30, choices=[(b'admin', b'Admin')])),
207 ],
208 options={
209 'abstract': False,
210 },
211 bases=(models.Model,),
212 ),
213 migrations.CreateModel(
Tony Mackfea49972014-12-25 19:17:54 -0500214 name='ControllerSlices',
215 fields=[
216 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
217 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
218 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
219 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
220 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
221 ('deleted', models.BooleanField(default=False)),
222 ('tenant_id', models.CharField(help_text=b'Keystone tenant id', max_length=200, null=True, blank=True)),
223 ('controller', models.ForeignKey(related_name=b'controllerslices', to='core.Controller')),
224 ],
225 options={
226 'abstract': False,
227 },
228 bases=(models.Model,),
229 ),
230 migrations.CreateModel(
231 name='ControllerUsers',
232 fields=[
233 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
234 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
235 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
236 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
237 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
238 ('deleted', models.BooleanField(default=False)),
239 ('kuser_id', models.CharField(help_text=b'Keystone user id', max_length=200, null=True, blank=True)),
240 ('controller', models.ForeignKey(related_name=b'controllersusers', to='core.Controller')),
241 ('user', models.ForeignKey(related_name=b'controllerusers', to=settings.AUTH_USER_MODEL)),
242 ],
243 options={
244 'abstract': False,
245 },
246 bases=(models.Model,),
247 ),
248 migrations.CreateModel(
249 name='DashboardView',
250 fields=[
251 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
252 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
253 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
254 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
255 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
256 ('deleted', models.BooleanField(default=False)),
257 ('name', models.CharField(help_text=b'Name of the View', unique=True, max_length=200)),
258 ('url', models.CharField(help_text=b'URL of Dashboard', max_length=1024)),
259 ('controllers', models.ManyToManyField(related_name=b'dashboardviews', through='core.ControllerDashboardView', to='core.Controller', blank=True)),
260 ],
261 options={
262 'abstract': False,
263 },
264 bases=(models.Model,),
265 ),
266 migrations.CreateModel(
267 name='Deployment',
268 fields=[
269 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
270 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
271 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
272 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
273 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
274 ('deleted', models.BooleanField(default=False)),
275 ('name', models.CharField(help_text=b'Name of the Deployment', unique=True, max_length=200)),
276 ('accessControl', models.TextField(default=b'allow all', help_text=b'Access control list that specifies which sites/users may use nodes in this deployment', max_length=200)),
277 ],
278 options={
279 'abstract': False,
280 },
281 bases=(models.Model,),
282 ),
283 migrations.CreateModel(
284 name='DeploymentPrivilege',
285 fields=[
286 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
287 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
288 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
289 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
290 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
291 ('deleted', models.BooleanField(default=False)),
292 ('deployment', models.ForeignKey(related_name=b'deploymentprivileges', to='core.Deployment')),
293 ],
294 options={
295 'abstract': False,
296 },
297 bases=(models.Model,),
298 ),
299 migrations.CreateModel(
300 name='DeploymentRole',
301 fields=[
302 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
303 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
304 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
305 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
306 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
307 ('deleted', models.BooleanField(default=False)),
308 ('role', models.CharField(unique=True, max_length=30, choices=[(b'admin', b'Admin')])),
309 ],
310 options={
311 'abstract': False,
312 },
313 bases=(models.Model,),
314 ),
315 migrations.CreateModel(
316 name='Flavor',
317 fields=[
318 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
319 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
320 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
321 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
322 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
323 ('deleted', models.BooleanField(default=False)),
324 ('name', models.CharField(help_text=b'name of this flavor, as displayed to users', max_length=32)),
325 ('description', models.CharField(max_length=1024, null=True, blank=True)),
326 ('flavor', models.CharField(help_text=b'flavor string used to configure deployments', max_length=32)),
327 ('order', models.IntegerField(default=0, help_text=b'used to order flavors when displayed in a list')),
328 ('default', models.BooleanField(default=False, help_text=b'make this a default flavor to use when creating new instances')),
329 ('deployments', models.ManyToManyField(related_name=b'flavors', to='core.Deployment', blank=True)),
330 ],
331 options={
332 'ordering': ('order', 'name'),
333 },
334 bases=(models.Model,),
335 ),
336 migrations.CreateModel(
337 name='Image',
338 fields=[
339 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
340 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
341 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
342 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
343 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
344 ('deleted', models.BooleanField(default=False)),
345 ('name', models.CharField(unique=True, max_length=256)),
346 ('disk_format', models.CharField(max_length=256)),
347 ('container_format', models.CharField(max_length=256)),
348 ('path', models.CharField(help_text=b'Path to image on local disk', max_length=256, null=True, blank=True)),
349 ],
350 options={
351 'abstract': False,
352 },
353 bases=(models.Model,),
354 ),
355 migrations.CreateModel(
356 name='ImageDeployments',
357 fields=[
358 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
359 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
360 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
361 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
362 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
363 ('deleted', models.BooleanField(default=False)),
364 ('deployment', models.ForeignKey(related_name=b'imagedeployments', to='core.Deployment')),
365 ('image', models.ForeignKey(related_name=b'imagedeployments', to='core.Image')),
366 ],
367 options={
368 'abstract': False,
369 },
370 bases=(models.Model,),
371 ),
372 migrations.CreateModel(
373 name='Invoice',
374 fields=[
375 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
376 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
377 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
378 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
379 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
380 ('deleted', models.BooleanField(default=False)),
381 ('date', models.DateTimeField()),
382 ('account', models.ForeignKey(related_name=b'invoices', to='core.Account')),
383 ],
384 options={
385 'abstract': False,
386 },
387 bases=(models.Model,),
388 ),
389 migrations.CreateModel(
390 name='Network',
391 fields=[
392 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
393 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
394 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
395 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
396 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
397 ('deleted', models.BooleanField(default=False)),
398 ('name', models.CharField(max_length=32)),
399 ('subnet', models.CharField(max_length=32, blank=True)),
400 ('ports', models.CharField(blank=True, max_length=1024, null=True, validators=[core.models.network.ValidateNatList])),
401 ('labels', models.CharField(max_length=1024, null=True, blank=True)),
402 ('guaranteedBandwidth', models.IntegerField(default=0)),
403 ('permitAllSlices', models.BooleanField(default=False)),
404 ('topologyParameters', models.TextField(null=True, blank=True)),
405 ('controllerUrl', models.CharField(max_length=1024, null=True, blank=True)),
406 ('controllerParameters', models.TextField(null=True, blank=True)),
407 ('network_id', models.CharField(help_text=b'Quantum network', max_length=256, null=True, blank=True)),
408 ('router_id', models.CharField(help_text=b'Quantum router id', max_length=256, null=True, blank=True)),
409 ('subnet_id', models.CharField(help_text=b'Quantum subnet id', max_length=256, null=True, blank=True)),
410 ],
411 options={
412 'abstract': False,
413 },
414 bases=(models.Model,),
415 ),
416 migrations.CreateModel(
417 name='NetworkParameter',
418 fields=[
419 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
420 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
421 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
422 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
423 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
424 ('deleted', models.BooleanField(default=False)),
425 ('value', models.CharField(help_text=b'The value of this parameter', max_length=1024)),
426 ('object_id', models.PositiveIntegerField()),
427 ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
428 ],
429 options={
430 'abstract': False,
431 },
432 bases=(models.Model,),
433 ),
434 migrations.CreateModel(
435 name='NetworkParameterType',
436 fields=[
437 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
438 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
439 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
440 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
441 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
442 ('deleted', models.BooleanField(default=False)),
443 ('name', models.SlugField(help_text=b'The name of this parameter', max_length=128)),
444 ('description', models.CharField(max_length=1024)),
445 ],
446 options={
447 'abstract': False,
448 },
449 bases=(models.Model,),
450 ),
451 migrations.CreateModel(
452 name='NetworkSlice',
453 fields=[
454 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
455 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
456 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
457 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
458 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
459 ('deleted', models.BooleanField(default=False)),
460 ('network', models.ForeignKey(related_name=b'networkslices', to='core.Network')),
461 ],
462 options={
463 'abstract': False,
464 },
465 bases=(models.Model,),
466 ),
467 migrations.CreateModel(
468 name='NetworkSliver',
469 fields=[
470 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
471 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
472 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
473 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
474 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
475 ('deleted', models.BooleanField(default=False)),
476 ('ip', models.GenericIPAddressField(help_text=b'Sliver ip address', null=True, blank=True)),
477 ('port_id', models.CharField(help_text=b'Quantum port id', max_length=256, null=True, blank=True)),
478 ('network', models.ForeignKey(related_name=b'networkslivers', to='core.Network')),
479 ],
480 options={
481 'abstract': False,
482 },
483 bases=(models.Model,),
484 ),
485 migrations.CreateModel(
486 name='NetworkTemplate',
487 fields=[
488 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
489 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
490 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
491 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
492 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
493 ('deleted', models.BooleanField(default=False)),
494 ('name', models.CharField(max_length=32)),
495 ('description', models.CharField(max_length=1024, null=True, blank=True)),
496 ('guaranteedBandwidth', models.IntegerField(default=0)),
497 ('visibility', models.CharField(default=b'private', max_length=30, choices=[(b'public', b'public'), (b'private', b'private')])),
498 ('translation', models.CharField(default=b'none', max_length=30, choices=[(b'none', b'none'), (b'NAT', b'NAT')])),
499 ('sharedNetworkName', models.CharField(max_length=30, null=True, blank=True)),
500 ('sharedNetworkId', models.CharField(help_text=b'Quantum network', max_length=256, null=True, blank=True)),
501 ('topologyKind', models.CharField(default=b'BigSwitch', max_length=30, choices=[(b'bigswitch', b'BigSwitch'), (b'physical', b'Physical'), (b'custom', b'Custom')])),
502 ('controllerKind', models.CharField(default=None, max_length=30, null=True, blank=True, choices=[(None, b'None'), (b'onos', b'ONOS'), (b'custom', b'Custom')])),
503 ],
504 options={
505 'abstract': False,
506 },
507 bases=(models.Model,),
508 ),
509 migrations.CreateModel(
510 name='Node',
511 fields=[
512 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
513 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
514 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
515 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
516 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
517 ('deleted', models.BooleanField(default=False)),
518 ('name', models.CharField(help_text=b'Name of the Node', unique=True, max_length=200)),
519 ],
520 options={
521 'abstract': False,
522 },
523 bases=(models.Model,),
524 ),
525 migrations.CreateModel(
526 name='Payment',
527 fields=[
528 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
529 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
530 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
531 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
532 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
533 ('deleted', models.BooleanField(default=False)),
534 ('amount', models.FloatField(default=0.0)),
535 ('date', models.DateTimeField(default=django.utils.timezone.now)),
536 ('account', models.ForeignKey(related_name=b'payments', to='core.Account')),
537 ],
538 options={
539 'abstract': False,
540 },
541 bases=(models.Model,),
542 ),
543 migrations.CreateModel(
544 name='PlanetStack',
545 fields=[
546 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
547 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
548 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
549 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
550 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
551 ('deleted', models.BooleanField(default=False)),
552 ('description', models.CharField(default=b'PlanetStack', help_text=b'Used for scoping of roles at the PlanetStack Application level', unique=True, max_length=200)),
553 ],
554 options={
555 'verbose_name_plural': 'PlanetStack',
556 },
557 bases=(models.Model,),
558 ),
559 migrations.CreateModel(
560 name='PlanetStackPrivilege',
561 fields=[
562 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
563 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
564 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
565 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
566 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
567 ('deleted', models.BooleanField(default=False)),
568 ('planetstack', models.ForeignKey(related_name=b'planetstackprivileges', default=1, to='core.PlanetStack')),
569 ],
570 options={
571 'abstract': False,
572 },
573 bases=(models.Model,),
574 ),
575 migrations.CreateModel(
576 name='PlanetStackRole',
577 fields=[
578 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
579 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
580 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
581 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
582 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
583 ('deleted', models.BooleanField(default=False)),
584 ('role', models.CharField(unique=True, max_length=30, choices=[(b'admin', b'Admin')])),
585 ],
586 options={
587 'abstract': False,
588 },
589 bases=(models.Model,),
590 ),
591 migrations.CreateModel(
592 name='Project',
593 fields=[
594 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
595 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
596 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
597 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
598 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
599 ('deleted', models.BooleanField(default=False)),
600 ('name', models.CharField(help_text=b'Name of Project', unique=True, max_length=200)),
601 ],
602 options={
603 'abstract': False,
604 },
605 bases=(models.Model,),
606 ),
607 migrations.CreateModel(
608 name='Reservation',
609 fields=[
610 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
611 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
612 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
613 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
614 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
615 ('deleted', models.BooleanField(default=False)),
616 ('startTime', models.DateTimeField()),
617 ('duration', models.IntegerField(default=1)),
618 ],
619 options={
620 'abstract': False,
621 },
622 bases=(models.Model,),
623 ),
624 migrations.CreateModel(
625 name='ReservedResource',
626 fields=[
627 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
628 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
629 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
630 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
631 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
632 ('deleted', models.BooleanField(default=False)),
633 ('quantity', models.IntegerField(default=1)),
634 ('reservationSet', models.ForeignKey(related_name=b'reservedresources', to='core.Reservation')),
635 ],
636 options={
637 'abstract': False,
638 'verbose_name_plural': 'Reserved Resources',
639 },
640 bases=(models.Model,),
641 ),
642 migrations.CreateModel(
643 name='Role',
644 fields=[
645 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
646 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
647 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
648 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
649 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
650 ('deleted', models.BooleanField(default=False)),
651 ('role_type', models.CharField(max_length=80, verbose_name=b'Name')),
652 ('role', models.CharField(max_length=80, null=True, verbose_name=b'Keystone role id', blank=True)),
653 ('description', models.CharField(max_length=120, verbose_name=b'Description')),
654 ('content_type', models.ForeignKey(verbose_name=b'Role Scope', to='contenttypes.ContentType')),
655 ],
656 options={
657 'abstract': False,
658 },
659 bases=(models.Model,),
660 ),
661 migrations.CreateModel(
662 name='Router',
663 fields=[
664 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
665 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
666 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
667 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
668 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
669 ('deleted', models.BooleanField(default=False)),
670 ('name', models.CharField(max_length=32)),
671 ('networks', models.ManyToManyField(related_name=b'routers', to='core.Network', blank=True)),
672 ],
673 options={
674 'abstract': False,
675 },
676 bases=(models.Model,),
677 ),
678 migrations.CreateModel(
679 name='Service',
680 fields=[
681 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
682 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
683 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
684 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
685 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
686 ('deleted', models.BooleanField(default=False)),
687 ('description', models.TextField(help_text=b'Description of Service', max_length=254, null=True, blank=True)),
688 ('enabled', models.BooleanField(default=True)),
689 ('name', models.CharField(help_text=b'Service Name', max_length=30)),
690 ('versionNumber', models.CharField(help_text=b'Version of Service Definition', max_length=30)),
691 ('published', models.BooleanField(default=True)),
692 ],
693 options={
694 'abstract': False,
695 },
696 bases=(models.Model,),
697 ),
698 migrations.CreateModel(
699 name='ServiceAttribute',
700 fields=[
701 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
702 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
703 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
704 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
705 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
706 ('deleted', models.BooleanField(default=False)),
707 ('name', models.SlugField(help_text=b'Attribute Name', max_length=128)),
708 ('value', models.CharField(help_text=b'Attribute Value', max_length=1024)),
709 ('service', models.ForeignKey(related_name=b'serviceattributes', to='core.Service', help_text=b'The Service this attribute is associated with')),
710 ],
711 options={
712 'abstract': False,
713 },
714 bases=(models.Model,),
715 ),
716 migrations.CreateModel(
717 name='ServiceClass',
718 fields=[
719 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
720 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
721 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
722 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
723 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
724 ('deleted', models.BooleanField(default=False)),
725 ('name', models.CharField(max_length=32)),
726 ('description', models.CharField(max_length=255)),
727 ('commitment', models.IntegerField(default=365)),
728 ('membershipFee', models.IntegerField(default=0)),
729 ('membershipFeeMonths', models.IntegerField(default=12)),
730 ('upgradeRequiresApproval', models.BooleanField(default=False)),
731 ('upgradeFrom', models.ManyToManyField(related_name='upgradeFrom_rel_+', null=True, to='core.ServiceClass', blank=True)),
732 ],
733 options={
734 'abstract': False,
735 'verbose_name_plural': 'Service classes',
736 },
737 bases=(models.Model,),
738 ),
739 migrations.CreateModel(
740 name='ServiceResource',
741 fields=[
742 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
743 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
744 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
745 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
746 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
747 ('deleted', models.BooleanField(default=False)),
748 ('name', models.CharField(max_length=32)),
749 ('maxUnitsDeployment', models.IntegerField(default=1)),
750 ('maxUnitsNode', models.IntegerField(default=1)),
751 ('maxDuration', models.IntegerField(default=1)),
752 ('bucketInRate', models.IntegerField(default=0)),
753 ('bucketMaxSize', models.IntegerField(default=0)),
754 ('cost', models.IntegerField(default=0)),
755 ('calendarReservable', models.BooleanField(default=True)),
756 ('serviceClass', models.ForeignKey(related_name=b'serviceresources', to='core.ServiceClass')),
757 ],
758 options={
759 'abstract': False,
760 },
761 bases=(models.Model,),
762 ),
763 migrations.CreateModel(
764 name='Site',
765 fields=[
766 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
767 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
768 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
769 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
770 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
771 ('deleted', models.BooleanField(default=False)),
772 ('name', models.CharField(help_text=b'Name for this Site', max_length=200)),
773 ('site_url', models.URLField(help_text=b"Site's Home URL Page", max_length=512, null=True, blank=True)),
774 ('enabled', models.BooleanField(default=True, help_text=b'Status for this Site')),
775 ('location', geoposition.fields.GeopositionField(max_length=42)),
776 ('longitude', models.FloatField(null=True, blank=True)),
777 ('latitude', models.FloatField(null=True, blank=True)),
778 ('login_base', models.CharField(help_text=b'Prefix for Slices associated with this Site', unique=True, max_length=50)),
779 ('is_public', models.BooleanField(default=True, help_text=b'Indicates the visibility of this site to other members')),
780 ('abbreviated_name', models.CharField(max_length=80)),
781 ],
782 options={
783 'abstract': False,
784 },
785 bases=(models.Model,),
786 ),
787 migrations.CreateModel(
788 name='SiteCredential',
789 fields=[
790 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
791 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
792 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
793 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
794 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
795 ('deleted', models.BooleanField(default=False)),
796 ('name', models.SlugField(help_text=b'The credential type, e.g. ec2', max_length=128)),
797 ('key_id', models.CharField(help_text=b'The backend id of this credential', max_length=1024)),
798 ('enc_value', encrypted_fields.fields.EncryptedCharField(help_text=b'The key value of this credential', max_length=1024)),
799 ('site', models.ForeignKey(related_name=b'sitecredentials', to='core.Site', help_text=b'The User this credential is associated with')),
800 ],
801 options={
802 'abstract': False,
803 },
804 bases=(models.Model,),
805 ),
806 migrations.CreateModel(
807 name='SiteDeployments',
808 fields=[
809 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
810 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
811 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
812 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
813 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
814 ('deleted', models.BooleanField(default=False)),
Tony Mack7f542c62015-01-03 17:26:06 -0500815 ('tenant_id', models.CharField(help_text=b'Keystone tenant id', max_length=200, null=True, blank=True)),
Tony Mackfea49972014-12-25 19:17:54 -0500816 ('availability_zone', models.CharField(help_text=b'OpenStack availability zone', max_length=200, null=True, blank=True)),
817 ('controller', models.ForeignKey(related_name=b'sitedeployments', blank=True, to='core.Controller', null=True)),
818 ('deployment', models.ForeignKey(related_name=b'sitedeployments', to='core.Deployment')),
819 ('site', models.ForeignKey(related_name=b'sitedeployments', to='core.Site')),
820 ],
821 options={
822 'abstract': False,
823 },
824 bases=(models.Model,),
825 ),
826 migrations.CreateModel(
827 name='SitePrivilege',
828 fields=[
829 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
830 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
831 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
832 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
833 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
834 ('deleted', models.BooleanField(default=False)),
835 ],
836 options={
837 'abstract': False,
838 },
839 bases=(models.Model,),
840 ),
841 migrations.CreateModel(
842 name='SiteRole',
843 fields=[
844 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
845 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
846 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
847 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
848 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
849 ('deleted', models.BooleanField(default=False)),
850 ('role', models.CharField(unique=True, max_length=30, choices=[(b'admin', b'Admin'), (b'pi', b'PI'), (b'tech', b'Tech'), (b'billing', b'Billing')])),
851 ],
852 options={
853 'abstract': False,
854 },
855 bases=(models.Model,),
856 ),
857 migrations.CreateModel(
858 name='Slice',
859 fields=[
860 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
861 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
862 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
863 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
864 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
865 ('deleted', models.BooleanField(default=False)),
866 ('name', models.CharField(help_text=b'The Name of the Slice', unique=True, max_length=80)),
867 ('enabled', models.BooleanField(default=True, help_text=b'Status for this Slice')),
868 ('omf_friendly', models.BooleanField(default=False)),
869 ('description', models.TextField(help_text=b'High level description of the slice and expected activities', max_length=1024, blank=True)),
870 ('slice_url', models.URLField(max_length=512, blank=True)),
871 ('max_slivers', models.IntegerField(default=10)),
872 ('imagePreference', models.CharField(default=b'Ubuntu 12.04 LTS', max_length=256, null=True, blank=True)),
873 ('network', models.CharField(default=b'Private Only', max_length=256, null=True, blank=True)),
874 ('mountDataSets', models.CharField(default=b'GenBank', max_length=256, null=True, blank=True)),
875 ('creator', models.ForeignKey(related_name=b'slices', blank=True, to=settings.AUTH_USER_MODEL, null=True)),
876 ('service', models.ForeignKey(related_name=b'service', blank=True, to='core.Service', null=True)),
877 ('serviceClass', models.ForeignKey(related_name=b'slices', default=core.models.serviceclass.get_default_serviceclass, to='core.ServiceClass', null=True)),
878 ('site', models.ForeignKey(related_name=b'slices', to='core.Site', help_text=b'The Site this Slice belongs to')),
879 ],
880 options={
881 'abstract': False,
882 },
883 bases=(models.Model,),
884 ),
885 migrations.CreateModel(
886 name='SliceCredential',
887 fields=[
888 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
889 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
890 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
891 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
892 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
893 ('deleted', models.BooleanField(default=False)),
894 ('name', models.SlugField(help_text=b'The credential type, e.g. ec2', max_length=128)),
895 ('key_id', models.CharField(help_text=b'The backend id of this credential', max_length=1024)),
896 ('enc_value', encrypted_fields.fields.EncryptedCharField(help_text=b'The key value of this credential', max_length=1024)),
897 ('slice', models.ForeignKey(related_name=b'slicecredentials', to='core.Slice', help_text=b'The User this credential is associated with')),
898 ],
899 options={
900 'abstract': False,
901 },
902 bases=(models.Model,),
903 ),
904 migrations.CreateModel(
905 name='SlicePrivilege',
906 fields=[
907 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
908 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
909 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
910 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
911 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
912 ('deleted', models.BooleanField(default=False)),
913 ],
914 options={
915 'abstract': False,
916 },
917 bases=(models.Model,),
918 ),
919 migrations.CreateModel(
920 name='SliceRole',
921 fields=[
922 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
923 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
924 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
925 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
926 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
927 ('deleted', models.BooleanField(default=False)),
928 ('role', models.CharField(unique=True, max_length=30, choices=[(b'admin', b'Admin'), (b'default', b'Default')])),
929 ],
930 options={
931 'abstract': False,
932 },
933 bases=(models.Model,),
934 ),
935 migrations.CreateModel(
936 name='SliceTag',
937 fields=[
938 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
939 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
940 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
941 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
942 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
943 ('deleted', models.BooleanField(default=False)),
944 ('name', models.CharField(help_text=b'The name of this tag', max_length=30, choices=[(b'privatekey', b'Private Key'), (b'publickey', b'Public Key')])),
945 ('value', models.CharField(help_text=b'The value of this tag', max_length=1024)),
946 ('slice', models.ForeignKey(related_name=b'slicetags', to='core.Slice')),
947 ],
948 options={
949 'abstract': False,
950 },
951 bases=(models.Model,),
952 ),
953 migrations.CreateModel(
954 name='Sliver',
955 fields=[
956 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
957 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
958 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
959 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
960 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
961 ('deleted', models.BooleanField(default=False)),
962 ('instance_id', models.CharField(help_text=b'Nova instance id', max_length=200, null=True, blank=True)),
963 ('name', models.CharField(help_text=b'Sliver name', max_length=200)),
964 ('instance_name', models.CharField(help_text=b'OpenStack generated name', max_length=200, null=True, blank=True)),
965 ('ip', models.GenericIPAddressField(help_text=b'Sliver ip address', null=True, blank=True)),
966 ('numberCores', models.IntegerField(default=0, help_text=b'Number of cores for sliver', verbose_name=b'Number of Cores')),
967 ('userData', models.TextField(help_text=b'user_data passed to instance during creation', null=True, blank=True)),
Tony Mackfea49972014-12-25 19:17:54 -0500968 ('creator', models.ForeignKey(related_name=b'slivers', blank=True, to=settings.AUTH_USER_MODEL, null=True)),
Tony Mackbf6aa302014-12-26 13:38:02 -0500969 ('deployment', models.ForeignKey(related_name=b'sliver_deployment', verbose_name=b'deployment', to='core.Deployment')),
Tony Mackfea49972014-12-25 19:17:54 -0500970 ('flavor', models.ForeignKey(default=core.models.sliver.get_default_flavor, to='core.Flavor', help_text=b'Flavor of this instance')),
971 ('image', models.ForeignKey(related_name=b'slivers', to='core.Image')),
972 ('node', models.ForeignKey(related_name=b'slivers', to='core.Node')),
973 ('slice', models.ForeignKey(related_name=b'slivers', to='core.Slice')),
974 ],
975 options={
976 'abstract': False,
977 },
978 bases=(models.Model,),
979 ),
980 migrations.CreateModel(
981 name='Tag',
982 fields=[
983 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
984 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
985 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
986 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
987 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
988 ('deleted', models.BooleanField(default=False)),
989 ('name', models.SlugField(help_text=b'The name of this tag', max_length=128)),
990 ('value', models.CharField(help_text=b'The value of this tag', max_length=1024)),
991 ('object_id', models.PositiveIntegerField()),
992 ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
993 ('service', models.ForeignKey(related_name=b'tags', to='core.Service', help_text=b'The Service this Tag is associated with')),
994 ],
995 options={
996 'abstract': False,
997 },
998 bases=(models.Model,),
999 ),
1000 migrations.CreateModel(
1001 name='UsableObject',
1002 fields=[
1003 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
1004 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
1005 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
1006 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
1007 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
1008 ('deleted', models.BooleanField(default=False)),
1009 ('name', models.CharField(max_length=1024)),
1010 ],
1011 options={
1012 'abstract': False,
1013 },
1014 bases=(models.Model,),
1015 ),
1016 migrations.CreateModel(
1017 name='UserCredential',
1018 fields=[
1019 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
1020 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
1021 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
1022 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
1023 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
1024 ('deleted', models.BooleanField(default=False)),
1025 ('name', models.SlugField(help_text=b'The credential type, e.g. ec2', max_length=128)),
1026 ('key_id', models.CharField(help_text=b'The backend id of this credential', max_length=1024)),
1027 ('enc_value', encrypted_fields.fields.EncryptedCharField(help_text=b'The key value of this credential', max_length=1024)),
1028 ('user', models.ForeignKey(related_name=b'usercredentials', to=settings.AUTH_USER_MODEL, help_text=b'The User this credential is associated with')),
1029 ],
1030 options={
1031 'abstract': False,
1032 },
1033 bases=(models.Model,),
1034 ),
1035 migrations.CreateModel(
1036 name='UserDashboardView',
1037 fields=[
1038 ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
1039 ('created', models.DateTimeField(default=django.utils.timezone.now, auto_now_add=True)),
1040 ('updated', models.DateTimeField(default=django.utils.timezone.now, auto_now=True)),
1041 ('enacted', models.DateTimeField(default=None, null=True, blank=True)),
1042 ('backend_status', models.CharField(default=b'Provisioning in progress', max_length=140)),
1043 ('deleted', models.BooleanField(default=False)),
1044 ('order', models.IntegerField(default=0)),
1045 ('dashboardView', models.ForeignKey(related_name=b'userdashboardviews', to='core.DashboardView')),
1046 ('user', models.ForeignKey(related_name=b'userdashboardviews', to=settings.AUTH_USER_MODEL)),
1047 ],
1048 options={
1049 'abstract': False,
1050 },
1051 bases=(models.Model,),
1052 ),
1053 migrations.AddField(
1054 model_name='sliceprivilege',
1055 name='role',
1056 field=models.ForeignKey(related_name=b'sliceprivileges', to='core.SliceRole'),
1057 preserve_default=True,
1058 ),
1059 migrations.AddField(
1060 model_name='sliceprivilege',
1061 name='slice',
1062 field=models.ForeignKey(related_name=b'sliceprivileges', to='core.Slice'),
1063 preserve_default=True,
1064 ),
1065 migrations.AddField(
1066 model_name='sliceprivilege',
1067 name='user',
1068 field=models.ForeignKey(related_name=b'sliceprivileges', to=settings.AUTH_USER_MODEL),
1069 preserve_default=True,
1070 ),
1071 migrations.AddField(
1072 model_name='siteprivilege',
1073 name='role',
1074 field=models.ForeignKey(related_name=b'siteprivileges', to='core.SiteRole'),
1075 preserve_default=True,
1076 ),
1077 migrations.AddField(
1078 model_name='siteprivilege',
1079 name='site',
1080 field=models.ForeignKey(related_name=b'siteprivileges', to='core.Site'),
1081 preserve_default=True,
1082 ),
1083 migrations.AddField(
1084 model_name='siteprivilege',
1085 name='user',
1086 field=models.ForeignKey(related_name=b'siteprivileges', to=settings.AUTH_USER_MODEL),
1087 preserve_default=True,
1088 ),
1089 migrations.AddField(
1090 model_name='site',
1091 name='deployments',
1092 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),
1093 preserve_default=True,
1094 ),
1095 migrations.AddField(
1096 model_name='router',
1097 name='owner',
1098 field=models.ForeignKey(related_name=b'routers', to='core.Slice'),
1099 preserve_default=True,
1100 ),
1101 migrations.AddField(
1102 model_name='router',
1103 name='permittedNetworks',
1104 field=models.ManyToManyField(related_name=b'availableRouters', to='core.Network', blank=True),
1105 preserve_default=True,
1106 ),
1107 migrations.AddField(
1108 model_name='reservedresource',
1109 name='resource',
1110 field=models.ForeignKey(related_name=b'reservedresources', to='core.ServiceResource'),
1111 preserve_default=True,
1112 ),
1113 migrations.AddField(
1114 model_name='reservedresource',
1115 name='sliver',
1116 field=models.ForeignKey(related_name=b'reservedresources', to='core.Sliver'),
1117 preserve_default=True,
1118 ),
1119 migrations.AddField(
1120 model_name='reservation',
1121 name='slice',
1122 field=models.ForeignKey(related_name=b'reservations', to='core.Slice'),
1123 preserve_default=True,
1124 ),
1125 migrations.AddField(
1126 model_name='planetstackprivilege',
1127 name='role',
1128 field=models.ForeignKey(to='core.PlanetStackRole'),
1129 preserve_default=True,
1130 ),
1131 migrations.AddField(
1132 model_name='planetstackprivilege',
1133 name='user',
1134 field=models.ForeignKey(related_name=b'planetstackprivileges', to=settings.AUTH_USER_MODEL),
1135 preserve_default=True,
1136 ),
1137 migrations.AddField(
1138 model_name='node',
1139 name='site_deployment',
1140 field=models.ForeignKey(related_name=b'nodes', to='core.SiteDeployments'),
1141 preserve_default=True,
1142 ),
1143 migrations.AddField(
1144 model_name='networksliver',
1145 name='sliver',
1146 field=models.ForeignKey(related_name=b'networkslivers', to='core.Sliver'),
1147 preserve_default=True,
1148 ),
1149 migrations.AddField(
1150 model_name='networkslice',
1151 name='slice',
1152 field=models.ForeignKey(related_name=b'networkslices', to='core.Slice'),
1153 preserve_default=True,
1154 ),
1155 migrations.AddField(
1156 model_name='networkparameter',
1157 name='parameter',
1158 field=models.ForeignKey(related_name=b'networkparameters', to='core.NetworkParameterType', help_text=b'The type of the parameter'),
1159 preserve_default=True,
1160 ),
1161 migrations.AddField(
1162 model_name='network',
1163 name='owner',
1164 field=models.ForeignKey(related_name=b'ownedNetworks', to='core.Slice', help_text=b'Slice that owns control of this Network'),
1165 preserve_default=True,
1166 ),
1167 migrations.AddField(
1168 model_name='network',
1169 name='permittedSlices',
1170 field=models.ManyToManyField(related_name=b'availableNetworks', to='core.Slice', blank=True),
1171 preserve_default=True,
1172 ),
1173 migrations.AddField(
1174 model_name='network',
1175 name='slices',
1176 field=models.ManyToManyField(related_name=b'networks', through='core.NetworkSlice', to='core.Slice', blank=True),
1177 preserve_default=True,
1178 ),
1179 migrations.AddField(
1180 model_name='network',
1181 name='slivers',
1182 field=models.ManyToManyField(related_name=b'networks', through='core.NetworkSliver', to='core.Sliver', blank=True),
1183 preserve_default=True,
1184 ),
1185 migrations.AddField(
1186 model_name='network',
1187 name='template',
1188 field=models.ForeignKey(to='core.NetworkTemplate'),
1189 preserve_default=True,
1190 ),
1191 migrations.AddField(
1192 model_name='image',
1193 name='deployments',
1194 field=models.ManyToManyField(help_text=b'Select which images should be instantiated on this deployment', related_name=b'images', through='core.ImageDeployments', to='core.Deployment', blank=True),
1195 preserve_default=True,
1196 ),
1197 migrations.AddField(
1198 model_name='deploymentprivilege',
1199 name='role',
1200 field=models.ForeignKey(related_name=b'deploymentprivileges', to='core.DeploymentRole'),
1201 preserve_default=True,
1202 ),
1203 migrations.AddField(
1204 model_name='deploymentprivilege',
1205 name='user',
1206 field=models.ForeignKey(related_name=b'deploymentprivileges', to=settings.AUTH_USER_MODEL),
1207 preserve_default=True,
1208 ),
1209 migrations.AddField(
1210 model_name='controllerslices',
1211 name='slice',
1212 field=models.ForeignKey(related_name=b'controllerslices', to='core.Slice'),
1213 preserve_default=True,
1214 ),
1215 migrations.AddField(
1216 model_name='controllersitedeployments',
1217 name='site_deployment',
1218 field=models.ForeignKey(related_name=b'controllersitedeployments', to='core.SiteDeployments'),
1219 preserve_default=True,
1220 ),
1221 migrations.AddField(
1222 model_name='controllerprivilege',
1223 name='role',
1224 field=models.ForeignKey(related_name=b'controllerprivileges', to='core.ControllerRole'),
1225 preserve_default=True,
1226 ),
1227 migrations.AddField(
1228 model_name='controllerprivilege',
1229 name='user',
1230 field=models.ForeignKey(related_name=b'controllerprivileges', to=settings.AUTH_USER_MODEL),
1231 preserve_default=True,
1232 ),
1233 migrations.AddField(
1234 model_name='controllernetworks',
1235 name='network',
1236 field=models.ForeignKey(related_name=b'controllernetworks', to='core.Network'),
1237 preserve_default=True,
1238 ),
1239 migrations.AddField(
1240 model_name='controllerimages',
1241 name='image',
1242 field=models.ForeignKey(related_name=b'controllerimages', to='core.Image'),
1243 preserve_default=True,
1244 ),
1245 migrations.AddField(
1246 model_name='controllerdashboardview',
1247 name='dashboardView',
1248 field=models.ForeignKey(related_name=b'controllerdashboardviews', to='core.DashboardView'),
1249 preserve_default=True,
1250 ),
1251 migrations.AddField(
1252 model_name='charge',
1253 name='invoice',
1254 field=models.ForeignKey(related_name=b'charges', blank=True, to='core.Invoice', null=True),
1255 preserve_default=True,
1256 ),
1257 migrations.AddField(
1258 model_name='charge',
1259 name='object',
1260 field=models.ForeignKey(to='core.UsableObject'),
1261 preserve_default=True,
1262 ),
1263 migrations.AddField(
1264 model_name='charge',
1265 name='slice',
1266 field=models.ForeignKey(related_name=b'charges', blank=True, to='core.Slice', null=True),
1267 preserve_default=True,
1268 ),
1269 migrations.AddField(
1270 model_name='account',
1271 name='site',
1272 field=models.ForeignKey(related_name=b'accounts', to='core.Site', help_text=b'Site for this account'),
1273 preserve_default=True,
1274 ),
1275 migrations.AddField(
1276 model_name='user',
1277 name='dashboards',
1278 field=models.ManyToManyField(to='core.DashboardView', through='core.UserDashboardView', blank=True),
1279 preserve_default=True,
1280 ),
1281 migrations.AddField(
1282 model_name='user',
1283 name='site',
1284 field=models.ForeignKey(related_name=b'users', to='core.Site', help_text=b'Site this user will be homed too', null=True),
1285 preserve_default=True,
1286 ),
1287 ]