Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 571348

Summary: [OI2JIRO] Migration of Geotrellis JIPP to new CI infrastructure
Product: Community Reporter: Frederic Gurr <frederic.gurr>
Component: CI-JenkinsAssignee: Andrew Fink <andy>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: andy, cheetham, echeipesh, fitch, gr.pomadchin, webmaster
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Bug Depends on:    
Bug Blocks: 544221    

Description Frederic Gurr CLA 2021-02-19 06:40:17 EST
In the coming days we will migrate the Geotrellis JIPP to our new CI infrastructure.

Here is what's going to happen:

We will
* create a JIPP on the new infra
* copy job configurations, views, etc to the new JIPP
* ask the project to double-check that everything works as expected on the new JIPP
* archive the old instance, once the project confirms that the new JIPP is functional

More info can be found here: https://wiki.eclipse.org/CBI/Jenkins_Migration_FAQ

Please let us know if you have any questions, concerns or upcoming releases that should be taken into account.
Comment 1 Frederic Gurr CLA 2021-02-19 06:41:25 EST
Apologies for CC-ing all Geotrellis committers, but the project does not have a project lead AFAICT.
Comment 2 Frederic Gurr CLA 2021-03-01 13:09:31 EST
The GeoTrellis JIPP on Jiro is available here now:

=> https://ci-staging.eclipse.org/geotrellis


PLEASE NOTE:
* Please double-check that all jobs on the new JIPP still work as expected. We recommend to disable all jobs on the old JIPP (https://ci.eclipse.org/geotrellis) to avoid duplicate builds. You can still use it to compare the settings.

* Publishing to download.eclipse.org requires access via SCP. We've added the credentials to the JIPP. Please see https://wiki.eclipse.org/Jenkins#How_do_I_deploy_artifacts_to_download.eclipse.org.3F for more info.

* To simplify setting up jobs on our cluster-based infra, we provide a "migration" pod template that can also be used with Freestyle jobs. The pod template has the label "migration" which can be specified in the job configuration under "Restrict where this project can be run". The image should contain most of the dependencies that were available on the hipp machines on the old infra.

* If you use UI tests (and see errors like ‘FATAL: Cannot run program "Xvnc”’) please use the migration pod template.

* Also, the tools paths have changed. Tools can now be found under /opt/tools instead of /shared/common. See also: https://wiki.eclipse.org/Jenkins#Tools_.28and_locations_on_the_default_JNLP_agent_container.29

* Please also note that the ci-staging.eclipse.org domain will only be used temporarily. Once the migration is confirmed to be successful, we will switch the old JIPP off and move the new JIPP over to ci.eclipse.org.

For even more info, see https://wiki.eclipse.org/Jenkins.
Comment 3 Grigory Pomadchin CLA 2021-03-01 13:40:46 EST
Thanks! We'll pay more attention to the CI in the follow up GT runs. 

Could you point me to the location of the deployment credentials and what should be changed in the current CI setup? At the moment GeoTrellis CI fails (https://ci-staging.eclipse.org/geotrellis/job/GeoTrellis%20master%20branch%20SNAPSHOT/661/console) with the following error:

[error] Unable to find credentials for [Sonatype Nexus Repository Manager @ repo.eclipse.org].
[error] java.io.IOException: Server returned HTTP response code: 401 for URL: https://repo.eclipse.org/content/repositories/geotrellis-snapshots/org/locationtech/geotrellis/geotrellis-macros_2.11/3.5.3-SNAPSHOT/geotrellis-macros_2.11-3.5.3-SNAPSHOT.pom
Comment 4 Frederic Gurr CLA 2021-03-01 14:28:15 EST
We still have to set up the sbt/ivy2 config for accessing repo.eclipse.org.
Comment 5 Frederic Gurr CLA 2021-03-05 06:36:03 EST
sbt config has been set up.

You will need to adapt your build.sbt file like this:

  credentials ++= List(Path.userHome / ".sbt" / ".credentials")
    .filter(_.asFile.canRead)
    .map(Credentials(_)),
Comment 6 Grigory Pomadchin CLA 2021-03-05 13:29:31 EST
Added these lines, and I can confirm: Jenkins builds are green now, thanks! 

https://ci-staging.eclipse.org/geotrellis/job/GeoTrellis%20master%20branch%20SNAPSHOT/662/
Comment 7 Frederic Gurr CLA 2021-03-05 13:39:39 EST
Can we remove the old JIPP?
Comment 8 Grigory Pomadchin CLA 2021-03-05 13:42:57 EST
Yes, totally! Would the "GeoTrellis CI INSTANCES" link in the eclipse profile (https://accounts.eclipse.org/) be changed to the new one?
Comment 9 Frederic Gurr CLA 2021-03-05 16:02:29 EST
The old JIPP has been removed.

The GeoTrellis JIPP on Jiro is now reachable at:
 => https://ci.eclipse.org/geotrellis

This concludes the migration.
Comment 10 Frederic Gurr CLA 2021-03-05 16:03:13 EST
(In reply to Grigory Pomadchin from comment #8)
> Yes, totally! Would the "GeoTrellis CI INSTANCES" link in the eclipse
> profile (https://accounts.eclipse.org/) be changed to the new one?
The URL for the new instance is the same as before.
Comment 11 Grigory Pomadchin CLA 2021-03-05 16:06:02 EST
Thanks!
Comment 12 Grigory Pomadchin CLA 2021-03-05 21:20:35 EST
Hello, 

Unfortunately, after moving Jenkins from the staging URI to the prod two things happened:

1. SBT credentials disappeared again (I decided to list the home dir in terms of https://ci.eclipse.org/geotrellis/job/GeoTrellis%20master%20branch%20SNAPSHOT/665/console):

+ echo ls -la /home/jenkins
ls -la /home/jenkins
+ ls -la /home/jenkins
total 4
drwxrwsrwx. 7 root    1001770000  87 Mar  6 02:15 .
drwxr-xr-x. 1 root    root        37 Mar  6 02:08 ..
drwxrwsrwx. 4 root    1001770000  39 Mar  6 02:14 agent
drwxr-sr-x. 3 jenkins 1001770000  17 Mar  6 02:08 .cache
drwxr-sr-x. 3 jenkins 1001770000  18 Mar  6 02:15 .config
drwxr-sr-x. 4 root    1001770000 110 Mar  6 02:08 .m2
-rw-r--r--. 1 root    1001770000 120 Mar  6 02:07 .mavenrc
drwxrwsrwx. 3 root    1001770000  78 Mar  6 02:07 .ssh
+ echo ls -la /home/jenkins/.sbt
ls -la /home/jenkins/.sbt
+ ls -la /home/jenkins/.sbt/
ls: cannot access '/home/jenkins/.sbt/': No such file or directory

And because of that the publish command fails again: https://ci.eclipse.org/geotrellis/job/GeoTrellis%20master%20branch%20SNAPSHOT/664/

2. In my eclipse account (here https://accounts.eclipse.org/users/gpomadchin) the link to the GeoTrellis Jenkins is broken (it looks like https://ci./geotrellis)

Thanks
Comment 13 Frederic Gurr CLA 2021-03-09 16:19:28 EST
(In reply to Grigory Pomadchin from comment #12)
> 1. SBT credentials disappeared again
Sorry, about that. I've added the support for sbt on a branch and deployed from it but had switched to master branch, when redeploying the instance after moving the JIPP back to ci.eclipse.org. Hence the sbt config broke.

I've redeployed the JIPP from the correct branch and the sbt config is back. The branch will also be merged into master to avoid further regressions.

> 2. In my eclipse account (here
> https://accounts.eclipse.org/users/gpomadchin) the link to the GeoTrellis
> Jenkins is broken (it looks like https://ci./geotrellis)
That bug has been reported before: bug 506610. It should be fixed soon.
Comment 14 Grigory Pomadchin CLA 2021-03-09 16:21:07 EST
Thank, you! Can confirm that all is good now.
Comment 15 Frederic Gurr CLA 2021-03-12 11:26:28 EST
(In reply to Frederic Gurr from comment #13)
> > 2. In my eclipse account (here
> > https://accounts.eclipse.org/users/gpomadchin) the link to the GeoTrellis
> > Jenkins is broken (it looks like https://ci./geotrellis)
> That bug has been reported before: bug 506610. It should be fixed soon.
It is fixed now.