Feature #1663
Utilize distribution information to load relevant project files
Status: | Resolved | Start date: | 12/02/2013 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | J. Moringen | % Done: | 100% | |
Category: | Processing Model | |||
Target version: | 0.3 |
Description
Instead of relying on command line arguments, it would probably be good to derive project descriptors names according to some scheme and automatically load these descriptors in the build generator tool from a given prefix.
Associated revisions
Load project descriptions based on distribution in src/commandline-interface/main.lisp
fixes #1663
Instead of specifying project files as positional arguments on the
commandline, extract lists of required projects and versions for
distribution descriptions and only load those projects and versions.
- src/project/json.lisp (load-project-spec/json-1): accept version-test
keyword parameter; filter version information accordingly
(load-project-spec/json): accept version-test keyword-parameter; pass
through
(load-distribution-spec/json-1): instead of resolving specified
project versions to project and version instances, keep the symbolic
specification for later resolving - src/commandline-interface/main.lisp (locate-projects): new function;
locate project description files based on distribution file
(load-projects/versioned): renamed load-projects{ -> /versioned};
based on given versions, filter tags, branches and version-specific
information in the project description
(resolve-project-version): new function; find and return given version
within a given project
(resolve-project-versions): new function; call
`resolve-project-version' for multiple projects with appropriate
restarts
(update-synopsis): removed description of positional commandline
arguments
(main): load projects after loading distributions; use new functions
`load-projects/versioned' and `resolve-project-versions'
History
#1 Updated by J. Moringen over 10 years ago
- Category set to Processing Model
- Assignee set to J. Moringen
#2 Updated by J. Moringen over 10 years ago
- Target version set to 0.3
#3 Updated by J. Wienke about 10 years ago
- File distribution_to_projects.py added
Attached is a small script to resolve the project files externally. You can use it like this:
generator -t '~/workspace/git/citk-projects/templates/*.template' \ -d ~/workspace/git/citk-projects/distributions/omnirob-nightly.distribution \ $(~/workspace/git/citk-projects/distribution_to_projects.py ~/workspace/git/citk-projects/distributions/omnirob-nightly.distribution ~/workspace/git/citk-projects/projects/)
#4 Updated by J. Moringen about 10 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 100
Applied in changeset 355f9aacfd6b9419d101a7f91ccaa3dfbc15700b.