1
# -*- coding: utf-8 -*-
4
from django.db import models
5
from south.db import db
6
from south.v2 import SchemaMigration
9
class Migration(SchemaMigration):
11
def forwards(self, orm):
12
# Deleting model 'Vlan'
13
db.delete_table(u'maasserver_vlan')
15
# Adding model 'Network'
16
db.create_table(u'maasserver_network', (
17
(u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
18
('name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)),
19
('ip', self.gf('django.db.models.fields.GenericIPAddressField')(unique=True, max_length=39)),
20
('netmask', self.gf('django.db.models.fields.GenericIPAddressField')(max_length=39)),
21
('vlan_tag', self.gf('django.db.models.fields.PositiveSmallIntegerField')(unique=True)),
22
('description', self.gf('django.db.models.fields.CharField')(default=u'', max_length=255, blank=True)),
24
db.send_create_signal(u'maasserver', ['Network'])
26
# Adding M2M table for field networks on 'Node'
27
db.create_table(u'maasserver_node_networks', (
28
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)),
29
('node', models.ForeignKey(orm[u'maasserver.node'], null=False)),
30
('network', models.ForeignKey(orm[u'maasserver.network'], null=False))
32
db.create_unique(u'maasserver_node_networks', ['node_id', 'network_id'])
35
def backwards(self, orm):
37
db.create_table(u'maasserver_vlan', (
38
('tag', self.gf('django.db.models.fields.PositiveSmallIntegerField')(unique=True)),
39
('description', self.gf('django.db.models.fields.CharField')(default=u'', max_length=255, blank=True)),
40
(u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
42
db.send_create_signal(u'maasserver', ['Vlan'])
44
# Deleting model 'Network'
45
db.delete_table(u'maasserver_network')
47
# Removing M2M table for field networks on 'Node'
48
db.delete_table('maasserver_node_networks')
53
'Meta': {'object_name': 'Group'},
54
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
55
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
56
'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
59
'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
60
'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
61
'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
62
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
63
'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
66
'Meta': {'object_name': 'User'},
67
'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
68
'email': ('django.db.models.fields.EmailField', [], {'unique': 'True', 'max_length': '75', 'blank': 'True'}),
69
'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
70
'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
71
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
72
'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
73
'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
74
'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
75
'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
76
'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
77
'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
78
'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
79
'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
81
u'contenttypes.contenttype': {
82
'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
83
'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
84
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
85
'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
86
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
88
u'maasserver.bootimage': {
89
'Meta': {'unique_together': "((u'nodegroup', u'architecture', u'subarchitecture', u'release', u'purpose'),)", 'object_name': 'BootImage'},
90
'architecture': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
91
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
92
'nodegroup': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.NodeGroup']"}),
93
'purpose': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
94
'release': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
95
'subarchitecture': ('django.db.models.fields.CharField', [], {'max_length': '255'})
97
u'maasserver.componenterror': {
98
'Meta': {'object_name': 'ComponentError'},
99
'component': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '40'}),
100
'created': ('django.db.models.fields.DateTimeField', [], {}),
101
'error': ('django.db.models.fields.CharField', [], {'max_length': '1000'}),
102
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
103
'updated': ('django.db.models.fields.DateTimeField', [], {})
105
u'maasserver.config': {
106
'Meta': {'object_name': 'Config'},
107
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
108
'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
109
'value': ('maasserver.fields.JSONObjectField', [], {'null': 'True'})
111
u'maasserver.dhcplease': {
112
'Meta': {'object_name': 'DHCPLease'},
113
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
114
'ip': ('django.db.models.fields.IPAddressField', [], {'unique': 'True', 'max_length': '15'}),
115
'mac': ('maasserver.fields.MACAddressField', [], {}),
116
'nodegroup': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.NodeGroup']"})
118
u'maasserver.downloadprogress': {
119
'Meta': {'object_name': 'DownloadProgress'},
120
'bytes_downloaded': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
121
'created': ('django.db.models.fields.DateTimeField', [], {}),
122
'error': ('django.db.models.fields.CharField', [], {'max_length': '1000', 'blank': 'True'}),
123
'filename': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
124
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
125
'nodegroup': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.NodeGroup']"}),
126
'size': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
127
'updated': ('django.db.models.fields.DateTimeField', [], {})
129
u'maasserver.filestorage': {
130
'Meta': {'unique_together': "((u'filename', u'owner'),)", 'object_name': 'FileStorage'},
131
'content': ('metadataserver.fields.BinaryField', [], {'blank': 'True'}),
132
'filename': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
133
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
134
'key': ('django.db.models.fields.CharField', [], {'default': "u'c9791474-8d7b-11e3-8453-9c4e363b1c94'", 'unique': 'True', 'max_length': '36'}),
135
'owner': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'})
137
u'maasserver.macaddress': {
138
'Meta': {'object_name': 'MACAddress'},
139
'created': ('django.db.models.fields.DateTimeField', [], {}),
140
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
141
'mac_address': ('maasserver.fields.MACAddressField', [], {'unique': 'True'}),
142
'node': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.Node']"}),
143
'updated': ('django.db.models.fields.DateTimeField', [], {})
145
u'maasserver.network': {
146
'Meta': {'object_name': 'Network'},
147
'description': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
148
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
149
'ip': ('django.db.models.fields.GenericIPAddressField', [], {'unique': 'True', 'max_length': '39'}),
150
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
151
'netmask': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
152
'vlan_tag': ('django.db.models.fields.PositiveSmallIntegerField', [], {'unique': 'True'})
154
u'maasserver.node': {
155
'Meta': {'object_name': 'Node'},
156
'after_commissioning_action': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
157
'agent_name': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'null': 'True', 'blank': 'True'}),
158
'architecture': ('django.db.models.fields.CharField', [], {'default': "u'i386/generic'", 'max_length': '31'}),
159
'cpu_count': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
160
'created': ('django.db.models.fields.DateTimeField', [], {}),
161
'distro_series': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '20', 'null': 'True', 'blank': 'True'}),
162
'error': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
163
'hostname': ('django.db.models.fields.CharField', [], {'default': "u''", 'unique': 'True', 'max_length': '255', 'blank': 'True'}),
164
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
165
'memory': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
166
'netboot': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
167
'networks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['maasserver.Network']", 'symmetrical': 'False', 'blank': 'True'}),
168
'nodegroup': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.NodeGroup']", 'null': 'True'}),
169
'owner': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
170
'power_parameters': ('maasserver.fields.JSONObjectField', [], {'default': "u''", 'blank': 'True'}),
171
'power_type': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '10', 'blank': 'True'}),
172
'routers': ('djorm_pgarray.fields.ArrayField', [], {'default': 'None', 'dbtype': "u'macaddr'", 'null': 'True', 'blank': 'True'}),
173
'status': ('django.db.models.fields.IntegerField', [], {'default': '0', 'max_length': '10'}),
174
'storage': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
175
'system_id': ('django.db.models.fields.CharField', [], {'default': "u'node-c97b5392-8d7b-11e3-8453-9c4e363b1c94'", 'unique': 'True', 'max_length': '41'}),
176
'tags': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['maasserver.Tag']", 'symmetrical': 'False'}),
177
'token': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['piston.Token']", 'null': 'True'}),
178
'updated': ('django.db.models.fields.DateTimeField', [], {}),
179
'zone': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.Zone']", 'on_delete': 'models.SET_DEFAULT'})
181
u'maasserver.nodegroup': {
182
'Meta': {'object_name': 'NodeGroup'},
183
'api_key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '18'}),
184
'api_token': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['piston.Token']", 'unique': 'True'}),
185
'cluster_name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100', 'blank': 'True'}),
186
'created': ('django.db.models.fields.DateTimeField', [], {}),
187
'dhcp_key': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
188
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
189
'maas_url': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
190
'name': ('django.db.models.fields.CharField', [], {'max_length': '80', 'blank': 'True'}),
191
'status': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
192
'updated': ('django.db.models.fields.DateTimeField', [], {}),
193
'uuid': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '36'})
195
u'maasserver.nodegroupinterface': {
196
'Meta': {'unique_together': "((u'nodegroup', u'interface'),)", 'object_name': 'NodeGroupInterface'},
197
'broadcast_ip': ('django.db.models.fields.GenericIPAddressField', [], {'default': 'None', 'max_length': '39', 'null': 'True', 'blank': 'True'}),
198
'created': ('django.db.models.fields.DateTimeField', [], {}),
199
'foreign_dhcp_ip': ('django.db.models.fields.GenericIPAddressField', [], {'default': 'None', 'max_length': '39', 'null': 'True', 'blank': 'True'}),
200
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
201
'interface': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
202
'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
203
'ip_range_high': ('django.db.models.fields.GenericIPAddressField', [], {'default': 'None', 'max_length': '39', 'null': 'True', 'blank': 'True'}),
204
'ip_range_low': ('django.db.models.fields.GenericIPAddressField', [], {'default': 'None', 'max_length': '39', 'null': 'True', 'blank': 'True'}),
205
'management': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
206
'nodegroup': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['maasserver.NodeGroup']"}),
207
'router_ip': ('django.db.models.fields.GenericIPAddressField', [], {'default': 'None', 'max_length': '39', 'null': 'True', 'blank': 'True'}),
208
'subnet_mask': ('django.db.models.fields.GenericIPAddressField', [], {'default': 'None', 'max_length': '39', 'null': 'True', 'blank': 'True'}),
209
'updated': ('django.db.models.fields.DateTimeField', [], {})
211
u'maasserver.sshkey': {
212
'Meta': {'unique_together': "((u'user', u'key'),)", 'object_name': 'SSHKey'},
213
'created': ('django.db.models.fields.DateTimeField', [], {}),
214
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
215
'key': ('django.db.models.fields.TextField', [], {}),
216
'updated': ('django.db.models.fields.DateTimeField', [], {}),
217
'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
220
'Meta': {'object_name': 'Tag'},
221
'comment': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
222
'created': ('django.db.models.fields.DateTimeField', [], {}),
223
'definition': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
224
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
225
'kernel_opts': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
226
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '256'}),
227
'updated': ('django.db.models.fields.DateTimeField', [], {})
229
u'maasserver.userprofile': {
230
'Meta': {'object_name': 'UserProfile'},
231
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
232
'user': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True'})
234
u'maasserver.zone': {
235
'Meta': {'ordering': "[u'name']", 'object_name': 'Zone'},
236
'created': ('django.db.models.fields.DateTimeField', [], {}),
237
'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
238
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
239
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '256'}),
240
'updated': ('django.db.models.fields.DateTimeField', [], {})
242
u'piston.consumer': {
243
'Meta': {'object_name': 'Consumer'},
244
'description': ('django.db.models.fields.TextField', [], {}),
245
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
246
'key': ('django.db.models.fields.CharField', [], {'max_length': '18'}),
247
'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
248
'secret': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
249
'status': ('django.db.models.fields.CharField', [], {'default': "'pending'", 'max_length': '16'}),
250
'user': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'consumers'", 'null': 'True', 'to': u"orm['auth.User']"})
253
'Meta': {'object_name': 'Token'},
254
'callback': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
255
'callback_confirmed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
256
'consumer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['piston.Consumer']"}),
257
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
258
'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
259
'key': ('django.db.models.fields.CharField', [], {'max_length': '18'}),
260
'secret': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
261
'timestamp': ('django.db.models.fields.IntegerField', [], {'default': '1391504854L'}),
262
'token_type': ('django.db.models.fields.IntegerField', [], {}),
263
'user': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'tokens'", 'null': 'True', 'to': u"orm['auth.User']"}),
264
'verifier': ('django.db.models.fields.CharField', [], {'max_length': '10'})
268
complete_apps = ['maasserver']
b'\\ No newline at end of file'