Skip to content
  • Adam Daniels's avatar
    3b5b34e3
    [rubygems/rubygems] Set $0 to exe when running `gem exec` to fix name in CLI output · 3b5b34e3
    Adam Daniels authored
    The $0 value is used in many CLI libraries to determine the name of the
    application, when displaying help and error messages.
    
    Without setting this value, it defaults to `gem` which can be confusing.
    
    Before:
    
    ```
    $ gem exec kamal help
    Commands:
      gem accessory           # Manage accessories (db/redis/search)
      gem app                 # Manage application
      gem audit               # Show audit log from servers
      gem build               # Build application image
      gem config              # Show combined config (including secrets!)
      gem deploy              # Deploy app to servers
      gem details             # Show details about all containers
      gem docs [SECTION]      # Show Kamal configuration documentation
      gem help [COMMAND]      # Describe available commands or one specific command
      gem init                # Create config stub in config/deploy.yml and secrets stub in .kamal
      gem lock                # Manage the deploy lock
      gem proxy               # Manage kamal-proxy
      gem prune               # Prune old application images and containers
      gem redeploy            # Deploy app to servers without bootstrapping servers, starting kamal-proxy, pruning, and registry login
      gem registry            # Login and -out of the image registry
      gem remove              # Remove kamal-proxy, app, accessories, and registry session from servers
      gem rollback [VERSION]  # Rollback app to VERSION
      gem secrets             # Helpers for extracting secrets
      gem server              # Bootstrap servers with curl and Docker
      gem setup               # Setup all accessories, push the env, and deploy app to servers
      gem upgrade             # Upgrade from Kamal 1.x to 2.0
      gem version             # Show Kamal version
    ```
    
    After:
    
    ```
    $ gem exec kamal help
    Commands:
      kamal accessory           # Manage accessories (db/redis/search)
      kamal app                 # Manage application
      kamal audit               # Show audit log from servers
      kamal build               # Build application image
      kamal config              # Show combined config (including secrets!)
      kamal deploy              # Deploy app to servers
      kamal details             # Show details about all containers
      kamal docs [SECTION]      # Show Kamal configuration documentation
      kamal help [COMMAND]      # Describe available commands or one specific command
      kamal init                # Create config stub in config/deploy.yml and secrets stub in .kamal
      kamal lock                # Manage the deploy lock
      kamal proxy               # Manage kamal-proxy
      kamal prune               # Prune old application images and containers
      kamal redeploy            # Deploy app to servers without bootstrapping servers, starting kamal-proxy, pruning, and registry login
      kamal registry            # Login and -out of the image registry
      kamal remove              # Remove kamal-proxy, app, accessories, and registry session from servers
      kamal rollback [VERSION]  # Rollback app to VERSION
      kamal secrets             # Helpers for extracting secrets
      kamal server              # Bootstrap servers with curl and Docker
      kamal setup               # Setup all accessories, push the env, and deploy app to servers
      kamal upgrade             # Upgrade from Kamal 1.x to 2.0
      kamal version             # Show Kamal version
    ```
    
    https://github.com/rubygems/rubygems/commit/4fd060b96d
    3b5b34e3
    [rubygems/rubygems] Set $0 to exe when running `gem exec` to fix name in CLI output
    Adam Daniels authored
    The $0 value is used in many CLI libraries to determine the name of the
    application, when displaying help and error messages.
    
    Without setting this value, it defaults to `gem` which can be confusing.
    
    Before:
    
    ```
    $ gem exec kamal help
    Commands:
      gem accessory           # Manage accessories (db/redis/search)
      gem app                 # Manage application
      gem audit               # Show audit log from servers
      gem build               # Build application image
      gem config              # Show combined config (including secrets!)
      gem deploy              # Deploy app to servers
      gem details             # Show details about all containers
      gem docs [SECTION]      # Show Kamal configuration documentation
      gem help [COMMAND]      # Describe available commands or one specific command
      gem init                # Create config stub in config/deploy.yml and secrets stub in .kamal
      gem lock                # Manage the deploy lock
      gem proxy               # Manage kamal-proxy
      gem prune               # Prune old application images and containers
      gem redeploy            # Deploy app to servers without bootstrapping servers, starting kamal-proxy, pruning, and registry login
      gem registry            # Login and -out of the image registry
      gem remove              # Remove kamal-proxy, app, accessories, and registry session from servers
      gem rollback [VERSION]  # Rollback app to VERSION
      gem secrets             # Helpers for extracting secrets
      gem server              # Bootstrap servers with curl and Docker
      gem setup               # Setup all accessories, push the env, and deploy app to servers
      gem upgrade             # Upgrade from Kamal 1.x to 2.0
      gem version             # Show Kamal version
    ```
    
    After:
    
    ```
    $ gem exec kamal help
    Commands:
      kamal accessory           # Manage accessories (db/redis/search)
      kamal app                 # Manage application
      kamal audit               # Show audit log from servers
      kamal build               # Build application image
      kamal config              # Show combined config (including secrets!)
      kamal deploy              # Deploy app to servers
      kamal details             # Show details about all containers
      kamal docs [SECTION]      # Show Kamal configuration documentation
      kamal help [COMMAND]      # Describe available commands or one specific command
      kamal init                # Create config stub in config/deploy.yml and secrets stub in .kamal
      kamal lock                # Manage the deploy lock
      kamal proxy               # Manage kamal-proxy
      kamal prune               # Prune old application images and containers
      kamal redeploy            # Deploy app to servers without bootstrapping servers, starting kamal-proxy, pruning, and registry login
      kamal registry            # Login and -out of the image registry
      kamal remove              # Remove kamal-proxy, app, accessories, and registry session from servers
      kamal rollback [VERSION]  # Rollback app to VERSION
      kamal secrets             # Helpers for extracting secrets
      kamal server              # Bootstrap servers with curl and Docker
      kamal setup               # Setup all accessories, push the env, and deploy app to servers
      kamal upgrade             # Upgrade from Kamal 1.x to 2.0
      kamal version             # Show Kamal version
    ```
    
    https://github.com/rubygems/rubygems/commit/4fd060b96d
Loading