mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	mypy: For EC2, pre-assign address & gateway to enable assertion.
This commit is contained in:
		
				
					committed by
					
						
						Tim Abbott
					
				
			
			
				
	
			
			
			
						parent
						
							fd941e8f88
						
					
				
				
					commit
					ba51958c40
				
			@@ -110,16 +110,22 @@ for device in macs.values():
 | 
			
		||||
        log.info("Device ens%i not configured, starting dhcpd" % (device_number,))
 | 
			
		||||
        subprocess.check_call(['/sbin/dhcpcd', 'ens%i' % device_number])
 | 
			
		||||
 | 
			
		||||
        dev_num = str(device_number)
 | 
			
		||||
        address = address_of(device_number)
 | 
			
		||||
        gateway = guess_gateway(device_number)
 | 
			
		||||
        assert(address is not None)
 | 
			
		||||
        assert(gateway is not None)
 | 
			
		||||
 | 
			
		||||
        # Horrible hack to route return packets on the correct interface
 | 
			
		||||
        # See http://unix.stackexchange.com/a/4421/933
 | 
			
		||||
        subprocess.check_call(
 | 
			
		||||
            ['/sbin/ip', 'rule', 'add', 'fwmark', str(device_number), 'table', str(device_number)])
 | 
			
		||||
            ['/sbin/ip', 'rule', 'add', 'fwmark', dev_num, 'table', dev_num])
 | 
			
		||||
        subprocess.check_call(
 | 
			
		||||
            ['/sbin/ip', 'route', 'add', '0.0.0.0/0', 'table', str(device_number), 'dev',
 | 
			
		||||
             'ens%i' % device_number, 'via', guess_gateway(device_number)])
 | 
			
		||||
            ['/sbin/ip', 'route', 'add', '0.0.0.0/0', 'table', dev_num, 'dev',
 | 
			
		||||
             'ens%i' % device_number, 'via', gateway])
 | 
			
		||||
        subprocess.check_call(
 | 
			
		||||
            ['/sbin/iptables', '-t', 'mangle', '-A', 'OUTPUT', '-m', 'conntrack', '--ctorigdst',
 | 
			
		||||
             address_of(device_number), '-j', 'MARK', '--set-mark', str(device_number)])
 | 
			
		||||
             address, '-j', 'MARK', '--set-mark', dev_num])
 | 
			
		||||
 | 
			
		||||
    to_configure.remove(address_of(device_number))
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user