Skip to content

GSIP 176

Jody Garnett edited this page Oct 4, 2019 · 27 revisions

GSIP 176 CITE Automation RFP


This proposal is to announce a "request for proposal" seeking a solution for automated CITE TEAM Engine tests for within a budget of approximately $10-20k USD.

This approach is divided into three phases:

  1. GSIP-176 Request for Proposal for CITE test automation.

  2. Implementation and delivery of Automated CITE tests.

  3. Code sprint activity to pass tests.

This proposal is in response to prior efforts noted at CITE-Test-Upgrade which were unsuccessful.

Proposed By

Jody Garnett

Assigned to Release

This proposal is not assigned to a release.


  • Under Discussion
  • In Progress
  • Completed
  • Rejected
  • Deferred


  • Functional motivation is to improve GeoServer interoperability
  • Procedural motivation is to increase confidence in each release of GeoServer
  • Product motivation is to obtain CITE certification



  • Applicants are asked to send a quote to geoserver-devel describing their approach in sufficient detail for review.
  • GeoServer GSIP proposals are welcome for applicants wishing feedback on their proposal prior to quoting
  • During the selection process applicants are encouraged to attend bi-weekly GeoServer meeting for discussion and review.
  • GeoServer PSC is responsible for the review and selection of applications


  • Required: Proposals are REQUIRED to run CITE TEAM Engine tests against a "nightly build" of GeoServer.

    • Required: Proposal MUST provide testing of WMS, WFS and WCS CITE tests to match the capabilities of the system we are replacing. Special care is required for the WFS-T tests which cover transactions that modify a local database.
    • Recommended: Poprosals SHOULD cover tests which we have passed in isolation (WFS 2.0, WMTS 1.0).
    • Optional: Proposals MAY include testing of additional protocols (WPS 1.0, GeoPkg, ...) tests.
    • Recommended: Proposals SHOULD describe how the testing of additional protocols may be added as part of the design.
    CSW optional
    WCS 1.0 required
    WCS 1.1 required
    WCS 2.0 recommended
    WFS 1.0 required
    WFS 1.1 required
    WFS 2.0 recommended
    WPS 1.0 optional
    WMTS 1.0 recommended
    WMS 1.1 required
    WMS 1.3 required
    GML optional
    KML optional
    GeoPackage optional
  • Required: Delivery is REQUIRED in the form Jenkins jobs on showing the results of CITE testing.

    • Required: Test results only are REQUIRED, tests are not expected to pass.
  • Required: Delivery is REQUIRED to meet GeoServer code contribution guidelines and include all scripts, source code, and documentation required for automated testing.

  • Recommended: Jobs with any logic SHOULD delegate to scripts as shown in the geoserver/build folder.

    • Optional: Any build scripts added MAY be documented in developer manual with instructions for running locally.
  • Required: Delivery is REQUIRED to include the system prerequisites and environment setup in the form of a bash script executable on Ubuntu 18.

    • Recommended: Proposals SHOULD take into account that orchestration is managed by, any changes to Jenkins configuration should be clearly described, and time allocated support deployment into this environment.

Clarifications, Discussion and Feedback

  • This proposal does not assume or recommend an approach, we are open to your ideas and experience!

    • This activity does not provide a deadline, it is a suitable RnD project to fit in between short-term contracts.
  • The GeoServer data folder includes configurations for many CITE tests. This may be easier to manage and reuse via a git submodule?

  • If considering use of the Team Engine Docker image and REST API, keeping in mind that this approach does not yet cover all protocols required.

  • We do not wish to maintain a fork of the Team Engine or tests. On the rare occasions we cannot use an official releases we would like to ensure these are managed as a submodule so we can manage exactly what revision used while we wait for a pull-request to be accepted.

  • Only test results are required, we do not expect tests to pass at this time, a subsequent code sprint will work on passing tests.

Request for Proposal Announcement

Announcement to be sent to geoserver-devel:

CITE Test Automation RFP

GeoServer PSC has an outstanding maintenance activity to automate CITE testing for our build server and have put together a budget (committee + sponsorship) of between $10,000 and $20,000 USD towards this activity.

If you are in interested in this work please respond to the geoserver-devel email list with your proposal. For details, including detailed requirements, see GISP-176.

GeoServer Project Steering Committee

Applicants are welcome to attend bi-weekly GeoServer meeting for clarification of requirements and participate in the review process.


Budget for this activity is to $10-20k USD:

  • $5000 - Initial funding from OSGeo GeoServer Budget 2019
  • $10000 - First fundraising target
  • $15000 - Second fundraising target


As this activity covers operational improvements sponsorship structure is limited in number, and set at higher level than our traditional code-sprint activities:

  • 1000 CITE Automation Sponsorship
  • 2000 CITE Automation Sponsorship

To participate please email to express your interest. As GeoServer is an OSGeo project your support does count towards the OSGeo sponsorship level. Keep in mind that the primary benefit of sponsoring this activity is supporting the GeoServer development team in reaching standards compliance:

  • This opportunity is provided for organizations that can benefit from standards compliance.

    Sponsors will be acknowledged at FOSS4G "State of GeoServer" presentations and during the OSGeo AGM.

  • If you miss out, an additional code-sprint sponsorship opportunities are planned once CITE test automation is in place.

    • Code-sprint sponsorship slots will include visibility in GeoServer release announcements, and blog posts as CITE certifications are obtained.

    • Code-sprint sponsorship slots will be limited in number and valued from a marketing perspective.

As with any open source activity the hands-on "in-kind" participation shown during code-sprints and ongoing commitment of our core-contributors exceed any financial contribution. Sponsorship is an opportunity to thank those who can contribute financially when we have these opportunities to do so.

Sponsorship via invoice: email

Subject: GeoServer CITE Automation Sponsorship Treasurer:

We would like to sponsor the GeoServer CITE Automation activity, as a member of the GeoServer community we recognize the value in supporting open source.

Please send us an invoice for $3000 USD. This brings our total sponsorship to the level to be recognized as an OSGeo Silver sponsor (please see attached organization logo).


Marie Tharp


Sponsorship via invoice: email

Subject: GeoServer CITE Automation Sponsorship Treasurer:

I would like to support the GeoServer CITE Automation activity, please send an invoice for $2000 USD.

I would also like to be added to the OSGeo sponsorship page as a Bronze sponsor using the attached logo.


Albert Mercator


Donation via PayPal:

  1. PayPal donate button:
  2. Check the currency when donating (USD rates are provided above).

The OSGeo Treasurer will contact both you and the GeoServer PSC to acknowledge your sponsorship:

  1. Please have a logo ready for your organization if you wish to be recognized publicly
  2. As with any OSGeo activity your sponsorship (at your request) will be cross listed on the OSGeo sponsorship page.

Backwards Compatibility

This is an additional quality assurance step and can be used as quality assurance check for all active branches of GeoServer.


The following feedback is now included in the above proposal:

  • Budget has been adjusted to a range of $10-20k as we are not confident on the amount of effort required

  • Problem scope has been rephrased as requirements (required, recommended,optional) to support the request for proposal process

  • The proposal does not cover a solution

    • Ideas considered have been listed along with their known limitations
    • CITE Team Engine Docker container REST API approach limited to to a subset of required protocols
  • Include detailed sponsorship instructions

  • Require a description of system requirements for script execution environment


Project Steering Committee:

  • Alessio Fabiani: +0
  • Andrea Aime: +1
  • Brad Hards: +0
  • Ian Turton: +1
  • Jody Garnett: +1
  • Jukka Rahkonen: +1
  • Kevin Smith: +1
  • Simone Giannecchini: +0


Clone this wiki locally
You can’t perform that action at this time.