Skip to content

GSIP 176

Jody Garnett edited this page Jan 21, 2020 · 34 revisions

GSIP 176 CITE Automation RFP

Overview

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

This approach is divided into three phases:

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

  • Implementation and delivery of Automated CITE tests.

  • 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.

State

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

Motivation

  • 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

Proposal

Applicants

  • 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

Requirements

  • 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.
    SPECIFICATION REQUIRED RECOMMENDED OPTIONAL
    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 build.geoserver.org 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 build.geoserver.org orchestration is managed by planet.federal.com, 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 $12,000 USD towards this activity.

If you are in interested in this work please respond to the geoserver-devel email list with your proposal by the end of November. Applicants are welcome to attend bi-weekly GeoServer meeting for any clarification of requirements and participate in the review process. For details, including detailed requirements, see GISP-176.

GeoServer Project Steering Committee

Budget

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

Final budget:

  • Fundraising: 5660
  • GeoServer PSC: 5000

Sponsorship

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 treasurer@osgeo.org 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 treasurer@osgeo.org:

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).

Regards,

Marie Tharp

earth_observatory.svg

Sponsorship via invoice: email treasurer@osgeo.org:

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.

Scincerly,

Albert Mercator

tabulae_geographicae.svg

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.

Feedback

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

Voting

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

Tasks

  1. ✅ GSIP-176 approved
  2. ✅ Fundraising donate and sponsorship (website, linkedin, twitter). Twitter direct had the best response.
  3. ✅ RFP announced (sent to geoserver-devel, discuss, sac)
  4. ✅ Email interest: GeoSolutions, Gabriel, GeoCat
  5. ✅ Recieved proposal: GeoSolutions CITE automation proposal-v01.00.pdf
  6. ✅ GeoSolutions proposal reviewed, clarified, and accepted
  7. ✅ December 2019, Sign contract, $5000 payment
  8. February 2020, Deliverable, $5000 payment

Links

CITE TEAM ENGINE

Jenkins CITE jobs

Clone this wiki locally