Coverage for crunch/migrations/0001_initial.py: 100.00%
9 statements
« prev ^ index » next coverage.py v6.5.0, created at 2023-10-01 13:43 +0000
« prev ^ index » next coverage.py v6.5.0, created at 2023-10-01 13:43 +0000
1# Generated by Django 3.2.12 on 2022-03-20 04:37
3from django.conf import settings
4from django.db import migrations, models
5import django.db.models.deletion
6import django_extensions.db.fields
7import polymorphic_tree.models
10class Migration(migrations.Migration):
12 initial = True
14 dependencies = [
15 ('contenttypes', '0002_remove_content_type_name'),
16 migrations.swappable_dependency(settings.AUTH_USER_MODEL),
17 ]
19 operations = [
20 migrations.CreateModel(
21 name='Attribute',
22 fields=[
23 ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
24 ('created', django_extensions.db.fields.CreationDateTimeField(auto_now_add=True, verbose_name='created')),
25 ('modified', django_extensions.db.fields.ModificationDateTimeField(auto_now=True, verbose_name='modified')),
26 ('key', models.CharField(max_length=255)),
27 ('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_crunch.attribute_set+', to='contenttypes.contenttype')),
28 ],
29 options={
30 'abstract': False,
31 },
32 ),
33 migrations.CreateModel(
34 name='Item',
35 fields=[
36 ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
37 ('created', django_extensions.db.fields.CreationDateTimeField(auto_now_add=True, verbose_name='created')),
38 ('modified', django_extensions.db.fields.ModificationDateTimeField(auto_now=True, verbose_name='modified')),
39 ('name', models.CharField(max_length=1023, unique=True)),
40 ('description', models.CharField(blank=True, default='', help_text='A short description in a sentence or more of this item.', max_length=1023)),
41 ('details', models.TextField(blank=True, default='', help_text='A detailed description of this item (written in Markdown).')),
42 ('slug', django_extensions.db.fields.AutoSlugField(blank=True, editable=False, populate_from='name', unique=True)),
43 ('lft', models.PositiveIntegerField(editable=False)),
44 ('rght', models.PositiveIntegerField(editable=False)),
45 ('tree_id', models.PositiveIntegerField(db_index=True, editable=False)),
46 ('level', models.PositiveIntegerField(editable=False)),
47 ('parent', polymorphic_tree.models.PolymorphicTreeForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='children', to='crunch.item')),
48 ('polymorphic_ctype', models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_crunch.item_set+', to='contenttypes.contenttype')),
49 ],
50 options={
51 'ordering': ('tree_id', 'lft'),
52 'abstract': False,
53 'base_manager_name': 'objects',
54 'unique_together': {('parent', 'slug')},
55 },
56 ),
57 migrations.CreateModel(
58 name='CharAttribute',
59 fields=[
60 ('attribute_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.attribute')),
61 ('value', models.CharField(max_length=1023)),
62 ],
63 options={
64 'abstract': False,
65 },
66 bases=('crunch.attribute',),
67 ),
68 migrations.CreateModel(
69 name='Dataset',
70 fields=[
71 ('item_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.item')),
72 ],
73 options={
74 'abstract': False,
75 },
76 bases=('crunch.item',),
77 ),
78 migrations.CreateModel(
79 name='DateTimeAttribute',
80 fields=[
81 ('attribute_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.attribute')),
82 ('value', models.DateTimeField()),
83 ],
84 options={
85 'abstract': False,
86 },
87 bases=('crunch.attribute',),
88 ),
89 migrations.CreateModel(
90 name='FloatAttribute',
91 fields=[
92 ('attribute_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.attribute')),
93 ('value', models.FloatField()),
94 ],
95 options={
96 'abstract': False,
97 },
98 bases=('crunch.attribute',),
99 ),
100 migrations.CreateModel(
101 name='IntegerAttribute',
102 fields=[
103 ('attribute_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.attribute')),
104 ('value', models.IntegerField()),
105 ],
106 options={
107 'abstract': False,
108 },
109 bases=('crunch.attribute',),
110 ),
111 migrations.CreateModel(
112 name='LatLongAttribute',
113 fields=[
114 ('attribute_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.attribute')),
115 ('latitude', models.DecimalField(decimal_places=9, help_text='The latitude of this location in decimal degrees.', max_digits=12)),
116 ('longitude', models.DecimalField(decimal_places=9, help_text='The longitude of this location in decimal degrees.', max_digits=12)),
117 ],
118 options={
119 'abstract': False,
120 },
121 bases=('crunch.attribute',),
122 ),
123 migrations.CreateModel(
124 name='Project',
125 fields=[
126 ('item_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.item')),
127 ('workflow', models.TextField(blank=True, default='', help_text='URL to snakemake repository or text of snakefile.')),
128 ],
129 options={
130 'abstract': False,
131 },
132 bases=('crunch.item',),
133 ),
134 migrations.CreateModel(
135 name='URLAttribute',
136 fields=[
137 ('attribute_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='crunch.attribute')),
138 ('value', models.URLField(max_length=1023)),
139 ],
140 options={
141 'abstract': False,
142 },
143 bases=('crunch.attribute',),
144 ),
145 migrations.CreateModel(
146 name='Status',
147 fields=[
148 ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
149 ('created', django_extensions.db.fields.CreationDateTimeField(auto_now_add=True, verbose_name='created')),
150 ('modified', django_extensions.db.fields.ModificationDateTimeField(auto_now=True, verbose_name='modified')),
151 ('stage', models.IntegerField(choices=[(1, 'Setup'), (2, 'Workflow'), (3, 'Upload')])),
152 ('state', models.IntegerField(choices=[(1, 'Start'), (2, 'Success'), (3, 'Fail')])),
153 ('note', models.TextField(blank=True, default='')),
154 ('agent_user', models.CharField(blank=True, default='', help_text='The name of the user running the agent (see https://docs.python.org/3/library/getpass.html).', max_length=255)),
155 ('version', models.CharField(blank=True, default='', help_text='The django-crunch version number of the agent.', max_length=255)),
156 ('revision', models.CharField(blank=True, default='', help_text='The django-crunch git revision hash of the agent.', max_length=255)),
157 ('system', models.CharField(blank=True, default='', help_text="Returns the system/OS name, such as 'Linux', 'Darwin', 'Java', 'Windows' (see https://docs.python.org/3/library/platform.html).", max_length=255)),
158 ('system_release', models.CharField(blank=True, default='', help_text="Returns the system’s release, e.g. '2.2.0' or 'NT' (see https://docs.python.org/3/library/platform.html).", max_length=255)),
159 ('system_version', models.CharField(blank=True, default='', help_text="Returns the system’s release version, e.g. '#3 on degas' (see https://docs.python.org/3/library/platform.html).", max_length=255)),
160 ('machine', models.CharField(blank=True, default='', help_text="Returns the machine type, e.g. 'i386' (see https://docs.python.org/3/library/platform.html).", max_length=255)),
161 ('hostname', models.CharField(blank=True, default='', help_text='The hostname of the machine where the agent was running (see https://docs.python.org/3/library/socket.html).', max_length=255)),
162 ('ip_address', models.CharField(blank=True, default='', help_text='The hostname in IPv4 address format (see https://docs.python.org/3/library/socket.html).', max_length=255)),
163 ('mac_address', models.CharField(blank=True, default='', help_text='The hardware address (see https://docs.python.org/3/library/uuid.html).', max_length=255)),
164 ('memory_total', models.PositiveIntegerField(blank=True, default=None, help_text='See https://psutil.readthedocs.io/en/latest/', null=True)),
165 ('memory_free', models.PositiveIntegerField(blank=True, default=None, help_text='See https://psutil.readthedocs.io/en/latest/', null=True)),
166 ('disk_total', models.PositiveIntegerField(blank=True, default=None, help_text='See https://psutil.readthedocs.io/en/latest/', null=True)),
167 ('disk_free', models.PositiveIntegerField(blank=True, default=None, help_text='See https://psutil.readthedocs.io/en/latest/', null=True)),
168 ('site_user', models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to=settings.AUTH_USER_MODEL)),
169 ('dataset', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='statuses', to='crunch.dataset')),
170 ],
171 options={
172 'verbose_name_plural': 'statuses',
173 },
174 ),
175 migrations.AddField(
176 model_name='attribute',
177 name='dataset',
178 field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='attributes', to='crunch.dataset'),
179 ),
180 ]