[Geoserver-devel] circle-ci cross project integration tests

Hi,
following on Jim’s work I’ve prepared a build that seems to be doing the trick, and building
in sequence:

  • GeoTools (without tests, other builds cover that)
  • GeoWebCache (with tests)
  • GeoServer (with tests and community modules compile only)
    All build in sequence in the same container, thus using the same repository and, what’s important,
    the same snapshots produced by the GeoTools build.

Jim was right, making the silly thing build without breaking on build limits has been the challenging

point, took a number of experiments to find the right way to pass the JVM params and set them
to a working condition.
Build times are surprisingly not bad, around 20 minutes total, which is compatible with the other
Travis builds the PRs are triggering.

Here is the build file:
https://github.com/aaime/geotools/blob/circle/.circleci/config.yml

and branch:
https://github.com/aaime/geotools/tree/circle

A successful build looks as follows:

image.png

I’m sure some adjustments are going to be needed, and we won’t be able to trust these builds always
(like if a PR is meant to introduce a breaking change, well, it will break this build for sure).
I can imagine maybe some conventions in the commit message referring to the repos
and branches for the corresponding gwc and gs to use but… I’ll leave that as an exercise for those
interested :-p

If there are no objections I can make a PR to introduce this in GeoTools in the next few days.

Cheers
Andrea

PS: and yes, we’ll need to setup a similar build for GeoWebCache too, to check eventual downstream
breakage in GeoServer.

···

== GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

Hi Andrea,

Congrats, this is awesome! I’m glad you were able to clean up what I started at the OSGeo code sprint!

Cheers,

Jim

(attachments)

image.png

···

On 5/19/2019 5:18 PM, Andrea Aime wrote:

Hi,
following on Jim’s work I’ve prepared a build that seems to be doing the trick, and building
in sequence:

  • GeoTools (without tests, other builds cover that)
  • GeoWebCache (with tests)
  • GeoServer (with tests and community modules compile only)
    All build in sequence in the same container, thus using the same repository and, what’s important,
    the same snapshots produced by the GeoTools build.

Jim was right, making the silly thing build without breaking on build limits has been the challenging

point, took a number of experiments to find the right way to pass the JVM params and set them
to a working condition.
Build times are surprisingly not bad, around 20 minutes total, which is compatible with the other
Travis builds the PRs are triggering.

Here is the build file:
https://github.com/aaime/geotools/blob/circle/.circleci/config.yml

and branch:
https://github.com/aaime/geotools/tree/circle

A successful build looks as follows:

image.png

I’m sure some adjustments are going to be needed, and we won’t be able to trust these builds always
(like if a PR is meant to introduce a breaking change, well, it will break this build for sure).
I can imagine maybe some conventions in the commit message referring to the repos
and branches for the corresponding gwc and gs to use but… I’ll leave that as an exercise for those
interested :-p

If there are no objections I can make a PR to introduce this in GeoTools in the next few days.

Cheers
Andrea

PS: and yes, we’ll need to setup a similar build for GeoWebCache too, to check eventual downstream
breakage in GeoServer.

== GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

_______________________________________________
Geoserver-devel mailing list
[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@lists.sourceforge.net)
[https://lists.sourceforge.net/lists/listinfo/geoserver-devel](https://lists.sourceforge.net/lists/listinfo/geoserver-devel)

+1

(attachments)

image.png

···

Regards,
Simone Giannecchini

GeoServer Professional Services from the experts!
Visit http://bit.ly/gs-services for more information.

Ing. Simone Giannecchini
@simogeo
Founder/Director

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 333 8128928

http://www.geo-solutions.it
http://twitter.com/geosolutions_it


Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia.

This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

+1

(attachments)

image.png

···

Regards,
Simone Giannecchini

GeoServer Professional Services from the experts!
Visit http://bit.ly/gs-services for more information.

Ing. Simone Giannecchini
@simogeo
Founder/Director

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 333 8128928

http://www.geo-solutions.it
http://twitter.com/geosolutions_it


Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia.

This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

+1

(attachments)

image.png

···

On 5/19/2019 5:18 PM, Andrea Aime wrote:

Hi,
following on Jim’s work I’ve prepared a build that seems to be doing the trick, and building
in sequence:

  • GeoTools (without tests, other builds cover that)
  • GeoWebCache (with tests)
  • GeoServer (with tests and community modules compile only)
    All build in sequence in the same container, thus using the same repository and, what’s important,
    the same snapshots produced by the GeoTools build.

Jim was right, making the silly thing build without breaking on build limits has been the challenging

point, took a number of experiments to find the right way to pass the JVM params and set them
to a working condition.
Build times are surprisingly not bad, around 20 minutes total, which is compatible with the other
Travis builds the PRs are triggering.

Here is the build file:
https://github.com/aaime/geotools/blob/circle/.circleci/config.yml

and branch:
https://github.com/aaime/geotools/tree/circle

A successful build looks as follows:

image.png

I’m sure some adjustments are going to be needed, and we won’t be able to trust these builds always
(like if a PR is meant to introduce a breaking change, well, it will break this build for sure).
I can imagine maybe some conventions in the commit message referring to the repos
and branches for the corresponding gwc and gs to use but… I’ll leave that as an exercise for those
interested :-p

If there are no objections I can make a PR to introduce this in GeoTools in the next few days.

Cheers
Andrea

PS: and yes, we’ll need to setup a similar build for GeoWebCache too, to check eventual downstream
breakage in GeoServer.

== GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.

_______________________________________________
Geoserver-devel mailing list
[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@lists.sourceforge.net)
[https://lists.sourceforge.net/lists/listinfo/geoserver-devel](https://lists.sourceforge.net/lists/listinfo/geoserver-devel)

_______________________________________________
Geoserver-devel mailing list
[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@lists.sourceforge.net)
[https://lists.sourceforge.net/lists/listinfo/geoserver-devel](https://lists.sourceforge.net/lists/listinfo/geoserver-devel)

Andrea I was talking to Paul today,

Apparently GEOS is trying out Azure C I[1] which provides effectively unlimited jobs. Something to keep in mind with Travis being purchased.

[1] https://azure.microsoft.com/en-ca/blog/announcing-azure-pipelines-with-unlimited-ci-cd-minutes-for-open-source/

(attachments)

image.png

···


Jody Garnett

Hi Jody,
sounds interesting. Do you want to try and set it up, and then we compare the two and keep the one that works best?

Cheers
Andrea

(attachments)

image.png

···

Regards, Andrea Aime == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.