The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
Mer Delivery System
m (FakeOBS moved to Mer Delivery System: Rename FakeOBS to Mer Delivery System) |
(WIP) |
||
Line 1: | Line 1: | ||
− | + | Mer provides the Mer Delivery System (MDS) to make it easy for vendors to track upstream Mer releases. | |
− | + | = Overview = | |
+ | |||
+ | MDS is a small collection of tools that both supports distributing Mer | ||
+ | binary releases and OBS build targets to vendors and accessing the | ||
+ | local copy of the xrelease from a private vendor-managed OBS. | ||
+ | |||
+ | = Operations = | ||
+ | |||
+ | == MDS tools == | ||
+ | |||
+ | === Installation === | ||
+ | |||
+ | The MDS is installed in the root of the data area which will store the | ||
+ | Mer releases (several Gb). This may be a dedicated VM. | ||
+ | |||
+ | Ensure the system has the following installed: | ||
* git | * git | ||
Line 13: | Line 28: | ||
* cpio | * cpio | ||
− | + | Get the release tools | |
git clone http://review.merproject.org/p/mer/release-tools | git clone http://review.merproject.org/p/mer/release-tools | ||
− | + | === Update === | |
− | + | ||
− | + | ||
− | This will rsync all the | + | The tools are updated periodically - simply run |
− | + | git remote update | |
+ | to update and then | ||
+ | git checkout vXXX | ||
+ | to obtain the version required. | ||
+ | |||
+ | == Mer release(s) == | ||
+ | |||
+ | === Setup === | ||
+ | |||
+ | This step will pull (using rsync) all the git repositories for the Mer | ||
+ | packages (nb: this is a huge download). | ||
+ | |||
+ | It will then build a list of the packages, create a set of mappings | ||
+ | and prepare the OBS event stream. | ||
+ | |||
+ | Finally the OBS projects are cloned and extracted ready for the API | ||
+ | service. | ||
+ | |||
+ | Note: You might need to set rsync proxy: | ||
+ | export RSYNC_PROXY=proxy.company.com:8080 | ||
cd release-tools; make | cd release-tools; make | ||
− | + | === Update === | |
− | + | An update simply requires: | |
− | + | cd release-tools; make update | |
+ | |||
+ | This will... | ||
+ | |||
+ | Running this periodicall will rsync from the upstream project ensure | ||
+ | that up-to-date changes are available. | ||
+ | |||
+ | == Setup an API sercvice for Mer releases == | ||
+ | |||
+ | MDS runs a simple http server that emulates the OBS api for a static release. | ||
+ | |||
+ | To start this 'fake obs server' (hence the original name for the packages): | ||
python tools/fakeobs.py 8001 & | python tools/fakeobs.py 8001 & | ||
+ | |||
6. Setup OBS locally on your build environment of choice: | 6. Setup OBS locally on your build environment of choice: |
Revision as of 21:36, 29 January 2012
Mer provides the Mer Delivery System (MDS) to make it easy for vendors to track upstream Mer releases.
Contents |
Overview
MDS is a small collection of tools that both supports distributing Mer binary releases and OBS build targets to vendors and accessing the local copy of the xrelease from a private vendor-managed OBS.
Operations
MDS tools
Installation
The MDS is installed in the root of the data area which will store the Mer releases (several Gb). This may be a dedicated VM.
Ensure the system has the following installed:
- git
- python
- make
- smmap: http://pypi.python.org/pypi/smmap
- async: http://pypi.python.org/pypi/async
- gitdb: http://pypi.python.org/pypi/gitdb
- gitpython homepage: http://pypi.python.org/pypi/GitPython/0.3.2.RC1
- gitpython install guide: http://packages.python.org/GitPython/0.3.2/intro.html#installing-gitpython
- cpio
Get the release tools
git clone http://review.merproject.org/p/mer/release-tools
Update
The tools are updated periodically - simply run
git remote update
to update and then
git checkout vXXX
to obtain the version required.
Mer release(s)
Setup
This step will pull (using rsync) all the git repositories for the Mer packages (nb: this is a huge download).
It will then build a list of the packages, create a set of mappings and prepare the OBS event stream.
Finally the OBS projects are cloned and extracted ready for the API service.
Note: You might need to set rsync proxy:
export RSYNC_PROXY=proxy.company.com:8080
cd release-tools; make
Update
An update simply requires:
cd release-tools; make update
This will...
Running this periodicall will rsync from the upstream project ensure that up-to-date changes are available.
Setup an API sercvice for Mer releases
MDS runs a simple http server that emulates the OBS api for a static release.
To start this 'fake obs server' (hence the original name for the packages):
python tools/fakeobs.py 8001 &
6. Setup OBS locally on your build environment of choice:
- As VMWare image
- download -vmx- image from here
- load into VMWare Player
- add Network Adapter (Bridged mode!)
- add extra min 12GB HDD and mount it under /var/cache
- continue to setup here, stop before step 5
- On an existing openSUSE installation (OBS Setup)
- Building only on VMs: Mer OBS VM Setup Guide.
7. Add a remote link for your FakeOBS's server, port 8001, /public, http, not-https (see how)
8. Follow the rest of OBS Install until the end
9. Once your project is set-up, OBS should start building it automatically (use Status Monitor to track the progress)
Show up in #mer and poke Stskeeps if there's any questions