aboutsummaryrefslogtreecommitdiffstats
path: root/ctrack/organisations/migrations/0006_incidentreport.py
diff options
context:
space:
mode:
authorMatthew Lemon <lemon@matthewlemon.com>2020-05-29 14:23:07 +0100
committerMatthew Lemon <lemon@matthewlemon.com>2020-05-29 14:23:07 +0100
commit739b3dd6aa383f70e5442e74fb4d217d5619d110 (patch)
tree54d9ef6fad57c7dbc6283b0a2cc2cd73955dc80c /ctrack/organisations/migrations/0006_incidentreport.py
parent8edc6a41c160ff75e964db45371e4ae63fb68c17 (diff)
IncidentReport model in place and func test passing so far
Diffstat (limited to '')
-rw-r--r--ctrack/organisations/migrations/0006_incidentreport.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/ctrack/organisations/migrations/0006_incidentreport.py b/ctrack/organisations/migrations/0006_incidentreport.py
new file mode 100644
index 0000000..0528aaa
--- /dev/null
+++ b/ctrack/organisations/migrations/0006_incidentreport.py
@@ -0,0 +1,35 @@
+# Generated by Django 2.2.12 on 2020-05-29 12:56
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organisations', '0005_auto_20200525_1502'),
+ ]
+
+ operations = [
+ migrations.CreateModel(
+ name='IncidentReport',
+ fields=[
+ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+ ('role', models.CharField(help_text='Please identify your role', max_length=100)),
+ ('phone_number', models.CharField(max_length=30)),
+ ('email', models.EmailField(max_length=254)),
+ ('internal_incident_number', models.CharField(blank=True, max_length=30)),
+ ('date_time_incident_detected', models.DateTimeField(help_text='This can be approximate', verbose_name='Date/Time incident detected')),
+ ('date_time_incident_reported', models.DateTimeField(verbose_name='Date/Time incident reported')),
+ ('incident_type', models.CharField(choices=[('cyber', 'Cyber'), ('non-cyber', 'Non-Cyber'), ('both', 'Both'), ('power', 'Power Outage')], help_text='This can be appoximate', max_length=10)),
+ ('incident_status', models.CharField(choices=[('detected', 'Detected'), ('suspected', 'Suspected'), ('resolved', 'Resolved')], max_length=10)),
+ ('incident_stage', models.CharField(choices=[('ongoing', 'Ongoing'), ('ended', 'Ended'), ('managed', 'Ongoing but managed')], max_length=10)),
+ ('summary', models.TextField(help_text='Please provide a summary of your understanding of the incident, including any impact to services and/or users.')),
+ ('mitigations', models.TextField(help_text='What investigations and/or mitigations have you or a third party performed or plan to perform?', verbose_name='Investigations or mitigations')),
+ ('others_informed', models.TextField(help_text='Who else has been informed about this incident?(CSIRT, NCSC, NCA, etc)', verbose_name='Others parties informed')),
+ ('next_steps', models.TextField(help_text='What are your planned next steps?', verbose_name='Planned next steps')),
+ ('organisation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organisations.Organisation')),
+ ('reporting_person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='organisations.Person', verbose_name='Person reporting the incident')),
+ ],
+ ),
+ ]