From 3ff55dc416a61f19251cef9d17154e1ea13cf5ae Mon Sep 17 00:00:00 2001 From: AlaaElattar Date: Wed, 21 Feb 2024 12:25:33 +0200 Subject: [PATCH 1/2] check if farm has enough public ips in _createDeployment --- packages/grid_client/scripts/config.json | 4 ++-- packages/grid_client/src/high_level/machine.ts | 10 +++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/grid_client/scripts/config.json b/packages/grid_client/scripts/config.json index dddeb2c18b..4c4c2b849d 100644 --- a/packages/grid_client/scripts/config.json +++ b/packages/grid_client/scripts/config.json @@ -1,6 +1,6 @@ { "network": "dev", - "mnemonic": "", + "mnemonic": "oven strong mention shoulder night ghost correct exercise surge lady jungle hundred", "storeSecret": "", - "ssh_key": "" + "ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCWEPpx461ry8WlHbkpELC8y1O/xVdVcTKbJmeMqCBj3uSUysVx3KNwZFWK4vs5yZ0N1MU9s2tu7lEZ2Ry9wrXTcBHIvGf17S5cZVasNBg5SQO6GlkYnag2769JIeO5Za/P8J9TZ63ON0G4udUwdsUz+335oA3hbTHjQ7mMDiMgEIvHeJYex5Oq6ClkLjoomunnWDqnWMb5MCB8Cf5JNzIXVuoO3YGI7GWYldIPaw+tnwlqysj/qyN7rpGC6njWa2mntd1QHevPEE4AXAclniJ8XzZUWyXXmexYqeeP3Ld4+U5oiCa1zViN5eN/+z2dNCAq1u71VOWxBQVmkkRWbe+byb8QIEDpIacetpFTch9nuVLG2GfWVCaWSSPszeBcX+7H6pf/hfFpiQDrBu0ai9IB/WbjIKzX6sI/RAWXW8T60+U6SWyO52AE0QVJp+G4S09q8wfOXZOz/ap+AJm0ZujXIu/qXvO3iLUTK4XFFQsGyiHLlTRfPWB+cc2YJ/pCsCk= alaa@alaa-Inspiron-3576" } diff --git a/packages/grid_client/src/high_level/machine.ts b/packages/grid_client/src/high_level/machine.ts index f095774cf4..c0ee6f1ff3 100644 --- a/packages/grid_client/src/high_level/machine.ts +++ b/packages/grid_client/src/high_level/machine.ts @@ -130,7 +130,6 @@ class VMHL extends HighLevelBase { } // ipv4 - // TODO: make sure that the farm has a free public ip before continuing the deployment let ipName = ""; let publicIps = 0; if (publicIp || publicIp6) { @@ -138,6 +137,15 @@ class VMHL extends HighLevelBase { ipName = `${name}_pubip`; workloads.push(ip.create(ipName, metadata, description, 0, publicIp, publicIp6)); if (publicIp) { + const node = await this.nodes.getNode(nodeId); + const _farm = await this.config.tfclient.farms.get({ id: node.farmId }); + const freeIps = _farm.publicIps.filter(res => res.contractId === 0).length; + if (freeIps < 1) { + throw new GridClientErrors.Farms.InvalidResourcesError( + `Farm ${_farm.id} doesn't have enough public IPs: requested IPs=1 for machine with name: ${name}, + , available IPs=${freeIps}.`, + ); + } publicIps++; } } From 213df1cdbc3f3a3521389c8d22a3af363b764bf1 Mon Sep 17 00:00:00 2001 From: AlaaElattar Date: Wed, 21 Feb 2024 12:26:44 +0200 Subject: [PATCH 2/2] remove configurations form config.json --- packages/grid_client/scripts/config.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/grid_client/scripts/config.json b/packages/grid_client/scripts/config.json index 4c4c2b849d..dddeb2c18b 100644 --- a/packages/grid_client/scripts/config.json +++ b/packages/grid_client/scripts/config.json @@ -1,6 +1,6 @@ { "network": "dev", - "mnemonic": "oven strong mention shoulder night ghost correct exercise surge lady jungle hundred", + "mnemonic": "", "storeSecret": "", - "ssh_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCWEPpx461ry8WlHbkpELC8y1O/xVdVcTKbJmeMqCBj3uSUysVx3KNwZFWK4vs5yZ0N1MU9s2tu7lEZ2Ry9wrXTcBHIvGf17S5cZVasNBg5SQO6GlkYnag2769JIeO5Za/P8J9TZ63ON0G4udUwdsUz+335oA3hbTHjQ7mMDiMgEIvHeJYex5Oq6ClkLjoomunnWDqnWMb5MCB8Cf5JNzIXVuoO3YGI7GWYldIPaw+tnwlqysj/qyN7rpGC6njWa2mntd1QHevPEE4AXAclniJ8XzZUWyXXmexYqeeP3Ld4+U5oiCa1zViN5eN/+z2dNCAq1u71VOWxBQVmkkRWbe+byb8QIEDpIacetpFTch9nuVLG2GfWVCaWSSPszeBcX+7H6pf/hfFpiQDrBu0ai9IB/WbjIKzX6sI/RAWXW8T60+U6SWyO52AE0QVJp+G4S09q8wfOXZOz/ap+AJm0ZujXIu/qXvO3iLUTK4XFFQsGyiHLlTRfPWB+cc2YJ/pCsCk= alaa@alaa-Inspiron-3576" + "ssh_key": "" }