~ubuntu-branches/ubuntu/precise/maas/precise-security

« back to all changes in this revision

Viewing changes to src/metadataserver/migrations/0002_add_nodecommissionresult.py

  • Committer: Package Import Robot
  • Author(s): Andres Rodriguez, Scott Moser, Andres Rodriguez, Dave Walker (Daviey), Gavin Panella
  • Date: 2012-04-12 16:46:22 UTC
  • mfrom: (1.1.11)
  • Revision ID: package-import@ubuntu.com-20120412164622-u1qnsq0s9tsc2f14
Tags: 0.1+bzr462+dfsg-0ubuntu1
* New upstream release (LP: #980240)

[ Scott Moser ]
* add dependency on distro-info (LP: #949442)
* debian/control: add dependency on tgt for ephemeral iscsi environment

[ Andres Rodriguez ]
* Make package lintian clean:
  - maas{-dhcp}.lintian-overrides: Add to make lintian clean.
  - debian/control: Add missing dependencies; correct section and desc.
  - debian/maas.postinst: Do not use absolute path for rabbitmqctl.
  - debian/patches: Add headers to all patches.
* debian/maas-dhcp.postrm: Added to disable dnsmasq in cobbler on removal.
* debian/maas.config: Do not set a password with pwgen as it is not an
  essential package; allow dbconfig-common to create a password instead by
  creating an empty question. (LP: #977475)
* Run MAAS, pserv, txlongpoll as non-root user. (LP: #975436)
  - debian/maas.postinst: Create user/group; set correct permissions for
    directories.
  - debian/maas.postrm: Remove user/group; restart apache2.
  - debian/maas.maas-{pserv,txlongpoll}.upstart: Update to run as non-root
    'maas' user.
* debian/patches/01-fix-database-settings.patch: Remove adding of PSERV_URL.
* debian/maas.postinst:
  - Handle config file upgrade from versions lower than 0.1+bzr445+dfsg-0ubuntu1,
    by creating new passwords and updating accordingly
  - use local variables in functions.
  - Handle maas tgt configuration for upgrades from 0.1+bzr459+dfsg-0ubuntu1.
* debian/extras/99-maas: Add squid-deb-proxy file to enable PPAs. (LP: #979383)
* debian/maas.install: Install missing commissioning-user-data script.

[ Dave Walker (Daviey) ]
* debian/patches/02-pserv-config.patch: Refreshed to apply to updated config.

[ Gavin Panella ]
* debian/maas.postinst: Update pserv.yaml and maas_local_settings.py to use
  password.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# flake8: noqa
 
2
# SKIP this file when reformatting.
 
3
# The rest of this file was generated by South.
 
4
 
 
5
# encoding: utf-8
 
6
import datetime
 
7
 
 
8
from django.db import models
 
9
from south.db import db
 
10
from south.v2 import SchemaMigration
 
11
 
 
12
 
 
13
class Migration(SchemaMigration):
 
14
 
 
15
    def forwards(self, orm):
 
16
        
 
17
        # Adding model 'NodeCommissionResult'
 
18
        db.create_table('metadataserver_nodecommissionresult', (
 
19
            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
 
20
            ('node', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['maasserver.Node'])),
 
21
            ('name', self.gf('django.db.models.fields.CharField')(max_length=100)),
 
22
            ('data', self.gf('django.db.models.fields.CharField')(max_length=1048576)),
 
23
        ))
 
24
        db.send_create_signal('metadataserver', ['NodeCommissionResult'])
 
25
 
 
26
        # Adding unique constraint on 'NodeCommissionResult', fields ['node', 'name']
 
27
        db.create_unique('metadataserver_nodecommissionresult', ['node_id', 'name'])
 
28
 
 
29
 
 
30
    def backwards(self, orm):
 
31
        
 
32
        # Removing unique constraint on 'NodeCommissionResult', fields ['node', 'name']
 
33
        db.delete_unique('metadataserver_nodecommissionresult', ['node_id', 'name'])
 
34
 
 
35
        # Deleting model 'NodeCommissionResult'
 
36
        db.delete_table('metadataserver_nodecommissionresult')
 
37
 
 
38
 
 
39
    models = {
 
40
        'auth.group': {
 
41
            'Meta': {'object_name': 'Group'},
 
42
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
43
            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
 
44
            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
 
45
        },
 
46
        'auth.permission': {
 
47
            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
 
48
            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
 
49
            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
 
50
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
51
            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
 
52
        },
 
53
        'auth.user': {
 
54
            'Meta': {'object_name': 'User'},
 
55
            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
 
56
            'email': ('django.db.models.fields.EmailField', [], {'unique': 'True', 'max_length': '75', 'blank': 'True'}),
 
57
            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
 
58
            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
 
59
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
60
            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
 
61
            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
 
62
            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
 
63
            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
 
64
            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
 
65
            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
 
66
            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
 
67
            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
 
68
        },
 
69
        'contenttypes.contenttype': {
 
70
            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
 
71
            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
 
72
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
73
            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
 
74
            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
 
75
        },
 
76
        'maasserver.node': {
 
77
            'Meta': {'object_name': 'Node'},
 
78
            'after_commissioning_action': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
 
79
            'architecture': ('django.db.models.fields.CharField', [], {'default': "u'i386'", 'max_length': '10'}),
 
80
            'created': ('django.db.models.fields.DateField', [], {}),
 
81
            'error': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
 
82
            'hostname': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '255', 'blank': 'True'}),
 
83
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
84
            'owner': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}),
 
85
            'power_type': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '10', 'blank': 'True'}),
 
86
            'status': ('django.db.models.fields.IntegerField', [], {'default': '0', 'max_length': '10'}),
 
87
            'system_id': ('django.db.models.fields.CharField', [], {'default': "u'node-b9edb888-839c-11e1-965e-002215205ce8'", 'unique': 'True', 'max_length': '41'}),
 
88
            'token': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['piston.Token']", 'null': 'True'}),
 
89
            'updated': ('django.db.models.fields.DateTimeField', [], {})
 
90
        },
 
91
        'metadataserver.nodecommissionresult': {
 
92
            'Meta': {'unique_together': "((u'node', u'name'),)", 'object_name': 'NodeCommissionResult'},
 
93
            'data': ('django.db.models.fields.CharField', [], {'max_length': '1048576'}),
 
94
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
95
            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
 
96
            'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['maasserver.Node']"})
 
97
        },
 
98
        'metadataserver.nodekey': {
 
99
            'Meta': {'object_name': 'NodeKey'},
 
100
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
101
            'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '18'}),
 
102
            'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['maasserver.Node']", 'unique': 'True'}),
 
103
            'token': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['piston.Token']", 'unique': 'True'})
 
104
        },
 
105
        'metadataserver.nodeuserdata': {
 
106
            'Meta': {'object_name': 'NodeUserData'},
 
107
            'data': ('metadataserver.fields.BinaryField', [], {}),
 
108
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
109
            'node': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['maasserver.Node']", 'unique': 'True'})
 
110
        },
 
111
        'piston.consumer': {
 
112
            'Meta': {'object_name': 'Consumer'},
 
113
            'description': ('django.db.models.fields.TextField', [], {}),
 
114
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
115
            'key': ('django.db.models.fields.CharField', [], {'max_length': '18'}),
 
116
            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
 
117
            'secret': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
 
118
            'status': ('django.db.models.fields.CharField', [], {'default': "'pending'", 'max_length': '16'}),
 
119
            'user': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'consumers'", 'null': 'True', 'to': "orm['auth.User']"})
 
120
        },
 
121
        'piston.token': {
 
122
            'Meta': {'object_name': 'Token'},
 
123
            'callback': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
 
124
            'callback_confirmed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
 
125
            'consumer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['piston.Consumer']"}),
 
126
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
 
127
            'is_approved': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
 
128
            'key': ('django.db.models.fields.CharField', [], {'max_length': '18'}),
 
129
            'secret': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
 
130
            'timestamp': ('django.db.models.fields.IntegerField', [], {'default': '1334124495L'}),
 
131
            'token_type': ('django.db.models.fields.IntegerField', [], {}),
 
132
            'user': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'tokens'", 'null': 'True', 'to': "orm['auth.User']"}),
 
133
            'verifier': ('django.db.models.fields.CharField', [], {'max_length': '10'})
 
134
        }
 
135
    }
 
136
 
 
137
    complete_apps = ['metadataserver']