Merge lp://staging/~zyga/checkbox/readonly-results into lp://staging/checkbox

Proposed by Zygmunt Krynicki
Status: Work in progress
Proposed branch: lp://staging/~zyga/checkbox/readonly-results
Merge into: lp://staging/checkbox
Diff against target: 4085 lines (+1820/-796)
28 files modified
checkbox-ng/checkbox_ng/commands/newcli.py (+10/-4)
checkbox-ng/checkbox_ng/service.py (+13/-7)
plainbox/plainbox/data/report/checkbox.css (+0/-261)
plainbox/plainbox/data/report/checkbox.html (+260/-139)
plainbox/plainbox/data/report/checkbox.js (+0/-16)
plainbox/plainbox/data/report/hexr.xml (+149/-0)
plainbox/plainbox/impl/commands/inv_check_config.py (+6/-3)
plainbox/plainbox/impl/commands/inv_run.py (+49/-42)
plainbox/plainbox/impl/exporter/hexr.py (+138/-0)
plainbox/plainbox/impl/exporter/html.py (+0/-2)
plainbox/plainbox/impl/exporter/jinja2.py (+9/-0)
plainbox/plainbox/impl/exporter/test_hexr.py (+535/-0)
plainbox/plainbox/impl/exporter/text.py (+17/-3)
plainbox/plainbox/impl/pod.py (+131/-8)
plainbox/plainbox/impl/providers/special.py (+2/-2)
plainbox/plainbox/impl/providers/stubbox/units/jobs/representative.pxu (+98/-0)
plainbox/plainbox/impl/resource.py (+4/-0)
plainbox/plainbox/impl/result.py (+104/-61)
plainbox/plainbox/impl/runner.py (+90/-85)
plainbox/plainbox/impl/session/jobs.py (+59/-13)
plainbox/plainbox/impl/session/resume.py (+4/-7)
plainbox/plainbox/impl/session/suspend.py (+4/-5)
plainbox/plainbox/impl/session/test_jobs.py (+11/-0)
plainbox/plainbox/impl/test_pod.py (+76/-112)
plainbox/plainbox/impl/test_result.py (+44/-0)
plainbox/setup.py (+4/-0)
providers/plainbox-provider-checkbox/whitelists/smoke.whitelist (+0/-26)
support/install-deb-dependencies (+3/-0)
To merge this branch: bzr merge lp://staging/~zyga/checkbox/readonly-results
Reviewer Review Type Date Requested Status
Checkbox Developers Pending
Review via email: mp+259093@code.staging.launchpad.net

Description of the change

This is a work in progress.

I want it out so that I can see the the diff and history and iterate on it,.

To post a comment you must log in.
3777. By Zygmunt Krynicki

support: run dist-upgrade after installing deps

Signed-off-by: Zygmunt Krynicki <email address hidden>

3778. By Zygmunt Krynicki

plainbox:commands:check_config: produce more useful output

Signed-off-by: Zygmunt Krynicki <email address hidden>

3779. By Zygmunt Krynicki

plainbox:pod: fix several PEP257 issues

Signed-off-by: Zygmunt Krynicki <email address hidden>

3780. By Zygmunt Krynicki

plainbox:pod: add unset variants for type assignment filters

Signed-off-by: Zygmunt Krynicki <email address hidden>

3781. By Zygmunt Krynicki

plainbox:pod: filter-out UNSET from as_dict()

Signed-off-by: Zygmunt Krynicki <email address hidden>

3782. By Zygmunt Krynicki

plainbox:pod: fix PEP257 issues

Some docstrings were rewritten entirely.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3783. By Zygmunt Krynicki

plainbox:pod: add Field.change_notifier

This patch adds a new decorator that can be used similarly to
@foo.setter (when foo is a @property-decorated method).

This can simplify all fields that need to have a custom notification
method. All such methods can be implemented _after_ all of the field
definitions now.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3784. By Zygmunt Krynicki

plainbox:result: fix many PEP257 and some PEP8 issues

Signed-off-by: Zygmunt Krynicki <email address hidden>

3785. By Zygmunt Krynicki

plainbox:result: warn about modification of existing results

Signed-off-by: Zygmunt Krynicki <email address hidden>

3786. By Zygmunt Krynicki

plainbox:result: add JobResultBuilder

This patch adds a new class that assists in building appropriate
JobResult objects.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3787. By Zygmunt Krynicki

plainbox:result: add _JobReturnBase.unseal()

Signed-off-by: Zygmunt Krynicki <email address hidden>

3788. By Zygmunt Krynicki

plainbox:runner: fix many PEP257 issues

Signed-off-by: Zygmunt Krynicki <email address hidden>

3789. By Zygmunt Krynicki

plainbox:runner: use JobResultBuilder everywhere

Signed-off-by: Zygmunt Krynicki <email address hidden>

3790. By Zygmunt Krynicki

plainbox:commands:run: use JobResultBuilder to handle mutable results

Signed-off-by: Zygmunt Krynicki <email address hidden>

3791. By Zygmunt Krynicki

checkbox-ng:service: use JobResultBuilder

Signed-off-by: Zygmunt Krynicki <email address hidden>

3792. By Zygmunt Krynicki

plainbox:resource: make it possible to iterate over resources

Iterating over resources behaves just like iterating over dictionaries
(keys are returned). This is useful to access resource elements in Jinja
templates. In the past we just accessed ._data directly but this is a
hack and we should get rid of it.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3793. By Zygmunt Krynicki

plainbox:stubbox: add set of representative jobs

This patch adds a number of jobs that validate and don't do anything.
Each job has an identifier that looks like
"representative/plugin/{plugin}".

The goal of this collection is to simplify unit tests that traditionally
re-created everything using python APIs (which is both fragile and more
verbose).

Signed-off-by: Zygmunt Krynicki <email address hidden>

3794. By Zygmunt Krynicki

plainbox:providers:special: allow passing keyword args to get_stubbox()

The provider constructor seems to call the old validate API. Since this
is pretty annoying (all the incorrect things the old validation says) I
wanted to have a way to disable that by passing validate=False,
check=True. This is a quick stop-gap measure. In reality we want to
purge all the old validation code.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3795. By Zygmunt Krynicki

plainbox:session:jobs: fix PEP257 issues

Signed-off-by: Zygmunt Krynicki <email address hidden>

3796. By Zygmunt Krynicki

plainbox:session:jobs: keep track of result history

Signed-off-by: Zygmunt Krynicki <email address hidden>

3797. By Zygmunt Krynicki

plainbox:session:suspend: fix PEP257 issue

Signed-off-by: Zygmunt Krynicki <email address hidden>

3798. By Zygmunt Krynicki

plainbox:session:suspend: store full result history

Signed-off-by: Zygmunt Krynicki <email address hidden>

3799. By Zygmunt Krynicki

plainbox:session:result: replay the full result history

Signed-off-by: Zygmunt Krynicki <email address hidden>

3800. By Zygmunt Krynicki

plainbox:commands:run: print session identifier on startup

Signed-off-by: Zygmunt Krynicki <email address hidden>

3801. By Zygmunt Krynicki

checkbox-ng:commands:newcli: allow re-run to be done indefinitely

Signed-off-by: Zygmunt Krynicki <email address hidden>

3802. By Zygmunt Krynicki

checkbox-ng:commands:newcli: don't reset last outcome when re-running jobs

Signed-off-by: Zygmunt Krynicki <email address hidden>

3803. By Zygmunt Krynicki

remove shit from smoke whitelist

3804. By Zygmunt Krynicki

plainbox:exporter:jinja: add support for customizing Environment

The environment is how you control all of jinja's behavior. Currently
the environment is hidden in the initializer of the base jinja exporter
class. By having a method where we can customize the environment
_before_ a template is loaded we can add anything (additional tests and
filters). After a template is initialized, those changes don't affect
the template.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3805. By Zygmunt Krynicki

plainbox:exporter:hexr: add HEXR exporter

This patch adds a new exporter (HEXR) that is intended to replace our
current "xml" exporter. The schema is specific to the Canonical HEXR
application so the name reflects that.

Note that due to the syntax used, this exporter requires Jinja2 >= 2.7.
The dependency wasn't there before so I've added it to install_requires.

Signed-off-by: Zygmunt Krynicki <email address hidden>

3806. By Zygmunt Krynicki

plainbox:exporter:text: fix PEP257 issue

Signed-off-by: Zygmunt Krynicki <email address hidden>

3807. By Zygmunt Krynicki

plainbox:exporter:text: display result history

Signed-off-by: Zygmunt Krynicki <email address hidden>

3808. By Zygmunt Krynicki

plainbox:exporter:html: fix broken substitution on tr_outcome

Signed-off-by: Zygmunt Krynicki <email address hidden>

3809. By Zygmunt Krynicki

plainbox:exporter:html: remove useless OOM object

Signed-off-by: Zygmunt Krynicki <email address hidden>

3810. By Zygmunt Krynicki

plainbox:exporter:html: remove useless newlines

Signed-off-by: Zygmunt Krynicki <email address hidden>

3811. By Zygmunt Krynicki

plainbox:exporter:html: don't spell the long namespace over and over

Signed-off-by: Zygmunt Krynicki <email address hidden>

3812. By Zygmunt Krynicki

plainbox:exporter:html: use a variable for resource_map

Signed-off-by: Zygmunt Krynicki <email address hidden>

3813. By Zygmunt Krynicki

plainbox:exporter:html: use a variable for job_state_map

Signed-off-by: Zygmunt Krynicki <email address hidden>

3814. By Zygmunt Krynicki

plainbox:exporter:html: inline checkbox.css

Signed-off-by: Zygmunt Krynicki <email address hidden>

3815. By Zygmunt Krynicki

plainbox:exporter:html: inline checkbox.js

Signed-off-by: Zygmunt Krynicki <email address hidden>

3816. By Zygmunt Krynicki

plainbox:exporter:html: remove unused css rules

Signed-off-by: Zygmunt Krynicki <email address hidden>

3817. By Zygmunt Krynicki

plainbox:exporter:html: fix some inconsistent css syntax

Signed-off-by: Zygmunt Krynicki <email address hidden>

3818. By Zygmunt Krynicki

plainbox:exporter:html: don't use deprecated -vendor properties

Signed-off-by: Zygmunt Krynicki <email address hidden>

3819. By Zygmunt Krynicki

plainbox:exporter:html: remove commented-out rule

Signed-off-by: Zygmunt Krynicki <email address hidden>

3820. By Zygmunt Krynicki

plainbox:report:html: simplify html structure + result history [WIP]

Signed-off-by: Zygmunt Krynicki <email address hidden>

Unmerged revisions

3820. By Zygmunt Krynicki

plainbox:report:html: simplify html structure + result history [WIP]

Signed-off-by: Zygmunt Krynicki <email address hidden>

3819. By Zygmunt Krynicki

plainbox:exporter:html: remove commented-out rule

Signed-off-by: Zygmunt Krynicki <email address hidden>

3818. By Zygmunt Krynicki

plainbox:exporter:html: don't use deprecated -vendor properties

Signed-off-by: Zygmunt Krynicki <email address hidden>

3817. By Zygmunt Krynicki

plainbox:exporter:html: fix some inconsistent css syntax

Signed-off-by: Zygmunt Krynicki <email address hidden>

3816. By Zygmunt Krynicki

plainbox:exporter:html: remove unused css rules

Signed-off-by: Zygmunt Krynicki <email address hidden>

3815. By Zygmunt Krynicki

plainbox:exporter:html: inline checkbox.js

Signed-off-by: Zygmunt Krynicki <email address hidden>

3814. By Zygmunt Krynicki

plainbox:exporter:html: inline checkbox.css

Signed-off-by: Zygmunt Krynicki <email address hidden>

3813. By Zygmunt Krynicki

plainbox:exporter:html: use a variable for job_state_map

Signed-off-by: Zygmunt Krynicki <email address hidden>

3812. By Zygmunt Krynicki

plainbox:exporter:html: use a variable for resource_map

Signed-off-by: Zygmunt Krynicki <email address hidden>

3811. By Zygmunt Krynicki

plainbox:exporter:html: don't spell the long namespace over and over

Signed-off-by: Zygmunt Krynicki <email address hidden>

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches