[PATCH 2 of 3 PoC] cli: add commands to handle front-end generation

Thomas De Schampheleire patrickdepinguin at gmail.com
Tue Oct 2 20:50:55 UTC 2018


El dom., 30 sept. 2018 a las 16:02, Mads Kiilerich
(<mads at kiilerich.com>) escribió:
>
> On 9/26/18 9:34 PM, Thomas De Schampheleire wrote:
> > Currently implemented CLI is as follows:
>
>
> Nice and helpful overview!
>
>
> > kallithea config create
> > kallithea frontend create
> >
> > and the specific commands that 'frontend create' is wrapping:
>
>
> Should the sub-commands perhaps more be seen as optional parts of
> "create", and be controlled by passing options like --install-deps and
> --generate to the sub command create?

Yes, I can try that. If you don't specify anything then you get the
full generation, and if you specify at least one, only those steps are
done?

>
> > kallithea frontend install-deps
> > kallithea frontend generate-css
>
>
> I think the css and js parts will be hard/wrong to separate. It should
> thus probably just be named something like 'generate' from the start?

ok

>
>
> > The way I saw the conversion of existing commands:
> >
> > kallithea cache-keys show        cache-keys --show
> > kallithea cache-keys cleanup      cache-keys --cleanup
> >
> > kallithea celery run                      celeryd
> >
> > kallithea repo cleanup               cleanup-repos
>
>
> ('cleanup' is also badly named. Something like 'purge' or
> 'purge-deleted' or 'purge-backups' seems more correct and intuitive.)

'purge' on its own may be too confusing with 'hg purge'.
'purge-deleted' is better in that respect.

>
> > kallithea repo scan                     repo-scan
> > kallithea repo update-cache     update-repoinfo
> > kallithea repo invalidate-cache   update-repoinfo --invalidatecache
> > (Not exactly sure about the difference between both, to be discussed)
> >
> > kallithea iis install                         install-iis
>
> (The two levels of sub-commands seem a bit redundant. But consistency is
> nice. Then, should it be "create" instead of "install"?)

I agree that it's odd here.
The command is doing something that is necessary for the installation.
It is not actually creating but rather installing.
I would also have preferred consistency in the 'create' stanza, but
here I felt it is too far off.

>
> > kallithea ishell                               ishell

I wonder, should it be 'ishell run' here to align with 'celery run' ?

> >
> > kallithea config create              make-config
> >
> > kallithea index create               make-index -f (full)
> > kallithea index update              make-index    (parameters to this
> > tool are unclear to me)
> >
> > kallithea extensions create       make-rcext
> >
> > kallithea db create                    setup-db
>
> (I agree 'create' is better than 'setup'. But still not spot-on, as it
> doesn't really create the database - in only populates it with tables
> and initial data. That should probably just be clarified in documentation.)

I would be fine with 'initialize' here too, for example.

>
> > kallithea db upgrade                upgrade-db
> >
> > kallithea front-end create
>
> (we need consistent spelling ;-) )
>
> >>> +    subprocess.check_call(['npm', 'run', 'less'], cwd=rootdir)
> >>> +
> >>> + at frontend.command()
> >>> + at click.pass_context
> >>> +def create(ctx):
> >>> +    """Create the front-end completely"""
> >>> +    ctx.invoke(install_deps)
> >>> +    ctx.invoke(generate_css)
> > I was thinking that we maybe should make it more clear that the
> > 'create' step is the master command that does everything, and the
> > other steps are just for finer control for power users. Not sure how
> > to do that best...
>
> (discussed above)
>
> /Mads
>
>


More information about the kallithea-general mailing list