development: add chapter about Jenkins CI

This commit is contained in:
Christian Poessinger 2019-11-12 07:26:43 +01:00
parent 42aafcc753
commit 4b31556c1c
2 changed files with 23 additions and 2 deletions

View File

@ -37,7 +37,6 @@ To be able to use Docker_, the current non-root user should be added to the
.. note:: The build process needs to be built on a local file system, building
on SMB or NFS shares will result in the container failing to build properly!
Build Docker Container
----------------------
@ -61,6 +60,8 @@ The container can always be built directly from source:
container in ``crux`` and ``current`` can and will differ once VyOS makes
the move towards Debian (10) Buster.
.. _build_iso:
Build ISO
---------

View File

@ -617,8 +617,28 @@ Migrating old CLI
- None
- All logic should be in the scripts
Continous Integration
---------------------
VyOS makes use of Jenkins_ as our Continous Integration (CI) service. Our CI
server is publicly accessible here: https://ci.vyos.net. You can get a brief
overview of all required components shipped in a VyOS ISO.
To build our modules we utilize a CI/CD Pipeline script. Each and every VyOS
component comes with it's own ``Jenkinsfile`` which is (more or less) a copy.
The Pipeline utilizes the Docker container from the :ref:`build_iso` section -
but instead of building it from source on every run, we rather always fetch a
fresh copy (if needed) from Dockerhub_.
Each module is build on demand if a new commit on the branch in question is
found. After a successfull run the resulting Debian Package(s) will be deployed
to our Debian repository which is used during build time. It is located here:
http://dev.packages.vyos.net/repositories/.
.. _process: https://blog.vyos.io/vyos-development-digest-10
.. _VyConf: https://github.com/vyos/vyconf/blob/master/data/schemata
.. _vyos-1x: https://github.com/vyos/vyos-1x/blob/current/schema/
.. _Jinja2: https://jinja.palletsprojects.com/
.. _Phabricator: https://phabricator.vyos.net
.. _Phabricator: https://phabricator.vyos.net/
.. _Jenkins: https://jenkins.io/
.. _Dockerhub: https://hub.docker.com/u/vyos/