Skip to main content

Greenwave is a service to decide whether a software artifact can pass certain gating points in a software delivery pipeline

Project description

# Greenwave

![logo of Greenwave](https://pagure.io/greenwave/raw/master/f/logo.png)

## What is Greenwave

Greenwave is a service to decide whether a software artifact can pass certain gating points in a software delivery pipeline, based on test results stored in [ResultsDB](https://pagure.io/taskotron/resultsdb) and waivers stored in [WaiverDB](https://pagure.io/waiverdb).

## Quick development setup

Set up a python virtualenv:

$ sudo dnf install python-virtualenv $ virtualenv env_greenwave $ source env_greenwave/bin/activate $ pip install -r requirements.txt $ pip install -r dev-requirements.txt

Install the project:

$ python setup.py develop

Run the server:

$ python run-dev-server.py

The server is now running at <http://localhost:5005> and API calls can be sent to <http://localhost:5005/api/v1.0>.

## Adjusting configuration

You can configure this app by copying conf/settings.py.example into conf/setting.py and adjusting values as you see fit. It overrides default values in greenwave/config.py.

## Running test suite

You can run the unit tests, which live in the greenwave.tests package, with the following command:

$ py.test greenwave/tests/

To test against all supported versions of Python, you can use tox:

$ sudo dnf install python3-tox
$ tox

There are also functional tests in the functional-tests directory. The functional tests will start their own copy of the [ResultsDB](https://pagure.io/taskotron/resultsdb), [WaiverDB](https://pagure.io/waiverdb), and Greenwave applications and then send HTTP requests to them. If you have a git checkout of all three projects, you can run the functional tests like this (adjust the paths as appropriate):

$ PYTHONPATH=../resultsdb:../waiverdb:. py.test functional-tests/

## Building the docs

You can view the docs locally with:

$ cd docs
$ make html
$ firefox _build/html/index.html

## Copyright and license

This project is copyright Red Hat and other contributors, licensed under the terms of the GNU General Public License version 2 or later. See the COPYING file for the complete text of the license. Refer to the git history for complete authorship details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

greenwave-0.6.0.tar.gz (111.3 kB view details)

Uploaded Source

File details

Details for the file greenwave-0.6.0.tar.gz.

File metadata

  • Download URL: greenwave-0.6.0.tar.gz
  • Upload date:
  • Size: 111.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for greenwave-0.6.0.tar.gz
Algorithm Hash digest
SHA256 27ea1f0202a082f17083928daba07677d0b3d090de37467fae2b408269dfd572
MD5 f110e784de224087dacb5d6156d38cc6
BLAKE2b-256 3153b2a0d25007a02a475c4a77d5453141268069e92fd3fab35efd7710a55ee7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page