|
@@ -8,6 +8,14 @@ RACK_TYPE_CHOICES = (
|
|
|
(1100, 'wall-cabinet'),
|
|
(1100, 'wall-cabinet'),
|
|
|
)
|
|
)
|
|
|
|
|
|
|
|
|
|
+RACK_STATUS_CHOICES = (
|
|
|
|
|
+ (0, 'reserved'),
|
|
|
|
|
+ (1, 'available'),
|
|
|
|
|
+ (2, 'planned'),
|
|
|
|
|
+ (3, 'active'),
|
|
|
|
|
+ (4, 'deprecated'),
|
|
|
|
|
+)
|
|
|
|
|
+
|
|
|
|
|
|
|
|
def rack_type_to_slug(apps, schema_editor):
|
|
def rack_type_to_slug(apps, schema_editor):
|
|
|
Rack = apps.get_model('dcim', 'Rack')
|
|
Rack = apps.get_model('dcim', 'Rack')
|
|
@@ -15,14 +23,22 @@ def rack_type_to_slug(apps, schema_editor):
|
|
|
Rack.objects.filter(type=str(id)).update(type=slug)
|
|
Rack.objects.filter(type=str(id)).update(type=slug)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+def rack_status_to_slug(apps, schema_editor):
|
|
|
|
|
+ Rack = apps.get_model('dcim', 'Rack')
|
|
|
|
|
+ for id, slug in RACK_STATUS_CHOICES:
|
|
|
|
|
+ Rack.objects.filter(status=str(id)).update(status=slug)
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
class Migration(migrations.Migration):
|
|
class Migration(migrations.Migration):
|
|
|
atomic = False
|
|
atomic = False
|
|
|
|
|
|
|
|
dependencies = [
|
|
dependencies = [
|
|
|
- ('dcim', '0077_power_types'),
|
|
|
|
|
|
|
+ ('dcim', '0078_3569_site_fields'),
|
|
|
]
|
|
]
|
|
|
|
|
|
|
|
operations = [
|
|
operations = [
|
|
|
|
|
+
|
|
|
|
|
+ # Rack.type
|
|
|
migrations.AlterField(
|
|
migrations.AlterField(
|
|
|
model_name='rack',
|
|
model_name='rack',
|
|
|
name='type',
|
|
name='type',
|
|
@@ -36,4 +52,14 @@ class Migration(migrations.Migration):
|
|
|
name='type',
|
|
name='type',
|
|
|
field=models.CharField(blank=True, max_length=50),
|
|
field=models.CharField(blank=True, max_length=50),
|
|
|
),
|
|
),
|
|
|
|
|
+
|
|
|
|
|
+ # Rack.status
|
|
|
|
|
+ migrations.AlterField(
|
|
|
|
|
+ model_name='rack',
|
|
|
|
|
+ name='status',
|
|
|
|
|
+ field=models.CharField(default='active', max_length=50),
|
|
|
|
|
+ ),
|
|
|
|
|
+ migrations.RunPython(
|
|
|
|
|
+ code=rack_status_to_slug
|
|
|
|
|
+ ),
|
|
|
]
|
|
]
|