Skip to content

grzegorz7/dash

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

                                  http://dash.pingworks.net
    DASH                          http://www.pingworks.de/dash
                                  mailto:[email protected]
---------------------------------------------------------------

Dashboard zur Visualisierung von Testergebnissen aus Continuous
Delivery Pipelines

Beim Einsatz von Continuous Delivery werden die Software Artefakte
einer Reihe von automatischen Tests unterzogen, bevor diese zum
Deployment in Produktion bereit stehen.
Die automatisierten Tests werden dabei in mehrstufigen Pipelines
organisiert, wobei jede Stufe ähnlich geartete Tests für die
verschiedenen Komponenten der Software durchführt.
In solchen Pipelines fallen eine Vielzahl von Testergebnissen an,
über die die Entwickler nur schwer einen Überblick behalten können.

Diese Anwendung soll die anfallenden Testergebnisse aggregieren
und visualisieren.

Dazu kommen drei unterschiedliche Komponenten zum Einsatz:

dash-scripts
------------
Mit Hilfe dieser Sammlung von einfachen Scripten können in der
Pipeline neue Software-Bundles angelegt werden sowie Metainformation
und Testergebnisse zu den einzelnen Bundles gespeichert werden.
Jedes Software-Bundle besteht dabei aus den eigentlichen Artefakten
und Metainformationen samt Testergebnissen in einer einfachen Ver-
zeichnisstruktur:

/data/repo
        + trunk
            + 2.1234.23
                + artifacts
                    + fobar.jar
                    + app.rpm
                + metadata
                    + bundle (enthält "2.1234.23")
                    + branch (enthält z.B. "trunk")
                    + status (enthält z.B. "first_stage_passed",
                              "second_stage_failed")
                + bundle
                    + full_bundle.tar.gz (tar.gz aus einem Subset
                                          der Artefakte)
                    + src_bundle.tar.gz

Die Scripte sind Bash-Scripte, für das Auslesen von Infos aus dem
SCM stehen Varianten für Subversion und Git zur Verfügung. 

dash-backend
------------
Ein in PHP geschriebenes JSON REST API zum Auslesen von Informationen
über einzelne Software-Bundles. Die PHP Anwendung nutzt das Zend-
Framework [1] und liest die oben beschriebenen Metadaten aus dem Repo
aus und liefert diese als JSON Daten an das Frontend.

dash-frontend
-------------
Ein auf dem ExtJS Framework aufbauendes Frontend, das die Metadaten und
Testergebnisse der Software-Bundles visualisiert.

Entwicklungsumgebung
--------------------
Die nötigen Schritte zum Aufsetzen einer Entwicklungsumgebung sind in
GettingStarted.txt und InstallDevEnv.sh im Ordner docs näher beschrieben.

[1] http://framework.zend.com
[2] http://sencha.com/products/extjs



The dashboard code is licensed under the Apache Software License 2.0. 

Copyright 2013 pingworks - Alexander Birk und Christoph Lukas

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.


Sencha ExtJS is distributed under GPL v3, with an Open Source License 
Exception for Applications:
http://www.sencha.com/legal/open-source-faq/open-source-license-exception-for-applications/
If you customise or redistribute the dashboard code that uses ExtJS 
components, then you must comply to their open source licenses - or 
buy an appropriate developer license from Sencha.


Jasmine included in frontend/test/lib/jasmine-1.3.1:
Copyright (c) 2008-2011 Pivotal Labs and Licenced
MIT License, see: frontend/test/lib7jasmine-1.3.1/MIT.LICENSE


Phantomjs Testrunner and Jasmine JUnit Reporter included in
frontend/test/lib:
Copyright (c) 2010 Larry Myers
MIT License, see:
https://github.com/larrymyers/jasmine-reporters/blob/master/LICENSE

About

pingworks Continuous Delivery Dashboard

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 83.2%
  • HTML 9.3%
  • CSS 7.4%
  • PHP 0.1%
  • Shell 0.0%
  • Ruby 0.0%