ubicloud/spec/model
Jeremy Evans c360c357d1 Use a timeout by default in Sshable#cmd
This changes the Channel#wait call to a loop that checks
that the timeout has not been exceeded.  If the timeout
has been exceeded, an SshTimeout error (subclass of SshError)
is raised.

This should catch any shell commands that take too long to
execute, as well as any hangs in the SSH connections, which
should prevent most current causes of apoptosis.

I'm including the timeout in the Clog emit, since it may
be useful.

This switches the newly added `sudo timeout 10s` in VM nexus
command with a `timeout: 10` argument.  We can consider
expanding the use of explicit timeouts to other commands,
because the default timeout is fairly long (2-10 seconds less
than the apoptosis timeout).

This removes the SSH Channel#wait call inside the Channel#exec
block.  Session#open_channel returns the same channel it yields,
and Channel#exec yields the receiver, so previously, we were waiting
twice on the same channel.  This removes the duplicated wait inside
the block, as the wait outside the block will always be called.
2025-10-02 08:14:56 -07:00
..
ai Change rubocop TargetRubyVersion to 3.4 2025-04-26 06:51:19 +09:00
dns_zone Change all create_with_id to create 2025-08-06 01:55:51 +09:00
github Log blob storage setup completion 2025-08-20 09:27:49 +02:00
kubernetes Add install_rhizome function to update rhizome in control plane nodes 2025-09-24 14:19:38 +02:00
minio Work around bug in endpoint for single server minio clusters 2025-09-27 02:10:40 +09:00
postgres Workaround for nil project access in E2E tests 2025-09-16 10:12:05 +02:00
victoria_metrics Do not include server cert when providing CA data to VictoriaMetrics::Client 2025-09-27 02:10:40 +09:00
access_control_entry_spec.rb Use create_with_id in the specs 2025-08-07 02:13:08 +09:00
account_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
action_type_spec.rb Add ActionType::NAME_MAP for mapping action names to uuids 2024-12-24 11:02:06 -08:00
address_spec.rb Fix ipv4_address table population in Address#populate_ipv4_addresses 2025-06-21 07:37:04 +09:00
api_key_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
archived_record_spec.rb Add a warning to create more archived_record/audit_log partitions, before it would error 2025-05-20 02:33:19 +09:00
billing_info_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
billing_record_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
boot_image_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
firewall_rule_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
firewall_spec.rb Rename FirewallsPrivateSubnets to PrivateSubnetFirewall 2025-08-08 00:31:44 +09:00
github_installation_spec.rb Use create_with_id in the specs 2025-08-07 02:13:08 +09:00
github_runner_spec.rb Use create_with_id in the specs 2025-08-07 02:13:08 +09:00
host_provider_spec.rb Replace references of HetznerHost with HostProvider 2025-01-31 14:24:34 +01:00
invoice_spec.rb Switch from using [] to using member methods for when using the invoice serializer 2025-08-26 02:08:44 +09:00
ipsec_tunnel_spec.rb Remove refresh_mesh logic 2023-08-22 17:11:00 +02:00
load_balancer_spec.rb Rename LoadBalancersVms to LoadBalancerVm 2025-08-08 00:31:44 +09:00
load_balancer_vm_port_spec.rb Remove duplicate retry logic for LoadBalancerVmPort healthcheck 2025-09-08 11:47:10 +02:00
location_spec.rb Enforce project location access in routes 2025-04-07 08:53:50 -07:00
nic_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
object_metatag_spec.rb Allow authorization methods to accept objects in addition to ids 2025-09-18 02:56:28 +09:00
oidc_provider_spec.rb Handle OIDC providers where issuer includes a path 2025-08-01 04:44:02 +09:00
page_spec.rb Add Page.group_by_vm_host dataset method 2025-09-03 02:39:04 +09:00
payment_method_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
pci_device_spec.rb Get name of PCI device 2025-03-09 15:47:45 +01:00
private_subnet_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
project_quota_spec.rb Add tests to ensure uniqueness of default quotas 2024-07-26 11:51:20 +02:00
project_spec.rb Calculate effective vCPUs quota for Kubernetes clusters of projects 2025-09-26 13:43:45 +03:00
semaphore_spec.rb Make Semaphore.incr use a single query 2025-06-04 05:26:37 +09:00
spec_helper.rb Parallelize unit tests 2024-03-04 10:39:35 +01:00
sshable_spec.rb Use a timeout by default in Sshable#cmd 2025-10-02 08:14:56 -07:00
storage_device_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
strand_spec.rb Use Strand constants for prepared statements 2025-06-27 01:57:33 +09:00
usage_alert_spec.rb Remove all skip_if_frozen{_models} calls in the specs 2024-10-30 12:08:24 -07:00
vm_host_slice_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
vm_host_spec.rb Enable retry logic for VmHost monitor healthchecks 2025-09-08 11:47:10 +02:00
vm_pool_spec.rb Change all create_with_id to create 2025-08-06 01:55:51 +09:00
vm_spec.rb Avoid the use of serializers for the load balancer show template 2025-08-08 01:52:14 +09:00
vm_storage_volume_spec.rb Use vring_workers as num_queues of Ubiblk backed volumes. 2025-09-09 11:58:45 -07:00