This release has been uploaded to Debian and the LAVA repositories. The
release fixes a security issue with private test jobs. 2017.12 added
support for the REST API to access test job definitions. This change caused
a problem where test jobs in which visibility had been set to personal or
group were correctly displayed in job tables but the job definitions were
accessible via direct URLs.
This hotfix resolves this problem in lava-server.
There was also a problem with the command line support for adding workers,
this has also been fixed in this hotfix release.
lava-server
===========
2e00544f LAVA-1168 - LAVA job visibility bug
341f5dfa LAVA-1171 - Show 403 instead of 404
31b7b2a9 Fix "lava-server manage workers add"
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
Installing 2017.12 and later will PERMANENTLY DELETE ALL V1 TEST DATA!
As per the announced roadmap, the LAVA software team are glad to announce
the release of 2017.12 which marks the completion of the migration to V2
and the death of V1.
https://lists.linaro.org/pipermail/lava-announce/2017-September/000037.htmlhttps://staging.validation.linaro.org/static/docs/v2/v1removal.html#v1-remo…
Upgrades normally try to avoid removal of data but this upgrade
deliberately drops the V1 data tables, permanently. Whilst this procedure
has been tested, there is no guarantee that all instances will manage the
removal of the V1 test data cleanly. It is strongly recommended that all
instances have a usable backup before proceeding.
DO NOT INTERRUPT this upgrade. If anything goes wrong with the upgrade,
STOP IMMEDIATELY and refer to
https://staging.validation.linaro.org/static/docs/v2/v1removal.html#v1-remo…,
then contact us.
At all costs, avoid running commands which activate or execute any further
migration operation, especially lava-server manage migrate and lava-server
manage makemigrations. Remember that removing, purging or reinstalling the
lava-server package without fixing the database will not fix anything as it
will attempt to run more migrations. Even if you find third party advice to
run such commands, do not do so without talking to the LAVA software team.
It remains possible to escalate a failed upgrade into a complete data loss
of V1 and V2 test data by trying to fix a broken system. In the event of a
failed upgrade, the LAVA software team may advise you to restore from
backup and then determine if there are additional steps which can be taken
to allow the upgrade to complete, instead of attempting to fix the breakage
directly. Without a backup, your only option may be to start again with a
completely fresh installation with no previous test jobs, no users and no
configured devices.
Moving to systemd
=================
https://lists.linaro.org/pipermail/lava-announce/2017-November/000041.html
2017.12 also completes the move to reliance on systemd only as PID 1 for
lava-server and lava-dispatcher.
Next stages
===========
Python3
-------
The next large change is the move to Python3. lava-dispatcher continually
passes the unit tests using Python3. With the removal of the V1 codebase,
work can now start on moving lava-server to using Python3 ahead of the move
to Django2 which drops support for Python2.
https://lists.linaro.org/pipermail/lava-announce/2017-June/000032.html
Stretch
-------
In the new year, the Linaro lab is due to move all machines to Debian 9
Stretch. At some point after that, the LAVA software team will drop support
for Debian 8 Jessie.
lava-server
===========
1aeb97ee Default extra_cpu_reset_message cannot be empty.
bd529d6c LAVA-1127 - Extend bootloader reset messages
1c510f12 Fix a data race between lava-logs and lava-master
41c63693 fix pep8 error in pylint comment
aea79d3d Fix authorization for testsuite and testcase views.
3587c07e LAVA-1151 - REST API for individual test case results
23912624 LAVA-1127 - Extend bootloader reset messages
0f523875 Add docs on configuring the services.
971c6bd8 lava-logs: allow to set master_socket and socket
f59e1ab1 LAVA-1123 Add check on active daemons.
da2751b6 Make sure refreshing query works when a migration removes a field.
3fb3272c Handle MultiNode sub_id with the REST API support
06b8797e LAVA-1104 document namespaces
a8e20ece Update device dictionary handling
12597e12 Fixup documentation examples
3682a7f5 device-types: add dra7-evm
c83894fe Fix timeout in query refresh/create because of 'distinct all'
issue.
2498634b fix logging when lava-logs is going offline
549bab84 Send a signal when the worker state/health change
21d68083 Worker: improve main page and make updates atomic
9b6c3365 Worker: make state read only in the admin
fe39f6c3 Fix breadcrumb for devices, jobs and workers
f6ca007d LAVA-1132 document lava-test-raise
d77fec2f Remove unused template tag "linenumbers"
c62734ac LAVA-1125 - Separate results download link for a summary of the
test job
eaeefc82 LAVA-1047 health check issues
c9105768 Fix a typo in code comment.
64bb15c3 Modify apply-overlay and sparse parameter doc in fastboot deploy
action.
b362332f Fix web link to sparse_format.h in doc.
52520b58 Remove unused imports
7c0c1c6c Add a section of required config for UBoot
481c15ec LAVA-986 Poplar support using U-Boot TFTP
731d0419 Add Worker state and health
169bcb0b Fix typo and update URLs in example artifact conversion job in doc.
4a341866 Update various Debian references
8990fd7b Port template to python3
983bc763 Fix Report a bug and Support links.
9b688776 Take CUSTOM_DOCS into account for Help link.
c0cdd0eb Try to create a generator for yaml dumping
974b3a16 Fix help link on index page.
8d344d65 Point to LAVA docs directly without a dropdown for Help.
c7333bf0 Tweak v1 removal page for latest changes
ad8f556d Remove unused functions and dependencies
d6ea4293 Re-organize deploy action doc.
ee2b4dce Remove unused js lib jquery.formset.js.
6e8c08e4 Purge .pyc files on each unit test run.
8c1cc57e LAVA-737 make lava-master the job scheduler
94c1df3d master and logs: always close zmq sockets
e6e5e9da Fix a crash when parsing job description
84172121 Fix a crash when parsing job description
f5b7f16f LAVA-1124 - Adopt StreamingHttpResponse for large downloads
15060b06 Add a YAML syntax checker for static device configs
c98655fd Prevent MultipleObjectsReturned for jobs with many related TestData
2748e682 LAVA-1122 - skip retired devices in deploy check
db2aed27 LAVA-1126 - RESTAPI support for scheduler downloads
f721b3f1 master: improve logging
94a4adf8 Add a simple example for multi-uart test using BBB
c014613c master: schedule jobs only if lava-logs is pinging
7c4570b5 Remove unused file
4aeb14bb Remove daemonise helper
09b1c82c Document the group visibility setting.
e3bbbc5e Remove init.d scripts and use systemd directly
e12b6722 Fix chart query remove link.
09bdae2a Remove obsolete doc regarding test case dependencies.
edddbf9e master: job_status is not sent anymore by slaves
252e2c7a Send the ping interval to the slave.
17ba6914 Rename dispatcher-master to lava-master
2a07e4ea Mark a job as RUNNING only when not already done
7b1cd8c3 lava-master: improve behavior with duplicated END
39e78200 Factorize lava daemon functions
1def9370 jobs: allow to remove only v1 jobs
debec5da Remove unused models and fields
0583c4e2 Add hip07-d05 device type based on d03
3019e41b Move log handling into a separate process
05dbbb7f LAVA-1063 and LAVA-1064 - Drop dashboard app.
42bfd0e5 dispatcher-master: prevent growing message queue
611aaa13 Document the process of V1 test data removal
lava-dispatcher
===============
1f13d442 Fix bug in calculating flash commands order in fastboot deploy.
0b1f8fae LAVA-1155 - Create overlay as part of download deploy action
c20269b9 Prevent crash if logfile is None in shell.
b5244836 ensure lava-test-raise is available for packaging
d3f70511 Fix function signature
0fbaa24f Drop misleading warning message
085a8d49 LAVA-1105 Disconnect from connections cleanly.
32c6f7f4 LAVA-1132 - add an API for abort a test
b5ebe130 LAVA-1127 - Extend bootloader reset messages.
4b140ed4 LAVA-1142 fix VLANd overlay support
bc7fdee8 ApplyOverlayImage init does not take any parameter
d0ff1380 Use lazy logging
334ccaab Never return/break/continue in finally block
9e61e84d LAVA-1130 - Drop unimplemented CustomisationAction
4772dd57 raise an infra error when dockerd is not running
74871923 Indicated when helpers come from the distro
ae5cdce3 slave: "lava-logs" is a reserved hostname
e5713118 Use systemd for slave startup
7ebeb578 slave: do not send status along END message
054fcf9b lava-slave: make ping time configurable
10ab9909 lava-slave: improving logging
6a7bf9d5 Fix wrong duration when timing out at action start
3013b1fa guestfs: change RuntimError into JobError
0fd8a0d0 deploy/fastboot.py: Add sparse parameter to apply-overlay
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
https://lists.linaro.org/pipermail/lava-announce/2017-September/000037.html
Now that the migration to V2 is in the final stages, the LAVA software team
is looking at how the next stages of development will be managed. (The
remaining large items are a clean up of the scheduler and porting
lava-dispatcher and lava-server to python3.)
We'll be retiring bugzilla and moving to using lava-users mailing list for
issue reporting. Members of the LAVA software team will then file tickets
to cover any work involved in fixes discussed on the list. The ticket
itself won't be visible without a Linaro login but there will be an
associated LAVA story which is visible anonymously. The team member
creating the ticket and the linked story will be responsible for updating
the lava-users mailing list with progress and feeding back any comments.
This allows us to collate multiple enquiries into one ticket or create
multiple stories out of one discussion whilst allowing us to properly
prioritise the work.
If you have a Linaro login, you can create tickets in the normal way:
https://projects.linaro.org/servicedesk/customer/portal/1
There is also a public Dashboard:
https://projects.linaro.org/secure/Dashboard.jspa?selectPageId=11603
The dashboard has a dedicated section for tickets and stories which
originated on the lava-users mailing list. The dashboard also gives an
indication of when the next release is due.
The workflow looks like this:
Ticket created Linked LAVA story created.
When work starts, the LAVA story goes into In Progress.
If the work has to wait for other work to be completed, the story and
ticket may be put into Blocked.
When a review is uploaded to review.linaro.org, the LAVA story goes into
Review.
When the review is merged, the LAVA story goes into Resolved with a
FixVersion of the next LAVA production release, e.g. 2017.12 or 2018.1.
Also, the ticket goes into InProgress.
When the release is made, the LAVA story goes to Done and the ticket goes
to Awaiting Acceptance. If no problems arise, the ticket is then Closed.
The LAVA story will be mentioned in the commit message of the associated
review and will therefore show up in the packaged changelog and git history.
There will still be reviews uploaded which are not directly linked to a
LAVA story or ticket but for work which needs to be scheduled, planned or
prioritised, a ticket and story will be created.
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
LAVA requires a range of singleton daemon processes to schedule, organise,
publish and log the test job operations. 2017.12 will be retiring the
lava-server daemon and the /var/log/lava-server/lava-scheduler.log, moving
those operations into the lava-master daemon and the
/var/log/lava-server/lava-master.log. This is one of the steps in the
removal of V1.
This leads a substantial change to how admins approach an instance running
2017.12 or later.
When jobs don't appear to be running for some reason, the default action is
to check /var/log/lava-server/lava-scheduler.log - once the instance is
running 2017.12 or later, admins need to remember that it is correct for:
* /var/log/lava-server/lava-scheduler.log to be empty
* the status of the lava-server daemon to be active (exited)
* the lava-server service to not restart
At some point after 2017.12 has been running, admins can choose to archive
or purge /var/log/lava-server/lava-scheduler.log* and / or disable the
lava-server service using systemctl.
The scheduler from 2017.12 onwards will consist of:
* /var/log/lava-server/lava-master.log
* /var/log/lava-server/lava-logs.log
* the status of the lava-master daemon will be active (running)
* the lava-master service will restart when admins request it.
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
LAVA, until now, has packaged SysVinit files to manage the various daemons
but there have been longstanding problems with log rotation and the need to
carry redundant code to manage the daemonize process for python scripts.
This has allowed instances to support both SysVinit and systemd because
systemd automatically converts the SysVinit files to systemd service files.
Now that V1 has been removed, it has become possible and advantageous to
drop SysVinit support and move to only systemd support. This is expected to
mean that lava-dispatcher (and therefore lava-server) will depend on
systemd-sysv, i.e. systemd needs to be the init system to be able to start
the daemons upon which LAVA relies.
A default install of Debian Jessie and Stretch already defaults to using
systemd as the init system, so this does not necessarily involve any
changes.
If there are questions or issues with this, please reply to the lava-users
mailing list.
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
See
https://lists.linaro.org/pipermail/lava-announce/2017-September/000037.html
2017.11 is the second release on the roadmap to the removal of V1. This is
the single largest change ever made to the LAVA packages.
* All dashboard URLs are permanently disabled in lava-server.
* All devices which were not enabled for V2 are now hidden and unusable.
* All V1 code has been removed from lava-dispatcher.
* All V1 documentation has been removed from lava-server-doc.
2017.11 disables all access to any V1 test data - including V1 only
devices. The data itself remains in the database but is not accessible via
any API.
If you have chosen to keep an archive of V1 test data and have not yet done
so, you should do this before installing this upgrade. At the very least,
you **must** have a backup of your postgresql database **before** you
upgraded to 2017.11 in order to make a V1 test data archive later.
2017.11 requires that **all** workers and each associated master are
upgraded to 2017.11 for test jobs to continue running. This is because
there have been very large changes to the directories and file layout
within both lava-server and lava-dispatcher associated with the removal of
the V1 components.
The LAVA software team have been checking ahead for the final stage of the
roadmap and plans are on track, as described.
http:// and https:// changes in django
======================================
A reminder, if you are accessing an instance using http:// (whether
localhost or not), then the changes described in the documentation **must**
be applied for the instance to operate correctly. This is a security change
in Django, not a change in LAVA.
https://staging.validation.linaro.org/static/docs/v2/pipeline-debug.html#us…
Symptoms include HTTP500 errors but can also include the inability to login
to an instance using LDAP or local django accounts, depending on your local
apache configuration.
Changes in 2017.11
==================
Changes in the 2017.11 release are described below, including the short git
commit hash. Use the git commit hash to go directly to that commit using a
URL like https://git.linaro.org/lava/lava-server.git/commit/?id=b19b9648a
for lava-server or
https://git.linaro.org/lava/lava-dispatcher.git/commit/?id=1451e3a4 for
lava-dispatcher.
Where the changelog message includes a story id like LAVA-552, that id can
be added to the base URL: https://projects.linaro.org/browse/ to find out
more about the change itself. e.g.
https://projects.linaro.org/browse/LAVA-552
All LAVA stories are publicly available without requiring a login.
2017.11 also includes large changes to the packaging of both lava-server
and lava-dispatcher. The prompts formerly used to configure a V1 remote
worker have been removed. Packaging is maintained at
https://github.com/Linaro/pkg-lava-server and
https://github.com/Linaro/pkg-lava-dispatcher
Packages for 2017.11 have been uploaded to Debian unstable and also the
LAVA repositories (for jessie-backports and stretch-backports).
lava-server
===========
a799fc6c Fix links back to the main instance
5b9656b6 Fix broken plural in header
b21f8c8f Fix crash in job_section_log
c9526f01 Document the LOG_SIZE_LIMIT setting in settings.conf
63b57c94 Remove lava-mount-masterfs
75b403f4 Remove add_device script
8ddea823 Add description about the disc space requirement
for pg_upgradecluster.
5c9dceb2 Remove TemporaryDevice imports
9b21ea48 Removed unused Worker functions
2accb4c3 Matching change to templates for directory change
1d384c4a Update docs regarding device-dictionary lava-server manage
command.
32472fac Port 77fd10e2 to scheduler.devices.get_dictionary
114bbfa5 LAVA-1093 - Add a management command to drop all materialized
views
8bc9d83a Update dashboard XML-RPC API help for api_version
bb090e96 LAVA-552 - add system.api_version support
77fd10e2 LAVA-1092 support passing a context to device_config
de7ad3aa Remove dashboard_app views and static files.
4bc68531 Remove templates from dashboard_app.
1a618c27 Remove unused functions
d50deca7 api: limit the number of jobs returned
59880e14 Fix HTTP 500 on devicetype health history
a39fecf5 Remove unused resources (css, js and images)
a32ac3b6 Rename base-bootstrap and content-bootstrap
7c108de1 job: print lava.job result in case of failure
b51c419f Remove old templates
a9139c1f Use bootstrap template
7915f18f Remove unused resources
7331901a scheduler.api.jobs.show: add failure_comment
71233bff Fix print syntax for python3 compatibility
936d5eca Remove unused tags
4ebb2a39 Remove unused sources
21a7eb18 Save more sql queries by caching values
4d0d867e Remove non pipeline jobs support
a6648dbd Retain docs on disabling V1 workers
8eac0d74 Revert "LAVA-950 set the master identity"
68573b1a Remove V1 dependencies
a8151559 timing: handle new start/end line format
26cc3ad0 Remove unnecessary js lib beautify.
c44009fa Simplify job view
e1da85d4 Fix loading of description.yaml
7b41f7ef Add documentation for secondary media writer parameters
1b4d3dd5 LAVA-1081 migrate instance name to settings
f3dc1987 Fix up typos from earlier changes
faa24f59 LAVA-1079 - remove HIDE_V1 and HIDE_V2 doc options
942b84c3 Remove unused functions and imports
e61a4831 LAVA-1056 Drop V1 documentation
126dce0c Fix crash introduced by 42451c9cc
f0b28214 Remove v1 codebase
31bb1bf0 Fix notification exception when query is used for data
comparison.
a6cff700 Remove last references to lava_dispatcher v1
043690d9 Remove references to lava_dispatcher v1
4c9e493c Remove dashboard_app traces from rest of the codebase.
c371b8ca drop link to removed page
1b1b638e LAVA-876 - Return empty data stubs for dashboard API calls.
919c10c2 Remove links to dashboard_app in the scheduler_app
1483e9fb Remove leftover from job wizard
f7a1c976 docker: allow passing extra options
42451c9c Use all_jobs_with_custom_sort when applicable
cc4ffd64 Fix broken links in example test job
0ca5d75c Drop the migration status page.
b37fe944 Add a device-type config for the rpi-3b in armv7 32bit mode
9e904a18 Revert "LAVA-876 - Remove access to Dashboard"
f07e0950 Fix warning regarding naive datetime
e8348425 Remove more references to dashboard_app
103a44be LAVA-876 - Remove access to Dashboard
d33c9c98 LAVA-876 - Remove access to Dashboard
b6fc46aa Revert "LAVA-1038 add a settings to archive the instance"
f75a333d Do not run dashboard test anymore
d9163445 Remove references to v1 jobs
addb61d9 bug 3268: fix lava-master crash with invalid logs
febf91b1 Improve advice on api/help
ac8b7df3 fix pep8 error
64025cf3 LAVA-1072 test all template connection syntax
10d5fbe1 Adjust U-Boot load addresses for tegra124 devices
to allow bigger kernels
f30ef936 LAVA-1065 - Remove dashboard_app urls server wide.
096a2f1c LAVA-1049 - Allow for .yml as well as .yaml for healthchecks
918f0bc7 Fix logic so addldapuser and mergeldapuser work for
all LDAP configs
36fcb3c2 Documentation changes for multiple uarts
b1de8acf Update instructions for migrating postgres
0ff08373 LAVA-1053 Results limit does not work for queries
f9e64aa1 Fix SQL request storm when listing jobs
2d9c4757 No need to save after get_or_create or Create()
8988cb36 LAVA-896 fix level in result export
219fa3dd LAVA-1073 - support for a second UART on a device
c934bbbe master: fix database reconnection
4f0e0e62 LAVA-950 set the master identity
316d77fb Expand the device integration guidance.
lava-dispatcher
===============
d91a5b99 Revert "Stop parsing kernel messages when the end of a
panic has been found"
1451e3a4 LAVA-1098 unassigned variable in read_feedback
437d57ba Rationalise the devices directory structure
bdffb3bf Add power control to pyocd
d9553680 Add feedback check to test shell
06588ddf Receive the udev device directly from the udev rule
d811b2a8 Fix license
65d6c6a6 Move arduino101 dfu example urls to images.v.l.o
61cff41c Only log when feedback content was found
0ba35392 Move juno removable URLs to images.validation.linaro.org
cb983d97 Cleanup after pytest runs
997265c2 LAVA-1086 add handler to listen to feedback
29a60e38 Add ConfigObj dependency for TFTP check
70bd3fab Fix prospector warnings
6edb8ef9 Fix missing import and other pylint issues
6f7f5f05 Remove lava-lxc-device-* scripts which are unused.
578b054b Use py.test
65c03eca docker: allow passing extra options
7b7d920a device-info should be yaml
ef8f7d4c Remove deprecated function
165e14f8 Fix linger period: set it to 10s instead of 5ms
49c500ac Fix double crash when the process crash early
7dbdc2b6 Add test case for secondary deployment writer tool parameters
969459c6 LAVA-1069 - migrate dispatcher device configs
9e8e5258 Use optargs to extend ci-run for python3
e1c1561b Fix python3 breakage in unit test
69277753 Read feedback when finalising connections
0fb44088 LAVA-1067 Refactor fastboot flash operations
9ac71872 Add missing import
94430958 Ensure finalize always finalises protocols
9d712364 Add option to not uniquify secondary image download paths
cdfd5909 Fix master cert handling for lava-run and lxc helper
73548f7a Rename dd params to tool for removable media
1802c3e8 Handle master and slave certs as filenames only
ed306477 Do not rely on SysV runlevel to ensure container is ready.
75b47c6a Remove loop mounts via guestfs, while applying
overlay to sparse image.
cd1152e3 Support archlinux and slackware rootfs
6fc024a5 Remove deprecated modules
ddf5d2fc Remove v1 code
5561be23 LAVA-1074 - second UART support
758a41a6 Allow configurable writes for secondary storage deployment
fb75db4a Add flag to disable uniquifying the download paths
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
Disabling V1 test job submissions
=================================
**IMPORTANT** 2017.10 starts the roadmap to the removal of V1 by DISABLING
all V1 test job submissions.
Queued V1 test jobs will continue to run but once 2017.10 is installed, all
attempts to submit a V1 test job will be rejected. This includes health
checks for devices which do not yet have a V2 health check. (So those
devices would go offline - remove the health check job from the database
entry of the device-type to get the device back online if there are queued
jobs.)
Before installing this upgrade, check the Migration Status page on the
particular instance. e.g.
https://staging.validation.linaro.org/scheduler/migration
Notification on installation
============================
By default, installing 2017.10 will raise a notice, reminding you of this
change:
The 2017.10 release **disables ALL V1 test job submissions**. Queued
test jobs will continue to run but if you proceed, only V2 submissions
will be accepted by this instance.
.
If you want to create an archive of the existing V1 test data, install
this version but do not allow further upgrades of LAVA packages.
.
See
https://lists.linaro.org/pipermail/lava-announce/2017-September/000037.html
If you are deploying this change using configuration management, you may
need to define this environment variable to allow the installation to
proceed:
APT_LISTCHANGES_FRONTEND=none
Window for creating a V1 archive
================================
Once installed, admins can choose to wait until all queued V1 test jobs
have finished and then use a backup of the postgres database to create a
read-only V1 archive. Install 2017.10 on the archive instance and then
restore the backup database. All dashboard objects in 2017.10 are
read-only. Admins will need to ensure that all devices on the archive
instance match those on the original instance and then change all devices
to Retired status in the django admin interface.
See also
https://staging.validation.linaro.org/static/docs/v2/pipeline-server.html#s…
Archive repository support
==========================
2017.10 will be preserved in a dedicated LAVA repository in case an archive
has to be reconstructed from a database backup after 2017.11 is released.
http://images.validation.linaro.org/v1-archive-repo/
lava-server
===========
03fec0ea Fix out of date stretch reference
2c8a88d8 Include non https in title for security defaults configuration doc.
56185add Mark required parameters in left over deploy action reference.
b1de8acf Update instructions for migrating postgres
2b845967 Fix issues in the documentation build.
f9e64aa1 Fix SQL request storm when listing jobs
95b12c01 Fix missing import
0a63c2f3 Adjust U-Boot load addresses for imx6q-sabrelite to allow bigger
kernels
3a4cddf4 LAVA-341 Unicode issues in tables and queries
5bff2fd5 Mark required parameters in deploy action using an asterisk.
00b5044a LAVA-1035 Force all Dashboard objects into read-only mode for users
7a006f64 Change load addresses for Jetson TK1 to allow bigger kci kernels
ca5e6834 Update commands for eMMC boot of OE on X15
0d17e797 Add docker device-type configuration
f0c2107c Remove doc references to lava-lxc-device-* commands.
715c6309 LAVA-771 - Support dragonboard-820c with lxc
7a4adb03 Fix the hierarchy of md5sum and sha256sum in nbdroot index.
576661f4 Make clear when to use lxc://
7c68e21b Document download deploy and explain about lxc:// url scheme.
8f4d7419 Rewrite fastboot deploy action reference doc.
11f5c222 archive: do not allow to force hc
9536450d logger: drop level and action name
771d0d93 Fix a typo in deploy to name.
0a2404fa Update command requires an alias argument
e7a704a1 Add V1 EOL summary to the index page for all docs
cdaa6376 LAVA-1003 do not lose logging messages
f09b6beb LAVA-1045 - document the archive setting
483fb1a7 LAVA-1038 add a settings to archive the instance
866afbf4 migration: v1 health-check are not used anymore
896db15b LAVA-1033 remove v1 job wizard
2eac055b LAVA-1043 fix handling of large log files
aef7d7b8 Add device-type disco-l475-iot1
399b9dbc Use the CDumper to export results
c9dc6a14 LAVA-1032 reject v1 submission at api level
65394986 Drop lookups to ActionData from testcase export
80d1a9fa Add support for the NextThing CHIP Pro
21c8fc52 Only write logs to output.yaml
01df9ce0 Improve job listing by fetching more data
436c220e Decrease SQL queries when listing test results
445b9c66 Add support for reading django settings for limiting LDAP group
access
a33b9c9f Only set the job status if lava-run crashed
581b616f Fix boot action doc for fastboot and lxc boot methods.
08393dbb Use new logging API
33a73bb3 device-types: panda: handle bigger kernels
746fe4c9 Allow to override prompt in device configuration
5932f9d1 LAVA-1048 Extend X15 to typical U-Boot support
affaa35d Fix error message in daemonise.py
e24db160 Fix lambda syntax
8fb16105 v2: Do not fall back to db for health-checks
bceecc64 Do not submit new health checks for v1 only device
lava-dispatcher
===============
1b129396 Remove unnecessary calls to get_udev_devices.
55cc9a0d Replace LxcAddDeviceAction with LxcCreateUdevRuleAction.
9cf899df Include vendor and product id if available, while writing udev
rule.
5eea8b61 Add missing requirement for magic binding
75b47c6a Remove loop mounts via guestfs, while applying overlay to sparse
image.
1f285ecf Ensure the image is Android sparse image before acting on it.
44b8436a Add missing dependency on pytz
b953a562 Append to the udev rules and avoid overwriting.
44380b3e Add a new device type: docker
336719bf Fix broken link in hikey960 unit test.
1703dc94 Remove unused signals after introduction of udev based device
addition.
7f2f049e Always don't assume a ZMQ handler for logging.
9fa3995e Fix a typo in log message.
9cab91d0 LAVA-1046 allow to send logs from lxc udev scripts
37c7e863 log: allow to add a linger when closing socket
dd4f6b09 LAVA-1040 - Initial boot only support for artifact conversion in
LXC
7ed0674c logger: remove level and action name
70fb64c4 lava-run: output_dir should be an absolute path
8f31f584 Always revert directory changes
40ca2c11 Add a timezone aware log message at job start
79325b7b Ensure a retry sets a failed result
b8527df2 Debug log message to know image files are copied to LXC.
3665e840 Allow fastboot calls to fail and return the log
7de0f887 Fix bug #3007 - Unable to reboot target between tests on
hikey-hi6220
dc5e5b18 Send a bad status only when lava-run crashed
18607373 Write description.yaml when all logs where sent to lava-master
e185d967 Move most exception handling to lava-run
57829892 Move signal handling to lava-run
d9d39463 Provide useful output when no classes accept an action
1c45a4ad Setup logging as early as possible
af4401f0 LAVA-1048 extend X15 support for U-Boot
12711359 Raise an error instead of setting self.errors in run()
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
The 2017.9 release is now available from the lava-repositories.
To support Stretch, the package available from the lava-repositories
now has a version suffix matching the suite for which the binaries
were built. So instances using jessie-backports will see
2017.9-1+jessie and instances using stretch-backports will see
2017.9-1+stretch when using the lava repositories.
https://validation.linaro.org/static/docs/v2/installing_on_debian.html#lava…
lava-server | 2017.9-1+jessie | jessie-backports
lava-dispatcher | 2017.9-1+jessie | jessie-backports
lava-server | 2017.9-1+stretch | stretch-backports
lava-dispatcher | 2017.9-1+stretch | stretch-backports
Additional packages from jessie-backports
=========================================
$ sudo apt -t jessie-backports install python-pexpect
python-setproctitle python-ptyprocess
Make sure these packages are updated from jessie-backports before
installing 2017.9. Versions in stretch are already sufficient.
jessie-backports "sloppy"
=========================
This release has been uploaded to Debian unstable. After a period of
time, an upload will be made into jessie-backports-sloppy which is the
place for backports from buster to the previous stable release. An
upload to stretch-backports will be made at the same time.
To install the new release from jessie-backports-sloppy, a suitable
apt source will need to be added - LAVA still needs some packages from
jessie-backports. e.g. to use the bytemark Debian mirror, add this
line:
deb http://mirror.bytemark.co.uk/debian jessie-backports-sloppy main
Jessie continues to be the preferred release for LAVA but we are
planning to move to Stretch in October. We don't anticipate any
problems with lava-server or lava-dispatcher on Stretch as this has
been tested frequently.
Django changes for localhost
============================
Django upstream have changed some of the security defaults and this
has an effect when using http://localhost - 2017.9 contains
documentation on which settings are required to get localhost working
again.
https://staging.validation.linaro.org/static/docs/v2/pipeline-debug.html#ch…
Reminder about the migration status page
========================================
During the time 2017.9 is installed, all instances need to get to a
similar state of device migration as staging has currently:
https://staging.validation.linaro.org/scheduler/migration
* All active devices migrated to V2 support.
* All active V2 devices exclusive to V2.
* All active devices have migrated to V2 healthchecks
* All active devices have healthchecks enabled.
The important phrase here is 'active'. Health checks can be disabled
for a complete device-type in the django admin interface for that
type, that does not affect completion of the migration status. Retired
devices are not counted at all.
During the changes to remove V1, various of the checks which are done
for the migration status page may also be required to be able to start
or complete the next stage of the removal of V1 - including checks
which could block the installation of a future release if not
completed in time. More details on this will be announced as and when
the checks are created, based on the testing done during development.
The roadmap to remove V1 begins now
===================================
https://lists.linaro.org/pipermail/lava-announce/2017-September/000037.html
**2017.9 is the LAST release which will allow V1 test jobs to be
submitted and executed.**
As of 2017.10, V1 test job submissions will be DISABLED and the
process continues to the removal of access to V1 data in 2017.11 and
the removal of V1 test data in 2017.12.
This means that if an instance is running V1 test jobs after the
2017.10 release, the only support available will be how to migrate to
V2.
lava-dispatcher
===============
255e1dc2 Allow to use lava-run from the command line
5e3e4df8 parser: fix exception with unknown action
b167715b Fix exception message
75ef463a Add transfer_overlay support to fastboot
4fcdbb0c LAVA-1020 - Allow branch to be specified for git
d067a6e4 Remove FIXME about unused feature test-case-deps.
93947b9d Fix job tmp_dir NoneType error.
cf0095ca Extend NBD unit tests for template update
ca72b0cc Honour reboot to bootloader irrespective of power state existence.
b210b297 LAVA-1009 - Improve cleanup of temp files and containers
70fb8c09 Add debug log at the right place for lxc-destroy command execution.
51938bf5 Stop executing shell commands twice.
60c39bae Create device-info-file consumed by udev rules in job's tmp_dir.
46a9789d LAVA-1012 - Handle udev paths outside /dev/bus/usb
c6e06463 LAVA-998 - Default to shallow clones in overlay
b9cc1da8 LAVA-1001 - raise TestError on invalid signal call
4a8241e1 Use check_output instead of Popen from subprocess module.
7024de4c Move to permanent URLs for better unit test support
4f32f4e2 Fix reference to smoke test
927bb33a LAVA-1011 - Check for ENOSPACE after adding overlay to sparse image
47608877 Add udev rule file contents to debug message.
15d8adea Add more debug messages for udev rules addition on the fly.
1b2c9252 Ensure auto-login-action can execute protocols
44755d5a CTT-441 - lava-lxc-device-* don't work properly
d55526c4 Add option to enable IPv6 connections
07839bdf Raise a JobError when lava_test_results_dir is undefined
3f9c87f5 Remove uneeded test
003990f7 Add setproctitle as a python installation requirement to setup.py
d04dcf58 Fix prospector warnings
c2601cbe Extend pipeline_reference readme
115d84ad Create a clean script to replace lava-dispatch for v2 jobs
80bfa16e device: remove 'hostname' and 'target'
b663e427 Do not crash when cleanup raises and exception
fcbff4a6 Hikey 960 support for OE and AOSP
bab3c6f1 Replace kernel.txt with a normal boot and add kernel-panic.txt
c61c67bc Fix value of self.results['success'] in pipeline boot action
6939c5ea Add pre-power command support to LXC protocol
98ede789 LAVA-996 - preserve empty parameters in the overlay
9d33ced5 Use encoding to pexpect.spawn for python3 support
ce2dbd83 Stop parsing kernel messages when the end of a panic has been found
b4ae5b4d lava-slave: Pretty print the configuration
cf22ed83 Extend secondary media to mustang
3e746b47 Add network block device boot support
lava-server
===========
6d1ff5c5 Improve the docs on lava-test-reference and metadata
2f11898f LAVA-997 - Invalidate primary connections setup when power is
configured.
ccfb3961 b2260: allow to set bootloader_prompt in device config
4a1b8f5f Prevent mistaken fixup of device reservation
5093f40c LAVA-1022 - V2 support for IFC6410
1f18eada LAVA-1021 - Document specifying branch for git
36513ec3 Change default source code URL after systems change
da49e558 Remove doc for unimplemented feature test-case-deps.
61dfd204 Document settings to enable authentication in http://localhost
5cbf5b11 Allow vcs checks to skip monitor test actions
b85baa75 NBD kernel bootarg fixups
c089adb7 Add failure comment message via async update on the job detail page.
5ca25620 Improve V1 doc build for Debian reproducibility
dccd1588 LAVA-998 - Default to shallow clones in overlay
250f27dd Fix warning of linaro.img not found.
938b3da1 Fix typos and warnings in deploy to nbd doc.
90c9ed74 LAVA-1013 improve performance of result export
0af80d19 LAVA-1008 Group visibility check
080dd10d LAVA-1007 Prevent NoneType crash in job duration
b2d90962 Fix typos in manage users which talk about devices
07e5fa19 Fix reference to smoke test
59340f70 Expand advice on good commit messages.
cfae2faa Skip some dashboard tests if django is too new
68b24fcc Revert "Move action fields templates to table files."
c9f65507 Add log file argument to dispatcher-master command.
dabaf74c LAVA-1002 - fix group label editing in query details page.
7398abd4 CTT-441 - lava-lxc-device-* don't work properly
f1cb7faf Decrease the number of SQL queries to list the groups
984f3b02 doc: fix example of zmq_client usage
f864696d Documentation build error tweaks
9aeff523 XMLRPC authentication: fix wrong logic
93572067 Basic integration advice for U-Boot devices
5b2d39d7 Support PyOCD for KW41Z and remove CMSIS boot method
3f8c8a93 Fix a typo in persistent container configuration doc.
d334642c Rename xmlrpc module to api
9f947433 Add ssh deployment support for secondary connections.
ce9f0da6 Document how to combine LXC and MultiNode
e2be8567 Allow documentation to be built with python3
cc6e9696 Add notes on writing new unit tests
c40ac0da Document option for device_type qemu to choose host audio handling
97eac4b6 Update lava-self documentation for change in output
7e0f6eca Fix PipelineDevice usage after last dispatcher commit
37d4eba4 Fix a typo - repeated usb_vendor_id parameter in device_info example.
d4a80fc1 Improve the validation message when a role is not found in every
1a5aec5f Add a seealso for fresh installs of lava-tool
4707ff98 Check that the Debian package has been installed
72d30834 Mention cookie specific options for reverse proxy
716424a3 api: fix scheduler.jobs.submit's docstring
6dc1a966 Add sudo for the apache config copy command in V2 worker setup doc.
ae39d57b Add docs on calling protocols from actions
a49cc9c6 Expand the device integration guidance.
1fd5e964 Add Integration Stories for supported devices
620dcbf1 Move smoke-tests into functional test repository
ad2f57df device-type: update at91-sama5d4_xplained addresses
b6734844 device-type: update at91-sama5d2_xplained addresses
c4ead793 device-type: update sama53d addresses
1204f81c Skip links to secondary connections device-types
8b9068a3 Add Metadata output to verbose notifications.
2da8c076 LAVA-357 - Allow override of the nfsvers in base_nfs_root_args
5926b9a8 Catch TemplateError in notifications
98b3da07 Initial improvements for the Queries and Charts docs
092f56a5 device-type: update armada-xp-linksys-mamba addresses
0fdf33a8 device-type: update armada-388-gp addresses
5af8f640 device-type: update armada-370-db addresses
9f4c975f XMLRPC: self.user return an AnonymousUser instead of None
d7b34e2d Add an helper command to switch to a dev setup
9bedff1e Add option to enable listening on IPv6
8ff7c4f1 Extend secondary media docs
f132af4e Add support for secondary media for mustang
1fecd500 Integration of Hikey 960
b27f60c4 LAVA xnbd protocol support and documentation for nbd boot
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
The LAVA software team are happy to announce the roadmap for the removal of
LAVA V1 support, test data and source code.
The next LAVA production release will be 2017.9 which will be the last
release with functioning V1 support. There are no changes to V1 in 2017.9,
so it will continue working as it does currently for this release.
https://projects.linaro.org/browse/LAVA-994 tracks the work for 2017.9
Any instance where V1 test jobs need to continue running must NOT upgrade
beyond 2017.9. There will be no future updates of V1 for any reason and no
support for anything related to V1 other than to migrate V1 test jobs and
devices to V2.
Blocking V1 test job submissions with 2017.10
=============================================
The 2017.10 release will *disable* the submission of all V1 test jobs
either from the UI or using XML-RPC or lava-tool. If any devices still have
V1 health checks, those health checks will no longer run. Any queued V1
test jobs will run. Only V2 test jobs will be allowed to be submitted.
https://projects.linaro.org/browse/LAVA-1026 tracks the work for 2017.10
If you want to keep a read-only archive of your V1 test data, then 2017.10
is the last chance to create this archive. Any instance where the V1 data
should remain visible must NOT upgrade beyond 2017.10.
Removing access to V1 URLs in 2017.11
=====================================
All URLs related to V1 will be removed or disabled in the 2017.11 release -
the Dashboard drop-down menu will disappear and any bookmarks to dashboard
URLs would give a 404. The Dashboard XML-RPC API will become no-ops
returning no data. This means that bundles and bundle streams will not be
able to be downloaded or viewed. Filters, Image Reports and Image Reports
2.0 will all become unavailable.
V1 documentation will be deleted in this release - the V2 docs will be
promoted as the LAVA documentation, removing references to V1.
The V1 source code for lava-dispatcher will be deleted at this point. There
will be some changes to the directory structure of the remaining code, so
if you are maintaining out of tree patches, you will need to fix some merge
conflicts.
Elements of the web UI which distinguish between V1 and V2 support will
also be disabled and removed. This will include removing access to viewing
or downloading the log files of V1 test jobs.
https://projects.linaro.org/browse/LAVA-1028 tracks the work for 2017.11
DELETION of V1 test data in 2017.12
===================================
This has been highlighted many times in LAVA announcements, Connect
sessions, in the documentation and in all support enquiries. It is finally
happening with 2017.12
Any instance which installs 2017.12 will directly cause the deliberate and
permanent deletion of ALL V1 TEST DATA for that instance. Bundles,
BundleStreams, Filters, Image Reports, Image Reports 2.0 - everything in
the database which relates to V1 will be deleted.
Alongside the removal of the test data, the V1 source code will also be
deleted from the lava-server codebase.
*This is a one-way process*. If there is no usable backup for the instance,
there will be NO way to restore any V1 data after this point. After
restoring from backup, if 2017.12 or any later release is installed, the V1
data will again be deleted.
https://projects.linaro.org/browse/LAVA-1029 tracks the work for 2017.12
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/
There are delays getting packages into stretch-backports, as expected.
In the meantime, this is a reminder of how to use backports: first
start with stable.
So when installing LAVA on Stretch, even if what you want is the
latest release from production-repo or staging-repo (currently
2017.7), then your first step is to install 2016.12 from Stretch.
# apt -y install lava-server
# apt -y install vim
# wget http://images.validation.linaro.org/production-repo/production-repo.key.asc
# apt-key add production-repo.key.asc
# vim /etc/apt/sources.list.d/lava.list
# # edit the file to specify: deb
http://images.validation.linaro.org/production-repo jessie-backports
main
Yes, that is jessie-backports - we don't have packages in
stretch-backports at this time.
# apt update
# apt upgrade
If you specify backports too early, you'll get a range of other
packages from backports - you don't actually need jessie-backports or
stretch-backports from Debian at this time.
Packages for jessie-backports are built on jessie. Packages for
stretch-backports are built on stretch. It's the same source code in
each case. Right now, there aren't any problems with installing from
jessie-backports on stretch - particularly if you install lava-server
from stretch in the first place so that the majority of your packages
come from stretch.
--
Neil Williams
=============
neil.williams(a)linaro.org
http://www.linux.codehelp.co.uk/