import sys from datetime import datetime from django.core.management.base import BaseCommand from django.contrib.auth import get_user_model from opennebula.models import VM as VMModel from uncloud_vm.models import VMHost, VMProduct, VMNetworkCard, VMDiskImageProduct, VMDiskProduct, VMCluster import logging log = logging.getLogger(__name__) wireguard_template=""" [Interface] ListenPort = 51820 PrivateKey = {privatekey} # Nico, 2019-01-23, Switzerland #[Peer] #PublicKey = kL1S/Ipq6NkFf1MAsNRou4b9VoUsnnb4ZxgiBrH0zA8= #AllowedIPs = 2a0a:e5c1:101::/48 """ class Command(BaseCommand): help = 'General uncloud commands' def add_arguments(self, parser): parser.add_argument('--hostname', action='store_true', help='Name of this VPN Host', required=True) def handle(self, *args, **options): # for net if options['bootstrap']: self.bootstrap() self.create_vpn_config(options['hostname']) def create_vpn_config(self, hostname): for pool in VPNPool.objects.filter(vpn_hostname default_cluster = VPNNetwork.objects.get_or_create(name="default") # local_host =