root / flowspec / migrations / 0001_initial.py @ a3af8464
History | View | Annotate | Download (19.8 kB)
1 |
# encoding: utf-8
|
---|---|
2 |
import datetime |
3 |
from south.db import db |
4 |
from south.v2 import SchemaMigration |
5 |
from django.db import models |
6 |
|
7 |
class Migration(SchemaMigration): |
8 |
|
9 |
def forwards(self, orm): |
10 |
|
11 |
# Adding model 'MatchAddress'
|
12 |
db.create_table(u'match_address', (
|
13 |
('destination', self.gf('django.db.models.fields.CharField')(max_length=255)), |
14 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
15 |
)) |
16 |
db.send_create_signal('flowspec', ['MatchAddress']) |
17 |
|
18 |
# Adding model 'MatchPort'
|
19 |
db.create_table(u'match_port', (
|
20 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
21 |
('port', self.gf('django.db.models.fields.CharField')(max_length=24)), |
22 |
)) |
23 |
db.send_create_signal('flowspec', ['MatchPort']) |
24 |
|
25 |
# Adding model 'MatchDscp'
|
26 |
db.create_table(u'match_dscp', (
|
27 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
28 |
('dscp', self.gf('django.db.models.fields.CharField')(max_length=24)), |
29 |
)) |
30 |
db.send_create_signal('flowspec', ['MatchDscp']) |
31 |
|
32 |
# Adding model 'MatchFragmentType'
|
33 |
db.create_table(u'match_fragment_type', (
|
34 |
('fragmenttype', self.gf('django.db.models.fields.CharField')(max_length=20)), |
35 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
36 |
)) |
37 |
db.send_create_signal('flowspec', ['MatchFragmentType']) |
38 |
|
39 |
# Adding model 'MatchIcmpCode'
|
40 |
db.create_table(u'match_icmp_code', (
|
41 |
('icmp_code', self.gf('django.db.models.fields.CharField')(max_length=64)), |
42 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
43 |
)) |
44 |
db.send_create_signal('flowspec', ['MatchIcmpCode']) |
45 |
|
46 |
# Adding model 'MatchIcmpType'
|
47 |
db.create_table(u'match_icmp_type', (
|
48 |
('icmp_type', self.gf('django.db.models.fields.CharField')(max_length=64)), |
49 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
50 |
)) |
51 |
db.send_create_signal('flowspec', ['MatchIcmpType']) |
52 |
|
53 |
# Adding model 'MatchPacketLength'
|
54 |
db.create_table(u'match_packet_length', (
|
55 |
('packet_length', self.gf('django.db.models.fields.IntegerField')()), |
56 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
57 |
)) |
58 |
db.send_create_signal('flowspec', ['MatchPacketLength']) |
59 |
|
60 |
# Adding model 'MatchProtocol'
|
61 |
db.create_table(u'match_protocol', (
|
62 |
('protocol', self.gf('django.db.models.fields.CharField')(max_length=64)), |
63 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
64 |
)) |
65 |
db.send_create_signal('flowspec', ['MatchProtocol']) |
66 |
|
67 |
# Adding model 'MatchTcpFlag'
|
68 |
db.create_table(u'match_tcp_flag', (
|
69 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
70 |
('tcp_flag', self.gf('django.db.models.fields.CharField')(max_length=255)), |
71 |
)) |
72 |
db.send_create_signal('flowspec', ['MatchTcpFlag']) |
73 |
|
74 |
# Adding model 'ThenAction'
|
75 |
db.create_table(u'then_action', (
|
76 |
('action', self.gf('django.db.models.fields.CharField')(max_length=60)), |
77 |
('action_value', self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True)), |
78 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
79 |
)) |
80 |
db.send_create_signal('flowspec', ['ThenAction']) |
81 |
|
82 |
# Adding model 'ThenStatement'
|
83 |
db.create_table(u'then', (
|
84 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
85 |
)) |
86 |
db.send_create_signal('flowspec', ['ThenStatement']) |
87 |
|
88 |
# Adding M2M table for field thenaction on 'ThenStatement'
|
89 |
db.create_table(u'then_thenaction', (
|
90 |
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), |
91 |
('thenstatement', models.ForeignKey(orm['flowspec.thenstatement'], null=False)), |
92 |
('thenaction', models.ForeignKey(orm['flowspec.thenaction'], null=False)) |
93 |
)) |
94 |
db.create_unique(u'then_thenaction', ['thenstatement_id', 'thenaction_id']) |
95 |
|
96 |
# Adding model 'MatchStatement'
|
97 |
db.create_table(u'match', (
|
98 |
('matchfragmenttype', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchFragmentType'], null=True, blank=True)), |
99 |
('matchprotocol', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchProtocol'], null=True, blank=True)), |
100 |
('matchicmptype', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchIcmpType'], null=True, blank=True)), |
101 |
('matchSourcePort', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='matchSourcePort', null=True, to=orm['flowspec.MatchPort'])), |
102 |
('matchicmpcode', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchIcmpCode'], null=True, blank=True)), |
103 |
('matchTcpFlag', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchTcpFlag'], null=True, blank=True)), |
104 |
('matchDestination', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='matchDestination', null=True, to=orm['flowspec.MatchAddress'])), |
105 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
106 |
('matchpacketlength', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchPacketLength'], null=True, blank=True)), |
107 |
)) |
108 |
db.send_create_signal('flowspec', ['MatchStatement']) |
109 |
|
110 |
# Adding M2M table for field matchDestinationPort on 'MatchStatement'
|
111 |
db.create_table(u'match_matchDestinationPort', (
|
112 |
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), |
113 |
('matchstatement', models.ForeignKey(orm['flowspec.matchstatement'], null=False)), |
114 |
('matchport', models.ForeignKey(orm['flowspec.matchport'], null=False)) |
115 |
)) |
116 |
db.create_unique(u'match_matchDestinationPort', ['matchstatement_id', 'matchport_id']) |
117 |
|
118 |
# Adding M2M table for field matchSource on 'MatchStatement'
|
119 |
db.create_table(u'match_matchSource', (
|
120 |
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), |
121 |
('matchstatement', models.ForeignKey(orm['flowspec.matchstatement'], null=False)), |
122 |
('matchaddress', models.ForeignKey(orm['flowspec.matchaddress'], null=False)) |
123 |
)) |
124 |
db.create_unique(u'match_matchSource', ['matchstatement_id', 'matchaddress_id']) |
125 |
|
126 |
# Adding M2M table for field matchdscp on 'MatchStatement'
|
127 |
db.create_table(u'match_matchdscp', (
|
128 |
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), |
129 |
('matchstatement', models.ForeignKey(orm['flowspec.matchstatement'], null=False)), |
130 |
('matchdscp', models.ForeignKey(orm['flowspec.matchdscp'], null=False)) |
131 |
)) |
132 |
db.create_unique(u'match_matchdscp', ['matchstatement_id', 'matchdscp_id']) |
133 |
|
134 |
# Adding M2M table for field matchport on 'MatchStatement'
|
135 |
db.create_table(u'match_matchport', (
|
136 |
('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), |
137 |
('matchstatement', models.ForeignKey(orm['flowspec.matchstatement'], null=False)), |
138 |
('matchport', models.ForeignKey(orm['flowspec.matchport'], null=False)) |
139 |
)) |
140 |
db.create_unique(u'match_matchport', ['matchstatement_id', 'matchport_id']) |
141 |
|
142 |
# Adding model 'Route'
|
143 |
db.create_table(u'route', (
|
144 |
('then', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.ThenStatement'])), |
145 |
('last_updated', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), |
146 |
('name', self.gf('django.db.models.fields.CharField')(max_length=128)), |
147 |
('expires', self.gf('django.db.models.fields.DateTimeField')()), |
148 |
('applier', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'])), |
149 |
('filed', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), |
150 |
('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), |
151 |
('match', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['flowspec.MatchStatement'])), |
152 |
)) |
153 |
db.send_create_signal('flowspec', ['Route']) |
154 |
|
155 |
|
156 |
def backwards(self, orm): |
157 |
|
158 |
# Deleting model 'MatchAddress'
|
159 |
db.delete_table(u'match_address')
|
160 |
|
161 |
# Deleting model 'MatchPort'
|
162 |
db.delete_table(u'match_port')
|
163 |
|
164 |
# Deleting model 'MatchDscp'
|
165 |
db.delete_table(u'match_dscp')
|
166 |
|
167 |
# Deleting model 'MatchFragmentType'
|
168 |
db.delete_table(u'match_fragment_type')
|
169 |
|
170 |
# Deleting model 'MatchIcmpCode'
|
171 |
db.delete_table(u'match_icmp_code')
|
172 |
|
173 |
# Deleting model 'MatchIcmpType'
|
174 |
db.delete_table(u'match_icmp_type')
|
175 |
|
176 |
# Deleting model 'MatchPacketLength'
|
177 |
db.delete_table(u'match_packet_length')
|
178 |
|
179 |
# Deleting model 'MatchProtocol'
|
180 |
db.delete_table(u'match_protocol')
|
181 |
|
182 |
# Deleting model 'MatchTcpFlag'
|
183 |
db.delete_table(u'match_tcp_flag')
|
184 |
|
185 |
# Deleting model 'ThenAction'
|
186 |
db.delete_table(u'then_action')
|
187 |
|
188 |
# Deleting model 'ThenStatement'
|
189 |
db.delete_table(u'then')
|
190 |
|
191 |
# Removing M2M table for field thenaction on 'ThenStatement'
|
192 |
db.delete_table('then_thenaction')
|
193 |
|
194 |
# Deleting model 'MatchStatement'
|
195 |
db.delete_table(u'match')
|
196 |
|
197 |
# Removing M2M table for field matchDestinationPort on 'MatchStatement'
|
198 |
db.delete_table('match_matchDestinationPort')
|
199 |
|
200 |
# Removing M2M table for field matchSource on 'MatchStatement'
|
201 |
db.delete_table('match_matchSource')
|
202 |
|
203 |
# Removing M2M table for field matchdscp on 'MatchStatement'
|
204 |
db.delete_table('match_matchdscp')
|
205 |
|
206 |
# Removing M2M table for field matchport on 'MatchStatement'
|
207 |
db.delete_table('match_matchport')
|
208 |
|
209 |
# Deleting model 'Route'
|
210 |
db.delete_table(u'route')
|
211 |
|
212 |
|
213 |
models = { |
214 |
'auth.group': {
|
215 |
'Meta': {'object_name': 'Group'}, |
216 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
217 |
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), |
218 |
'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) |
219 |
}, |
220 |
'auth.permission': {
|
221 |
'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, |
222 |
'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), |
223 |
'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), |
224 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
225 |
'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) |
226 |
}, |
227 |
'auth.user': {
|
228 |
'Meta': {'object_name': 'User'}, |
229 |
'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), |
230 |
'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), |
231 |
'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), |
232 |
'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), |
233 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
234 |
'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}), |
235 |
'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), |
236 |
'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}), |
237 |
'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), |
238 |
'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), |
239 |
'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), |
240 |
'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), |
241 |
'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) |
242 |
}, |
243 |
'contenttypes.contenttype': {
|
244 |
'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, |
245 |
'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), |
246 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
247 |
'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), |
248 |
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) |
249 |
}, |
250 |
'flowspec.matchaddress': {
|
251 |
'Meta': {'object_name': 'MatchAddress', 'db_table': "u'match_address'"}, |
252 |
'destination': ('django.db.models.fields.CharField', [], {'max_length': '255'}), |
253 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) |
254 |
}, |
255 |
'flowspec.matchdscp': {
|
256 |
'Meta': {'object_name': 'MatchDscp', 'db_table': "u'match_dscp'"}, |
257 |
'dscp': ('django.db.models.fields.CharField', [], {'max_length': '24'}), |
258 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) |
259 |
}, |
260 |
'flowspec.matchfragmenttype': {
|
261 |
'Meta': {'object_name': 'MatchFragmentType', 'db_table': "u'match_fragment_type'"}, |
262 |
'fragmenttype': ('django.db.models.fields.CharField', [], {'max_length': '20'}), |
263 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) |
264 |
}, |
265 |
'flowspec.matchicmpcode': {
|
266 |
'Meta': {'object_name': 'MatchIcmpCode', 'db_table': "u'match_icmp_code'"}, |
267 |
'icmp_code': ('django.db.models.fields.CharField', [], {'max_length': '64'}), |
268 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) |
269 |
}, |
270 |
'flowspec.matchicmptype': {
|
271 |
'Meta': {'object_name': 'MatchIcmpType', 'db_table': "u'match_icmp_type'"}, |
272 |
'icmp_type': ('django.db.models.fields.CharField', [], {'max_length': '64'}), |
273 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) |
274 |
}, |
275 |
'flowspec.matchpacketlength': {
|
276 |
'Meta': {'object_name': 'MatchPacketLength', 'db_table': "u'match_packet_length'"}, |
277 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
278 |
'packet_length': ('django.db.models.fields.IntegerField', [], {}) |
279 |
}, |
280 |
'flowspec.matchport': {
|
281 |
'Meta': {'object_name': 'MatchPort', 'db_table': "u'match_port'"}, |
282 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
283 |
'port': ('django.db.models.fields.CharField', [], {'max_length': '24'}) |
284 |
}, |
285 |
'flowspec.matchprotocol': {
|
286 |
'Meta': {'object_name': 'MatchProtocol', 'db_table': "u'match_protocol'"}, |
287 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
288 |
'protocol': ('django.db.models.fields.CharField', [], {'max_length': '64'}) |
289 |
}, |
290 |
'flowspec.matchstatement': {
|
291 |
'Meta': {'object_name': 'MatchStatement', 'db_table': "u'match'"}, |
292 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
293 |
'matchDestination': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'matchDestination'", 'null': 'True', 'to': "orm['flowspec.MatchAddress']"}), |
294 |
'matchDestinationPort': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'matchDestinationPort'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['flowspec.MatchPort']"}), |
295 |
'matchSource': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'matchSource'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['flowspec.MatchAddress']"}), |
296 |
'matchSourcePort': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'matchSourcePort'", 'null': 'True', 'to': "orm['flowspec.MatchPort']"}), |
297 |
'matchTcpFlag': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchTcpFlag']", 'null': 'True', 'blank': 'True'}), |
298 |
'matchdscp': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['flowspec.MatchDscp']", 'null': 'True', 'blank': 'True'}), |
299 |
'matchfragmenttype': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchFragmentType']", 'null': 'True', 'blank': 'True'}), |
300 |
'matchicmpcode': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchIcmpCode']", 'null': 'True', 'blank': 'True'}), |
301 |
'matchicmptype': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchIcmpType']", 'null': 'True', 'blank': 'True'}), |
302 |
'matchpacketlength': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchPacketLength']", 'null': 'True', 'blank': 'True'}), |
303 |
'matchport': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['flowspec.MatchPort']", 'null': 'True', 'blank': 'True'}), |
304 |
'matchprotocol': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchProtocol']", 'null': 'True', 'blank': 'True'}) |
305 |
}, |
306 |
'flowspec.matchtcpflag': {
|
307 |
'Meta': {'object_name': 'MatchTcpFlag', 'db_table': "u'match_tcp_flag'"}, |
308 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
309 |
'tcp_flag': ('django.db.models.fields.CharField', [], {'max_length': '255'}) |
310 |
}, |
311 |
'flowspec.route': {
|
312 |
'Meta': {'object_name': 'Route', 'db_table': "u'route'"}, |
313 |
'applier': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']"}), |
314 |
'expires': ('django.db.models.fields.DateTimeField', [], {}), |
315 |
'filed': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), |
316 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
317 |
'last_updated': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), |
318 |
'match': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.MatchStatement']"}), |
319 |
'name': ('django.db.models.fields.CharField', [], {'max_length': '128'}), |
320 |
'then': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['flowspec.ThenStatement']"}) |
321 |
}, |
322 |
'flowspec.thenaction': {
|
323 |
'Meta': {'object_name': 'ThenAction', 'db_table': "u'then_action'"}, |
324 |
'action': ('django.db.models.fields.CharField', [], {'max_length': '60'}), |
325 |
'action_value': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}), |
326 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}) |
327 |
}, |
328 |
'flowspec.thenstatement': {
|
329 |
'Meta': {'object_name': 'ThenStatement', 'db_table': "u'then'"}, |
330 |
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), |
331 |
'thenaction': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['flowspec.ThenAction']", 'null': 'True', 'blank': 'True'}) |
332 |
} |
333 |
} |
334 |
|
335 |
complete_apps = ['flowspec']
|