Project

General

Profile

Feature #12311

Feature #10034: Translation web platform

Feature #15079: Integrate the platform with our Git and ikiwiki infrastructure

Create weblate staging wiki

Added by emmapeel over 2 years ago. Updated 5 months ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
03/14/2017
Due date:
% Done:

100%

Feature Branch:
https://0xacab.org/drebs/puppet-tails/tree/12311/create-staging-and-update-hook
Type of work:
Website
Blueprint:
Starter:
Affected tool:

Description

We need on translate.tails.boum.org a staging wiki that allows non tech savvy users to see the result of their translation work without having to compile the wiki themselves.

- define URI and local path
- create staging git repository by cloning from weblate git.
- create hooks on weblate git to merge to staging git after repository update
- create post-merge hook that copies ikiwiki.setup, adds missing langs and triggers build.


Related issues

Duplicates Tails - Feature #15077: Have a staging website to build planned languages, with a resilient build Resolved 03/14/2017

History

#1 Updated by drebs over 2 years ago

This branch adds a commit to create the staging repository and make sure it merges all updates made to main weblate repository: https://0xacab.org/drebs/puppet-tails/commits/12311/create-staging-and-update-hook

#2 Updated by intrigeri over 2 years ago

Hi!

This branch adds a commit to create the staging repository and make sure it merges all updates made to main weblate repository: https://0xacab.org/drebs/puppet-tails/commits/12311/create-staging-and-update-hook

If that's a pull request: thanks! Please ask emmapeel to teach you how to request a review (or I can point you to the relevant doc).

Otherwise: sorry for the noise. I'll shut up until I'm asked to do something :)

#3 Updated by drebs over 2 years ago

intrigeri wrote:

Hi!

This branch adds a commit to create the staging repository and make sure it merges all updates made to main weblate repository: https://0xacab.org/drebs/puppet-tails/commits/12311/create-staging-and-update-hook

If that's a pull request: thanks! Please ask emmapeel to teach you how to request a review (or I can point you to the relevant doc).

Otherwise: sorry for the noise. I'll shut up until I'm asked to do something :)

Hey, thanks for noticing.

We plan to add more to that branch to make it cover the whole automated ikiwiki build process for the staging translation website. We thought about start tackling the problem in one direction for now (weblate -> staging git -> staging ikiwiki) and only that is working we start thinking about the other direction (ikiwiki builds modify staging git and maybe we want that to modify weblate and the main tails website git repo).

So it is still not a pull request. But we already have some doubts, and if you can help with those it is already great for now!

The recipe we started to write that builds the staging git repository depends on the existence of the main weblate git repository. But the main weblate git repo was manually created during weblate configuration through web interface and is currently not covered by puppet. If that is not included in puppet, a run of the recipe in a fresh server would fail until the project is manually created and a repo is available in the expected path.

Should we also think on a way to automatically create the weblate project (through puppet) that creates/clones the main weblate git repository by using django/weblate scripts? That would be necessary in case of a fresh installation without human intervention.

More questions will come. ;) Thanks!

#4 Updated by emmapeel over 2 years ago

  • Assignee set to intrigeri
  • QA Check changed from Dev Needed to Info Needed
  • Feature Branch set to https://0xacab.org/drebs/puppet-tails/tree/12311/create-staging-and-update-hook

OK so I pass the ball to intri so we get the information needed.

#5 Updated by u over 2 years ago

drebs wrote:

The recipe we started to write that builds the staging git repository depends on the existence of the main weblate git repository. But the main weblate git repo was manually created during weblate configuration through web interface and is currently not covered by puppet. If that is not included in puppet, a run of the recipe in a fresh server would fail until the project is manually created and a repo is available in the expected path.

Should we also think on a way to automatically create the weblate project (through puppet) that creates/clones the main weblate git repository by using django/weblate scripts? That would be necessary in case of a fresh installation without human intervention.

I think our main idea was indeed that we could easily recreate and re-setup a weblate instance (what you call main weblate repository). This could also help other projects reuse our work and also help us recreate a VM easily.

So basically, such a script would be more than welcome.

However, it feels to me like this might be a little bit overengineered and I'm not sure how realistic such a thing would be at all.

#6 Updated by u over 2 years ago

#7 Updated by intrigeri over 2 years ago

  • Assignee changed from intrigeri to drebs
  • QA Check changed from Info Needed to Dev Needed

The recipe we started to write that "builds the staging git
repository":https://0xacab.org/drebs/puppet-tails/commit/9adb76fc14cd7821a61dd5da2a691af225b6e31f#19b99b280f011fd801aeb361c1b4d7b3cbd8a691_137_146
depends on the existence of the main weblate git repository. But the main weblate
git repo was manually created during weblate configuration through web interface
and is currently not covered by puppet. If that is not included in puppet, a run of
the recipe in a fresh server would fail until the project is manually created and
a repo is available in the expected path.

I think that's fine for the time being, and we'll reconsider if this ever causes serious problems.

Should we also think on a way to automatically create the weblate project (through
puppet) that creates/clones the main weblate git repository by using django/weblate
scripts? That would be necessary in case of a fresh installation without
human intervention.

I think our main idea was indeed that we could easily recreate and re-setup a weblate
instance (what you call main weblate repository). This could also help other projects
reuse our work and also help us recreate a VM easily.

So basically, such a script would be more than welcome.

However, it feels to me like this might be a little bit overengineered and I'm not sure how realistic such a thing would be at all.

OK. I don't know how much manual work is currently needed to set the whole thing up, aside of what we already manage with Puppet. If it's just a few clicks in a web interface, then IMO documenting these steps would be enough, and I would not invest time in automating this right now. Tracer bullet approach! :)

What might be interesting during the initial development is a way to reset the weblate setup without resetting the whole system, so you're more autonomous and don't need to ask sysadmins to re-install the system (I didn't take any snapshot). E.g. a script that you folks could run, that empties the DB and deletes the Git repositories and other locally managed data. Then, after running this script, one should be able to follow the setup doc again, which currently should be something like 1. wait for Puppet to set everything it can back up; 2. apply a few manual steps; 3. wait for Puppet to set up stuff that depends on the manual steps.

#8 Updated by u almost 2 years ago

  • Assignee deleted (drebs)
  • Parent task changed from #11759 to #15079

I have to verify how this ticket integrates with our current plans.

#9 Updated by u almost 2 years ago

  • Status changed from Confirmed to Duplicate

This seems to be a duplicate of #15077.

#10 Updated by emmapeel almost 2 years ago

  • Duplicates Feature #15077: Have a staging website to build planned languages, with a resilient build added

Also available in: Atom PDF