mirror of https://github.com/jumpserver/jumpserver
parent
e3e727f972
commit
64e48712a5
|
@ -1,8 +1,7 @@
|
||||||
# Generated by Django 3.2.12 on 2022-07-11 06:13
|
# Generated by Django 3.2.12 on 2022-07-11 06:13
|
||||||
|
|
||||||
import time
|
import time
|
||||||
from django.db import migrations, models
|
from django.db import migrations
|
||||||
from assets.models import Platform
|
|
||||||
|
|
||||||
|
|
||||||
def migrate_asset_accounts(apps, schema_editor):
|
def migrate_asset_accounts(apps, schema_editor):
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# Generated by Django 3.2.14 on 2022-08-11 07:11
|
# Generated by Django 3.2.14 on 2022-08-11 07:11
|
||||||
import assets.models.platform
|
|
||||||
import django.db.models
|
import django.db.models
|
||||||
from django.db import migrations, models
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,8 @@ def _create_account_obj(secret, secret_type, gateway, asset, account_model):
|
||||||
|
|
||||||
def migrate_gateway_to_asset(apps, schema_editor):
|
def migrate_gateway_to_asset(apps, schema_editor):
|
||||||
db_alias = schema_editor.connection.alias
|
db_alias = schema_editor.connection.alias
|
||||||
|
node_model = apps.get_model('assets', 'Node')
|
||||||
|
org_model = apps.get_model('orgs', 'Organization')
|
||||||
gateway_model = apps.get_model('assets', 'Gateway')
|
gateway_model = apps.get_model('assets', 'Gateway')
|
||||||
platform_model = apps.get_model('assets', 'Platform')
|
platform_model = apps.get_model('assets', 'Platform')
|
||||||
gateway_platform = platform_model.objects.using(db_alias).get(name=GATEWAY_NAME)
|
gateway_platform = platform_model.objects.using(db_alias).get(name=GATEWAY_NAME)
|
||||||
|
@ -28,6 +30,16 @@ def migrate_gateway_to_asset(apps, schema_editor):
|
||||||
asset_model = apps.get_model('assets', 'Asset')
|
asset_model = apps.get_model('assets', 'Asset')
|
||||||
protocol_model = apps.get_model('assets', 'Protocol')
|
protocol_model = apps.get_model('assets', 'Protocol')
|
||||||
gateways = gateway_model.objects.all()
|
gateways = gateway_model.objects.all()
|
||||||
|
|
||||||
|
org_ids = gateways.order_by('org_id').values_list('org_id', flat=True).distinct()
|
||||||
|
node_dict = {}
|
||||||
|
for org_id in org_ids:
|
||||||
|
org = org_model.objects.using(db_alias).filter(id=org_id).first()
|
||||||
|
node = node_model.objects.using(db_alias).filter(
|
||||||
|
org_id=org_id, value=org.name, full_value=f'/{org.name}'
|
||||||
|
).first()
|
||||||
|
node_dict[org_id] = node
|
||||||
|
|
||||||
for gateway in gateways:
|
for gateway in gateways:
|
||||||
comment = gateway.comment if gateway.comment else ''
|
comment = gateway.comment if gateway.comment else ''
|
||||||
data = {
|
data = {
|
||||||
|
@ -40,6 +52,8 @@ def migrate_gateway_to_asset(apps, schema_editor):
|
||||||
'platform': gateway_platform,
|
'platform': gateway_platform,
|
||||||
}
|
}
|
||||||
asset = asset_model.objects.using(db_alias).create(**data)
|
asset = asset_model.objects.using(db_alias).create(**data)
|
||||||
|
node = node_dict.get(str(gateway.org_id))
|
||||||
|
asset.nodes.set([node])
|
||||||
asset_dict[gateway.id] = asset
|
asset_dict[gateway.id] = asset
|
||||||
protocol_model.objects.using(db_alias).create(name='ssh', port=gateway.port, asset=asset)
|
protocol_model.objects.using(db_alias).create(name='ssh', port=gateway.port, asset=asset)
|
||||||
hosts = [host_model(asset_ptr=asset) for asset in asset_dict.values()]
|
hosts = [host_model(asset_ptr=asset) for asset in asset_dict.values()]
|
||||||
|
|
Loading…
Reference in New Issue