|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 03-May-2022 | - |
| .github/workflows/ | H | 17-Jun-2021 | - | 220 | 200 |
| .vscode/ | H | 17-Jun-2021 | - | 6 | 6 |
| bin/ | H | 03-May-2022 | - | 50 | 20 |
| contrib/ | H | 17-Jun-2021 | - | 604 | 396 |
| crmsh/ | H | 03-May-2022 | - | 35,082 | 28,878 |
| doc/ | H | 17-Jun-2021 | - | 26,799 | 21,284 |
| hb_report/ | H | 03-May-2022 | - | 2,434 | 1,979 |
| scripts/ | H | 17-Jun-2021 | - | 2,418 | 2,129 |
| templates/ | H | 17-Jun-2021 | - | 426 | 310 |
| test/ | H | 03-May-2022 | - | 22,738 | 19,820 |
| utils/ | H | 03-May-2022 | - | 906 | 709 |
| .coveragerc | H A D | 17-Jun-2021 | 67 | 7 | 6 |
| .gitignore | H A D | 17-Jun-2021 | 503 | 44 | 40 |
| AUTHORS | H A D | 17-Jun-2021 | 2.1 KiB | 48 | 46 |
| COPYING | H A D | 17-Jun-2021 | 17.6 KiB | 340 | 281 |
| ChangeLog | H A D | 17-Jun-2021 | 88.4 KiB | 1,524 | 1,488 |
| Dockerfile | H A D | 17-Jun-2021 | 1.6 KiB | 34 | 27 |
| Makefile.am | H A D | 03-May-2022 | 2.8 KiB | 88 | 51 |
| NEWS | H A D | 17-Jun-2021 | 0 | | |
| README.md | H A D | 17-Jun-2021 | 3.7 KiB | 97 | 68 |
| TODO | H A D | 17-Jun-2021 | 946 | 34 | 22 |
| autogen.sh | H A D | 17-Jun-2021 | 3.6 KiB | 145 | 83 |
| configure.ac | H A D | 17-Jun-2021 | 1.9 KiB | 64 | 49 |
| crm.conf.in | H A D | 17-Jun-2021 | 3.1 KiB | 118 | 113 |
| crmsh.spec.in | H A D | 17-Jun-2021 | 6.8 KiB | 241 | 204 |
| data-manifest | H A D | 17-Jun-2021 | 5.8 KiB | 210 | 209 |
| pytest.ini | H A D | 17-Jun-2021 | 68 | 5 | 4 |
| setup.py | H A D | 03-May-2022 | 658 | 17 | 12 |
| tox.ini | H A D | 17-Jun-2021 | 500 | 28 | 21 |
| update-data-manifest.sh | H A D | 17-Jun-2021 | 1.1 KiB | 29 | 9 |
| version.in | H A D | 17-Jun-2021 | 10 | 2 | 1 |
README.md
1# crmsh
2
3[![Build Status](https://github.com/ClusterLabs/crmsh/actions/workflows/crmsh-ci.yml/badge.svg)](https://github.com/ClusterLabs/crmsh/actions/workflows/crmsh-ci.yml)
4
5
6## Introduction
7
8crmsh is a command-line interface for High-Availability cluster
9management on GNU/Linux systems, and part of the Clusterlabs
10project. It simplifies the configuration, management and
11troubleshooting of Pacemaker-based clusters, by providing a powerful
12and intuitive set of features.
13
14crmsh can function both as an interactive shell with tab completion
15and inline documentation, and as a command-line tool. It can also be
16used in batch mode to execute commands from files.
17
18## Documentation
19
20* The website for crmsh is here: [crmsh @ Github.io](http://crmsh.github.io).
21* Documentation for the latest stable release is found at the [Github.io documentation](http://crmsh.github.io) page.
22
23## Installation
24
25Crmsh is implemented in Python, and requires Python version 3.4 or
26newer. Versions of crmsh older than the 4 series ran on Python 2, so
27if you don't have access to a Python 3 interpreter, you will need to
28use one of the older releases.
29
30The GNU Autotools suite is used to configure the OCF root directory,
31the Asciidoc tool which is used to generate documentation and the
32default daemon user (usually hacluster).
33
34It then calls the python setuptools setup.py to actually process the
35Python module sources and install into the Python system site-packages
36directory.
37
38```shell
39./autogen.sh
40./configure
41make
42make install
43```
44
45## Test suites
46
47There are two sets of tests: Unit tests and regression tests.
48
49To run the unit tests, call `test/run`. This uses `nosetests` to run a
50set of test cases that don't need a full Pacemaker environment.
51
52To run the regression tests in a docker container, use the
53`test/containerized-regression-tests.sh` script. This relies on having
54access to `docker` to pull down the base image and run the regression
55test suite. The docker base image used is defined in the `Dockerfile`
56included in the repository.
57
58## Manifest
59
60```shell
61./doc: man page, source for the website and other documentation
62./crmsh: the code
63./templates: configuration templates
64./test: unit tests and regression tests
65./contrib: vim highlighting scripts and other semi-related
66 contributions
67./hb_report: log file collection and analysis tool
68```
69
70## Development
71
72The source code for crmsh is kept in a git source repository. To check
73out the latest development version, install git and run this command:
74
75```shell
76git clone https://github.com/ClusterLabs/crmsh
77```
78
79There is a git `pre-commit` hook used to update the data-manifest
80which lists all the data files to be installed. To install this, run
81
82```shell
83cp contrib/git-hook-pre-commit .git/hooks/pre-commit
84chmod +x .git/hooks/pre-commit
85```
86
87## Contributing
88
89You can contribute following the standard `fork -> clone -> change -> pull request` Github process for code changes. The pull request process is integrated with the [openSUSE Build Service](https://build.opensuse.org/), and as soon as it gets merged, a new RPM package is built on [network:ha-clustering:Unstable](https://build.opensuse.org/project/show/network:ha-clustering:Unstable) and a `submit request` is created to the _crmsh_ package maintainers at [network:ha-clustering:Factory](https://build.opensuse.org/project/show/network:ha-clustering:Factory).
90
91The commit messages are used to create the changelog, so, please, include relevant and comprehensive messages on your commits.
92
93## Community
94
95* Bugs and issues can be reported at the [crmsh issues @ Github.com](https://github.com/clusterlabs/crmsh/issues) page.
96* Any other questions or comments can be made on the [Clusterlabs users mailing list](http://clusterlabs.org/mailman/listinfo/users).
97