mirror of
https://github.com/fosrl/pangolin.git
synced 2025-07-24 20:55:04 +02:00
Test & fix the get defaults for sites
This commit is contained in:
parent
7feb21e727
commit
edcae190b2
3 changed files with 8 additions and 5 deletions
|
@ -46,11 +46,11 @@ authenticated.put("/org/:orgId/site", verifyOrgAccess, site.createSite);
|
||||||
authenticated.get("/org/:orgId/sites", verifyOrgAccess, site.listSites);
|
authenticated.get("/org/:orgId/sites", verifyOrgAccess, site.listSites);
|
||||||
authenticated.get("/org/:orgId/site/:niceId", verifyOrgAccess, site.getSite);
|
authenticated.get("/org/:orgId/site/:niceId", verifyOrgAccess, site.getSite);
|
||||||
|
|
||||||
|
authenticated.get("/org/:orgId/pickSiteDefaults", verifyOrgAccess, site.pickSiteDefaults);
|
||||||
authenticated.get("/site/:siteId", verifySiteAccess, site.getSite);
|
authenticated.get("/site/:siteId", verifySiteAccess, site.getSite);
|
||||||
authenticated.get("/site/:siteId/roles", verifySiteAccess, site.listSiteRoles);
|
authenticated.get("/site/:siteId/roles", verifySiteAccess, site.listSiteRoles);
|
||||||
authenticated.post("/site/:siteId", verifySiteAccess, site.updateSite);
|
authenticated.post("/site/:siteId", verifySiteAccess, site.updateSite);
|
||||||
authenticated.delete("/site/:siteId", verifySiteAccess, site.deleteSite);
|
authenticated.delete("/site/:siteId", verifySiteAccess, site.deleteSite);
|
||||||
authenticated.delete("/site/pickSiteDefaults", site.pickSiteDefaults);
|
|
||||||
|
|
||||||
authenticated.put(
|
authenticated.put(
|
||||||
"/org/:orgId/site/:siteId/resource",
|
"/org/:orgId/site/:siteId/resource",
|
||||||
|
|
|
@ -66,8 +66,10 @@ export async function pickSiteDefaults(
|
||||||
.where(eq(sites.exitNodeId, exitNode.exitNodeId));
|
.where(eq(sites.exitNodeId, exitNode.exitNodeId));
|
||||||
|
|
||||||
// TODO: we need to lock this subnet for some time so someone else does not take it
|
// TODO: we need to lock this subnet for some time so someone else does not take it
|
||||||
const subnets = sitesQuery.map((site) => site.subnet);
|
let subnets = sitesQuery.map((site) => site.subnet);
|
||||||
const newSubnet = findNextAvailableCidr(subnets, 28, exitNode.address);
|
// exclude the exit node address by replacing after the / with a /28
|
||||||
|
subnets.push(exitNode.address.replace(/\/\d+$/, "/29"));
|
||||||
|
const newSubnet = findNextAvailableCidr(subnets, 29, exitNode.address);
|
||||||
if (!newSubnet) {
|
if (!newSubnet) {
|
||||||
return next(
|
return next(
|
||||||
createHttpError(
|
createHttpError(
|
||||||
|
|
|
@ -76,7 +76,7 @@ export function CreateSiteForm() {
|
||||||
setIsLoading(false);
|
setIsLoading(false);
|
||||||
|
|
||||||
api
|
api
|
||||||
.get(`/site/pickSiteDefaults`)
|
.get(`/org/${orgId}/pickSiteDefaults`)
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
toast({
|
toast({
|
||||||
title: "Error creating site..."
|
title: "Error creating site..."
|
||||||
|
@ -93,7 +93,8 @@ export function CreateSiteForm() {
|
||||||
const res = await api
|
const res = await api
|
||||||
.put(`/org/${orgId}/site/`, {
|
.put(`/org/${orgId}/site/`, {
|
||||||
name: data.name,
|
name: data.name,
|
||||||
// subdomain: data.subdomain,
|
subnet: siteDefaults?.subnet,
|
||||||
|
exitNodeId: siteDefaults?.exitNodeId,
|
||||||
pubKey: keypair?.publicKey,
|
pubKey: keypair?.publicKey,
|
||||||
})
|
})
|
||||||
.catch((e) => {
|
.catch((e) => {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue