Opened 6 years ago

Closed 2 years ago

Last modified 2 years ago

#2092 closed task (fixed)

Install Weblate in Docker

Reported by: robe Owned by: robe
Priority: normal Milestone: Sysadmin Contract 2021-II
Component: SysAdmin Keywords:
Cc:

Description

We discussed in meeting that OSGeo6 has room and if we can have weblate in a docker container on that, that would allow for some translation testing. With objective to have a truly free alternative to transifex.

Change History (11)

comment:1 by robe, 6 years ago

Owner: changed from martin to TemptorSent
Status: assignednew

This ticket I think needs changing. We decided to try installing Weblate on funtoo.osgeo.org I believe. So switching to TemptorSent. I'll help out of course especially since we have PostGIS translation running on Transifex that may eventually be migrated to Weblate.

comment:2 by robe, 4 years ago

Owner: changed from TemptorSent to robe

Just a note -- now we have 3 options to put this on osgeo3, osgeo7, or funtoo.

Both osgeo3 and osgeo7 have several containers running docker (dronie-server /dronie-client) I think might be a good place to put this.

osgeo4 is reserved for development and container backup, although we could start it off there too.

Anyway I'll revisit this if I have bandwidth for it after I'm done with wiki upgrade and other stuff (like setting up monitoring system etc).

comment:3 by robe, 4 years ago

Summary: Install Weblate in Docker on OSGeo6Install Weblate in Docker

comment:4 by robe, 2 years ago

Resolution: fixed
Status: newclosed

I've installed weblate in Docker. It is in an lxd container on osgeo9 called "weblate". The "weblate" container is running docker with a dockerized weblate.

Accessible from https://weblate.osgeo.org

Everyone who has an ldap account should be able to log in. I haven't read thru all the details on provisioning. If anyone has experience with weblate and would be interested in administering it (or just allowing me to pick their brain), let me know.

It might not be a bad idea to allow github and other auth systems to authenticate. I believe we can have more than one auth system. I know using internal (users registering) + ldap works.

comment:5 by robe, 2 years ago

Milestone: UnplannedSysadmin Contract 2021-II

comment:6 by robe, 2 years ago

I did preliminary tests with postgis and fumbled my way thru getting it to pull all files (auto create for each using component discovery add on) https://docs.weblate.org/en/latest/admin/addons.html#component-discovery .

It wasn't intuitively obvious. I also set up a gitea webhook https://docs.weblate.org/en/latest/api.html?highlight=gitea#post--hooks-gitea- to push new changes on commit to repo. There are similar hooks for github, gitlab, and bitbucket available.

You can see here:

https://weblate.osgeo.org/projects/postgis/

Things on my list to try:

1) Getting weblate to send pull requests

2) I setup a blank project for postigs-workshop (hosted on github) - that is a completely new translation project and the hook and pull requests will be sent to github

comment:7 by dkastl, 2 years ago

That's great! I just learned about the OSGeo Weblate instance and I'm considering to make use of it.

What are the policies to use it? Eventually pgRouting could move there from Transifex. But on the short term I thought about localising Redmine plugins, that add spatial capabilities to Redmine: https://gtt-project.org/ These plugins are not an OSGeo project, but they are published under GPLv3.

Is the curent Weblate "stable" and ready to use?

I could login with my OSGeo credentials, but I didn't have the permissions to create a project.

comment:8 by robe, 2 years ago

@dkastl,

I think GPLv3 and GIS related is good enough. I'm not planning to enforce the project be OSGeo and don't see any need to. Probably most enforcement we would do (and even then not sure it's needed) would be enforce it has some sort of opensource license.

stable - I think it's stable except I don't feel confident yet in my abilities. I do have it backing up daily so if something happens I can always snapshot restore. I was hoping to get some folks interested to help me test the waters. I've made you a super user so you should be able to create projects and do pretty much anything. If you are interested in getting admin rights to the server let me know.

The way I ended up installing is using their docker compose so should be fairly easy to upgrade as needed.

My thoughts are as follows:

First pass Limit translation rights to folks who have OSGeo accounts.

Then later explore the idea of allowing other auth systems like Gitlab, Github, or OpenID to encourage more translations. I think Weblate supports all, though I've only got OSGeo LDAP enabled and haven't tested having more than one auth system.

comment:9 by dkastl, 2 years ago

Thank you, @robe !

I'm not sure what information is stored only on Weblate side, but translations should backed up on Git repository side, if automation is setup correctly.

I will make a test with the plugin, which is small and probably a good project to try it out.

comment:10 by robe, 2 years ago

I think on the weblate side it would just be the list of translators and whatever translations haven't been pushed to the primary git repo. I was playing around with the auto pushing and that seems to work, but haven't figured out how do the pull request workflow.

For experimentation I had setup a branch to allow weblate to push to - https://github.com/robe2/postgis-workshops/tree/po-files

You might already know the details of how that works, but to get that going, I had register OSGeo weblate's ssh pubkey as an allowed deploy key - https://github.com/robe2/postgis-workshops/settings/keys (you can get the OSGeo weblate pub key on this page - https://weblate.osgeo.org/keys/) for gitea is slightly different uses an api key.

I really like how when it commits it includes the author who made the change on the weblate side.

comment:11 by robe, 2 years ago

Okay made significant progress here.

I have set up https://github.com/postgis/postgis-workshops to use https://weblate.osgeo.org for translation.

To do that (cause turns out on Github you can only have an ssh key registered as deployment key only once -as Daniel discovered when he tried to reregister the deployment key on his project).

1) I created a github account called osgeoweblate. Password info in secure in file access/github.com

2) I had to give this new account write access to https://github.com/postgis/postgis-workshops

3) On weblate for the postgis-workshop in my main component - https://weblate.osgeo.org/settings/postgis-workshop/index/#vcs had to set the push url to - git@…:postgis/postgis-workshops.git

I have similar set up with postgis on gitea, but only with a fork, cause we still have transifex use there until we test the tires some more.

Note: See TracTickets for help on using tickets.