1. 02 Dec, 2015 1 commit
  2. 22 Oct, 2015 1 commit
    • Luis Araujo's avatar
      Change job command line interface and output · cf269024
      Luis Araujo authored
      Now the job command will only show the job name by default if no
      other option is passed, and it will require explicitly the new
      --tests option to list the job tests.
      
      This commit also makes the command output cleaner.
      
      These changes are intended to make the job command resemble how
      the test command behaves.
      cf269024
  3. 21 Oct, 2015 1 commit
  4. 20 Oct, 2015 2 commits
    • Luis Araujo's avatar
      Improve test command interface options and output · 499da27a
      Luis Araujo authored
      This commit implements the following changes to the test command
      line interface:
      
      - It now won't show the test results by default, and instead the
        command line option --no-results is replaced by the option
        -r/--results to explicitly tell the command to show the results.
      - It makes the displayed output cleaner for the --info option.
      499da27a
    • Luis Araujo's avatar
      Add the options to show all the test results in analyse · 62671b2d
      Luis Araujo authored
      This commit adds the flag -a/--all-results to the analyse command
      so it expands and show all test results (not only failed results).
      
      It sets a limit to show only 500 test results for each status, and
      it prints a message to check the bundle link for further results if
      that's the case. This limit can be ignored with the --no-limit
      option.
      
      It also refactors some of the code to be cleaner for printing the
      different test results.
      62671b2d
  5. 02 Oct, 2015 1 commit
    • Luis Araujo's avatar
      Add the queue command · 5bf7fd50
      Luis Araujo authored
      This command will list all the submitted and running jobs with their
      submit or start time respectively.
      5bf7fd50
  6. 29 Sep, 2015 1 commit
  7. 24 Sep, 2015 2 commits
    • Luis Araujo's avatar
      Change argument name to build the job id list · e19872f8
      Luis Araujo authored
      This commit changes the special argument name from 'job_id' to
      'job_ids' to build the job id list. This is a more appropriate
      name for such an argument and fixes the case where the command
      only takes a single job id (named job_id) and doesn't need to
      build a list.
      e19872f8
    • Luis Araujo's avatar
      Add the job id range notation · aa6d5264
      Luis Araujo authored
      This commit adds a range notation to specify the JOB ID in those
      commands requirng such an argument.
      
      The notation for JOB ID's can now be a range like: '0-N' to
      process jobs with ID from 0 to N. The notation keeps also working
      fine specifying a single JOB ID, or even a combination of both,
      for example: '0 1-6 20-23 99' will work as expected
      processing each of the specific JOB ID's.
      aa6d5264
  8. 22 Sep, 2015 2 commits
    • Luis Araujo's avatar
      Add the test command · 8ad9468c
      Luis Araujo authored
      This command will show information for the tests executed
      by the specified job id. It offers several options to display the
      test results and test metadata.
      
      This command can be seen like a front-end to the test API lqa_api.test.
      8ad9468c
    • Luis Araujo's avatar
      Add the liststreams command · f1dacab6
      Luis Araujo authored
      This command will list all the bundle streams the logged in user
      has access to.
      f1dacab6
  9. 18 Sep, 2015 1 commit
    • Luis Araujo's avatar
      Add job command to fetch and display job information · 05e2874f
      Luis Araujo authored
      This commit adds the new job command at lqa_tool.commands.job.
      
      This command is used to fetch and display the information of the
      specified job ids. It is basically a command line front-end that
      directly maps to methods in the job API to show job metadata.
      05e2874f
  10. 15 Sep, 2015 1 commit
  11. 11 Sep, 2015 1 commit
  12. 04 Sep, 2015 1 commit
  13. 01 Sep, 2015 2 commits
  14. 28 Aug, 2015 1 commit
    • Luis Araujo's avatar
      Add the --live option to the output command · c1097dbe
      Luis Araujo authored
      This option allows to fetch the job output and show it incrementally
      to stdout as it is being generated (live) with a time delay of 0.5
      seconds for the data polling.
      
      The new --file option was also added to make clear that specifying
      a FILE or using --live is mutually exclusive
      c1097dbe
  15. 19 Aug, 2015 2 commits
    • Luis Araujo's avatar
      Add priority option to submit command · 7708ae6e
      Luis Araujo authored
      This option will allow to set the priority of the submitted job.
      
      The only available choices for such an option are low, medium and
      high (which corresponds to the LAVA priority values), and using
      this option will also override the 'priority' field in the json
      template if it is used as a profile variable.
      7708ae6e
    • Luis Araujo's avatar
      Add the mkstream command · b3c45ac4
      Luis Araujo authored
      This command allows to create bundle streams with its different
      available options.
      
      Streams can have access public or private, and they can be
      anonymous, personal or owned by a team. The mkstream command
      allows the creation and configuration of the different stream modes
      implementing convenient defaults.
      
      Without any command line option, mkstream defaults to create a
      public personal stream for the logged in user.
      b3c45ac4
  16. 06 Aug, 2015 1 commit
    • Luis Araujo's avatar
      Wait timeout value in more human friendly format · 8181bb85
      Luis Araujo authored
      This commits adds the feature to specify the timeout value
      for the wait command in a human friendly format.
      
      The supported notation is using the suffixes <time>h, <time>m,
      and <time>s for specifying the <time> in hours, minutes and
      seconds respectively.
      
      The value defaults to seconds if no suffix notation is specified.
      8181bb85
  17. 04 Aug, 2015 1 commit
    • Luis Araujo's avatar
      Remove import of unneeded modules · 04a6a414
      Luis Araujo authored
      This commits removes the unnecessary importing from some modules
      in the lqa_tool module (probably left over from previous commits).
      04a6a414
  18. 31 Jul, 2015 1 commit
    • Luis Araujo's avatar
      Add the devices command · 1dc78934
      Luis Araujo authored
      This command will show all the available devices with the following
      information: hostname, device type, device state and the job id
      if it is running a job.
      1dc78934
  19. 20 Jul, 2015 1 commit
    • Luis Araujo's avatar
      Add the output command · 792ab01c
      Luis Araujo authored
      This command will fetch the job log.
      
      It will show the log file to stdout by default, or it will save it
      to file name [FILE] if such an argument is passed.
      792ab01c
  20. 14 Jul, 2015 1 commit
  21. 24 Jun, 2015 1 commit
  22. 22 Jun, 2015 1 commit
    • Luis Araujo's avatar
      Allow to set a timeout value for the submit wait option · d5fb00cf
      Luis Araujo authored
      This will allow to set an arbitrary timeout value to the
      --wait option of the submit command. It will default to
      3 hours (10800 seconds) if the option is passed with no value.
      
      This patch also removes the time module (unneeded) from the
      wait_job command.
      d5fb00cf
  23. 19 Jun, 2015 1 commit
    • Luis Araujo's avatar
      Get the job ID as integer · 740c8b99
      Luis Araujo authored
      Since the XMLRPC calls can happily work with integer values too,
      make the job ID representation in lqa an integer. Converting to
      string explicitly whenever necessary.
      740c8b99
  24. 17 Jun, 2015 1 commit
    • Luis Araujo's avatar
      Add the ProfileNotFound exception · 5033d22d
      Luis Araujo authored
      Add a module for exceptions and restructure the code to make it
      more convenient to use exceptions and write unit tests.
      
      - Add the ProfileNotFound exception. This makes the code clearer
        to catch this error from the submit command.
      - Now the command calls are simpler (omitting passing the parser).
      - Now the main method to start running the lqa sub-commands is called
        run() and the Cli() initialization only takes care of setting up
        the parser.
      5033d22d
  25. 08 Jun, 2015 1 commit
    • Luis Araujo's avatar
      Add 'wait' subcommand to wait for test jobs completion · e97ddf97
      Luis Araujo authored
      This adds the 'wait' subcommand that will allow to wait for
      test jobs completion.
      
      It uses polling to check for the job status every 30 seconds
      and showing its current status to stdout.
      
      It defaults to a waiting timeout of 10800 secs (3 hrs) but this
      can be changed using the '--timeout' flag. The waiting can be
      interrupted using Ctrl-C.
      
      The subcommand is also made available as the '--wait' option
      in the submit command, so that it can be used while submitting
      jobs at once, like for example:
      
      $ lqa submit --all-profiles -g profiles.yaml --wait
      e97ddf97
  26. 03 Jun, 2015 1 commit
    • Luis Araujo's avatar
      The submit subcommand can be invoked with no arguments · 657ab131
      Luis Araujo authored
      This is actually _required_ as this command can infer the arguments
      in several ways and not only from the command line (for example,
      from the templates-dir profile variable).
      
      Reverting this change from previous commit.
      657ab131
  27. 02 Jun, 2015 1 commit
    • Luis Araujo's avatar
      Implement subcommands interface using argparse · 302327a9
      Luis Araujo authored
      Use the subparsers capabilities of argparse itself to implement
      the subcommands interface.
      
      Other changes:
      - The submit subcommand will now exit with error if no job file is
        specified (too few arguments error).
      - Clearer help messages for commands.
      - Use a more sensible name to the FetchResultsCmd argument variable.
      302327a9
  28. 26 May, 2015 1 commit
    • Luis Araujo's avatar
      Use jinja2 as the template engine · cba3e72a
      Luis Araujo authored
      This implements templating using the jinja2 module.
      
      Other minor changes include:
      
      - Now template variables can't contain '-', so replace this
        character by '_' in the template and profile examples.
      - Add image_type to the template and profile examples.
      - Add the --debug-vars option to the submit job command
        to show undefined variables in the template (use with caution).
      - Include the jinja2 dependency in the setup.py installer.
      cba3e72a
  29. 20 May, 2015 1 commit
    • Luis Araujo's avatar
      Report generation command (Analyse subcommand) · d4647ba2
      Luis Araujo authored
      This command will generate a complete report for the
      specified job ids.
      
      The job report shows the following information:
      
      - Header with the number of jobs analysed including the
      report date generation.
      - List of complete and incomplete jobs.
      - Complete jobs can be either 'fully successful' or 'with failures'.
      - Jobs with failures will show by default the number of failed
      tests limiting the number to 100, if there are more failed results,
      it will print a message pointing to check its bundle stream.
      - It shows the job and bundle stream links for each test (no matter
      its status, even including incomplete jobs).
      - Incomplete jobs are those jobs that doesn't offer any results to
      analyse (this can happen for various reason, but it is mainly
      those jobs that have no available bundle).
      d4647ba2
  30. 13 May, 2015 1 commit
    • Luis Araujo's avatar
      Restructure commands as objects · 6bb8e0e9
      Luis Araujo authored
      Make every lqa command an object inheriting from a base Command
      class.
      
      This introduces a new hierarchy for commands where each of
      them will live in its own file inside the commands module
      (commands/submit_job, commands/cancel_job, and so on...).
      
      This patch also includes the 'lqa_api' module which is intended
      to offer convenient objects and methods to access LAVA api, and
      it already adds a Job object that can be used to easily query
      job information.
      6bb8e0e9
  31. 12 May, 2015 1 commit
  32. 11 May, 2015 1 commit
    • Luis Araujo's avatar
      The -g flag is required for the profiles options · bccfbd3c
      Luis Araujo authored
      Make sure that a profile file is specified with the -g/--profile-file
      option when using any of the profiles flags.
      
      It checks this requirement at the parser level and also in a
      more informal way (a re-check) at the submit_job method level.
      
      This patch also fixes some minor comments typos.
      bccfbd3c
  33. 21 Apr, 2015 3 commits