Bench-cli installed from source vs bench-cli in frappe docker

Hi everyone

I have used bench-cli (GitHub - frappe/bench: CLI to manage Multi-tenant deployments for Frappe apps) installed from source and bench-cli installed in the container of frappe_docker (GitHub - frappe/frappe_docker: Docker images for production and development setups of the Frappe framework and ERPNext)

I see that there is a difference, especially in the translation feature of the bench-cli.

While the bench-cli (bench --version 5.0.0) installed from source only has:

  • download-translations Download latest translations
    The bench-cli from the frappe_docker has
  • get-untranslated Get untranslated strings for language
  • import-translations Update translated strings
  • update-translations Update translated strings
    (bench --version in frappe_docker gives me this error)

I checked the code from the repo frappe_docker and there was something like

import os
import subprocess
import sys

if __name__ == "__main__":
    bench_dir = os.path.join(os.sep, "home", "frappe", "frappe-bench")
    sites_dir = os.path.join(bench_dir, "sites")
    bench_helper = os.path.join(
    cwd = os.getcwd()
        [sys.executable, bench_helper, "frappe"] + sys.argv[1:],

However I can not fit together how this is going to provide the others features that is provided by bench-cli in the docker container.

My question is: how to install bench-cli from source but have additional features (get-untranslated, import-translations, update-translations) like bench-cli in docker container ?

Best regards

1 Like