summaryrefslogtreecommitdiff
path: root/readme.md
diff options
context:
space:
mode:
authorPaul Sherwood <paul.sherwood@codethink.co.uk>2016-02-28 17:10:34 +0000
committerPaul Sherwood <paul.sherwood@codethink.co.uk>2016-02-28 17:10:34 +0000
commit32616da09c05ea6ab28e656320eca736632f67c8 (patch)
tree7ea088bc94503fa56a4e9d647a2c457b8b25e69c /readme.md
parent3393fe7c597d16ec147de64e5dfce015128fb76b (diff)
downloadybd-32616da09c05ea6ab28e656320eca736632f67c8.tar.gz
Various readme fixes16.09
Diffstat (limited to 'readme.md')
-rw-r--r--readme.md40
1 files changed, 17 insertions, 23 deletions
diff --git a/readme.md b/readme.md
index 26a8179..6bab362 100644
--- a/readme.md
+++ b/readme.md
@@ -16,7 +16,7 @@ repeatably build all systems in Baserock's definitions.git, i.e. all of the
FOSS components required for Linux appliances up to and including, for example
- self-hosting Linux development systems
-- GENIVI baseline systems
+- GENIVI Baseline and GENIVI Demo Platform systems for x86 and ARMv7
- OpenStack appliances
- OpenWRT appliances
@@ -29,9 +29,9 @@ first time please start with the latest tag, not master.
### dependencies
-currently ybd is for Linux only, and requires git, gcc, make, autotools,
-python, tar, wget. note that the Baserock definitions also
-require gawk.
+currently ybd is for Linux only, but can be used on environments (eg MacOS) using Vagrant and VirtualBox.
+
+ybd requires git, gcc, make, autotools, python, tar, wget. note that the Baserock definitions also require gawk.
so for a Debian-based system:
@@ -47,11 +47,11 @@ ybd also depends on [pyfilesystem](http://pyfilesystem.org),
[requests](https://github.com/kennethreitz/requests),
and optionally [jsonschema](https://github.com/Julian/jsonschema).
-If you want to serve artifacts using kbas, it requires
+to serve artifacts using kbas, it additionally requires
[bottle](https://github.com/bottlepy/bottle) and optionally
[cherrypy](https://github.com/cherrypy/cherrypy.git)
-If you'd like to use Riemann functionality, you will require
+to use the Riemann functionality, it additionally requires
[riemann-client](https://github.com/borntyping/python-riemann-client)
if you trust the Python Package Index (PyPI) and pip is available on your
@@ -61,7 +61,7 @@ machine, you can install these dependencies with:
pip install fs pyyaml sandboxlib requests jsonschema bottle cherrypy riemann-client
```
-if you need to install pip itself:
+If you need to install pip itself:
```
wget https://bootstrap.pypa.io/get-pip.py
@@ -72,8 +72,10 @@ if you need to install pip itself:
### quick start
```
- git clone git://github.com/devcurmudgeon/ybd
- git clone git://git.baserock.org/baserock/baserock/definitions
+ git clone git://github.com/devcurmudgeon/ybd && cd ybd
+ # checkout latest tag
+ git checkout `git describe --tags $(git rev-list --tags --max-count=1)`
+ cd .. && git clone git://git.baserock.org/baserock/baserock/definitions
cd definitions
```
@@ -176,7 +178,8 @@ ybd can fork several instances of itself to parallelise its work. there is no
intelligence in the scheduling at this point - all of the forks just randomise
their build-order and try to build everything. for building a set of overlapping systems in parallel on a many core machine this proves to be quite
effective. For example on a 36-core AWS c4.8xlarge machine, 4 racing instances
-of ybd take only 84 minutes to build all of the x86_64 systems in definitions/clusters/ci.morph
+of ybd can build all of the x86_64 systems in definitions/clusters/ci.morph
+much faster than a single instance.
#### kbas cache server
there's a basic server which can be used to allow other users to access
@@ -200,7 +203,8 @@ non-Linux operating systems (eg BSD, MacOS). However it may be have differently
- ybd aims to have less dependencies
- ybd has faster, simpler calculation of cache-keys, and faster resolution of
build-order
-- ybd can drop the words morphology, stratum, chunk from the Baserock vocabulary
+- ybd aims to drop the words morphology, stratum, chunk from the Baserock
+ vocabulary
- ybd recognises generic 'definitions'
- a definition can contain definitions, nested
- definitions can be stored in one file or many, one directory or many
@@ -234,16 +238,6 @@ doing to/with ybd:
Aboriginal Linux and non-Linux systems
- test/fix to work on old versions of definitions, and on morphs.git
(and separate out the idiosyncrasies, so code is tidy for future changes)
-- command line syntax and args
-- add some or all of ybd to definitions, as reference code to parse and build
- definitions.
-
-### and if possible
-
-- establish a common cache algorithm/name/standard with Baserock upstream
-- establish roadmap for improvements to definitions format, based on lessons
- from ybd, morph, Ansible, Cloud Foundry and other projects defining loads of
- configuration data in yaml.
### project guidelines
@@ -261,7 +255,7 @@ doing to/with ybd:
- license is GPLv2 but other licensing can be considered on request
- most of the copyright is currently Codethink but don't let that put you off.
- There's no intent to keep this as a Codethink-only project, nor will there be
- any attempt to get folks to sign a contributor agreement.
+ There's no intent to keep this as a Codethink-only project, nor will there
+ be any attempt to get folks to sign a contributor agreement.
contributors retain their own copyright.