Why is build-assets not a cli command?

Why is the build-assets.py script (for core and for any plugin) not wrapped as part of the indico cli?

it’s a build script and not someone one would use on a production instance.

fwiw, i18n stuff should probably not be part of the indico cli either for that same reason…

Oh, do not really understand – a production instance never needs build-assets, or i18n, run on it?

Yes, you run those tools locally on a dev (or CI/CD/build) system and then build a python wheel which you deploy in production.

1 Like

Oh, I guess maintaining a production instance with a python wheel is one of the possible options. A choice (with its pros and cons). What does that have to do with making build-assets, i18n and other maintenance utilities not be more finely-targeted to the instance’s conf and setup, as well as more consistent with the rest of the management commands available?

I guess what @ThiefMaster means is that there are two types of CLI tool:

  • Configuration/administration commands (e.g. indico setup or indico user)
  • Development tools (e.g. build-assets, build-wheel and ideally i18n too)

As someone managing an Indico server, you will never need to run any development tools. This is why they’re just Python scripts and are not part of the indico CLI. But I agree that we could make those scripts easier to use from a command line. After all, you will need Indico to be installed in your environment anyway…

Thanks, that does help clarify the annoying little confusion!