tarantool / cartridge-cli

Command-line utility to manage tarantool cartridge applications
Other
49 stars 17 forks source link

Allowed to start process with any name #766

Open DifferentialOrange opened 1 year ago

DifferentialOrange commented 1 year ago

cartridge allows to start a process with any name disregarding instances.yml contents:

cat ./instances.yml
---
myapp.router:
  advertise_uri: localhost:3301
  http_port: 8081

myapp.s1-master:
  advertise_uri: localhost:3302
  http_port: 8082

myapp.s1-replica:
  advertise_uri: localhost:3303
  http_port: 8083

myapp.s2-master:
  advertise_uri: localhost:3304
  http_port: 8084

myapp.s2-replica:
  advertise_uri: localhost:3305
  http_port: 8085

myapp-stateboard:
  listen: localhost:4401
  password: passwd
cartridge start not_exist -d
   • myapp.not_exist... OK
cartridge start not_exist_2 -d
   • myapp.not_exist_2... OK
cartridge start not_exist_3 -d
   • myapp.not_exist_3... OK
cartridge start not_exist -d
   • myapp.not_exist... SKIPPED
   ⨯ myapp.not_exist: Process is already running
   ⨯ Failed to start some instances
cartridge stop not_exist
   • myapp.not_exist... OK
cartridge stop not_exist2
   • myapp.not_exist2... SKIPPED
   • myapp.not_exist2: Process is not running
cartridge stop not_exist_2
   • myapp.not_exist_2... OK
cartridge stop not_exist_3
   • myapp.not_exist_3... OK

Sometimes you also may catch Socket bind error: Address already in use.

DifferentialOrange commented 1 year ago

We need to be careful with this one since someone may rely on this behavior