yeni
This commit is contained in:
54
ssh_manager/migrations/0001_initial.py
Normal file
54
ssh_manager/migrations/0001_initial.py
Normal file
@ -0,0 +1,54 @@
|
||||
# Generated by Django 5.1.5 on 2025-01-23 05:38
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='SSHCredential',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('hostname', models.CharField(max_length=255)),
|
||||
('username', models.CharField(max_length=100)),
|
||||
('password', models.CharField(max_length=100)),
|
||||
('port', models.IntegerField(default=22)),
|
||||
('is_online', models.BooleanField(default=False)),
|
||||
('last_check', models.DateTimeField(auto_now=True)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Project',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=255)),
|
||||
('folder_name', models.CharField(max_length=255)),
|
||||
('path', models.CharField(max_length=500)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('ssh_credential', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ssh_manager.sshcredential')),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='SSHLog',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('log_type', models.CharField(choices=[('connection', 'Bağlantı Kontrolü'), ('command', 'Komut Çalıştırma'), ('folder', 'Klasör İşlemi')], max_length=20)),
|
||||
('command', models.TextField()),
|
||||
('output', models.TextField()),
|
||||
('status', models.BooleanField(default=True)),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('ssh_credential', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ssh_manager.sshcredential')),
|
||||
],
|
||||
options={
|
||||
'ordering': ['-created_at'],
|
||||
},
|
||||
),
|
||||
]
|
||||
20
ssh_manager/migrations/0002_default_ssh_credential.py
Normal file
20
ssh_manager/migrations/0002_default_ssh_credential.py
Normal file
@ -0,0 +1,20 @@
|
||||
from django.db import migrations
|
||||
|
||||
def create_default_ssh_credential(apps, schema_editor):
|
||||
SSHCredential = apps.get_model('ssh_manager', 'SSHCredential')
|
||||
if not SSHCredential.objects.exists():
|
||||
SSHCredential.objects.create(
|
||||
hostname='localhost', # Varsayılan sunucu bilgileri
|
||||
username='root',
|
||||
password='password',
|
||||
port=22
|
||||
)
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
('ssh_manager', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(create_default_ssh_credential),
|
||||
]
|
||||
@ -0,0 +1,23 @@
|
||||
# Generated by Django 5.1.5 on 2025-01-23 06:14
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0002_default_ssh_credential'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name='project',
|
||||
name='path',
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='sshcredential',
|
||||
name='base_path',
|
||||
field=models.CharField(default=1, help_text='Projelerin oluşturulacağı ana dizin', max_length=500),
|
||||
preserve_default=False,
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,33 @@
|
||||
# Generated by Django 5.1.5 on 2025-01-23 15:44
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0003_remove_project_path_sshcredential_base_path'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='updated_at',
|
||||
field=models.DateTimeField(auto_now=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='folder_name',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='name',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='sshlog',
|
||||
name='log_type',
|
||||
field=models.CharField(choices=[('connection', 'Bağlantı Kontrolü'), ('command', 'Komut Çalıştırma'), ('folder', 'Klasör İşlemi'), ('file', 'Dosya İşlemi')], max_length=20),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,39 @@
|
||||
# Generated by Django 5.1.5 on 2025-01-25 05:25
|
||||
|
||||
import django.db.models.deletion
|
||||
import ssh_manager.models
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0004_project_updated_at_alter_project_folder_name_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='project',
|
||||
options={'ordering': ['-created_at'], 'verbose_name': 'Proje', 'verbose_name_plural': 'Projeler'},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='url',
|
||||
field=models.CharField(blank=True, help_text='Örnek: example.com veya subdomain.example.com', max_length=255, null=True, unique=True, validators=[ssh_manager.models.validate_domain], verbose_name='Domain Adı'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='folder_name',
|
||||
field=models.CharField(max_length=100, verbose_name='Klasör Adı'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='name',
|
||||
field=models.CharField(max_length=100, verbose_name='Proje Adı'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='ssh_credential',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ssh_manager.sshcredential', verbose_name='SSH Bağlantısı'),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,39 @@
|
||||
# Generated by Django 5.1.5 on 2025-01-29 04:07
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0005_alter_project_options_project_url_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='disk_usage',
|
||||
field=models.CharField(blank=True, help_text='Projenin disk kullanımı', max_length=20, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='folder_name',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='name',
|
||||
field=models.CharField(max_length=100),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='ssh_credential',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ssh_manager.sshcredential'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='url',
|
||||
field=models.CharField(blank=True, max_length=200, null=True),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,38 @@
|
||||
# Generated by Django 5.1.5 on 2025-01-30 10:52
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0006_project_disk_usage_alter_project_folder_name_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='last_backup',
|
||||
field=models.DateTimeField(blank=True, null=True, verbose_name='Son Yedekleme'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='disk_usage',
|
||||
field=models.CharField(blank=True, max_length=20, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='folder_name',
|
||||
field=models.CharField(max_length=100, verbose_name='Klasör Adı'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='name',
|
||||
field=models.CharField(max_length=100, verbose_name='Proje Adı'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='project',
|
||||
name='url',
|
||||
field=models.CharField(blank=True, max_length=255, null=True),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,33 @@
|
||||
# Generated by Django 5.1.5 on 2025-03-01 18:39
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0007_project_last_backup_alter_project_disk_usage_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='email',
|
||||
field=models.EmailField(blank=True, max_length=254, null=True),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='image',
|
||||
field=models.ImageField(blank=True, null=True, upload_to='project_images'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='phone',
|
||||
field=models.CharField(blank=True, max_length=20, null=True),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='sshlog',
|
||||
name='log_type',
|
||||
field=models.CharField(choices=[('connection', 'Bağlantı Kontrolü'), ('command', 'Komut Çalıştırma'), ('folder', 'Klasör İşlemi'), ('file', 'Dosya İşlemi'), ('backup', 'Yedekleme')], max_length=20),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,40 @@
|
||||
# Generated by Django 5.2.4 on 2025-07-20 00:26
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0008_project_email_project_image_project_phone_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name='project',
|
||||
name='email',
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='project',
|
||||
name='image',
|
||||
),
|
||||
migrations.RemoveField(
|
||||
model_name='project',
|
||||
name='phone',
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='is_site_active',
|
||||
field=models.BooleanField(default=False, verbose_name='Site Aktif'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='last_site_check',
|
||||
field=models.DateTimeField(blank=True, null=True, verbose_name='Son Site Kontrolü'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='meta_key',
|
||||
field=models.CharField(blank=True, help_text='Site aktiflik kontrolü için benzersiz anahtar', max_length=32, null=True, verbose_name='Meta Key'),
|
||||
),
|
||||
]
|
||||
18
ssh_manager/migrations/0010_sshcredential_disk_usage.py
Normal file
18
ssh_manager/migrations/0010_sshcredential_disk_usage.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 5.2.4 on 2025-07-20 02:06
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0009_remove_project_email_remove_project_image_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='sshcredential',
|
||||
name='disk_usage',
|
||||
field=models.CharField(blank=True, max_length=50, null=True, verbose_name='Disk Kullanımı'),
|
||||
),
|
||||
]
|
||||
46
ssh_manager/migrations/0011_customer_project_customer.py
Normal file
46
ssh_manager/migrations/0011_customer_project_customer.py
Normal file
@ -0,0 +1,46 @@
|
||||
# Generated by Django 5.2.4 on 2025-07-20 11:19
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0010_sshcredential_disk_usage'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Customer',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('customer_type', models.CharField(choices=[('individual', 'Bireysel'), ('corporate', 'Kurumsal')], max_length=20, verbose_name='Müşteri Tipi')),
|
||||
('name', models.CharField(max_length=200, verbose_name='Ad/Firma Adı')),
|
||||
('email', models.EmailField(max_length=254, verbose_name='E-posta')),
|
||||
('phone', models.CharField(blank=True, max_length=20, null=True, verbose_name='Telefon')),
|
||||
('address', models.TextField(blank=True, null=True, verbose_name='Adres')),
|
||||
('surname', models.CharField(blank=True, max_length=100, null=True, verbose_name='Soyad')),
|
||||
('birth_date', models.DateField(blank=True, null=True, verbose_name='Doğum Tarihi')),
|
||||
('tc_number', models.CharField(blank=True, max_length=11, null=True, verbose_name='TC Kimlik No')),
|
||||
('company_name', models.CharField(blank=True, max_length=200, null=True, verbose_name='Şirket Adı')),
|
||||
('tax_number', models.CharField(blank=True, max_length=20, null=True, verbose_name='Vergi No')),
|
||||
('tax_office', models.CharField(blank=True, max_length=100, null=True, verbose_name='Vergi Dairesi')),
|
||||
('authorized_person', models.CharField(blank=True, max_length=200, null=True, verbose_name='Yetkili Kişi')),
|
||||
('notes', models.TextField(blank=True, null=True, verbose_name='Notlar')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturma Tarihi')),
|
||||
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
|
||||
('is_active', models.BooleanField(default=True, verbose_name='Aktif')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'Müşteri',
|
||||
'verbose_name_plural': 'Müşteriler',
|
||||
'ordering': ['-created_at'],
|
||||
},
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='project',
|
||||
name='customer',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ssh_manager.customer', verbose_name='Müşteri'),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,38 @@
|
||||
# Generated by Django 5.2.4 on 2025-07-20 13:50
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('ssh_manager', '0011_customer_project_customer'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='sshcredential',
|
||||
name='connection_status',
|
||||
field=models.CharField(choices=[('connected', 'Bağlı'), ('failed', 'Başarısız'), ('unknown', 'Bilinmiyor')], default='unknown', max_length=20),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='sshcredential',
|
||||
name='is_default',
|
||||
field=models.BooleanField(default=False, verbose_name='Varsayılan Host'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='sshcredential',
|
||||
name='last_checked',
|
||||
field=models.DateTimeField(blank=True, null=True, verbose_name='Son Kontrol'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='sshcredential',
|
||||
name='name',
|
||||
field=models.CharField(default='Varsayılan Host', max_length=100, verbose_name='Host Adı'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='sshcredential',
|
||||
name='disk_usage',
|
||||
field=models.FloatField(blank=True, null=True, verbose_name='Disk Kullanımı (%)'),
|
||||
),
|
||||
]
|
||||
1
ssh_manager/migrations/__init__.py
Normal file
1
ssh_manager/migrations/__init__.py
Normal file
@ -0,0 +1 @@
|
||||
# Bu dosya boş kalacak
|
||||
Reference in New Issue
Block a user