Feature #1663

Utilize distribution information to load relevant project files

Added by S. Wrede over 10 years ago. Updated about 10 years ago.

Status:ResolvedStart date:12/02/2013
Priority:NormalDue 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.

distribution_to_projects.py Magnifier (284 Bytes) J. Wienke, 04/25/2014 01:11 PM

Associated revisions

Revision 355f9aac
Added by J. Moringen about 10 years ago

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

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

Also available in: Atom PDF