Opened 3 years ago

Closed 2 years ago

#2640 closed task (fixed)

docs.geoserver.org website request

Reported by: jive Owned by: sac@…
Priority: normal Milestone: Sysadmin Contract 2022-II
Component: SysAdmin Keywords:
Cc:

Description

GeoServer PSC here proceeding with our migration plan away from Boundless infrastructure.

We would like to request a home for docs.geoserver.org (which is presently hosted by Planet Federal on Amazon S3).

We have the complete source code for the website, and would like to upload content each month using a process similar to docs.geotools.org (well exactly sample).

Change History (19)

comment:1 by robe, 3 years ago

Milestone: UnplannedSysadmin Contract 2021-II

comment:2 by robe, 3 years ago

Jive,

I think docs.geotools.org is currently hosted on osgeo6. I want to move stuff off of osgeo6 so that it is dedicated to lists and mail.

That said do you mind if I put docs.geotools.org and docs.geoserver.org on the same server. Maybe we can go thru the workflow you are currently using to push the data and once it's good we can do a cut over.

comment:3 by jive, 3 years ago

I do not mind where the websites are stored at all, I assume they are low traffic.

The build.geoserver.org Jenkins server is used to upload, let me check if the script is in version control (or just in the Jenkins configuration):

Looks like it was Jenkins configuration (reproduced below, any

HOST=geotools@docs.geotools.org
DIST=`mvn help:evaluate -Dexpression=series -q -DforceStdout`

cd docs && 
mvn install

echo "website"
cd target/web/html
ls
if [ -e web.zip ]; then
  rm -rf web.zip
fi
zip -r web.zip * && 
scp -oStrictHostKeyChecking=no web.zip $HOST:/home/geotools/$DIST

echo "user manual"
cd ../../../target/user/html
if [ -e userguide.zip ]; then
  rm -rf userguide.zip
fi
zip -r userguide.zip * && 
scp -oStrictHostKeyChecking=no userguide.zip $HOST:/home/geotools/$DIST

echo "developers guide"
cd ../../../target/developer/html
if [ -e developer.zip ]; then
  rm -rf developer.zip
fi
zip -r developer.zip * && 
scp -oStrictHostKeyChecking=no developer.zip $HOST:/home/geotools/$DIST

echo "documentation index"
cd ../../../target/index/html
if [ -e index.zip ]; then
  rm -rf index.zip
fi
zip -r index.zip * && 
scp -oStrictHostKeyChecking=no index.zip $HOST:/home/geotools/$DIST

ssh -oStrictHostKeyChecking=no $HOST "svn up update_site.sh && ./update_site.sh $DIST"

comment:4 by robe, 3 years ago

Okay I'll start setting up something and we can test

comment:5 by robe, 3 years ago

jive,

I moved geos.osgeo.org (will take a while for that change to propagate), and the new libgeos.org to the new server. You can see the published docs here https://libgeos.org/doxygen

To test via jenkins I have a job here: https://debbie.postgis.net/view/GEOS/job/GEOS%20Publish%20Docs%20and%20Snapshot/

Which is admittedly a simple script but intent was just to test login and run of script (your last part). I assume your scp stuff will work if that works.

The script just has this:

 HOST=debbie@geo-docs
 ssh -oStrictHostKeyChecking=no $HOST "./geos-cron.sh"

In order to get that to work in the server I have jenkins running under the account jenkins runs under. I created a .ssh/config file that has this in it:

-- geotools is already a shell account (but might need the key registered in ldap to pass thru the hop server) (debbie I added to shell group and registered her pub key on her profile - https://id.osgeo.org/ldap/edit (logging in with her account)

Host geo-docs
        ProxyCommand ssh debbie@hop.osgeo3.osgeo.org -W geo-docs:%p

In your case it would be:

Host geo-docs
        ProxyCommand ssh geotools@hop.osgeo3.osgeo.org -W geo-docs:%p

Let me know if this is doable for you. If you are able to publish I'll move forward with getting the site ready (we can do a test drive with something like docs.geoserver.osgeo.org, docs.geotools.osgeo.org etc.

comment:6 by strk, 3 years ago

Milestone: Sysadmin Contract 2021-IISysadmin Contract 2022-I

Ticket retargeted after milestone closed

comment:7 by jive, 3 years ago

The build.geoserver.org is responsible for deploying to geotools already (with jenkins secret used to store credential). I have now been able to connect to geo-docs using my osgeoid.

What is the next step to start with docs.geoserver.osgeo.org? I expect we need to setup a /home/geoserver location (but my account lacks permission).

comment:8 by robe, 3 years ago

jive you are on the list of sudoers for geo-docs so you can sudo as anyone and it should create the home folder when you do that. Then register any ssh pub keys you need to that account.

I also see there is a geoserver account in ldap already - it has cn sn = farhan petel. Is that someone in your group or a completely different user?

geotools already has a home folder in geo-docs, so you could alternatively use that one too for geoserver purposes if it's a different folder.

I will then need to know the path where docs are deployed so I can expose that on osgeo3-nginx.

Can we have a jitsi meeting to go over the logistics of this. I'm available now or anytime this week.

comment:9 by robe, 3 years ago

Milestone: Sysadmin Contract 2022-ISysadmin Contract 2022-II

comment:10 by jive, 3 years ago

I am not sure about that geoserver account.

Thanks for being patient I like to be careful with any system setup activites…

So one option is use the existing geotools user and set up two folders: /home/geotools/gt and /home/geotools/gs (and update deployment scripts and apache to publish the new folders.

Is there any reason not to create a geoserver account to manage /home/geoserver? Or is it the case that the “geoserver” name is already taken in LDAP…

comment:11 by robe, 3 years ago

It's because of the case that geoserver is already in ldap. We could I suppose create a local geoserver account, but then you'd still be using geotools account to hope into geoserver since you would need an ldap account to pass the barrier. So that would just add extra confusion.

Maybe we can create a docgeoserver LDAP account? Would that be okay? If so I can setup an email alias for that that goes to you so you can register and manage it and reassign later if you want.

comment:12 by robe, 2 years ago

FYI. geoserver.org has transfered over to OSGeo. We need to resetup the DNS entries and switch over the DNS authority since we don't have access to the current DNS. If you have time this week, maybe we can go over that to make sure transition is smooth. I think we need to have the doc server ready first on OSGeo infra, perhaps as docs-geoserver.osgeo.org before we make the DNS switch.

comment:13 by jive, 2 years ago

Now that we have record created - yay!

Do you wish to setup *docs-geoserver.osgeo.org* or something so we can write the build job?

comment:14 by robe, 2 years ago

Sure I'll go ahead and do that for the geo-docs server. Maybe we should do staging.docs.geoserver.org to make sure we really have control :) and to make clear its for staging to confirm all is working.

comment:15 by robe, 2 years ago

Okay I created a dns for staging.docs.geoserver.org on osgeo3 and was able to get to it and also generate a letsencrypt cert.

so do we want to go with a new account? or use geotools?

comment:16 by jive, 2 years ago

The build server is already setup with geotools credentials (it is like gtbuild or something). I think you have started setting up geoserver user which is also fine.

comment:17 by robe, 2 years ago

yah the geoserver user is geoserverdocs. Couldn't use geoserver, since it's already taken by a mysterious masked man.

But anyrate it's okay for geotools and geoserverdocs to share the same keys I think.

comment:18 by robe, 2 years ago

I've set this up, had to open up another ssh port for jenkins (but whitelisted the ip just for new jenkins server). They are still experimenting with push. The new is shown here:

https://staging.docs.geoserver.org/

Once they are settled, I will repoint docs.geoserver.org to this new location.

comment:19 by robe, 2 years ago

Resolution: fixed
Status: newclosed

Got rid of staging.docs.geoserver.org and now it is the official https://docs.geoserver.org

Note: See TracTickets for help on using tickets.