Softwarepaketierung und Continuous
Integration bei Airbus Defence and
Space
DB Open Source Workshop, Frankfurt 26. November 2015
Karsten Keil
Kernel Entwickler & Consultant
B1 Systems GmbH
keil@b1-systems.de
B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development
Vorstellung B1 Systems
gegründet 2004
primär Linux/Open Source-Themen
national & international tätig
über 70 Mitarbeiter
unabhängig von Soft- und Hardware-Herstellern
Leistungsangebot:
Beratung & Consulting
Support
Entwicklung
Training
Betrieb
Lösungen
dezentrale Strukturen
B1 Systems GmbH CI bei Airbus Defence and Space 2 / 47
Schwerpunkte
Virtualisierung (XEN, KVM & RHEV)
Systemmanagement (Spacewalk, Red Hat Satellite, SUSE
Manager)
Konfigurationsmanagement (Puppet & Chef)
Monitoring (Nagios & Icinga)
IaaS Cloud (OpenStack & SUSE Cloud & RDO)
Hochverfügbarkeit (Pacemaker)
Shared Storage (GPFS, OCFS2, DRBD & CEPH)
Dateiaustausch (ownCloud)
Paketierung (Open Build Service)
Administratoren oder Entwickler zur Unterstützung des Teams
vor Ort
B1 Systems GmbH CI bei Airbus Defence and Space 3 / 47
Ausgangssituation Airbus Defence and Space
Flight Test Ground Station (FTGS)
B1 Systems GmbH CI bei Airbus Defence and Space 4 / 47
Ausgangssituation
Software für Flight Test Ground Station
Software und Hardware Support für Telemetrie, Mission
Monitoring, Data Processing, Analyse und Visualisierung
geschrieben in C, C++ und FORTRAN
ca. 100 einzelne Software-Komponenten
1993 Projektstart mit Unix (SGI IRIX und HPUX); um 2002
Migration auf Linux (SuSE 7.x)
diverse Migrationen auf verschiedene Linux Distributionen (SuSE
7.x → SLES 9.x → SLES 11.x)
Bei Projektstart noch auf i586; Umstieg auf x86_64 ist in
Vorbereitung
Zielplattform bei Projektstart SLE 11 SP1
diverse Third Party Libraries in Gebrauch
B1 Systems GmbH CI bei Airbus Defence and Space 5 / 47
Alte FTGS Entwicklungsumgebung
B1 Systems GmbH CI bei Airbus Defence and Space 6 / 47
Alte FTGS Entwicklungsumgebung
ca. 100 Software-Projekte
IDE: proprietär (EOL und nicht mehr unterstützt)
VCS: CVS
Build-Umgebung: Kontrolle über IDE und andere Projekte mit
Makefiles, imake, qmake, ...
Betriebssystem: SLE 11 SP1 i586
Entwickler-Workstations: Fat Clients (Diskless, Distro Image
read-only, Homes auf NFS)
Continuous Integration: Keine
Deployment: von Hand direkt in einen zentral genutzten
NFS-Ordner
B1 Systems GmbH CI bei Airbus Defence and Space 7 / 47
Motivation
B1 Systems GmbH CI bei Airbus Defence and Space 8 / 47
Motivation
neue Entwicklungsumgebung für die Entwickler
Cross-Platform Development (Linux x86, Linux x86_64,
Windows, ...)
Software Maintenance über gesamte Projektlaufzeit
(Datenvorhalt für mindestens 10 Jahre)
konsistente Builds des kompletten Software Stacks
Bauen und Bereitstellen des SW-Stacks in verschiedenen
Variationen (Kundenanpassungen)
B1 Systems GmbH CI bei Airbus Defence and Space 9 / 47
Anforderungen
B1 Systems GmbH CI bei Airbus Defence and Space 10 / 47
Neue Entwicklungsumgebung
Entkopplung von IDE und Build-Umgebung
langfristige Lösung für Build-Umgebung
Herstellerunabhängigkeit (Produkteinstellung)
Build-Umgebung muss IDE-Nutzung und Build Automation
erlauben
dezentrale Versionsverwaltung (VCS) für Entwicklung außerhalb
des Firmennetzwerks (z. B. bei Testeinsätzen)
fortlaufende und konsistente Versionierung
Verfolgbarkeit
B1 Systems GmbH CI bei Airbus Defence and Space 11 / 47
Cross-Platform Development
Zielplattform: Linux und Windows
Software Releases unterstützen verschiedene:
Linux Distributionen
Architekturen
Flavors/Subsets (für unterschiedliche Abteilungen/Kunden)
B1 Systems GmbH CI bei Airbus Defence and Space 12 / 47
Software-Maintenance (10 Jahre)
Archivierung von Quellen und Builds
von jedem Release
In 10 Jahren muss es möglich sein,
exakt den selben Code zu bauen
auf die selbe Art zu bauen
Builds auszuführen und zu testen
an Ort und Stelle Fehler zu suchen und zu beheben
trotzdem einfache Bedienung, falls sehr selten genutzt
B1 Systems GmbH CI bei Airbus Defence and Space 13 / 47
Konzept
B1 Systems GmbH CI bei Airbus Defence and Space 14 / 47
Software-Maintenance (10 Jahre)
statt Entwicklung einzelner Programme: Entwicklung eines
konsistenten Produkts
Einführung eines Maintenance Workflow
Um Softwarefehler während des Release Life Cycles zu beheben,
alles automatisieren
anstatt alles zu dokumentieren.
Beibehalten der Automatisierung, damit bei Änderungen sofort
auffällt, wenn Fehler auftreten
B1 Systems GmbH CI bei Airbus Defence and Space 15 / 47
Ziele
B1 Systems GmbH CI bei Airbus Defence and Space 16 / 47
Build Engineering
konsistente Builds
reproduzierbare Builds
debugbare Builds
Auditing Acceptability/Revision Control
Traceability
Unterstützung für Cross-Platform Development
einfache Migration auf neue:
Zielplattformen
Third Party APIs
B1 Systems GmbH CI bei Airbus Defence and Space 17 / 47
Build Engineering
vom Code Push zum neuen Software Release in Minuten!
B1 Systems GmbH CI bei Airbus Defence and Space 18 / 47
Build Engineering
vom Code Push zum neuen Produkt-Release innerhalb einer
Stunde!
B1 Systems GmbH CI bei Airbus Defence and Space 19 / 47
Build Engineering
vom Code Push zum neuen Produkt für verschiedene
Plattformen innerhalb einer Stunde!
B1 Systems GmbH CI bei Airbus Defence and Space 20 / 47
Neue FTGS Entwicklungsumgebung
B1 Systems GmbH CI bei Airbus Defence and Space 21 / 47
Neue FTGS Entwicklungsumgebung
ca. 140 Software-Projekte (+40)
IDE: QtCreator
VCS: Git
Build-Umgebung: CMake (exklusiv)
Betriebssystem: SLE 11 SP1, SLE 11 SP2 - i586/x86_64, SLE
11 SP3 - i568/x86_64
Entwickler-Workstations: Fat Clients (Diskless, Distro Image
read-only, Homes auf NFS)
Continuous Integration: Git → OBS →
(Jenkins/CDash/OBS-Erweiterung) → maßgefertigtes
Deployment/Ausrollen
Deployment: via CI und manuell triggerbar
B1 Systems GmbH CI bei Airbus Defence and Space 22 / 47
Neue FTGS Entwicklungsumgebung
B1 Systems GmbH CI bei Airbus Defence and Space 23 / 47
Entwicklungsworkflow
B1 Systems GmbH CI bei Airbus Defence and Space 24 / 47
Entwicklungsworkflow
1 Initial Git Repository vom SW Projekt klonen.
2 Code mit IDE nach Wahl bearbeiten.
3 (Kleine) zusammenhängende Änderungen gemeinsam via Git
committen.
4 Wenn ein Feature vollständig ist oder ein Fehler behoben wurde:
Git push.
5 . . . ab hier übernimmt das CI-System.
B1 Systems GmbH CI bei Airbus Defence and Space 25 / 47
CI-Workflow
B1 Systems GmbH CI bei Airbus Defence and Space 26 / 47
CI-Workflow
B1 Systems GmbH CI bei Airbus Defence and Space 27 / 47
CI-Workflow
1 Git Hook löst bei einem Push einen Event im OBS aus.
2 OBS baut den aktuellen Source-Stand neu und erstellt ein
Repository.
3 sofortiges automatisches Deployment bei Release Maintenance
4 nächtliches Deployment der Entwicklungs und Test Stages
5 Deployment erfolgt direkt auf NFS Share inklusive Snapshot.
B1 Systems GmbH CI bei Airbus Defence and Space 28 / 47
Software Staging
B1 Systems GmbH CI bei Airbus Defence and Space 29 / 47
Software Staging
1 Entwicklung: Git Master Branch, Feature Branch möglich
2 Test: durch eine spezielle Git Tag Notation FTGS_v1.0.0
3 Release: Release Manager staged Projekt nach Bedarf aus der
Test-Stufe
B1 Systems GmbH CI bei Airbus Defence and Space 30 / 47
Maintenance von Releases
Jede Staging-Stufe und jedes Release ist ein OBS-Projekt.
Releases sind „abgehängte“ und konsistente Produkt-Snapshots.
Maintenance eines Release Pakets erfolgt mittels „Wizard“
führt durch alle Schritte
Abfrage aller notwendigen Informationen
automatisiertes Commit, Build und Deployment
Dokumentation
B1 Systems GmbH CI bei Airbus Defence and Space 31 / 47
FTGS Software Staging mit OBS
B1 Systems GmbH CI bei Airbus Defence and Space 32 / 47
Open Build Service
B1 Systems GmbH CI bei Airbus Defence and Space 33 / 47
Open Build Service: Intro
„Distribution Development Platform“
https://www.openbuildservice.org
seit Januar 2006 unter der GPL verfügbar
seit Mai 2011 als Open Build Service bekannt (vorher openSUSE
Build Service)
Nachfolger des SUSE internen Build-Systems
Referenzinstallation: https://build.opensuse.org
B1 Systems GmbH CI bei Airbus Defence and Space 34 / 47
Open Build Service: Features 1/2
kollaborative Funktionalität: User Management, Merge und
Review Funktionalität von SW
unterstützte Zielplattformen:
RPM basierte Distributionen: openSUSE, SLES, RHEL, Fedora,
CentOS, Scientific Linux
DEB basierte Distributionen: Debian, Ubuntu
ARCH Linux
Windows
unterstützt verschiedene Architekturen: x86, x86_64, PPC,
S390x, ARM, ...
Erstellung von Medien (DVD-ISO, Xen/KVM Image,
Appliances, ...)
Maintenanceprozesse (Patchrelease)
B1 Systems GmbH CI bei Airbus Defence and Space 35 / 47
Open Build Service: Features 2/2
erlaubt konsistente und reproduzierbare Software Builds
integriert Versionskontrollsysteme
Skalierbar durch Einsatz mehrerer Worker
löst Abhängigkeiten selbstständig auf
eingebaute Revisionsverwaltung mit „Deduplizierung“
vollautomatisierte Abläufe vom Paketbau bis
Repositoryerstellung und Signierung
B1 Systems GmbH CI bei Airbus Defence and Space 36 / 47
Open Build Service: Architektur
B1 Systems GmbH CI bei Airbus Defence and Space 37 / 47
OBS: Build Dependency Handling
B1 Systems GmbH CI bei Airbus Defence and Space 38 / 47
OBS: Build Dependency Handling
B1 Systems GmbH CI bei Airbus Defence and Space 39 / 47
Integration des Open Build Service
B1 Systems GmbH CI bei Airbus Defence and Space 40 / 47
Integration des Open Build Service
B1 Systems GmbH CI bei Airbus Defence and Space 41 / 47
OBS in FTGS Entwicklungsumgebung
Open Build Service Einbindung transparent für Kunden
Entwicklungsabläufe automatisiert
Interaktion nur im Fehlerfall (Software baut nicht mehr)
Benachrichtigung des Hauptentwicklers der Komponente
Benachrichtigung des letzten GIT Committers der Komponente
Bereitstellung der Logdatei
B1 Systems GmbH CI bei Airbus Defence and Space 42 / 47
FTGS Entwicklungsumgebung aus
Entwicklersicht
B1 Systems GmbH CI bei Airbus Defence and Space 43 / 47
Fazit
B1 Systems GmbH CI bei Airbus Defence and Space 44 / 47
Fazit
DON’Ts:
Deployment von Tarball/Binary-Blobs via rsync unter der Hand,
ohne Kenntnisse des Package Management System
Deployment durch automatisierte Fetch-Skripte
das Rad neu erfinden . . .
Bauen von Softwarepaketen (RPM, DEB, . . . ) auf
Entwickler-Workstation von Hand
B1 Systems GmbH CI bei Airbus Defence and Space 45 / 47
Fazit
DOs:
Nutze den Open Build Service
Die „Power“ von Continuous Integration und der Extreme
Programming Ära nutzen!
Nur einen Software-Stand pflegen:
für verschiedene Linux Distributionen, Releases oder Service
Packs
für verschiedene Architekturen (x86_64, i586, s390x, ia64,
ppc64, pcc, ARM, . . . )
. . . in einem Aufwasch: Cross-Distribution-Architecture
Packaging
erhöhte Sicherheits-/Integritätsanforderungen? Eigene Pakete
mit eigenem Schlüssel signieren!
B1 Systems GmbH CI bei Airbus Defence and Space 46 / 47
Vielen Dank für Ihre Aufmerksamkeit!
Bei weiteren Fragen wenden Sie sich bitte an info@b1-systems.de
oder +49 (0)8457 - 931096
B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development

Softwarepaketierung und Continuous Integration bei Airbus Defence and Space

  • 1.
    Softwarepaketierung und Continuous Integrationbei Airbus Defence and Space DB Open Source Workshop, Frankfurt 26. November 2015 Karsten Keil Kernel Entwickler & Consultant B1 Systems GmbH keil@b1-systems.de B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development
  • 2.
    Vorstellung B1 Systems gegründet2004 primär Linux/Open Source-Themen national & international tätig über 70 Mitarbeiter unabhängig von Soft- und Hardware-Herstellern Leistungsangebot: Beratung & Consulting Support Entwicklung Training Betrieb Lösungen dezentrale Strukturen B1 Systems GmbH CI bei Airbus Defence and Space 2 / 47
  • 3.
    Schwerpunkte Virtualisierung (XEN, KVM& RHEV) Systemmanagement (Spacewalk, Red Hat Satellite, SUSE Manager) Konfigurationsmanagement (Puppet & Chef) Monitoring (Nagios & Icinga) IaaS Cloud (OpenStack & SUSE Cloud & RDO) Hochverfügbarkeit (Pacemaker) Shared Storage (GPFS, OCFS2, DRBD & CEPH) Dateiaustausch (ownCloud) Paketierung (Open Build Service) Administratoren oder Entwickler zur Unterstützung des Teams vor Ort B1 Systems GmbH CI bei Airbus Defence and Space 3 / 47
  • 4.
    Ausgangssituation Airbus Defenceand Space Flight Test Ground Station (FTGS) B1 Systems GmbH CI bei Airbus Defence and Space 4 / 47
  • 5.
    Ausgangssituation Software für FlightTest Ground Station Software und Hardware Support für Telemetrie, Mission Monitoring, Data Processing, Analyse und Visualisierung geschrieben in C, C++ und FORTRAN ca. 100 einzelne Software-Komponenten 1993 Projektstart mit Unix (SGI IRIX und HPUX); um 2002 Migration auf Linux (SuSE 7.x) diverse Migrationen auf verschiedene Linux Distributionen (SuSE 7.x → SLES 9.x → SLES 11.x) Bei Projektstart noch auf i586; Umstieg auf x86_64 ist in Vorbereitung Zielplattform bei Projektstart SLE 11 SP1 diverse Third Party Libraries in Gebrauch B1 Systems GmbH CI bei Airbus Defence and Space 5 / 47
  • 6.
    Alte FTGS Entwicklungsumgebung B1Systems GmbH CI bei Airbus Defence and Space 6 / 47
  • 7.
    Alte FTGS Entwicklungsumgebung ca.100 Software-Projekte IDE: proprietär (EOL und nicht mehr unterstützt) VCS: CVS Build-Umgebung: Kontrolle über IDE und andere Projekte mit Makefiles, imake, qmake, ... Betriebssystem: SLE 11 SP1 i586 Entwickler-Workstations: Fat Clients (Diskless, Distro Image read-only, Homes auf NFS) Continuous Integration: Keine Deployment: von Hand direkt in einen zentral genutzten NFS-Ordner B1 Systems GmbH CI bei Airbus Defence and Space 7 / 47
  • 8.
    Motivation B1 Systems GmbHCI bei Airbus Defence and Space 8 / 47
  • 9.
    Motivation neue Entwicklungsumgebung fürdie Entwickler Cross-Platform Development (Linux x86, Linux x86_64, Windows, ...) Software Maintenance über gesamte Projektlaufzeit (Datenvorhalt für mindestens 10 Jahre) konsistente Builds des kompletten Software Stacks Bauen und Bereitstellen des SW-Stacks in verschiedenen Variationen (Kundenanpassungen) B1 Systems GmbH CI bei Airbus Defence and Space 9 / 47
  • 10.
    Anforderungen B1 Systems GmbHCI bei Airbus Defence and Space 10 / 47
  • 11.
    Neue Entwicklungsumgebung Entkopplung vonIDE und Build-Umgebung langfristige Lösung für Build-Umgebung Herstellerunabhängigkeit (Produkteinstellung) Build-Umgebung muss IDE-Nutzung und Build Automation erlauben dezentrale Versionsverwaltung (VCS) für Entwicklung außerhalb des Firmennetzwerks (z. B. bei Testeinsätzen) fortlaufende und konsistente Versionierung Verfolgbarkeit B1 Systems GmbH CI bei Airbus Defence and Space 11 / 47
  • 12.
    Cross-Platform Development Zielplattform: Linuxund Windows Software Releases unterstützen verschiedene: Linux Distributionen Architekturen Flavors/Subsets (für unterschiedliche Abteilungen/Kunden) B1 Systems GmbH CI bei Airbus Defence and Space 12 / 47
  • 13.
    Software-Maintenance (10 Jahre) Archivierungvon Quellen und Builds von jedem Release In 10 Jahren muss es möglich sein, exakt den selben Code zu bauen auf die selbe Art zu bauen Builds auszuführen und zu testen an Ort und Stelle Fehler zu suchen und zu beheben trotzdem einfache Bedienung, falls sehr selten genutzt B1 Systems GmbH CI bei Airbus Defence and Space 13 / 47
  • 14.
    Konzept B1 Systems GmbHCI bei Airbus Defence and Space 14 / 47
  • 15.
    Software-Maintenance (10 Jahre) stattEntwicklung einzelner Programme: Entwicklung eines konsistenten Produkts Einführung eines Maintenance Workflow Um Softwarefehler während des Release Life Cycles zu beheben, alles automatisieren anstatt alles zu dokumentieren. Beibehalten der Automatisierung, damit bei Änderungen sofort auffällt, wenn Fehler auftreten B1 Systems GmbH CI bei Airbus Defence and Space 15 / 47
  • 16.
    Ziele B1 Systems GmbHCI bei Airbus Defence and Space 16 / 47
  • 17.
    Build Engineering konsistente Builds reproduzierbareBuilds debugbare Builds Auditing Acceptability/Revision Control Traceability Unterstützung für Cross-Platform Development einfache Migration auf neue: Zielplattformen Third Party APIs B1 Systems GmbH CI bei Airbus Defence and Space 17 / 47
  • 18.
    Build Engineering vom CodePush zum neuen Software Release in Minuten! B1 Systems GmbH CI bei Airbus Defence and Space 18 / 47
  • 19.
    Build Engineering vom CodePush zum neuen Produkt-Release innerhalb einer Stunde! B1 Systems GmbH CI bei Airbus Defence and Space 19 / 47
  • 20.
    Build Engineering vom CodePush zum neuen Produkt für verschiedene Plattformen innerhalb einer Stunde! B1 Systems GmbH CI bei Airbus Defence and Space 20 / 47
  • 21.
    Neue FTGS Entwicklungsumgebung B1Systems GmbH CI bei Airbus Defence and Space 21 / 47
  • 22.
    Neue FTGS Entwicklungsumgebung ca.140 Software-Projekte (+40) IDE: QtCreator VCS: Git Build-Umgebung: CMake (exklusiv) Betriebssystem: SLE 11 SP1, SLE 11 SP2 - i586/x86_64, SLE 11 SP3 - i568/x86_64 Entwickler-Workstations: Fat Clients (Diskless, Distro Image read-only, Homes auf NFS) Continuous Integration: Git → OBS → (Jenkins/CDash/OBS-Erweiterung) → maßgefertigtes Deployment/Ausrollen Deployment: via CI und manuell triggerbar B1 Systems GmbH CI bei Airbus Defence and Space 22 / 47
  • 23.
    Neue FTGS Entwicklungsumgebung B1Systems GmbH CI bei Airbus Defence and Space 23 / 47
  • 24.
    Entwicklungsworkflow B1 Systems GmbHCI bei Airbus Defence and Space 24 / 47
  • 25.
    Entwicklungsworkflow 1 Initial GitRepository vom SW Projekt klonen. 2 Code mit IDE nach Wahl bearbeiten. 3 (Kleine) zusammenhängende Änderungen gemeinsam via Git committen. 4 Wenn ein Feature vollständig ist oder ein Fehler behoben wurde: Git push. 5 . . . ab hier übernimmt das CI-System. B1 Systems GmbH CI bei Airbus Defence and Space 25 / 47
  • 26.
    CI-Workflow B1 Systems GmbHCI bei Airbus Defence and Space 26 / 47
  • 27.
    CI-Workflow B1 Systems GmbHCI bei Airbus Defence and Space 27 / 47
  • 28.
    CI-Workflow 1 Git Hooklöst bei einem Push einen Event im OBS aus. 2 OBS baut den aktuellen Source-Stand neu und erstellt ein Repository. 3 sofortiges automatisches Deployment bei Release Maintenance 4 nächtliches Deployment der Entwicklungs und Test Stages 5 Deployment erfolgt direkt auf NFS Share inklusive Snapshot. B1 Systems GmbH CI bei Airbus Defence and Space 28 / 47
  • 29.
    Software Staging B1 SystemsGmbH CI bei Airbus Defence and Space 29 / 47
  • 30.
    Software Staging 1 Entwicklung:Git Master Branch, Feature Branch möglich 2 Test: durch eine spezielle Git Tag Notation FTGS_v1.0.0 3 Release: Release Manager staged Projekt nach Bedarf aus der Test-Stufe B1 Systems GmbH CI bei Airbus Defence and Space 30 / 47
  • 31.
    Maintenance von Releases JedeStaging-Stufe und jedes Release ist ein OBS-Projekt. Releases sind „abgehängte“ und konsistente Produkt-Snapshots. Maintenance eines Release Pakets erfolgt mittels „Wizard“ führt durch alle Schritte Abfrage aller notwendigen Informationen automatisiertes Commit, Build und Deployment Dokumentation B1 Systems GmbH CI bei Airbus Defence and Space 31 / 47
  • 32.
    FTGS Software Stagingmit OBS B1 Systems GmbH CI bei Airbus Defence and Space 32 / 47
  • 33.
    Open Build Service B1Systems GmbH CI bei Airbus Defence and Space 33 / 47
  • 34.
    Open Build Service:Intro „Distribution Development Platform“ https://www.openbuildservice.org seit Januar 2006 unter der GPL verfügbar seit Mai 2011 als Open Build Service bekannt (vorher openSUSE Build Service) Nachfolger des SUSE internen Build-Systems Referenzinstallation: https://build.opensuse.org B1 Systems GmbH CI bei Airbus Defence and Space 34 / 47
  • 35.
    Open Build Service:Features 1/2 kollaborative Funktionalität: User Management, Merge und Review Funktionalität von SW unterstützte Zielplattformen: RPM basierte Distributionen: openSUSE, SLES, RHEL, Fedora, CentOS, Scientific Linux DEB basierte Distributionen: Debian, Ubuntu ARCH Linux Windows unterstützt verschiedene Architekturen: x86, x86_64, PPC, S390x, ARM, ... Erstellung von Medien (DVD-ISO, Xen/KVM Image, Appliances, ...) Maintenanceprozesse (Patchrelease) B1 Systems GmbH CI bei Airbus Defence and Space 35 / 47
  • 36.
    Open Build Service:Features 2/2 erlaubt konsistente und reproduzierbare Software Builds integriert Versionskontrollsysteme Skalierbar durch Einsatz mehrerer Worker löst Abhängigkeiten selbstständig auf eingebaute Revisionsverwaltung mit „Deduplizierung“ vollautomatisierte Abläufe vom Paketbau bis Repositoryerstellung und Signierung B1 Systems GmbH CI bei Airbus Defence and Space 36 / 47
  • 37.
    Open Build Service:Architektur B1 Systems GmbH CI bei Airbus Defence and Space 37 / 47
  • 38.
    OBS: Build DependencyHandling B1 Systems GmbH CI bei Airbus Defence and Space 38 / 47
  • 39.
    OBS: Build DependencyHandling B1 Systems GmbH CI bei Airbus Defence and Space 39 / 47
  • 40.
    Integration des OpenBuild Service B1 Systems GmbH CI bei Airbus Defence and Space 40 / 47
  • 41.
    Integration des OpenBuild Service B1 Systems GmbH CI bei Airbus Defence and Space 41 / 47
  • 42.
    OBS in FTGSEntwicklungsumgebung Open Build Service Einbindung transparent für Kunden Entwicklungsabläufe automatisiert Interaktion nur im Fehlerfall (Software baut nicht mehr) Benachrichtigung des Hauptentwicklers der Komponente Benachrichtigung des letzten GIT Committers der Komponente Bereitstellung der Logdatei B1 Systems GmbH CI bei Airbus Defence and Space 42 / 47
  • 43.
    FTGS Entwicklungsumgebung aus Entwicklersicht B1Systems GmbH CI bei Airbus Defence and Space 43 / 47
  • 44.
    Fazit B1 Systems GmbHCI bei Airbus Defence and Space 44 / 47
  • 45.
    Fazit DON’Ts: Deployment von Tarball/Binary-Blobsvia rsync unter der Hand, ohne Kenntnisse des Package Management System Deployment durch automatisierte Fetch-Skripte das Rad neu erfinden . . . Bauen von Softwarepaketen (RPM, DEB, . . . ) auf Entwickler-Workstation von Hand B1 Systems GmbH CI bei Airbus Defence and Space 45 / 47
  • 46.
    Fazit DOs: Nutze den OpenBuild Service Die „Power“ von Continuous Integration und der Extreme Programming Ära nutzen! Nur einen Software-Stand pflegen: für verschiedene Linux Distributionen, Releases oder Service Packs für verschiedene Architekturen (x86_64, i586, s390x, ia64, ppc64, pcc, ARM, . . . ) . . . in einem Aufwasch: Cross-Distribution-Architecture Packaging erhöhte Sicherheits-/Integritätsanforderungen? Eigene Pakete mit eigenem Schlüssel signieren! B1 Systems GmbH CI bei Airbus Defence and Space 46 / 47
  • 47.
    Vielen Dank fürIhre Aufmerksamkeit! Bei weiteren Fragen wenden Sie sich bitte an info@b1-systems.de oder +49 (0)8457 - 931096 B1 Systems GmbH - Linux/Open Source Consulting,Training, Support & Development