On 20/10/2018 18:36, Terrence Brannon wrote:
> I do not see this documented anywhere, yet it pops up as a warning when
> I call `reahl example `
>
We have a lot of undocumented stuff which we developed to make things
easier for ourselves, but which we feel is not necessarily polished
enough for public consumption. There may even be other projects
available by now that can take over some of this work - we just do not
have time to look around that much.
REAHLWORKSPACE is an environment variable which you can set to a
directory. Some of the "reahl xxx" commands create a hidden directory
underneath this ($REAHLWORKSPACE/.reahlworkspace), in which it keeps
various files.
Since Reahl is actually a collection of "components", we introduced this
long ago to help us do things with all of our components.
For example:
"reahl refresh" searches through $REAHLWORKSPACE for subdirectories
containing .reahlproject files and makes a list of all such "projects"
found. (Project == component)
"reahl select -A" selects all the projects found in the above search for
other tasks, such as:
"reahl shell -s ls -la" will cd to each project dir in the current
selection in turn and run "ls -la" in there
or,
"reahl build -s" will build distribution packages (such as wheels or
debs) for each project in the selection.
"reahl upload -s" will upload all such built packages
These commands have some safety features built in. For example it wont
let you upload a project unless its latest build is up to date with its
source code.
"reahl list -s" lists all packages with their current status, the
meanings of which is shown by:
"reahl explainlegend"
These things use the metadata in a .reahlproject to do their work. So,
you can say that for your project/component, you want a wheel and a
targz built, and you can specify where these things will be uploaded to.
(See the last bits of
https://www.reahl.org/docs/4.0/devtools/xmlref.d.html#development-and-packaging
)
In $REAHLWORKSPACE/.reahlworkspace the above commands will create files
for keeping track of the current selection of projects, or a place to
keep the wheels that you have built for these projects etc.
As I said, these are things to ease our own development needs, so
they're not always documented and often do not have much test coverage.
Perhaps we should NOT issue that warning at all, if it is confusing to
people - what do you think?
--
Reahl, the Python only web framework /
www.reahl.org