Skip to content

cornalin: modulefiles are generated with jinja2#69

Merged
alalazo merged 15 commits intoreleases/cornalinfrom
refactoring/modulefiles_generated_with_a_template_engine
Apr 26, 2017
Merged

cornalin: modulefiles are generated with jinja2#69
alalazo merged 15 commits intoreleases/cornalinfrom
refactoring/modulefiles_generated_with_a_template_engine

Conversation

@alalazo
Copy link
Copy Markdown
Collaborator

@alalazo alalazo commented Apr 7, 2017

@alalazo alalazo force-pushed the refactoring/modulefiles_generated_with_a_template_engine branch from 8ef9eff to 07386bb Compare April 17, 2017 07:42
@alalazo alalazo force-pushed the releases/cornalin branch 2 times, most recently from 2464e19 to c68e3b9 Compare April 23, 2017 07:06
alalazo added 15 commits April 25, 2017 19:02
refers spack#2902
refers spack#3173

Modifications in detail:
    - hooked `jinja2` into spack (but still need to fix the facade)
    - refactored `modules.py` into the package `spack/modules`
    - refactored `test/modules.py` accordingly to the item above
    - added templates for the three kind of module files we generate
    - extended lmod to multi-providers and deeper hierarchies
 Modifications:
   - added the entry 'template_dirs' to config.yaml
   - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
   - added unit tests
Modifications:
  - factored common fixtures in conftest.py
  - extracted configurations from tests and put them into yaml files
  - fixed 'verbose' keyword in modules.yaml and corresponding tests
Modifications:
 - added a 'context_property' decorator
 - simplified file layout for tengine (python module instead of package)
 - added tests for tengine.Context
Modifications:
  - spack module refresh without `--module-type` specified tries to regenerate all known module types
  - spack module rm without `--module-type` specified tries to delete all known module types
  - added tests for the new behavior
The idea is to have only three topics at the highest level:

  - shell support + spack load/unload use/unuse
  - module file generation (a.k.a. APIs + modules.yaml)
  - module file maintenance (spack module refresh/rm)

Module file generation will cover the entries in modules.yaml
@alalazo alalazo force-pushed the refactoring/modulefiles_generated_with_a_template_engine branch from 00bbb8b to a4885ca Compare April 25, 2017 17:53
@alalazo alalazo force-pushed the releases/cornalin branch from c68e3b9 to 93a3f48 Compare April 26, 2017 13:41
@alalazo alalazo merged commit 921ef55 into releases/cornalin Apr 26, 2017
alalazo added a commit that referenced this pull request May 3, 2017
* modulefiles: are now generated using a template engine

refers spack#2902
refers spack#3173

Modifications in detail:
    - hooked `jinja2` into spack (but still need to fix the facade)
    - refactored `modules.py` into the package `spack/modules`
    - refactored `test/modules.py` accordingly to the item above
    - added templates for the three kind of module files we generate
    - extended lmod to multi-providers and deeper hierarchies

* template dirs in config.yaml + override mechanism for pkgs

 Modifications:
   - added the entry 'template_dirs' to config.yaml
   - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
   - added unit tests

* modules: improved test layout and readability

Modifications:
  - factored common fixtures in conftest.py
  - extracted configurations from tests and put them into yaml files
  - fixed 'verbose' keyword in modules.yaml and corresponding tests

* simplified template engine file layout

Modifications:
 - added a 'context_property' decorator
 - simplified file layout for tengine (python module instead of package)
 - added tests for tengine.Context

* contexts can be extended from packages and modules.yaml

* short description it's the first paragraph of docstrings

* module refresh: changed behavior when no module type is specified

Modifications:
  - spack module refresh without `--module-type` specified tries to regenerate all known module types
  - spack module rm without `--module-type` specified tries to delete all known module types
  - added tests for the new behavior

* module file: added configure options to module files if applicable

* lmod: added tests on exceptional paths of execution

* python3: fixed issues with python2 vs python3 compatibility

* jinja2: added external package

* tcl: fixed bugs with naming_scheme and autoload. Added regression tests.

* markupsafe: added external package

* module tutorial: updated docs, fixed a few bugs caught in the meanwhile.

* reference docs for modules: reorganized section

The idea is to have only three topics at the highest level:

  - shell support + spack load/unload use/unuse
  - module file generation (a.k.a. APIs + modules.yaml)
  - module file maintenance (spack module refresh/rm)

Module file generation will cover the entries in modules.yaml
alalazo added a commit that referenced this pull request May 5, 2017
* modulefiles: are now generated using a template engine

refers spack#2902
refers spack#3173

Modifications in detail:
    - hooked `jinja2` into spack (but still need to fix the facade)
    - refactored `modules.py` into the package `spack/modules`
    - refactored `test/modules.py` accordingly to the item above
    - added templates for the three kind of module files we generate
    - extended lmod to multi-providers and deeper hierarchies

* template dirs in config.yaml + override mechanism for pkgs

 Modifications:
   - added the entry 'template_dirs' to config.yaml
   - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
   - added unit tests

* modules: improved test layout and readability

Modifications:
  - factored common fixtures in conftest.py
  - extracted configurations from tests and put them into yaml files
  - fixed 'verbose' keyword in modules.yaml and corresponding tests

* simplified template engine file layout

Modifications:
 - added a 'context_property' decorator
 - simplified file layout for tengine (python module instead of package)
 - added tests for tengine.Context

* contexts can be extended from packages and modules.yaml

* short description it's the first paragraph of docstrings

* module refresh: changed behavior when no module type is specified

Modifications:
  - spack module refresh without `--module-type` specified tries to regenerate all known module types
  - spack module rm without `--module-type` specified tries to delete all known module types
  - added tests for the new behavior

* module file: added configure options to module files if applicable

* lmod: added tests on exceptional paths of execution

* python3: fixed issues with python2 vs python3 compatibility

* jinja2: added external package

* tcl: fixed bugs with naming_scheme and autoload. Added regression tests.

* markupsafe: added external package

* module tutorial: updated docs, fixed a few bugs caught in the meanwhile.

* reference docs for modules: reorganized section

The idea is to have only three topics at the highest level:

  - shell support + spack load/unload use/unuse
  - module file generation (a.k.a. APIs + modules.yaml)
  - module file maintenance (spack module refresh/rm)

Module file generation will cover the entries in modules.yaml
alalazo added a commit that referenced this pull request May 7, 2017
* modulefiles: are now generated using a template engine

refers spack#2902
refers spack#3173

Modifications in detail:
    - hooked `jinja2` into spack (but still need to fix the facade)
    - refactored `modules.py` into the package `spack/modules`
    - refactored `test/modules.py` accordingly to the item above
    - added templates for the three kind of module files we generate
    - extended lmod to multi-providers and deeper hierarchies

* template dirs in config.yaml + override mechanism for pkgs

 Modifications:
   - added the entry 'template_dirs' to config.yaml
   - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
   - added unit tests

* modules: improved test layout and readability

Modifications:
  - factored common fixtures in conftest.py
  - extracted configurations from tests and put them into yaml files
  - fixed 'verbose' keyword in modules.yaml and corresponding tests

* simplified template engine file layout

Modifications:
 - added a 'context_property' decorator
 - simplified file layout for tengine (python module instead of package)
 - added tests for tengine.Context

* contexts can be extended from packages and modules.yaml

* short description it's the first paragraph of docstrings

* module refresh: changed behavior when no module type is specified

Modifications:
  - spack module refresh without `--module-type` specified tries to regenerate all known module types
  - spack module rm without `--module-type` specified tries to delete all known module types
  - added tests for the new behavior

* module file: added configure options to module files if applicable

* lmod: added tests on exceptional paths of execution

* python3: fixed issues with python2 vs python3 compatibility

* jinja2: added external package

* tcl: fixed bugs with naming_scheme and autoload. Added regression tests.

* markupsafe: added external package

* module tutorial: updated docs, fixed a few bugs caught in the meanwhile.

* reference docs for modules: reorganized section

The idea is to have only three topics at the highest level:

  - shell support + spack load/unload use/unuse
  - module file generation (a.k.a. APIs + modules.yaml)
  - module file maintenance (spack module refresh/rm)

Module file generation will cover the entries in modules.yaml
alalazo added a commit that referenced this pull request May 9, 2017
* modulefiles: are now generated using a template engine

refers spack#2902
refers spack#3173

Modifications in detail:
    - hooked `jinja2` into spack (but still need to fix the facade)
    - refactored `modules.py` into the package `spack/modules`
    - refactored `test/modules.py` accordingly to the item above
    - added templates for the three kind of module files we generate
    - extended lmod to multi-providers and deeper hierarchies

* template dirs in config.yaml + override mechanism for pkgs

 Modifications:
   - added the entry 'template_dirs' to config.yaml
   - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
   - added unit tests

* modules: improved test layout and readability

Modifications:
  - factored common fixtures in conftest.py
  - extracted configurations from tests and put them into yaml files
  - fixed 'verbose' keyword in modules.yaml and corresponding tests

* simplified template engine file layout

Modifications:
 - added a 'context_property' decorator
 - simplified file layout for tengine (python module instead of package)
 - added tests for tengine.Context

* contexts can be extended from packages and modules.yaml

* short description it's the first paragraph of docstrings

* module refresh: changed behavior when no module type is specified

Modifications:
  - spack module refresh without `--module-type` specified tries to regenerate all known module types
  - spack module rm without `--module-type` specified tries to delete all known module types
  - added tests for the new behavior

* module file: added configure options to module files if applicable

* lmod: added tests on exceptional paths of execution

* python3: fixed issues with python2 vs python3 compatibility

* jinja2: added external package

* tcl: fixed bugs with naming_scheme and autoload. Added regression tests.

* markupsafe: added external package

* module tutorial: updated docs, fixed a few bugs caught in the meanwhile.

* reference docs for modules: reorganized section

The idea is to have only three topics at the highest level:

  - shell support + spack load/unload use/unuse
  - module file generation (a.k.a. APIs + modules.yaml)
  - module file maintenance (spack module refresh/rm)

Module file generation will cover the entries in modules.yaml
alalazo added a commit that referenced this pull request May 10, 2017
* modulefiles: are now generated using a template engine

refers spack#2902
refers spack#3173

Modifications in detail:
    - hooked `jinja2` into spack (but still need to fix the facade)
    - refactored `modules.py` into the package `spack/modules`
    - refactored `test/modules.py` accordingly to the item above
    - added templates for the three kind of module files we generate
    - extended lmod to multi-providers and deeper hierarchies

* template dirs in config.yaml + override mechanism for pkgs

 Modifications:
   - added the entry 'template_dirs' to config.yaml
   - added an override mechanism for templates ('modules.yaml' beats 'package.py' beats 'default')
   - added unit tests

* modules: improved test layout and readability

Modifications:
  - factored common fixtures in conftest.py
  - extracted configurations from tests and put them into yaml files
  - fixed 'verbose' keyword in modules.yaml and corresponding tests

* simplified template engine file layout

Modifications:
 - added a 'context_property' decorator
 - simplified file layout for tengine (python module instead of package)
 - added tests for tengine.Context

* contexts can be extended from packages and modules.yaml

* short description it's the first paragraph of docstrings

* module refresh: changed behavior when no module type is specified

Modifications:
  - spack module refresh without `--module-type` specified tries to regenerate all known module types
  - spack module rm without `--module-type` specified tries to delete all known module types
  - added tests for the new behavior

* module file: added configure options to module files if applicable

* lmod: added tests on exceptional paths of execution

* python3: fixed issues with python2 vs python3 compatibility

* jinja2: added external package

* tcl: fixed bugs with naming_scheme and autoload. Added regression tests.

* markupsafe: added external package

* module tutorial: updated docs, fixed a few bugs caught in the meanwhile.

* reference docs for modules: reorganized section

The idea is to have only three topics at the highest level:

  - shell support + spack load/unload use/unuse
  - module file generation (a.k.a. APIs + modules.yaml)
  - module file maintenance (spack module refresh/rm)

Module file generation will cover the entries in modules.yaml
rmsds pushed a commit that referenced this pull request Jul 30, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant