lp:~sylvain-pineau/plainbox

Owned by Sylvain Pineau
Get this repository:
git clone https://git.launchpad.net/~sylvain-pineau/plainbox
Only Sylvain Pineau can upload to this repository. If you are Sylvain Pineau please log in for upload directions.

Branches

Name Last Modified Last Commit
potfiles.in_update 2018-01-15 08:21:59 UTC 2018-01-15
Update po/POTFILES.in

Author: Sylvain Pineau
Author Date: 2018-01-15 08:21:59 UTC

Update po/POTFILES.in

new-html-report 2018-01-10 13:36:31 UTC 2018-01-10
exporter:tar: Add the HTML report to the archive

Author: Sylvain Pineau
Author Date: 2018-01-10 11:34:04 UTC

exporter:tar: Add the HTML report to the archive

xmas_diet 2018-01-08 16:41:29 UTC 2018-01-08
Remove whitelist support

Author: Sylvain Pineau
Author Date: 2017-12-24 14:15:53 UTC

Remove whitelist support

new_warning_msg_missing_param 2017-12-22 08:08:31 UTC 2017-12-22
ctrl.py: better warning msg when a parameter is missing from the resource

Author: Sylvain Pineau
Author Date: 2017-12-22 08:08:31 UTC

ctrl.py: better warning msg when a parameter is missing from the resource

jinja2_for_all 2017-12-19 09:24:01 UTC 2017-12-19
Allow jinja2 template syntax for non template jobs

Author: Sylvain Pineau
Author Date: 2017-12-18 17:04:50 UTC

Allow jinja2 template syntax for non template jobs

Mainly to add condition blocks based on __system_env__ and __on_ubuntucore__
special vars.

is_snap_based_helper 2017-12-18 12:17:24 UTC 2017-12-18
unit: Add helper functions to detect if checkbox runs on ubuntu core

Author: Sylvain Pineau
Author Date: 2017-12-18 12:17:24 UTC

unit: Add helper functions to detect if checkbox runs on ubuntu core

on_ubuntucore() is later used in parameters shared trough jinja2 templates.

bye_padme 2017-12-13 12:03:05 UTC 2017-12-13
Remove PatternProxy and dependency on padme

Author: Sylvain Pineau
Author Date: 2017-12-13 12:03:05 UTC

Remove PatternProxy and dependency on padme

xlsx_3_lines_io_logs 2017-12-07 08:24:08 UTC 2017-12-07
exporter:xlsx: Only Display 3 lines max in I/O log cells

Author: Sylvain Pineau
Author Date: 2017-12-07 08:24:08 UTC

exporter:xlsx: Only Display 3 lines max in I/O log cells

In order to keep the xlsx readable, we cannot keep all I/O logs data.
Displaying the first 3 lines as C4 does sounds like a good compromise.
Moreover, now that the xlsx report is part of the submission tarball,
all logs/attachments are available as files in the archive.

fix-1731389 2017-11-13 16:58:56 UTC 2017-11-13
trusted-launcher: Add siblings generated jobs to the job_list used by PTL1

Author: Sylvain Pineau
Author Date: 2017-11-13 16:58:56 UTC

trusted-launcher: Add siblings generated jobs to the job_list used by PTL1

Use a get_throwaway_manager to know all instantiated jobs (including siblings
and jobs created by using the special after suspends flags).

Fixes: LP:1731389

xml-removal 2017-11-07 16:42:40 UTC 2017-11-07
Remove the XML/HEXR exporter

Author: Sylvain Pineau
Author Date: 2017-11-07 16:42:40 UTC

Remove the XML/HEXR exporter

more_system_env_jinja2 2017-10-27 12:28:31 UTC 2017-10-27
unit.py: Add __system_env__ to the parameters used by jinja2 templates

Author: Sylvain Pineau
Author Date: 2017-10-27 12:28:31 UTC

unit.py: Add __system_env__ to the parameters used by jinja2 templates

after-suspend-depends-on-before-suspend 2017-10-27 12:12:10 UTC 2017-10-27
session:state: Add the before suspend job as a dependency of its after suspen...

Author: Sylvain Pineau
Author Date: 2017-10-27 12:12:10 UTC

session:state: Add the before suspend job as a dependency of its after suspend sibling

After suspend jobs can be created on demand when a definition contain one of
the following special flags:

- also-after-suspend
- also-after-suspend-manual

In both case the "original" job is now added to its "after suspend" sibling
list of dependencies.

fix-1719406 2017-09-28 10:02:32 UTC 2017-09-28
Don't create empty records for package and snap resources in xml/json reports

Author: Sylvain Pineau
Author Date: 2017-09-28 10:02:32 UTC

Don't create empty records for package and snap resources in xml/json reports

if their name property is an empty string

Fixes: lp:1719406

preserve-cwd-auto 2017-07-18 15:29:14 UTC 2017-07-18
ctrl: Always preserve cwd to run commands on snappy

Author: Sylvain Pineau
Author Date: 2017-07-18 15:29:14 UTC

ctrl: Always preserve cwd to run commands on snappy

Snaps calling other snaps commands require this execution mode.

empty_resource 2017-07-06 12:23:35 UTC 2017-07-06
Always return an empty Resource object if the resource command outputs nothing

Author: Sylvain Pineau
Author Date: 2017-07-06 12:23:35 UTC

Always return an empty Resource object if the resource command outputs nothing

This way requirements like 'foo.name or bar.type' won't fail the whole
expression if foo didn't return any records.

fix_collapse_all_xlsx 2017-07-01 16:22:15 UTC 2017-07-01
Fix xlsx exporter to collapse all categories (including the last one)

Author: Sylvain Pineau
Author Date: 2017-07-01 16:22:15 UTC

Fix xlsx exporter to collapse all categories (including the last one)

See http://xlsxwriter.readthedocs.io/working_with_outlines.html#outlines

adios_textland 2017-06-29 16:40:20 UTC 2017-06-29
Remove the bundled textland copy

Author: Sylvain Pineau
Author Date: 2017-06-29 16:40:20 UTC

Remove the bundled textland copy

checkbox-ng UI now runs with URWID

speed_optim 2017-06-26 07:20:26 UTC 2017-06-26
Add various cache based decorators to unit properties and methods

Author: Sylvain Pineau
Author Date: 2017-06-26 07:20:26 UTC

Add various cache based decorators to unit properties and methods

@lru_cache(maxsize=None) # for classes
@instance_method_lru_cache(maxsize=None) # for instance methods
@cached_property for # for instance properties

fail-on-resource 2017-06-20 16:10:56 UTC 2017-06-20
Add the fail-on-resource job flag

Author: Sylvain Pineau
Author Date: 2017-06-20 16:10:56 UTC

Add the fail-on-resource job flag

This flags makes plainbox fail the job if one of the resource requirements
evaluates to False (the default being to skip the job with outcome
unsupported).

tar_folders 2017-05-22 11:23:35 UTC 2017-05-22
exporter:tar: Create folders in the archive to quickly review attachments

Author: Sylvain Pineau
Author Date: 2017-05-22 11:23:35 UTC

exporter:tar: Create folders in the archive to quickly review attachments

Example:

.
├── attachment_files
│   ├── 2013.com.canonical.certification__dmi_attachment
│   ├── 2013.com.canonical.certification__lspci_attachment
│   ├── 2013.com.canonical.certification__lsusb_attachment
│   ├── 2013.com.canonical.certification__sysfs_attachment
│   ├── 2013.com.canonical.certification__udev_attachment
│   └── 2013.com.canonical.certification__udev_json
│ ...
├── submission.json
├── submission.xlsx
└── test_output
    ├── 2013.com.canonical.certification__alsa_resource
    ├── 2013.com.canonical.certification__bluez-internal-bnep-tests
    ...

strip_ns_json 2017-04-05 08:55:02 UTC 2017-04-05
exporters:data:checkbox.json: Strip namespace from job ids

Author: Sylvain Pineau
Author Date: 2017-04-05 08:55:02 UTC

exporters:data:checkbox.json: Strip namespace from job ids

json_dict_export 2017-04-03 08:46:41 UTC 2017-04-03
Fix integration tests to match the new json export format

Author: Sylvain Pineau
Author Date: 2017-04-03 08:46:41 UTC

Fix integration tests to match the new json export format

fix-1674594-bis 2017-03-24 10:35:10 UTC 2017-03-24
session:resume: Ensure siblings are generated in the session

Author: Sylvain Pineau
Author Date: 2017-03-24 10:35:10 UTC

session:resume: Ensure siblings are generated in the session

The previous fix was only recreating them based on the jobs results.
That didn't work if the generator job was not previously selected.

Solution is to process all jobs known to the session and call add_unit() in
order to record the siblings in the session state.

fix-1674594 2017-03-21 10:34:09 UTC 2017-03-21
session:resume: Recreate siblings when resuming a session

Author: Sylvain Pineau
Author Date: 2017-03-21 10:34:09 UTC

session:resume: Recreate siblings when resuming a session

Siblings jobs have to be recreated like jobs generated from templates.
Otherwise resume fails with CorruptedSessionError.

Fixes: LP: #1674594

fix-1670344 2017-03-06 12:58:41 UTC 2017-03-06
session:state: Use an OrderedDict to compute the override_map

Author: Sylvain Pineau
Author Date: 2017-03-06 12:58:41 UTC

session:state: Use an OrderedDict to compute the override_map

override_map.items() was not deterministic and overrides were not applied
in order.

Fixes: LP: #1670344

siblings 2017-01-24 15:27:35 UTC 2017-01-24
session:state: Add also-after-suspend/also-after-suspend-auto flags

Author: Sylvain Pineau
Author Date: 2017-01-24 15:27:35 UTC

session:state: Add also-after-suspend/also-after-suspend-auto flags

Given the base job A:

id:foo
_summary: bar
flags: also-after-suspend also-after-suspend-auto
[...]

The also-after-suspend flag is a shortcut to create the following job:

id: after-suspend-foo
_summary: bar after suspend (S3)
depends: 2013.com.canonical.certification::suspend/suspend_advanced

also-after-suspend-auto is a shortcut to create the following job:

id: after-suspend-auto-foo
_summary: bar after suspend (S3)
depends: 2013.com.canonical.certification::suspend/suspend_advanced_auto

snappy-restart-with-sudo 2016-11-04 13:48:39 UTC 2016-11-04
session:restart: Set up the systemd unit for all-snaps using sudo

Author: Sylvain Pineau
Author Date: 2016-11-04 13:48:39 UTC

session:restart: Set up the systemd unit for all-snaps using sudo

Ubuntu Core 16 users have a sudoers configuration allowing sudo usage without
a password. Stress tests requiring a system restart had to run checkbox with
sudo to be able to set up the systemd unit, making all logs and report owned
by root (and saved in SNAP_DATA instead of SNAP_USER_DATA).

The new version takes advantage of this sudoer config by calling sudo from plainbox,
this allowing the whole session to be controlled by the user account.

The benefits are threefold, we stop using sudo to run stress tests, all logs
are easily accessible from SNAP_DATA and we don't need a specific snapcraft
launcher wrapper for stress tests.

json_exporter_update 2016-10-31 09:51:05 UTC 2016-10-31
Merge branch 'master' of git+ssh://git.launchpad.net/plainbox

Author: Sylvain Pineau
Author Date: 2016-10-31 09:51:05 UTC

Merge branch 'master' of git+ssh://git.launchpad.net/plainbox

jinja2_template_units 2016-10-25 12:19:30 UTC 2016-10-25
Add support for Jinja2 in template units

Author: Sylvain Pineau
Author Date: 2016-10-25 12:19:30 UTC

Add support for Jinja2 in template units

Just add the following line to start using the Jinja2 template syntax.
Example:

unit: template
template-resource: device
template-filter: device.category == 'NETWORK'
template-engine: jinja2
id: ethernet/hotplug-{{ interface }}-check-disconnected
[...]
after:
 {%- if __index__ > 1 %}ethernet/hotplug-{{ __index__ - 1 }}-end-cycle{%- endif %}

add_python_vars_in_diff_env_snappy 2016-10-22 11:00:39 UTC 2016-10-22
Fix the differential execution environment on snappy to preserve python speci...

Author: Sylvain Pineau
Author Date: 2016-10-22 11:00:39 UTC

Fix the differential execution environment on snappy to preserve python specific vars

On snappy (as of UC16), to run the bundled python3 interpreter and find the right
set of modules, snappy sets two env var, namely PYTHONHOME and PYTHONUSERBASE.

When the plainbox sudo controller computes the differential execution environment,
it needs to retain both in the final env.

fix_sudo_controller_snappy 2016-10-21 12:38:19 UTC 2016-10-21
Update the sudo controller alg to also check /etc/sudoers.d on snappy

Author: Sylvain Pineau
Author Date: 2016-10-21 12:38:19 UTC

Update the sudo controller alg to also check /etc/sudoers.d on snappy

new_json_exporter_po_fix 2016-10-19 11:55:28 UTC 2016-10-19
Update translations after the json.py module removal

Author: Sylvain Pineau
Author Date: 2016-10-19 11:55:28 UTC

Update translations after the json.py module removal

new_json_exporter 2016-10-19 11:20:54 UTC 2016-10-19
JSON exporter update, creating data that C3 can consume

Author: Sylvain Pineau
Author Date: 2016-10-19 11:20:54 UTC

JSON exporter update, creating data that C3 can consume

It's now based on a Jinja2 template.
Most of the jobs (resource & attachments) are in json format using parsers
available in checkbox-support and the their new versions are running
plainbox dev parse <parser_name>

ping_rtd 2016-10-14 15:28:25 UTC 2016-10-14
PMR: Ping rtfd.org to refresh the documentation

Author: Sylvain Pineau
Author Date: 2016-10-14 15:28:25 UTC

PMR: Ping rtfd.org to refresh the documentation

134 of 34 results
This repository contains Public information 
Everyone can see this information.

Subscribers