Jerry proposed the concept of "command sets" as a way to shorten the amount
of typing when using efsdeploy.  I have a simpler idea I want to pass by
you.

First of all, I want to use abbrev to support shorthands for ALL the
commands.  Right not, that's only done for:

    source configure build test install archive

That means you can type:

    efsdeploy s co b t i

You have to say "co" cause it's ambiguous (we also have "checkpoint").  Once
that's done, the next observation is that there is a very natural linear
progression of commands typically run:

    download source configure build test install verify archive
    depends checkpoint distlocal alias distaliaslocal upload[*]

Now, the next observaton is that none of these include the number "2".  So
what if we interpreted any command of the form:

    foo2bar

as meaning "start with foo, and do everything up to and including bar".  For
example, this would mean you can go from start to finish, meaning download
all the way through upload, with:

    efsdeploy download2upload

But even THAT is a lot of typing, so when complete abbreviations, that would
be:

    efsdeploy do2u

Want to just go through install, so you can then do some sanity checking?

    efsdeploy do2i

I can't make it much shorter than that.  Note that this uses "distlocal" and
"distaliaslocal" by default.  We can make "distlocal" and "distdev" reduce
to just "dist" if we add a CLI argument:

    --distscope local | dev | prod

Where it defaults to local.  Then, the commands would be:

    dist alias distalias

and if you want to deploy this thing to all of dev:

    dist alias distalias --distscope dev

I am probably going to hack this up today, while I watch gcc build.

Phil

[*] upload's not implemented yet -- stay tuned
_______________________________________________
EFS-dev mailing list
[email protected]
http://mailman.openefs.org/mailman/listinfo/efs-dev

Reply via email to