[olso][pbr][i18n] Using setup.cfg [files] data_files to install localization files

info at dantalion.nl info at dantalion.nl
Tue Nov 26 17:35:48 UTC 2019


Hello,

This questions comes from noticing locales aren't detected on Watcher
and many other OpenStack projects when `python setup.py install` is
executed. The behavior of installing and detecting locales seems to be
the same both inside and without a virtualenv.

On  Watcher we do not have a MANIFEST.in file in the repository, what
would such a file look like do you perhaps have a reference?

Currently I was thinking of doing something like this:

#setup.cfg[files]
data_files =
    usr/share/locale/nl/LC_MESSAGES =
        watcher/locale/nl/LC_MESSAGES/watcher.mo

This, however, feels clunky and I would expect locale installation and
detection to be more automatic.

you can test if locales are detected for a project using:

`oslo_i18n.get_available_languages(DOMAIN)`

In the case of Watcher this only returns `['en_US']` which is inserted
as default.

Maybe `python setup.py install` is not the right command to install locales?

Kind regards,

Corne Lukken

On 26-11-19 16:18, Herve Beraud wrote:
> Hello,
>
> Good question, I think that both solutions can do the job, and it depends
> on your needs.
>
> If you choose the second option I think you also need to edit the
> `MANIFEST.in` to recursively grab your files in your package, then that
> will look like something like:
> ```
> # MANIFEST.in
> recursive-include translations/ *
> ```
> ```
> # setup.cfg
> [files]
> packages =
>     yourproject
> data_files =
>    etc/yourproject/translation = translations/*
> ```
>
> Where do you want to use this? I mean, do you have a specific project
> behind this question?
>
> Le lun. 25 nov. 2019 à 16:18, info at dantalion.nl <info at dantalion.nl> a
> écrit :
>
>> Hello everyone :),
>>
>> I was wondering what the preferred method to install localization files
>> is. I can think of some probably solutions such as:
>>
>> 1: Including the locale files as part of a package for the target
>> systems package manager (pacman, yum, apt, etc).
>> 2: adding the locale files to the [files] directive in setup.cfg:
>>
>> I hope someone can answer my question.
>>
>> Kind regards,
>> Corne Lukken
>>
>>




More information about the openstack-discuss mailing list