@@ -6,7 +6,7 @@ Installing Pavilion
66===================
77
88Installing Pavilion is mostly a matter of placing it's source somewhere,
9- providing it's (few) dependencies, and creating a pavilion.yaml config
9+ providing its (few) dependencies, and creating a pavilion.yaml config
1010file.
1111
1212.. contents ::
@@ -16,8 +16,9 @@ Requirements
1616
1717Pavilion has very few dependencies and requirements:
1818
19- - Python 3.4 or newer
20- - A writeable space on a filesystem shared across all (tested) hosts in each cluster.
19+ - Python 3.5 or newer
20+ - A writeable space on a filesystem shared across all (tested) hosts in
21+ each cluster. (Assuming you're scheduling jobs across a cluster).
2122
2223 - The path to this directory must be consistent across all cluster hosts.
2324 - It must support atomic file creation and appends of < 4kb.
@@ -30,7 +31,7 @@ Filesystems
3031
3132Pavilion works by recursively running itself in different modes at
3233different points in the testing process. This means certain paths, like
33- the Pavilion **root directory **, **working directory **, and used
34+ the Pavilion **source directory **, **working directory **, and used
3435**config directories ** must have paths that are consistent across the
3536nodes and front-ends of any given system.
3637
@@ -45,6 +46,16 @@ to ``~/.pavilion/``).
4546 your cluster NFS partitions. Lustre filesystems are not recommended, mostly
4647 due to the type of load Pavilion presents to these.
4748
49+ Testing Filesystems
50+ ~~~~~~~~~~~~~~~~~~~
51+
52+ If you're unsure if your shared filesystem is reliable, there's a test for
53+ that in `test/utils `.
54+
55+ .. code-block :: bash
56+
57+ $ python3 lock_test.py --help
58+
4859 Result Log
4960~~~~~~~~~~
5061
@@ -84,6 +95,21 @@ starts with a git pull of the latest release of Pavilion.
8495
8596 You can also simply download and extract the source.
8697
98+ Releases
99+ ~~~~~~~~
100+
101+ You should probably pick the latest Pavilion *release * when installing
102+ Pavilion for a couple reasons.
103+
104+ 1) While we try to maintain backwards compatibility as much as possible,
105+ the reality is that every release contains several major compatibility
106+ breaks both for test configurations and plugins. These are documented
107+ per-release in the `_static/RELEASE.txt `_ file.
108+ 2) We run a large bevy of unit tests against every change in Pavilion, but
109+ each release is used in production before it is actually tagged. This
110+ often reveals bug, regressions, and practical usage issues. We fix those
111+ issues, then tag the release. Bugfix releases are provided as needed.
112+
87113Dependencies
88114------------
89115
@@ -95,10 +121,10 @@ supported and tests versions for each are recorded in ``requirements.txt``.
95121
96122- `yaml\_ config <https://github.com/lanl/yaml_config >`__ **(required) **
97123 - Used to define the test and pavilion configurations.
98- - `**yc\_ yaml** <https://github.com/pflarr/yc_yaml >`__ **(required) ** - A
99- modified pyyaml used by yaml\_ config.
100- - `**yapsy** <http://yapsy.sourceforge.net/ >`__ **(required) ** - The basis
124+ - `yapsy <http://yapsy.sourceforge.net/ >`__ **(required) ** - The basis
101125 for Pavilion's plugin architecture.
126+ - `lark <https://github.com/lark-parser/lark >`__ **(required) ** - Used for
127+ Pavilion string value and expression parsing.
102128- `requests <https://pypi.org/project/requests/2.7.0/ >`__ - Used for
103129 automatic downloads of test source files. This feature is disabled in
104130 the absence of this library, and tests that use it will fail with an
0 commit comments