Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-9134

[GSS](7.1.0) JBoss-CLI "deploy -l" always returns exit code 1 even when it succeeds

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 7.1.0.DR13
    • 7.0.4.GA
    • CLI
    • None
    • Hide

      1. Start JBoss with deploying some applications
      2. Execute the following JBoss-CLI command

      $ ./bin/jboss-cli.sh -c --command="deploy -l"
      

      3. Check the exit code

      $ echo $?
      

      Exit code 0 should be returned but you will see that exit code 1 is returned.

      Show
      1. Start JBoss with deploying some applications 2. Execute the following JBoss-CLI command $ ./bin/jboss-cli.sh -c --command= "deploy -l" 3. Check the exit code $ echo $? Exit code 0 should be returned but you will see that exit code 1 is returned.

    Description

      JBoss-CLI "deploy -l" always returns exit code 1 even when it succeededs.

      It looks that DeploymentHandler.listDeployments() always throws CommandFormatException and this causes the "deploy -l" command returns exit code 1.

      cli/src/main/java/org/jboss/as/cli/handlers/DeploymentHandler.java
       55     protected void listDeployments(CommandContext ctx, boolean l) throws CommandFormatException {
       56         if(!l) {
       57             printList(ctx, Util.getDeployments(ctx.getModelControllerClient()), l);
       58             return;
       59         }
       60         final ModelControllerClient client = ctx.getModelControllerClient();
       61         final List<String> names = Util.getDeployments(client);
       62         if(names.isEmpty()) {
       63             return;
       64         }
       65 
       66         final StrictSizeTable table = new StrictSizeTable(names.size());
       67         final List<Property> descriptions = getDeploymentDescriptions(ctx, names).asPropertyList();
       68         for(Property prop : descriptions) {
       69             final ModelNode step = prop.getValue();
       70             if(step.hasDefined(Util.RESULT)) {
       71                 final ModelNode result = step.get(Util.RESULT);
       72                 table.addCell(Util.NAME, result.get(Util.NAME).asString());
       73                 table.addCell(Util.RUNTIME_NAME, result.get(Util.RUNTIME_NAME).asString());
       74                 if(result.has(Util.ENABLED)) {
       75                     table.addCell(Util.ENABLED, result.get(Util.ENABLED).asString());
       76                 }
       77                 if(result.has(Util.STATUS)) {
       78                     table.addCell(Util.STATUS, result.get(Util.STATUS).asString());
       79                 }
       80             }
       81             if(!table.isAtLastRow()) {
       82                 table.nextRow();
       83             }
       84         }
       85         throw new CommandFormatException(table.toString());   // -> CommandFormatException is always thrown. This looks a root cause.
       86     }
      
      cli/src/main/java/org/jboss/as/cli/impl/CommandContextImpl.java
       796     public void handleSafe(String line) {
       797         exitCode = 0;
       798         try {
       799             handle(line);
       800         } catch(Throwable t) {
       801             error(Util.getMessagesFromThrowable(t));
       802         }
       803     }
        :
       879     protected void error(String message) {
       880         this.exitCode = 1;
       881         printLine(message);
       882     }
      

      Attachments

        Issue Links

          Activity

            People

              rhn-support-mmiura Masafumi Miura
              rhn-support-mmiura Masafumi Miura
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: