Hello community, here is the log from the commit of package openQA for openSUSE:Factory checked in at 2019-09-18 13:12:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openQA (Old) and /work/SRC/openSUSE:Factory/.openQA.new.7948 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openQA" Wed Sep 18 13:12:19 2019 rev:79 rq:731496 version:4.6.1568387059.db88ff48d Changes: -------- --- /work/SRC/openSUSE:Factory/openQA/openQA-test.changes 2019-07-17 13:21:08.459611161 +0200 +++ /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA-test.changes 2019-09-18 13:12:53.248671628 +0200 @@ -1,0 +2,230 @@ +Tue Sep 17 11:09:08 UTC 2019 - [email protected] + +- Update to version 4.6.1568387059.db88ff48d: + * Add Storable dependency + * Remove debugging + * Create a deepcopy of the settings + * Always sort keys to make behaviour reproducible + * Demonstrate what's going wrong on staging yaml + * Fix duplicate path name + * Update YAML guide and schema to explain custom job template names + * Publish API schema(s) along with other docs + * Fix some issues in the doc markup reported by asciidoc + * Always build docs and allow local generation + * Fix warning caused by filename getting removed from reused form hashref in Mojo::UserAgent + * Cleanup disabled code about 'Sereal' + * Non-experimental YAML routes with explicit schema + * Revert back to duplicating dependencies in dockerfile (#2315) + * Extend the requires of openQA-devel and make them easier to review (#2313) + * Implement optional defaults.settings key in YAML + * Fix container image to use repository paths (#2310) + * Improve test coverage for more background jobs + * Increase coverage by allowing Devel::Cover to collect stats for background jobs + * Fix printing usage when invoking openqa-clone-job --help + * Remove codecov hack that was only added to increase coverage percentage, but does not actually test anything useful + * Scenarios can have different settings + * docker: Use devel package instead of spelling out duplicate dependencies (#2308) + * Cut the test result directory shorter when its length is more than 255 + * Support branch url on openqa-clone-custom-git-refspec + * docs: Hint to 'openQA-devel' for pulling in dependencies + * Delete unused screenshots in separate loop + * docs: Render code correctly (#2306) + * Allow CodeMirror to render off screen + * Show context for REST-API errors to make debugging a little bit easier + * Fix artefact upload errors to show the message instead of the hash address + * Reduce coverage requirement a bit until we can make Devel::Cover include subprocesses in stats + * Don't use 3rd set of names for passing dependencies to JS + * Use capitalized names for module-scoped variables + * Consider directly chained deps in several places + * Support _START_DIRECTLY_AFTER_JOBS + * Add dependency type for START_DIRECTLY_AFTER_TEST + * Failed isotovideo status checks are fairly harmless, but a log message can be useful for debugging + * Since we now expect there to be more subprocesses, there is no reason to log them as unexpected anymore + * Do not try to reconnect the WebSocket connection in subprocesses + * Make annoying log message debug level instead of info for now + * Test API and upload errors + * Test asset uploads too + * Move artefact upload into a webui connection method so it can be easily mocked for testing + * Add more worker upload tests + * Fix fake WebSocket transaction to correctly defer callback execution + * Improve test coverage of the worker job life cycle + * Move all direct uses of Mojo::UserAgent from OpenQA::Worker::Job to client modules + * Add new worker tests and an isotovideo client module that can be mocked easily + * Perform isotovideo status checks non-blocking too + * Try to defer all callbacks correctly to the next reactor tick + * Handle exceptions in uploads + * Make image uploads non-blocking too + * Callbacks cannot be optional in an async application + * Update mock worker tests to be able to deal with multiple processes handling uploads + * Handle asset and logfile uploads in a subprocess + * Split up upload handling into more manageable parts + * Reuse t/test_postgresql in container test as well + * Harmonize dependencies in cpanfile+openQA.spec + * spec: Specify more dependencies needed for local development + * spec: Fix test dependencies after os-autoinst removed dependencies + * Move codemirror javascript file to javascript label (#2297) + * spec: Fix 'devel' package (for real) with proper macro definition + * spec: Fix error about python shebang + * Fix 'devel' package + * docs: Update openSUSE repos using $releasever, priorities, better names + * spec: Add 'devel' package + * worker job: Add log of second virtio console to upload list + * Fix accidentally removed dependency + * Add missing apparmor permission (#2285) + * Remove shellcheck disable + * Modernize bash tests + * Fix test that did nothing + * Fix argument handling of a function and turn background job into a real plugin + * Remove print from test + * Avoid using HAVING on ScreenshotLinks + * No longer delete job modules one by one + * Remove support for old migration + * Use IPC::Run instead of IPC::Run::Simple + * More code style fixes + * Tidy developer mode test + * Test assert_screen args with array of needle tags + * Code style changes and unit test for current_api_function handling + * Increase lock timeouts a bit because some jobs might just need a little more time and the risk or locks not getting cleared at the end is very low (#2280) + * Show needle tags for assert_screen/check_screen + * Validate tag input field in needleeditor + * Render a diff of the job group YAML in preview/ save + * Use purple for blocked jobs + * Distinguish scheduled and blocked jobs on test result overview + * Delete vim footer in files that still have it + * Makefile: Allow again to select single test cases with PROVE_ARGS + * Preserve QEMU PID file on pool dir cleanup if QEMU still running + * Improve tests for triggering pool directory cleanup + * Test support for non-ASCII chars in needle JSON only in description + * Tweaks according to code review + * Handle newline characters in form parameters correctly + * Use single gru job + * Always include the group property editor + * Do not delete assets based on empty size + * Remove useless quoting + * Check finished job cout in async test + * Increase timeout in async test + * Remove unconditional sleeps from async test + * Add Gru Test with Mock Api Server + * Split Folders and Gru controllers + * Add Rsync Queue UI + * Use Gru for rsync + * ObsRsync handle requests asynchronously + * job cancel: Explicitly return a number to avoid warning + * Fix warning about undefined $testresdir + * Fix flaky test t/api/11-bugs.t + * scheduler: Fix warnings about undefined variables + * Fix rendering of the openqa.cmd + * openqa-bootstrap: Fix logic of git clone + * Add machine filter in 'Test result overview' + * docs: Mention most simple installation instructions and "clone-job" first + * docs: Add documentation for immediate bootstrap+clone + * docs: Fix internal link + * branding: Prevent undefined flavor in external_reporting.html.ep + * apparmor: Allow virtio_console based on named PIPE + * spec: Split out all dependencies properly per sub-package + * apparmor: Allow loading of client.conf in usual home of geekotest + * apparmor: Allow loading override templates in /etc/openqa/templates/ + * branding: Prevent warnings about undefined $distri in external_reporting.html.ep + * Test worker behavior if _upload_log_file fails + * Improve needle editor test + * Change iso scheduling behavior to not obsolete older jobs anymore + * Improve calculating preferred machine + * Fix error when saving needle JSON with non-ASCII characters + * Modify workaround property to support adding reason + * Fix 30-test_parser.t warnings + * Remove exported functions from OpenQA::File and stop using private methods as part of the public API + * docs: Fix explanation for masquerading which is needed on all involved zones + * docs: Simplify firewalld commands by using the runtime variants + * docs: Make the current "firewalld" approach more prominent than old SuSEfirewall2 + * Fix PROVE_ARGS in spec file + * docs: Remove obsolete section about "wicked < 0.6.23" + * load_templates: fix --clean and reading perl templates + * Do not handle arguments in reverse and move OpenQA::Files class into a proper package + * Make worker retry-delay configurable + * Test retry behavior of worker + * Extend retry delay of worker to 60 seconds if web UI busy + * Adapt codecov target to current coverage of 85% + * Allow * placeholders in product names + * docs: Fix marking for 2nd level list about "wicked pros" + * Prevent over-escaping of bug titles in test result overview + * Adjust web socket server test + * Avoid 'return;' in web socket code + * Fix sending web socket message when job not exists + * Improve transaction handling in web socket server + * AMQP: allow no message prefix + * Fix '--no-cleanup' on worker start regression + * Remove OpenQA::Schema::Result::Jobs::set_scheduling_worker + * Replace Text::Markdown and HTML::Restrict with CommonMark for much better comment rendering speed and security + * Adding a new parameter to support not schedule parent test suite + * Timeout for wait_for_ajax + * Let prove handle @INC for us + * Expose saving and hiding of the legacy editor in the UI + * Scrub dangerous HTML from comments + * Abstract out markdown handling into a new class + * worker: Consider ws disconnects as uncritical during job execution + * Fix worker crash when sending job ID + * YAML: don't merge scenarios with multiple machines with defaults + * Add dependency on CommonMark, which will soon replace Text::Markdown for a 1000% performance increase (#2228) + * Ignore cpu_modelname in worker test + * Let worker pass current job ID on re-registration + * Allow worker to pass its current job on registration + * Improve test for checking job status and output + * Improve error message when rejecting status update + * Add YAML support to {dump,load}_templates + * Add systemd timer to trigger daily audit event cleanup + * Delete old audit events according to configured storage duration + * AMQP: don't encode message body to JSON before publishing + * Handle reusing existing connection in devel fullstack test + * Improve documentation about running test of openQA itself + * Timeout for wait_for_developer_console_contains_log_message + * Override default exception handler in extra daemons + * Fix default route of live handler to prevent template errors + * Docs for the job group editor and YAML REST + * AMQP: allow passing headers to publish_amqp + * Add note about openQA's CLI interface + * openqa-bootstrap: Fix lookup of configure-web-proxy + * Improve rendering summary in test result overview + * t/api/03-auth.t: don't actually wipe asset files from disk + * Mojo::Pg 4.14 requires the "delete $dbh->{private_...}" feature from DBI 1.632 + * Log errors when reading worker config + * Add type/additionalProperties to products spec + * spec: Fix SLE12 build with patched out python subpackage + * Start a documentation section on how to build openQA plugins + * templates: Update references to documentation in help texts + * docs: Update references to target versions in our issue tracker + * Document adding new dependencies + * Improve doc section about starting webserver from Git + * Move testing with production data to database section ++++ 33 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/openQA/openQA-test.changes ++++ and /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA-test.changes --- /work/SRC/openSUSE:Factory/openQA/openQA-worker-test.changes 2019-07-17 13:21:08.483611147 +0200 +++ /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA-worker-test.changes 2019-09-18 13:12:55.364671183 +0200 @@ -2 +2 @@ -Mon Jul 15 16:24:19 UTC 2019 - [email protected] +Tue Sep 17 11:09:08 UTC 2019 - [email protected] @@ -4,49 +4,357 @@ -- Update to version 4.6.1563206570.e00d3964: - * Make the websocket server tests less noisy - * docker: Add back 'Test::Compile' as needed for os-autoinst - * spec: Fix invalid '%perl' introduced with 3aadc34c - * Test handling worker job status changes - * Fix passing --no-cleanup worker CLI option - * fetchneedles: Use subshells efficiently for dir changes - * fetchneedles: Fix indention - * fetchneedles: Prevent noisy output about auto-packing git repos - * Ensure query in jobs API does not become too big - * Remove group name from job templates example - * Adapt order of job template example - * Remove dead auth tests from a DBus refactoring 4 years ago - * Give the authentication routes plugins will use names and test them - * Improve and simplify compile check - * Add Test::Strict to Docker container - * Allow plugins to add links to the menu - * Allow any suffix for TAP source files - * .travis.yml: Make documentation generation an explicit job, only on master - * .travis.yml: Give readable names to test jobs - * .travis.yml: Put handling of cache dir together - * Extend filter for new/updated admin table rows - * Make log messages of worker tests less verbose - * generate-documentation: Fix wrong script path introduced by 81df2fd - * docs: Fix quotes and apostrophes for asciidoctor/github style - * .travis.yml: Workaround flaky tests with 'travis_test' - * Test kvm module, only if it is not built-in - * Make containers non-x86 archs friendly and update to leap 15.1 - * Remove another useless prototype and an unused function from OpenQA::Utils - * Remove obsolete prototypes - * Polish worker code - * travis_test: Fix typo in 'python3-future' - * Explicitly specify perl module 'Module::Pluggable' to fix warning - * openqa-clone-job: Improve handling --from parameter - * README: Clarify how releases are made - * Adjust testrules.yml to changed worker tests - * Post upload progress after ignoring known images - * Remove dead code for handling known images - * Improve formatting of comments for WebUIConnection attributes - * Remove leftovers from interactive mode - * Fix reporting number of images to send to liveview handler - * Allow stopping worker during job setup - * Rename OpenQA::Worker::Client to OpenQA::Worker::WebUIConnection - * Improve use of attributes in worker code - * Log specific message if ignoring job while already busy - * Enable verbose option in compile check - * Restructure worker - * travis_test: Add dependencies for 'python-scripts' - * Add YAML diff to jobtemplate_create events +- Update to version 4.6.1568387059.db88ff48d: + * Add Storable dependency + * Remove debugging + * Create a deepcopy of the settings + * Always sort keys to make behaviour reproducible + * Demonstrate what's going wrong on staging yaml + * Fix duplicate path name + * Update YAML guide and schema to explain custom job template names + * Publish API schema(s) along with other docs + * Fix some issues in the doc markup reported by asciidoc + * Always build docs and allow local generation + * Fix warning caused by filename getting removed from reused form hashref in Mojo::UserAgent + * Cleanup disabled code about 'Sereal' + * Non-experimental YAML routes with explicit schema + * Revert back to duplicating dependencies in dockerfile (#2315) + * Extend the requires of openQA-devel and make them easier to review (#2313) + * Implement optional defaults.settings key in YAML + * Fix container image to use repository paths (#2310) + * Improve test coverage for more background jobs + * Increase coverage by allowing Devel::Cover to collect stats for background jobs + * Fix printing usage when invoking openqa-clone-job --help + * Remove codecov hack that was only added to increase coverage percentage, but does not actually test anything useful + * Scenarios can have different settings + * docker: Use devel package instead of spelling out duplicate dependencies (#2308) + * Cut the test result directory shorter when its length is more than 255 + * Support branch url on openqa-clone-custom-git-refspec + * docs: Hint to 'openQA-devel' for pulling in dependencies + * Delete unused screenshots in separate loop + * docs: Render code correctly (#2306) + * Allow CodeMirror to render off screen + * Show context for REST-API errors to make debugging a little bit easier + * Fix artefact upload errors to show the message instead of the hash address + * Reduce coverage requirement a bit until we can make Devel::Cover include subprocesses in stats + * Don't use 3rd set of names for passing dependencies to JS + * Use capitalized names for module-scoped variables + * Consider directly chained deps in several places + * Support _START_DIRECTLY_AFTER_JOBS + * Add dependency type for START_DIRECTLY_AFTER_TEST + * Failed isotovideo status checks are fairly harmless, but a log message can be useful for debugging + * Since we now expect there to be more subprocesses, there is no reason to log them as unexpected anymore + * Do not try to reconnect the WebSocket connection in subprocesses + * Make annoying log message debug level instead of info for now + * Test API and upload errors + * Test asset uploads too + * Move artefact upload into a webui connection method so it can be easily mocked for testing + * Add more worker upload tests + * Fix fake WebSocket transaction to correctly defer callback execution + * Improve test coverage of the worker job life cycle + * Move all direct uses of Mojo::UserAgent from OpenQA::Worker::Job to client modules + * Add new worker tests and an isotovideo client module that can be mocked easily + * Perform isotovideo status checks non-blocking too + * Try to defer all callbacks correctly to the next reactor tick + * Handle exceptions in uploads + * Make image uploads non-blocking too + * Callbacks cannot be optional in an async application + * Update mock worker tests to be able to deal with multiple processes handling uploads + * Handle asset and logfile uploads in a subprocess + * Split up upload handling into more manageable parts + * Reuse t/test_postgresql in container test as well + * Harmonize dependencies in cpanfile+openQA.spec + * spec: Specify more dependencies needed for local development + * spec: Fix test dependencies after os-autoinst removed dependencies + * Move codemirror javascript file to javascript label (#2297) + * spec: Fix 'devel' package (for real) with proper macro definition + * spec: Fix error about python shebang + * Fix 'devel' package + * docs: Update openSUSE repos using $releasever, priorities, better names + * spec: Add 'devel' package + * worker job: Add log of second virtio console to upload list + * Fix accidentally removed dependency + * Add missing apparmor permission (#2285) + * Remove shellcheck disable + * Modernize bash tests + * Fix test that did nothing + * Fix argument handling of a function and turn background job into a real plugin + * Remove print from test + * Avoid using HAVING on ScreenshotLinks + * No longer delete job modules one by one + * Remove support for old migration + * Use IPC::Run instead of IPC::Run::Simple + * More code style fixes + * Tidy developer mode test + * Test assert_screen args with array of needle tags + * Code style changes and unit test for current_api_function handling + * Increase lock timeouts a bit because some jobs might just need a little more time and the risk or locks not getting cleared at the end is very low (#2280) + * Show needle tags for assert_screen/check_screen + * Validate tag input field in needleeditor + * Render a diff of the job group YAML in preview/ save + * Use purple for blocked jobs + * Distinguish scheduled and blocked jobs on test result overview + * Delete vim footer in files that still have it + * Makefile: Allow again to select single test cases with PROVE_ARGS + * Preserve QEMU PID file on pool dir cleanup if QEMU still running + * Improve tests for triggering pool directory cleanup + * Test support for non-ASCII chars in needle JSON only in description + * Tweaks according to code review + * Handle newline characters in form parameters correctly + * Use single gru job + * Always include the group property editor + * Do not delete assets based on empty size + * Remove useless quoting + * Check finished job cout in async test + * Increase timeout in async test + * Remove unconditional sleeps from async test + * Add Gru Test with Mock Api Server + * Split Folders and Gru controllers + * Add Rsync Queue UI + * Use Gru for rsync + * ObsRsync handle requests asynchronously + * job cancel: Explicitly return a number to avoid warning + * Fix warning about undefined $testresdir + * Fix flaky test t/api/11-bugs.t + * scheduler: Fix warnings about undefined variables + * Fix rendering of the openqa.cmd + * openqa-bootstrap: Fix logic of git clone + * Add machine filter in 'Test result overview' + * docs: Mention most simple installation instructions and "clone-job" first + * docs: Add documentation for immediate bootstrap+clone + * docs: Fix internal link + * branding: Prevent undefined flavor in external_reporting.html.ep + * apparmor: Allow virtio_console based on named PIPE + * spec: Split out all dependencies properly per sub-package + * apparmor: Allow loading of client.conf in usual home of geekotest + * apparmor: Allow loading override templates in /etc/openqa/templates/ + * branding: Prevent warnings about undefined $distri in external_reporting.html.ep + * Test worker behavior if _upload_log_file fails + * Improve needle editor test + * Change iso scheduling behavior to not obsolete older jobs anymore + * Improve calculating preferred machine + * Fix error when saving needle JSON with non-ASCII characters + * Modify workaround property to support adding reason + * Fix 30-test_parser.t warnings + * Remove exported functions from OpenQA::File and stop using private methods as part of the public API + * docs: Fix explanation for masquerading which is needed on all involved zones + * docs: Simplify firewalld commands by using the runtime variants + * docs: Make the current "firewalld" approach more prominent than old SuSEfirewall2 + * Fix PROVE_ARGS in spec file + * docs: Remove obsolete section about "wicked < 0.6.23" + * load_templates: fix --clean and reading perl templates + * Do not handle arguments in reverse and move OpenQA::Files class into a proper package + * Make worker retry-delay configurable + * Test retry behavior of worker + * Extend retry delay of worker to 60 seconds if web UI busy + * Adapt codecov target to current coverage of 85% + * Allow * placeholders in product names ++++ 212 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/openQA/openQA-worker-test.changes ++++ and /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA-worker-test.changes --- /work/SRC/openSUSE:Factory/openQA/openQA.changes 2019-07-17 13:21:08.535611118 +0200 +++ /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA.changes 2019-09-18 13:12:56.916670856 +0200 @@ -1,0 +2,230 @@ +Tue Sep 17 11:09:08 UTC 2019 - [email protected] + +- Update to version 4.6.1568387059.db88ff48d: + * Add Storable dependency + * Remove debugging + * Create a deepcopy of the settings + * Always sort keys to make behaviour reproducible + * Demonstrate what's going wrong on staging yaml + * Fix duplicate path name + * Update YAML guide and schema to explain custom job template names + * Publish API schema(s) along with other docs + * Fix some issues in the doc markup reported by asciidoc + * Always build docs and allow local generation + * Fix warning caused by filename getting removed from reused form hashref in Mojo::UserAgent + * Cleanup disabled code about 'Sereal' + * Non-experimental YAML routes with explicit schema + * Revert back to duplicating dependencies in dockerfile (#2315) + * Extend the requires of openQA-devel and make them easier to review (#2313) + * Implement optional defaults.settings key in YAML + * Fix container image to use repository paths (#2310) + * Improve test coverage for more background jobs + * Increase coverage by allowing Devel::Cover to collect stats for background jobs + * Fix printing usage when invoking openqa-clone-job --help + * Remove codecov hack that was only added to increase coverage percentage, but does not actually test anything useful + * Scenarios can have different settings + * docker: Use devel package instead of spelling out duplicate dependencies (#2308) + * Cut the test result directory shorter when its length is more than 255 + * Support branch url on openqa-clone-custom-git-refspec + * docs: Hint to 'openQA-devel' for pulling in dependencies + * Delete unused screenshots in separate loop + * docs: Render code correctly (#2306) + * Allow CodeMirror to render off screen + * Show context for REST-API errors to make debugging a little bit easier + * Fix artefact upload errors to show the message instead of the hash address + * Reduce coverage requirement a bit until we can make Devel::Cover include subprocesses in stats + * Don't use 3rd set of names for passing dependencies to JS + * Use capitalized names for module-scoped variables + * Consider directly chained deps in several places + * Support _START_DIRECTLY_AFTER_JOBS + * Add dependency type for START_DIRECTLY_AFTER_TEST + * Failed isotovideo status checks are fairly harmless, but a log message can be useful for debugging + * Since we now expect there to be more subprocesses, there is no reason to log them as unexpected anymore + * Do not try to reconnect the WebSocket connection in subprocesses + * Make annoying log message debug level instead of info for now + * Test API and upload errors + * Test asset uploads too + * Move artefact upload into a webui connection method so it can be easily mocked for testing + * Add more worker upload tests + * Fix fake WebSocket transaction to correctly defer callback execution + * Improve test coverage of the worker job life cycle + * Move all direct uses of Mojo::UserAgent from OpenQA::Worker::Job to client modules + * Add new worker tests and an isotovideo client module that can be mocked easily + * Perform isotovideo status checks non-blocking too + * Try to defer all callbacks correctly to the next reactor tick + * Handle exceptions in uploads + * Make image uploads non-blocking too + * Callbacks cannot be optional in an async application + * Update mock worker tests to be able to deal with multiple processes handling uploads + * Handle asset and logfile uploads in a subprocess + * Split up upload handling into more manageable parts + * Reuse t/test_postgresql in container test as well + * Harmonize dependencies in cpanfile+openQA.spec + * spec: Specify more dependencies needed for local development + * spec: Fix test dependencies after os-autoinst removed dependencies + * Move codemirror javascript file to javascript label (#2297) + * spec: Fix 'devel' package (for real) with proper macro definition + * spec: Fix error about python shebang + * Fix 'devel' package + * docs: Update openSUSE repos using $releasever, priorities, better names + * spec: Add 'devel' package + * worker job: Add log of second virtio console to upload list + * Fix accidentally removed dependency + * Add missing apparmor permission (#2285) + * Remove shellcheck disable + * Modernize bash tests + * Fix test that did nothing + * Fix argument handling of a function and turn background job into a real plugin + * Remove print from test + * Avoid using HAVING on ScreenshotLinks + * No longer delete job modules one by one + * Remove support for old migration + * Use IPC::Run instead of IPC::Run::Simple + * More code style fixes + * Tidy developer mode test + * Test assert_screen args with array of needle tags + * Code style changes and unit test for current_api_function handling + * Increase lock timeouts a bit because some jobs might just need a little more time and the risk or locks not getting cleared at the end is very low (#2280) + * Show needle tags for assert_screen/check_screen + * Validate tag input field in needleeditor + * Render a diff of the job group YAML in preview/ save + * Use purple for blocked jobs + * Distinguish scheduled and blocked jobs on test result overview + * Delete vim footer in files that still have it + * Makefile: Allow again to select single test cases with PROVE_ARGS + * Preserve QEMU PID file on pool dir cleanup if QEMU still running + * Improve tests for triggering pool directory cleanup + * Test support for non-ASCII chars in needle JSON only in description + * Tweaks according to code review + * Handle newline characters in form parameters correctly + * Use single gru job + * Always include the group property editor + * Do not delete assets based on empty size + * Remove useless quoting + * Check finished job cout in async test + * Increase timeout in async test + * Remove unconditional sleeps from async test + * Add Gru Test with Mock Api Server + * Split Folders and Gru controllers + * Add Rsync Queue UI + * Use Gru for rsync + * ObsRsync handle requests asynchronously + * job cancel: Explicitly return a number to avoid warning + * Fix warning about undefined $testresdir + * Fix flaky test t/api/11-bugs.t + * scheduler: Fix warnings about undefined variables + * Fix rendering of the openqa.cmd + * openqa-bootstrap: Fix logic of git clone + * Add machine filter in 'Test result overview' + * docs: Mention most simple installation instructions and "clone-job" first + * docs: Add documentation for immediate bootstrap+clone + * docs: Fix internal link + * branding: Prevent undefined flavor in external_reporting.html.ep + * apparmor: Allow virtio_console based on named PIPE + * spec: Split out all dependencies properly per sub-package + * apparmor: Allow loading of client.conf in usual home of geekotest + * apparmor: Allow loading override templates in /etc/openqa/templates/ + * branding: Prevent warnings about undefined $distri in external_reporting.html.ep + * Test worker behavior if _upload_log_file fails + * Improve needle editor test + * Change iso scheduling behavior to not obsolete older jobs anymore + * Improve calculating preferred machine + * Fix error when saving needle JSON with non-ASCII characters + * Modify workaround property to support adding reason + * Fix 30-test_parser.t warnings + * Remove exported functions from OpenQA::File and stop using private methods as part of the public API + * docs: Fix explanation for masquerading which is needed on all involved zones + * docs: Simplify firewalld commands by using the runtime variants + * docs: Make the current "firewalld" approach more prominent than old SuSEfirewall2 + * Fix PROVE_ARGS in spec file + * docs: Remove obsolete section about "wicked < 0.6.23" + * load_templates: fix --clean and reading perl templates + * Do not handle arguments in reverse and move OpenQA::Files class into a proper package + * Make worker retry-delay configurable + * Test retry behavior of worker + * Extend retry delay of worker to 60 seconds if web UI busy + * Adapt codecov target to current coverage of 85% + * Allow * placeholders in product names + * docs: Fix marking for 2nd level list about "wicked pros" + * Prevent over-escaping of bug titles in test result overview + * Adjust web socket server test + * Avoid 'return;' in web socket code + * Fix sending web socket message when job not exists + * Improve transaction handling in web socket server + * AMQP: allow no message prefix + * Fix '--no-cleanup' on worker start regression + * Remove OpenQA::Schema::Result::Jobs::set_scheduling_worker + * Replace Text::Markdown and HTML::Restrict with CommonMark for much better comment rendering speed and security + * Adding a new parameter to support not schedule parent test suite + * Timeout for wait_for_ajax + * Let prove handle @INC for us + * Expose saving and hiding of the legacy editor in the UI + * Scrub dangerous HTML from comments + * Abstract out markdown handling into a new class + * worker: Consider ws disconnects as uncritical during job execution + * Fix worker crash when sending job ID + * YAML: don't merge scenarios with multiple machines with defaults + * Add dependency on CommonMark, which will soon replace Text::Markdown for a 1000% performance increase (#2228) + * Ignore cpu_modelname in worker test + * Let worker pass current job ID on re-registration + * Allow worker to pass its current job on registration + * Improve test for checking job status and output + * Improve error message when rejecting status update + * Add YAML support to {dump,load}_templates + * Add systemd timer to trigger daily audit event cleanup + * Delete old audit events according to configured storage duration + * AMQP: don't encode message body to JSON before publishing + * Handle reusing existing connection in devel fullstack test + * Improve documentation about running test of openQA itself + * Timeout for wait_for_developer_console_contains_log_message + * Override default exception handler in extra daemons + * Fix default route of live handler to prevent template errors + * Docs for the job group editor and YAML REST + * AMQP: allow passing headers to publish_amqp + * Add note about openQA's CLI interface + * openqa-bootstrap: Fix lookup of configure-web-proxy + * Improve rendering summary in test result overview + * t/api/03-auth.t: don't actually wipe asset files from disk + * Mojo::Pg 4.14 requires the "delete $dbh->{private_...}" feature from DBI 1.632 + * Log errors when reading worker config + * Add type/additionalProperties to products spec + * spec: Fix SLE12 build with patched out python subpackage + * Start a documentation section on how to build openQA plugins + * templates: Update references to documentation in help texts + * docs: Update references to target versions in our issue tracker + * Document adding new dependencies + * Improve doc section about starting webserver from Git + * Move testing with production data to database section ++++ 33 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/openQA/openQA.changes ++++ and /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA.changes Old: ---- openQA-4.6.1563206570.e00d3964.obscpio New: ---- openQA-4.6.1568387059.db88ff48d.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openQA-test.spec ++++++ --- /var/tmp/diff_new_pack.nSy1yn/_old 2019-09-18 13:12:58.288670568 +0200 +++ /var/tmp/diff_new_pack.nSy1yn/_new 2019-09-18 13:12:58.292670567 +0200 @@ -18,7 +18,7 @@ %define short_name openQA Name: %{short_name}-test -Version: 4.6.1563206570.e00d3964 +Version: 4.6.1568387059.db88ff48d Release: 0 Summary: Test package for openQA License: GPL-2.0-or-later ++++++ openQA-worker-test.spec ++++++ --- /var/tmp/diff_new_pack.nSy1yn/_old 2019-09-18 13:12:58.308670563 +0200 +++ /var/tmp/diff_new_pack.nSy1yn/_new 2019-09-18 13:12:58.312670563 +0200 @@ -18,7 +18,7 @@ %define short_name openQA-worker Name: %{short_name}-test -Version: 4.6.1563206570.e00d3964 +Version: 4.6.1568387059.db88ff48d Release: 0 Summary: Test package for %{short_name} License: GPL-2.0-or-later ++++++ openQA.spec ++++++ --- /var/tmp/diff_new_pack.nSy1yn/_old 2019-09-18 13:12:58.332670559 +0200 +++ /var/tmp/diff_new_pack.nSy1yn/_new 2019-09-18 13:12:58.336670558 +0200 @@ -17,7 +17,7 @@ # can't use linebreaks here! -%define openqa_services openqa-webui.service openqa-gru.service openqa-websockets.service openqa-scheduler.service +%define openqa_services openqa-webui.service openqa-gru.service openqa-websockets.service openqa-scheduler.service openqa-enqueue-audit-event-cleanup.service openqa-enqueue-audit-event-cleanup.timer %define openqa_worker_services openqa-worker.target openqa-slirpvde.service openqa-vde_switch.service openqa-worker-cacheservice.service openqa-worker-cacheservice-minion.service %if %{undefined tmpfiles_create} %define tmpfiles_create() \ @@ -33,10 +33,34 @@ %else %bcond_with tests %endif +# SLE < 15 does not provide many of the dependencies for the python sub-package +%if 0%{?sle_version} < 150000 && !0%{?is_opensuse} +%bcond_with python_scripts +%else +%bcond_without python_scripts +%endif # runtime requirements that also the testsuite needs -%define t_requires perl(DBD::Pg) perl(DBIx::Class) perl(Config::IniFiles) perl(SQL::Translator) perl(Date::Format) perl(File::Copy::Recursive) perl(DateTime::Format::Pg) perl(Net::OpenID::Consumer) perl(Mojolicious::Plugin::RenderFile) perl(Mojolicious::Plugin::AssetPack) perl(aliased) perl(Config::Tiny) perl(DBIx::Class::DeploymentHandler) perl(DBIx::Class::DynamicDefault) perl(DBIx::Class::Schema::Config) perl(DBIx::Class::Storage::Statistics) perl(IO::Socket::SSL) perl(Data::Dump) perl(DBIx::Class::OptimisticLocking) perl(Module::Pluggable) perl(Text::Diff) perl(Text::Markdown) perl(JSON::Validator) perl(YAML::XS) perl(IPC::Run) perl(Archive::Extract) perl(CSS::Minifier::XS) perl(JavaScript::Minifier::XS) perl(Time::ParseDate) perl(Sort::Versions) perl(Mojo::RabbitMQ::Client) perl(BSD::Resource) perl(Cpanel::JSON::XS) perl(Pod::POM) perl(Mojo::IOLoop::ReadWriteProcess) perl(Minion) perl(Mojo::Pg) perl(Mojo::SQLite) perl(Minion::Backend::SQLite) +%if %{with python_scripts} +%define python_scripts_requires python3-base python3-requests python3-future +%else +%define python_scripts_requires %{nil} +%endif +%define assetpack_requires perl(Mojolicious::Plugin::AssetPack) => 1.36, perl(CSS::Minifier::XS) perl(JavaScript::Minifier::XS) +%define common_requires perl(Config::IniFiles) perl(Cpanel::JSON::XS) perl(Cwd) perl(Data::Dump) perl(Data::Dumper) perl(Digest::MD5) perl(Getopt::Long) perl(Minion) => 9.09, perl(Mojolicious) >= 7.92, perl(Try::Tiny) perl(Regexp::Common), perl(Storable) +# runtime requirements for the main package that are not required by other sub-packages +%define main_requires %assetpack_requires git-core perl(Carp::Always) perl(Date::Format) perl(DateTime::Format::Pg) perl(DBD::Pg) >= 3.7.4, perl(DBI) >= 1.632, perl(DBIx::Class) => 0.082801, perl(DBIx::Class::DeploymentHandler) perl(DBIx::Class::DynamicDefault) perl(DBIx::Class::Schema::Config) perl(DBIx::Class::Storage::Statistics) perl(DBIx::Class::OptimisticLocking) perl(File::Copy::Recursive) perl(Net::OpenID::Consumer) perl(Module::Pluggable) perl(aliased) perl(Config::Tiny) perl(Text::Diff) perl(CommonMark) perl(JSON::Validator) perl(IPC::Run) perl(Archive::Extract) perl(Time::ParseDate) perl(Sort::Versions) perl(BSD::Resource) perl(Pod::POM) perl(Mojo::Pg) perl(Mojo::RabbitMQ::Client) => 0.2, perl(SQL::Translator) perl(YAML::XS) perl(LWP::UserAgent) +%define client_requires git-core perl(IO::Socket::SSL) >= 2.009, perl(LWP::UserAgent) +%define worker_requires os-autoinst < 5, perl(Mojo::IOLoop::ReadWriteProcess) > 0.19, perl(Minion::Backend::SQLite) perl(Mojo::SQLite) openQA-client optipng +%define build_requires rubygem(sass) %assetpack_requires + +# All requirements needed by the tests executed during build-time. +# Do not require on this in individual sub-packages except for the devel +# package. +%define test_requires %common_requires %main_requires %python_scripts_requires %worker_requires perl(App::cpanminus) perl(Perl::Critic) perl(Perl::Critic::Freenode) perl(Test::Mojo) perl(Test::More) perl(Test::Strict) perl(Test::Fatal) perl(Test::MockModule) perl(Test::Output) perl(Test::Pod) perl(Test::Warnings) perl(Selenium::Remote::Driver) perl(Selenium::Remote::WDKeys) ShellCheck os-autoinst-devel +%define devel_requires %build_requires %test_requires rsync curl postgresql-devel qemu qemu-kvm tar postgresql-server xorg-x11-fonts sudo perl(Devel::Cover) perl(Devel::Cover::Report::Codecov) perl(Perl::Tidy) + Name: openQA -Version: 4.6.1563206570.e00d3964 +Version: 4.6.1568387059.db88ff48d Release: 0 Summary: The openQA web-frontend, scheduler and tools License: GPL-2.0-or-later @@ -48,30 +72,12 @@ Source1: cache.txz Source101: update-cache.sh Source102: Dockerfile -BuildRequires: %{t_requires} +BuildRequires: %{build_requires} BuildRequires: fdupes -BuildRequires: os-autoinst -BuildRequires: systemd -# critical bug fix -BuildRequires: perl(DBIx::Class) >= 0.082801 -BuildRequires: perl(Minion) >= 9.09 -BuildRequires: perl(Mojo::RabbitMQ::Client) >= 0.2 -BuildRequires: perl(Mojolicious) >= 7.92 -BuildRequires: perl(Mojolicious::Plugin::AssetPack) >= 1.36 -BuildRequires: rubygem(sass) -Requires: perl(Minion) >= 9.09 -Requires: perl(Mojo::RabbitMQ::Client) >= 0.2 -Requires: perl(YAML::XS) >= 0.67 -# needed for test suite -Requires: git-core +Requires: %{main_requires} Requires: openQA-client = %{version} Requires: openQA-common = %{version} -# needed for saving needles optimized -Requires: optipng -Requires: perl(DBIx::Class) >= 0.082801 -# needed for openid support -Requires: perl(LWP::Protocol::https) -Requires: perl(URI) +Requires: perl(Minion) >= 9.13 # we need to have the same sha1 as expected %requires_eq perl-Mojolicious-Plugin-AssetPack Recommends: %{name}-local-db @@ -83,26 +89,11 @@ Recommends: logrotate # server needs to run an rsync server if worker caching is used Recommends: rsync -BuildRequires: postgresql-server BuildArch: noarch ExcludeArch: i586 %{?systemd_requires} %if %{with tests} -BuildRequires: chromedriver -BuildRequires: chromium -BuildRequires: glibc-locale -# pick a font so chromium has something to render - doesn't matter so much -BuildRequires: dejavu-fonts -BuildRequires: google-roboto-fonts -BuildRequires: perl-App-cpanminus -BuildRequires: rsync -BuildRequires: perl(DBD::SQLite) -BuildRequires: perl(Perl::Critic) -BuildRequires: perl(Perl::Critic::Freenode) -BuildRequires: perl(Selenium::Remote::Driver) >= 1.20 -BuildRequires: perl(Test::MockObject) -BuildRequires: perl(Test::Strict) -BuildRequires: perl(Test::Warnings) +BuildRequires: %{test_requires} %endif %if 0%{?suse_version} >= 1330 Requires(pre): group(nogroup) @@ -127,10 +118,18 @@ combination of hardware configuration, installation options and variant of the operating system. +%package devel +Summary: Development package pulling in all build+test dependencies +Group: Development/Tools/Other +Requires: %{devel_requires} + +%description devel +Development package pulling in all build+test dependencies. + %package common Summary: The openQA common tools for web-frontend and workers Group: Development/Tools/Other -Requires: %{t_requires} +Requires: %{common_requires} Requires: perl(Mojolicious) >= 7.92 %description common @@ -140,13 +139,8 @@ %package worker Summary: The openQA worker Group: Development/Tools/Other -Requires: openQA-client = %{version} -Requires: os-autoinst < 5 -Requires: perl(DBD::SQLite) > 1.51 -Requires: perl(Minion::Backend::SQLite) -Requires: perl(Mojo::IOLoop::ReadWriteProcess) > 0.19 -Requires: perl(Mojo::SQLite) -Requires: perl(SQL::SplitStatement) +%define worker_requires_including_uncovered_in_tests %worker_requires perl(SQL::SplitStatement) +Requires: %{worker_requires_including_uncovered_in_tests} # FIXME: use proper Requires(pre/post/preun/...) PreReq: openQA-common = %{version} Requires(post): coreutils @@ -164,22 +158,24 @@ %package client Summary: Client tools for remote openQA management Group: Development/Tools/Other +Requires: %client_requires Requires: openQA-common = %{version} -Requires: perl(Config::IniFiles) -Requires: perl(Cpanel::JSON::XS) -Requires: perl(Data::Dump) -Requires: perl(Getopt::Long) -Requires: perl(IO::Socket::SSL) >= 2.009 -Requires: perl(LWP::UserAgent) -Requires: perl(Mojolicious) -Requires: perl(Regexp::Common) -Requires: perl(Try::Tiny) Recommends: jq %description client Tools and support files for openQA client script. Client script is a convenient helper for interacting with openQA webui REST API. +%if %{with python_scripts} +%package python-scripts +Summary: Additional scripts in python +Group: Development/Tools/Other +Requires: %python_scripts_requires + +%description python-scripts +Additional scripts for the use of openQA in the python programming language. +%endif + %package local-db Summary: Helper package to ease setup of postgresql DB Group: Development/Tools/Other @@ -209,6 +205,7 @@ %prep %setup -q -a1 +sed -e 's,/bin/env python,/bin/python,' -i script/openqa-label-all %build make %{?_smp_mflags} @@ -227,11 +224,14 @@ #make test rm -rf %{buildroot}/DB export LC_ALL=en_US.UTF-8 -make test-with-database OBS_RUN=1 PROVE_ARGS='-rv' TEST_PG_PATH=%{buildroot}/DB || true +make test-with-database OBS_RUN=1 PROVE_ARGS='-l -r -v' TEST_PG_PATH=%{buildroot}/DB || true rm -rf %{buildroot}/DB %endif %install +%if !%{with python_scripts} +rm script/openqa-label-all +%endif export LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8 %make_install @@ -245,6 +245,9 @@ ln -s %{_datadir}/openqa/script/dump_templates %{buildroot}%{_bindir}/openqa-dump-templates ln -s %{_datadir}/openqa/script/load_templates %{buildroot}%{_bindir}/openqa-load-templates ln -s %{_datadir}/openqa/script/openqa-clone-custom-git-refspec %{buildroot}%{_bindir}/openqa-clone-custom-git-refspec +%if %{with python_scripts} +ln -s %{_datadir}/openqa/script/openqa-label-all %{buildroot}%{_bindir}/openqa-label-all +%endif cd %{buildroot} grep -rl %{_bindir}/env . | while read file; do @@ -380,6 +383,8 @@ %{_unitdir}/openqa-gru.service %{_unitdir}/openqa-scheduler.service %{_unitdir}/openqa-websockets.service +%{_unitdir}/openqa-enqueue-audit-event-cleanup.service +%{_unitdir}/openqa-enqueue-audit-event-cleanup.timer # web libs %dir %{_datadir}/openqa %{_datadir}/openqa/templates @@ -415,6 +420,8 @@ %ghost %{_localstatedir}/lib/openqa/db/db.sqlite %ghost %{_localstatedir}/log/openqa +%files devel + %files common %dir %{_datadir}/openqa %{_datadir}/openqa/lib @@ -479,6 +486,12 @@ %{_bindir}/openqa-load-templates %{_bindir}/openqa-clone-custom-git-refspec +%if %{with python_scripts} +%files python-scripts +%{_datadir}/openqa/script/openqa-label-all +%{_bindir}/openqa-label-all +%endif + %files doc %doc docs/* ++++++ Dockerfile ++++++ --- /var/tmp/diff_new_pack.nSy1yn/_old 2019-09-18 13:12:58.364670552 +0200 +++ /var/tmp/diff_new_pack.nSy1yn/_new 2019-09-18 13:12:58.368670551 +0200 @@ -84,7 +84,7 @@ 'perl(JSON::XS)' \ 'perl(JavaScript::Minifier::XS)' \ 'perl(LWP::Protocol::https)' \ - 'perl(Minion)' \ + 'perl(Minion) >= 9.13' \ 'perl(Module::CPANfile)' \ 'perl(Module::Pluggable)' \ 'perl(Mojo::IOLoop::ReadWriteProcess)' \ @@ -121,7 +121,7 @@ 'perl(Socket::MsgHdr)' \ 'perl(Test::Warnings)' \ 'perl(Text::Diff)' \ - 'perl(Text::Markdown)' \ + 'perl(CommonMark)' \ 'perl(Time::ParseDate)' \ 'perl(XSLoader) >= 0.24' \ 'perl(XML::SemanticDiff)' \ ++++++ cache.txz ++++++ Binary files /var/tmp/diff_new_pack.nSy1yn/_old and /var/tmp/diff_new_pack.nSy1yn/_new differ ++++++ openQA-4.6.1563206570.e00d3964.obscpio -> openQA-4.6.1568387059.db88ff48d.obscpio ++++++ /work/SRC/openSUSE:Factory/openQA/openQA-4.6.1563206570.e00d3964.obscpio /work/SRC/openSUSE:Factory/.openQA.new.7948/openQA-4.6.1568387059.db88ff48d.obscpio differ: char 49, line 1 ++++++ openQA.obsinfo ++++++ --- /var/tmp/diff_new_pack.nSy1yn/_old 2019-09-18 13:12:58.432670538 +0200 +++ /var/tmp/diff_new_pack.nSy1yn/_new 2019-09-18 13:12:58.432670538 +0200 @@ -1,5 +1,5 @@ name: openQA -version: 4.6.1563206570.e00d3964 -mtime: 1563206570 -commit: e00d3964e4c9563c3db14f1d651f0e41bc05c113 +version: 4.6.1568387059.db88ff48d +mtime: 1568387059 +commit: db88ff48d65421d03959b543fe826cbddaca846e
