0001_initial.py 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. # -*- coding: utf-8 -*-
  2. # Generated by Django 1.11.4 on 2017-08-16 21:06
  3. from __future__ import unicode_literals
  4. import dcim.fields
  5. from django.db import migrations, models
  6. import django.db.models.deletion
  7. import extras.models
  8. class Migration(migrations.Migration):
  9. initial = True
  10. dependencies = [
  11. ('tenancy', '0003_unicode_literals'),
  12. ('dcim', '0041_napalm_integration'),
  13. ('ipam', '0018_remove_service_uniqueness_constraint'),
  14. ]
  15. operations = [
  16. migrations.CreateModel(
  17. name='Cluster',
  18. fields=[
  19. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  20. ('created', models.DateField(auto_now_add=True)),
  21. ('last_updated', models.DateTimeField(auto_now=True)),
  22. ('name', models.CharField(max_length=100, unique=True)),
  23. ('comments', models.TextField(blank=True)),
  24. ],
  25. options={
  26. 'ordering': ['name'],
  27. },
  28. bases=(models.Model, extras.models.CustomFieldModel),
  29. ),
  30. migrations.CreateModel(
  31. name='ClusterGroup',
  32. fields=[
  33. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  34. ('name', models.CharField(max_length=50, unique=True)),
  35. ('slug', models.SlugField(unique=True)),
  36. ],
  37. options={
  38. 'ordering': ['name'],
  39. },
  40. ),
  41. migrations.CreateModel(
  42. name='ClusterType',
  43. fields=[
  44. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  45. ('name', models.CharField(max_length=50, unique=True)),
  46. ('slug', models.SlugField(unique=True)),
  47. ],
  48. options={
  49. 'ordering': ['name'],
  50. },
  51. ),
  52. migrations.CreateModel(
  53. name='VirtualMachine',
  54. fields=[
  55. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  56. ('created', models.DateField(auto_now_add=True)),
  57. ('last_updated', models.DateTimeField(auto_now=True)),
  58. ('name', models.CharField(max_length=64, unique=True)),
  59. ('vcpus', models.PositiveSmallIntegerField(blank=True, null=True, verbose_name='vCPUs')),
  60. ('memory', models.PositiveIntegerField(blank=True, null=True, verbose_name='Memory (MB)')),
  61. ('disk', models.PositiveIntegerField(blank=True, null=True, verbose_name='Disk (GB)')),
  62. ('comments', models.TextField(blank=True)),
  63. ('cluster', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='virtual_machines', to='virtualization.Cluster')),
  64. ('platform', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='virtual_machines', to='dcim.Platform')),
  65. ('primary_ip4', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='ipam.IPAddress', verbose_name='Primary IPv4')),
  66. ('primary_ip6', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='+', to='ipam.IPAddress', verbose_name='Primary IPv6')),
  67. ('tenant', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='virtual_machines', to='tenancy.Tenant')),
  68. ],
  69. options={
  70. 'ordering': ['name'],
  71. },
  72. bases=(models.Model, extras.models.CustomFieldModel),
  73. ),
  74. migrations.CreateModel(
  75. name='VMInterface',
  76. fields=[
  77. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  78. ('name', models.CharField(max_length=30)),
  79. ('enabled', models.BooleanField(default=True)),
  80. ('mac_address', dcim.fields.MACAddressField(blank=True, null=True, verbose_name='MAC Address')),
  81. ('mtu', models.PositiveSmallIntegerField(blank=True, null=True, verbose_name='MTU')),
  82. ('description', models.CharField(blank=True, max_length=100)),
  83. ('virtual_machine', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='interfaces', to='virtualization.VirtualMachine')),
  84. ],
  85. options={
  86. 'ordering': ['virtual_machine', 'name'],
  87. },
  88. ),
  89. migrations.AddField(
  90. model_name='cluster',
  91. name='group',
  92. field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='clusters', to='virtualization.ClusterGroup'),
  93. ),
  94. migrations.AddField(
  95. model_name='cluster',
  96. name='type',
  97. field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='clusters', to='virtualization.ClusterType'),
  98. ),
  99. migrations.AlterUniqueTogether(
  100. name='vminterface',
  101. unique_together=set([('virtual_machine', 'name')]),
  102. ),
  103. ]