2015-04-08 14:41:09 +00:00
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
2021-04-22 12:18:01 +00:00
import django . db . models . deletion
2015-04-08 14:41:09 +00:00
from django . db import models , migrations
import orchestra . models . fields
class Migration ( migrations . Migration ) :
dependencies = [
( ' contenttypes ' , ' 0002_remove_content_type_name ' ) ,
]
operations = [
migrations . CreateModel (
name = ' BackendLog ' ,
fields = [
2015-04-29 14:32:38 +00:00
( ' id ' , models . AutoField ( serialize = False , auto_created = True , verbose_name = ' ID ' , primary_key = True ) ) ,
2015-04-29 13:55:22 +00:00
( ' backend ' , models . CharField ( max_length = 256 , verbose_name = ' backend ' ) ) ,
2015-04-29 14:32:38 +00:00
( ' state ' , models . CharField ( choices = [ ( ' RECEIVED ' , ' RECEIVED ' ) , ( ' TIMEOUT ' , ' TIMEOUT ' ) , ( ' STARTED ' , ' STARTED ' ) , ( ' SUCCESS ' , ' SUCCESS ' ) , ( ' FAILURE ' , ' FAILURE ' ) , ( ' ERROR ' , ' ERROR ' ) , ( ' ABORTED ' , ' ABORTED ' ) , ( ' REVOKED ' , ' REVOKED ' ) ] , default = ' RECEIVED ' , max_length = 16 , verbose_name = ' state ' ) ) ,
2015-04-08 14:41:09 +00:00
( ' script ' , models . TextField ( verbose_name = ' script ' ) ) ,
( ' stdout ' , models . TextField ( verbose_name = ' stdout ' ) ) ,
( ' stderr ' , models . TextField ( verbose_name = ' stdin ' ) ) ,
( ' traceback ' , models . TextField ( verbose_name = ' traceback ' ) ) ,
2015-04-29 14:32:38 +00:00
( ' exit_code ' , models . IntegerField ( verbose_name = ' exit code ' , null = True ) ) ,
( ' task_id ' , models . CharField ( help_text = ' Celery task ID when used as execution backend ' , verbose_name = ' task ID ' , unique = True , max_length = 36 , null = True ) ) ,
2015-04-29 13:55:22 +00:00
( ' created_at ' , models . DateTimeField ( auto_now_add = True , verbose_name = ' created ' ) ) ,
( ' updated_at ' , models . DateTimeField ( auto_now = True , verbose_name = ' updated ' ) ) ,
2015-04-08 14:41:09 +00:00
] ,
options = {
' get_latest_by ' : ' id ' ,
} ,
) ,
migrations . CreateModel (
name = ' BackendOperation ' ,
fields = [
2015-04-29 14:32:38 +00:00
( ' id ' , models . AutoField ( serialize = False , auto_created = True , verbose_name = ' ID ' , primary_key = True ) ) ,
2015-04-29 13:55:22 +00:00
( ' backend ' , models . CharField ( max_length = 256 , verbose_name = ' backend ' ) ) ,
( ' action ' , models . CharField ( max_length = 64 , verbose_name = ' action ' ) ) ,
2015-04-08 14:41:09 +00:00
( ' object_id ' , models . PositiveIntegerField ( ) ) ,
2021-04-22 12:18:01 +00:00
( ' content_type ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' contenttypes.ContentType ' ) ) ,
( ' log ' , models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , related_name = ' operations ' , to = ' orchestration.BackendLog ' ) ) ,
2015-04-08 14:41:09 +00:00
] ,
options = {
' verbose_name_plural ' : ' Operations ' ,
2015-04-29 13:55:22 +00:00
' verbose_name ' : ' Operation ' ,
2015-04-08 14:41:09 +00:00
} ,
) ,
migrations . CreateModel (
name = ' Route ' ,
fields = [
2015-04-29 14:32:38 +00:00
( ' id ' , models . AutoField ( serialize = False , auto_created = True , verbose_name = ' ID ' , primary_key = True ) ) ,
2016-03-08 10:16:49 +00:00
( ' backend ' , models . CharField ( choices = [ ( ' Apache2Traffic ' , ' [M] Apache 2 Traffic ' ) , ( ' DovecotMaildirDisk ' , ' [M] Dovecot Maildir size ' ) , ( ' Exim4Traffic ' , ' [M] Exim4 traffic ' ) , ( ' MailmanSubscribers ' , ' [M] Mailman subscribers ' ) , ( ' MailmanTraffic ' , ' [M] Mailman traffic ' ) , ( ' MysqlDisk ' , ' [M] MySQL disk ' ) , ( ' OpenVZTraffic ' , ' [M] OpenVZTraffic ' ) , ( ' PostfixMailscannerTraffic ' , ' [M] Postfix-Mailscanner traffic ' ) , ( ' UNIXUserDisk ' , ' [M] UNIX user disk ' ) , ( ' VsFTPdTraffic ' , ' [M] VsFTPd traffic ' ) , ( ' Apache2Controller ' , ' [S] Apache 2 ' ) , ( ' BSCWController ' , ' [S] BSCW SaaS ' ) , ( ' Bind9MasterDomainController ' , ' [S] Bind9 master domain ' ) , ( ' Bind9SlaveDomainController ' , ' [S] Bind9 slave domain ' ) , ( ' DokuWikiMuController ' , ' [S] DokuWiki multisite ' ) , ( ' DovecotPostfixPasswdVirtualUserController ' , ' [S] Dovecot-Postfix virtualuser ' ) , ( ' DrupalMuController ' , ' [S] Drupal multisite ' ) , ( ' GitLabSaaSController ' , ' [S] GitLab SaaS ' ) , ( ' AutoresponseController ' , ' [S] Mail autoresponse ' ) , ( ' MailmanController ' , ' [S] Mailman ' ) , ( ' MySQLController ' , ' [S] MySQL database ' ) , ( ' MySQLUserController ' , ' [S] MySQL user ' ) , ( ' PHPController ' , ' [S] PHP FPM/FCGID ' ) , ( ' PostfixAddressController ' , ' [S] Postfix address ' ) , ( ' uWSGIPythonController ' , ' [S] Python uWSGI ' ) , ( ' StaticController ' , ' [S] Static ' ) , ( ' SymbolicLinkController ' , ' [S] Symbolic link webapp ' ) , ( ' UNIXUserMaildirController ' , ' [S] UNIX maildir user ' ) , ( ' UNIXUserController ' , ' [S] UNIX user ' ) , ( ' WebalizerAppController ' , ' [S] Webalizer App ' ) , ( ' WebalizerController ' , ' [S] Webalizer Content ' ) , ( ' WordPressController ' , ' [S] Wordpress ' ) , ( ' WordpressMuController ' , ' [S] Wordpress multisite ' ) , ( ' PhpListSaaSController ' , ' [S] phpList SaaS ' ) ] , max_length = 256 , verbose_name = ' backend ' ) ) ,
2015-04-29 14:32:38 +00:00
( ' match ' , models . CharField ( help_text = ' Python expression used for selecting the targe host, <em>instance</em> referes to the current object. ' , default = ' True ' , blank = True , max_length = 256 , verbose_name = ' match ' ) ) ,
2015-04-29 13:55:22 +00:00
( ' is_active ' , models . BooleanField ( default = True , verbose_name = ' active ' ) ) ,
2015-04-08 14:41:09 +00:00
] ,
) ,
migrations . CreateModel (
name = ' Server ' ,
fields = [
2015-04-29 14:32:38 +00:00
( ' id ' , models . AutoField ( serialize = False , auto_created = True , verbose_name = ' ID ' , primary_key = True ) ) ,
( ' name ' , models . CharField ( unique = True , max_length = 256 , verbose_name = ' name ' ) ) ,
( ' address ' , orchestra . models . fields . NullableCharField ( blank = True , max_length = 256 , null = True , help_text = ' IP address or domain name ' , unique = True , verbose_name = ' address ' ) ) ,
2015-04-08 14:41:09 +00:00
( ' description ' , models . TextField ( blank = True , verbose_name = ' description ' ) ) ,
2015-04-29 14:32:38 +00:00
( ' os ' , models . CharField ( choices = [ ( ' LINUX ' , ' Linux ' ) ] , default = ' LINUX ' , max_length = 32 , verbose_name = ' operative system ' ) ) ,
2015-04-08 14:41:09 +00:00
] ,
) ,
migrations . AddField (
model_name = ' route ' ,
name = ' host ' ,
2021-04-22 12:18:01 +00:00
field = models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , to = ' orchestration.Server ' , verbose_name = ' host ' ) ,
2015-04-08 14:41:09 +00:00
) ,
migrations . AddField (
model_name = ' backendlog ' ,
name = ' server ' ,
2021-04-22 12:18:01 +00:00
field = models . ForeignKey ( on_delete = django . db . models . deletion . CASCADE , related_name = ' execution_logs ' , to = ' orchestration.Server ' , verbose_name = ' server ' ) ,
2015-04-08 14:41:09 +00:00
) ,
migrations . AlterUniqueTogether (
name = ' route ' ,
unique_together = set ( [ ( ' backend ' , ' host ' ) ] ) ,
) ,
]