Module code translation should be supported with puppet agent runs (PUP-8026)

[PUP-8089] Pluginsync locale files Created: 2017/10/25  Updated: 2019/10/21  Resolved: 2018/02/05

Status: Closed
Project: Puppet
Component/s: Modules
Affects Version/s: None
Fix Version/s: PUP 5.3.4, PUP 5.4.0

Type: Sub-task Priority: Normal
Reporter: Maggie Dreyer Assignee: Maggie Dreyer
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Acceptance Criteria:

Module locale files are synced down to the Agent's $vardir in a directory structure usable by FastGettext.

Team: Platform Core
Sprint: Platform Core KANBAN
Release Notes: New Feature
Release Notes Summary: During pluginsync, the agent will now download module translation files along with the rest of the module data.
QA Risk Assessment: No Action


The second part of getting module translations visible on the the agent is to actually download the locale files along with the other module data. This involves the following steps:

  • Add a new Downloader to the DownloaderFactory for downloading locale files. This downloader should put the files into a directory structure like $vardir/locales/<locale>/<module_name>.po. For the time being, we should sync all of the available locales, not just the one detected on the system. This can be optimized later if needed.
  • Add the relevant settings for the new downloader (e.g. localedest and localesource) to the settings defaults.
  • Add tests for the new Downloader to the downloader factory specs.
  • Update the tests in the plugin handler specs to exercise the locale downloader.

Other pieces may fall out of this, and other tests may need to be updated, but this is a good start. Note that this will not cause any module translations to actually be displayed; this ticket's other subtask describes the work needed to load the translation files from $vardir once they are present.

Comment by Maggie Dreyer [ 2017/11/03 ]

Merged to 5.3.x at

Generated at Sat Sep 19 11:46:37 PDT 2020 using Jira 8.5.2#805002-sha1:a66f9354b9e12ac788984e5d84669c903a370049.