def METHOD_NAME(self, topo_id, topo):
    name = 'sig%s' % topo_id.file_fmt()
    net = self.args.networks[name][0]
    log_level = 'debug'
    ipv = 'ipv4'
    if ipv not in net:
        ipv = 'ipv6'
    sciond_net = self.args.networks["sd" + topo_id.file_fmt()][0]
    ipv = 'ipv4'
    if ipv not in sciond_net:
        ipv = 'ipv6'
    sciond_ip = sciond_net[ipv]
    sig_conf = {
        'gateway': {
            'id': name,
            'traffic_policy_file': 'conf/sig.json',
            'ctrl_addr': str(net[ipv]),
        },
        'sciond_connection': {
            'address': socket_address_str(sciond_ip, SD_API_PORT),
        },
        'log': {
            'console': {
                'level': log_level,
            }
        },
        'metrics': {
            'prometheus': '0.0.0.0:%s' % SIG_PROM_PORT
        },
        'api': {
            'addr': '0.0.0.0:%s' % (SIG_PROM_PORT+700)
        },
        'features': translate_features(self.args.features),
    }
    path = os.path.join(topo_id.base_dir(self.args.output_dir),
                        SIG_CONFIG_NAME)
    write_file(path, toml.dumps(sig_conf))