Possible exit codes
upctl
sets exit code based on number of failed tasks up to exit code 99. This example demonstrates executions with few different exit codes.
To keep track of resources created during this example, we will use common prefix in all resource names.
Exit code 100 is set, for example, when command argument validation fails.
Let's create two server and stop one of those to later see other failing exit codes. These command should succceed, and thus return zero exit code.
# Create ssh-key into current working directory
ssh-keygen -t ed25519 -q -f "./id_ed25519" -N ""
upctl server create --hostname ${prefix}vm-1 --zone pl-waw1 --ssh-keys ./id_ed25519.pub --wait
upctl server create --hostname ${prefix}vm-2 --zone pl-waw1 --ssh-keys ./id_ed25519.pub --wait
upctl server stop ${prefix}vm-1 --wait
Now let's try to stop both both of the created servers. Exit code will be one, as ${prefix}vm-1
is already stopped and thus cannot be stopped again. ${prefix}vm-2
, though, will be stopped as it was online. Thus one of the two operations failed.
If we now try to run above command again, exit code will be two as both of the servers are already stopped. Thus both stop operations failed.
Finally, we can cleanup the created resources.