getEnvironment() == "thetool") { // IpNetwork Table $ipNetworkTable = $this->table("IpNetwork", ["signed" => true]); $ipNetworkTable->addColumn("network_address", "integer", ["null" => false, "signed" => false]) ->addColumn("cidr", "integer", ["null" => false]) ->addColumn("parent_network_id", "integer", ["null" => true, "signed" => true]) ->addColumn("status", "enum", ["values" => ["active", "inactive", "reserved"], "null" => false]) ->addColumn("name", "string", ["null" => true, "limit" => 100]) ->addColumn("description", "text", ["null" => true]) ->addColumn("location", "string", ["null" => true, "limit" => 255]) ->addColumn("create", "integer", ["null" => true, "signed" => false]) ->addColumn("edit", "integer", ["null" => true, "signed" => false]) ->addForeignKey("parent_network_id", "IpNetwork", "id", ["delete" => "SET_NULL", "update" => "NO_ACTION"]) ->addIndex(["parent_network_id"]); $ipNetworkTable->save(); } } public function down(): void { if ($this->getEnvironment() == "thetool") { $this->table("IpNetwork")->drop()->save(); } } }