#!/usr/bin/python3 import os import sys sys.path.insert(0, os.path.abspath(os.path.dirname(__file__) + '/' + '../..')) from ffmap.mysqltools import FreifunkMySQL mysql = FreifunkMySQL() mysql.execute(""" CREATE TABLE `gw` ( `id` smallint(5) UNSIGNED NOT NULL, `name` varchar(50) COLLATE utf8_unicode_ci NOT NULL, `stats_page` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL, `version` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL, `last_contact` datetime NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci """) mysql.execute(""" ALTER TABLE `gw` ADD PRIMARY KEY (`id`), ADD UNIQUE KEY `name` (`name`) """) mysql.execute(""" ALTER TABLE `gw` MODIFY `id` smallint(5) UNSIGNED NOT NULL AUTO_INCREMENT """) mysql.execute(""" CREATE TABLE `gw_admin` ( `gw` smallint(5) UNSIGNED NOT NULL, `name` varchar(100) COLLATE utf8_unicode_ci NOT NULL, `prio` tinyint(3) UNSIGNED NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci """) mysql.execute(""" ALTER TABLE `gw_admin` ADD PRIMARY KEY (`gw`,`name`) """) mysql.execute(""" CREATE TABLE `gw_netif` ( `gw` smallint(5) UNSIGNED NOT NULL, `mac` bigint(20) UNSIGNED NOT NULL, `netif` varchar(15) COLLATE utf8_unicode_ci NOT NULL, `vpnmac` bigint(20) UNSIGNED DEFAULT NULL, `ipv4` char(18) COLLATE utf8_unicode_ci DEFAULT NULL, `ipv6` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, `dhcpstart` char(15) COLLATE utf8_unicode_ci DEFAULT NULL, `dhcpend` char(15) COLLATE utf8_unicode_ci DEFAULT NULL, `last_contact` datetime NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci """) mysql.execute(""" ALTER TABLE `gw_netif` ADD PRIMARY KEY (`mac`), ADD KEY `gw` (`gw`) """) mysql.commit() mysql.close()