ubicloud/prog/vnet
Enes Cakir 73b0c66fc0 Fix Vnet::SubnetNexus#destroy to not violate strand leases
Previously, Vnet::SubnetNexus#destroy ran:

```ruby
strand.children.select { it.prog == "Aws::Vpc" }.each { it.destroy }
```

This is not safe as there could be an existing lease for Aws::Vpc
children.

@jeremy fixed a similar issue at 773562ebc.

Fix this by private subnet increments the destroy semaphore instead of
destroying directly. Aws::Vpc will pop out if the destroy semaphore is
incremented.

I didn’t add semaphore :destroy to Aws::Vpc, since one of its subjects
is :private_subnet, which already has a destroy semaphore.
2025-10-03 17:51:41 +03:00
..
cert_nexus.rb Use create_with_id in progs and routes 2025-08-07 02:13:08 +09:00
cert_server.rb Start metadata-endpoint even if the Cert is not ready 2025-10-02 16:35:27 +02:00
load_balancer_nexus.rb Add a prog to synch vm removal from load balancer 2025-09-17 16:20:48 +02:00
load_balancer_remove_vm.rb Fix LB VM removal pop issue with reap 2025-10-01 10:21:24 +02:00
nic_nexus.rb Fix Vnet::NicNexus#destroy to not violate strand leases 2025-10-03 17:51:41 +03:00
rekey_nic_tunnel.rb Move nic gateway setting from controlplane 2024-11-07 09:24:29 +01:00
subnet_nexus.rb Fix Vnet::SubnetNexus#destroy to not violate strand leases 2025-10-03 17:51:41 +03:00
update_firewall_rules.rb Support FirewallRule updates on IPv6 disabled VMs 2025-09-04 14:15:35 +02:00
update_load_balancer_node.rb Change rubocop TargetRubyVersion to 3.4 2025-04-26 06:51:19 +09:00