Baserock 12 is released!
by Pedro Alvarez
Baserock 12 is released
=======================
The [Baserock team] and [Codethink Limited] are proud to announce
version 12 of the Baserock system.
Baserock is a toolset and development methodology for developing
embedded and appliance Linux systems.
What's new in this version?
===========================
Cmdtest
-------
We updated the version of the cmdtest component used in Baserock. This
brings in a newer version of the yarn testing tool which has allowed us
to improve the Morph test suites to be cleaner and thus better.
SSH configuration extension
---------------------------
The ssh configuration extension's functionality has been replaced by
(non-identical, but equivalent) functionality in the install-files
configuration extension. Following the principle of simpler-is-better
we have therefore removed the ssh configuration extension and we
encourage users to migrate to install-files.
As an example of how to use this extension, add the environment variable
INSTALL_FILES to the deploy stanza for a system in the cluster
morphology:
name: foo
kind: cluster
systems:
- morph: base-system-x86_64-generic
repo: baserock:baserock/morphs
ref: master
deploy:
my-raw-disk-image:
type: rawdisk
location: /src/tmp/testdev.img
DISK_SIZE: 4G
INSTALL_FILES: foo-dir/manifest
Then create the 'foo-dir' directory:
foo-dir/
root/
.ssh/
id_rsa
id_rsa.pub
Where id_rsa and id_rsa.pub are the ssh key pair the root user on the
deployed system should have. Then create foo-dir/manifest:
0040755 0 0 /root
0040700 0 0 /root/.ssh
0100600 0 0 /root/.ssh/id_rsa
0100600 0 0 /root/.ssh/id_rsa.pub
After this, install-files will put the files in the right places on
the deployed system, with the right permissions.
Refactoring morph subcommands
-----------------------------
Work began on refactoring the 'build' command, but the new code will
not be available in Baserock until the next cycle.
Minor changes to morph
----------------------
* A number of bugs have been fixed during the Baserock 12 cycle,
including:
* prevent 'edit' subcommand being used without a system as argument.
* prevent building uncommmitted systems.
* deploy a non-cluster morphology now displays an error message.
* prevent cross-building.
* morph can now build when checking out a tag.
* We have improved the morph scenario test suite by:
* adding new scenarios, including regression scenarios for fixed
bugs, and replacing some of the old cmdtest based suite with
scenarios.
* reworking some of the statement language to be more consistent,
* making the voice of the scenarios slightly more active.
Changes to morphologies
=======================
Reducing redundancy in build dependencies
-----------------------------------------
Since at this time, build-depending on a stratum implicitly
build-depends on the build-dependencies of that stratum, we have
simplified the build-depends sections of the standard stratum
morphologies. This should make it easier to understand the relationship
between strata involved in building systems.
Other changes
-------------
* pyfilesystem, kexec-tools have been added to the 'tools' stratum.
* 'six' has been moved from 'glanceclient' to the 'tools' stratum.
* boto has been added to 'tools' to finish the integration of
cloud-init in Baserock. There is a short guide about how to deploy to
OpenStack on the [developing with Baserock] wiki page.
New systems and strata
----------------------
We have added a ceph services system which provides the daemons
necessary for the Ceph object, block and file storage services.
These daemons are contained within a ceph-service stratum which can be
included into your systems if you want them to be able to serve Ceph
filesystems.
This new system is an example and is not directly supported at this
time. However please do try it out if Ceph is of interest to you, and
let us know how you get on.
How do I get started?
=====================
You can find a [quick start] guide on the [Baserock wiki] and also
a short guide on [developing with Baserock] which follows on from
the quick start guide and shows you how to get to the point of proving
you can build Baserock within Baserock.
>From that point on, your imagination is the limit. You can follow our
development in the [Git repositories] we publish.
How do I get in contact?
========================
The Baserock project has an [IRC channel] and [mailing list] for
developers to gather and discuss anything associated with
Baserock. It is strongly recommended that you use the IRC and
lists to contact the team for anything associated with the public
development of Baserock. We also have a mailing list for
[announcements] which will be notified of any new releases or big
developments in Baserock.
If you manage to find a bug in Baserock, we'd like to hear
from you. You can find our [bug reporting guidelines] on the
Baserock wiki and we will do our best to help.
We hope you enjoy experimenting with Baserock and look forward to
hearing about any cool things you do with our work.
[Codethink limited]: http://www.codethink.co.uk/
[Baserock wiki]: http://wiki.baserock.org/
[Baserock team]: http://wiki.baserock.org/team/
[Git repositories]: http://git.baserock.org/cgi-bin/cgit.cgi
[IRC Channel]: http://wiki.baserock.org/irc-channel/
[mailing list]: http://wiki.baserock.org/mailinglist/
[announcements]: http://wiki.baserock.org/mailinglist/
[download page]: http://wiki.baserock.org/download/
[quick start]: http://wiki.baserock.org/quick-start/
[developing with Baserock]: http://wiki.baserock.org/devel-with/
[bug reporting guidelines]: http://wiki.baserock.org/bug-reporting/
[Baserock GENIVI Baseline]:
http://projects.genivi.org/GENIVI_Baselines/genivi-baserock/
9 years, 11 months