Skip to content

Commit 12708ed

Browse files
authored
Dust off the README.md and pick some other nits (#3452)
* Update the top-level `README.md` * Correct the TDS `main()` docstring * Add missing trailing newline to `docs/.gitignore` * Correct `pbench-register-tool-trigger` help text
1 parent b99fc77 commit 12708ed

File tree

4 files changed

+38
-49
lines changed

4 files changed

+38
-49
lines changed

README.md

Lines changed: 35 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,34 +3,33 @@ A Benchmarking and Performance Analysis Framework
33

44
The code base includes three sub-systems. The first is the collection agent,
55
`pbench-agent`, responsible for providing commands for running benchmarks
6-
across one or more systems, while properly collecting the configuration data
7-
for those systems, and specified telemetry or data from various tools (`sar`,
6+
across one or more systems while properly collecting the configuration data for
7+
those systems as well as specified telemetry or data from various tools (`sar`,
88
`vmstat`, `perf`, etc.).
99

1010
The second sub-system is the `pbench-server`, which is responsible for
11-
archiving result tar balls, indexing them, and unpacking them for display.
12-
13-
The third sub-system is the `web-server` JS and CSS files, used to display
14-
various graphs and results, and any other content generated by the
15-
`pbench-agent` during benchmark and tool post-processing steps.
16-
17-
The pbench Dashboard code lives in its own [repository](
18-
https://github.com/distributed-system-analysis/pbench-dashboard).
11+
archiving result tar balls, indexing them, and managing access to their
12+
contents.
13+
It provides a RESTful API which can be used by client applications, such as
14+
the Pbench Dashboard, to curate the results as well as to explore their
15+
contents.
16+
17+
The third sub-system is the Pbench Dashboard, which provides a web-based GUI
18+
for the Pbench Server allowing users to list and view public results. After
19+
logging in, users can view their own results, make them available for others
20+
to view, or delete them. On the _User Profile_ page, a logged-in user can
21+
generate API keys for use with the Pbench Server API or with the Agent
22+
`pbench-results-push` command. The Pbench Dashboard also serves as a platform
23+
for exploring and visualizing result data.
1924

2025
## How is it installed?
21-
Instructions on installing `pbench-agent`, can be found
26+
Instructions for installing `pbench-agent`, can be found
2227
in the Pbench Agent [Getting Started Guide](
2328
https://distributed-system-analysis.github.io/pbench/gh-pages/start.html).
2429

2530
For Fedora, CentOS, and RHEL users, we have made available [COPR
2631
builds](https://copr.fedorainfracloud.org/coprs/ndokos/pbench/) for the
27-
`pbench-agent`, `pbench-server`, `pbench-web-server`, and some benchmark and
28-
tool packages.
29-
30-
Install the `pbench-web-server` package on the machine from where you want to
31-
run the `pbench-agent` workloads, allowing you to view the graphs before
32-
sending the results to a server, or even if there is no server configured to
33-
send results.
32+
`pbench-agent` and some benchmark and tool packages.
3433

3534
You might want to consider browsing through the [rest of the documentation](
3635
https://distributed-system-analysis.github.io/pbench/gh-pages/doc.html).
@@ -47,14 +46,11 @@ main documentation for a super quick set of introductory steps.
4746
The latest source code is at
4847
https://github.com/distributed-system-analysis/pbench.
4948

50-
The pbench dashboard code is maintained separately at
51-
https://github.com/distributed-system-analysis/pbench-dashboard.
52-
5349
## Is there a mailing list for discussions?
5450

5551
Yes, we use [Google Groups](https://groups.google.com/forum/#!forum/pbench)
5652

57-
## How do I report and issue?
53+
## How do I report an issue?
5854

5955
Please use GitHub's [issues](
6056
https://github.com/distributed-system-analysis/pbench/issues/new/choose).
@@ -66,7 +62,7 @@ https://github.com/distributed-system-analysis/pbench/projects).
6662
Please find projects covering the [Agent](
6763
https://github.com/distributed-system-analysis/pbench/projects/2),
6864
[Server](https://github.com/distributed-system-analysis/pbench/projects/3),
69-
[Dashboard]()https://github.com/distributed-system-analysis/pbench/projects/1,
65+
[Dashboard](https://github.com/distributed-system-analysis/pbench/projects/1),
7066
and a project that is named the same as the current [milestone](
7167
https://github.com/distributed-system-analysis/pbench/milestones).
7268

@@ -75,7 +71,7 @@ https://github.com/distributed-system-analysis/pbench/milestones).
7571
Below are some simple steps for setting up a development environment for
7672
working with the Pbench code base. For more detailed instructions on the
7773
workflow and process of contributing code to Pbench, refer to the [Guidelines
78-
for Contributing](docs/CONTRIBUTING.md).
74+
for Contributing](docs/Developers/contributing.md).
7975

8076
### Getting the Code
8177

@@ -103,8 +99,6 @@ python using the python environment short-hands:
10399

104100
See https://tox.wiki/en/latest/example/basic.html#a-simple-tox-ini-default-environments.
105101

106-
Each time tests are run, the linting steps (`black` and `flake8`) are run first.
107-
108102
You can provide arguments to the `tox` invocation to request sub-sets of the
109103
available tests be run.
110104

@@ -132,12 +126,10 @@ Each of the "agent" and "server" tests can be further subsetted as follows:
132126

133127
* server
134128
* python -- runs the python tests (via python)
135-
* legacy -- runs the legacy tests
136129

137130
For example:
138131

139132
* `tox -- agent legacy` -- run agent legacy tests
140-
* `tox -- server legacy` -- run server legacy tests
141133
* `tox -- server python` -- run server python tests (via `pytest`)
142134

143135
For any of the test sub-sets on either the agent or server sides of the tree,
@@ -146,7 +138,6 @@ allows one to request a specific test, or set of tests, or command line
146138
parameters to modify the test behavior:
147139

148140
* `tox -- agent bench-scripts test-CL` -- run bench-scripts' test-CL
149-
* `tox -- server legacy test-28 test-32` -- run server legacy tests 28 & 32
150141
* `tox -- server python -v` -- run server python tests verbosely
151142

152143
For the `agent/bench-scripts` tests, one can run entire sub-sets of tests using
@@ -158,18 +149,23 @@ a sub-directory name found in `agent/bench-scripts/tests`. For example:
158149
The first runs all the `pbench-fio` tests, while the second runs all the
159150
`pbench-uperf` and `pbench-linpack` tests.
160151

152+
You can run the `build.sh` script to execute the linters, to run the unit tests
153+
for the Agent, Server, and Dashboard code, and to build installations for the
154+
Agent, Server, and Dashboard.
155+
161156
Finally, see the `jenkins/Pipeline.gy` file for how the unit tests are run in
162157
our CI jobs.
163158

164159
### Python formatting
165160

166-
This project uses the [flake8](http://flake8.pycqa.org/en/latest) method of code
161+
This project uses the [`flake8`](http://flake8.pycqa.org/en/latest) method of code
167162
style enforcement, linting, and checking.
168163

169164
All python code contributed to pbench must match the style requirements. These
170-
requirements are enforced by the [pre-commit](https://pre-commit.com) hook
171-
using the [black](https://github.com/psf/black) Python code formatter and the
172-
[isort](https://github.com/pycqa/isort) Python import sorter.
165+
requirements are enforced by the [pre-commit](https://pre-commit.com) hook. In
166+
addition to `flake8`, pbench uses the [`black`](https://github.com/psf/black)
167+
Python code formatter and the [`isort`](https://github.com/pycqa/isort) Python
168+
import sorter.
173169

174170
### Use pre-commit to set automatic commit requirements
175171

@@ -194,14 +190,11 @@ starting with the `v0.70.0` release (`v<Major>.<Minor>.<Release>[-<Build>]`).
194190
Prior to the v0.70.0 release, the scheme used was mostly `v<Major>.<Minor>`,
195191
where we only had minor releases (`Major = 0`).
196192

197-
The practice of using `-agent` or `-server` is also ending with the `v0.70.0`
198-
release.
199-
200193
### Container Image Tags
201194
This same GitHub "tag" scheme is used with tags applied to container images
202195
we build, with the following exceptions for tag names:
203196

204-
* `latest` - always points to the "latest" container image pushed to a
197+
* `latest` - always points to the latest released container image pushed to a
205198
repository
206199

207200
* `v<Major>-latest` - always points to the "latest" `Major` released
@@ -215,13 +208,9 @@ we build, with the following exceptions for tag names:
215208
### References to Container Image Repositories
216209
The operation of our functional tests, the Pbench Server "in-a-can" used in
217210
the functional tests, and other verification and testing environments use
218-
container images from public repositories and non-public ones. The CI jobs
219-
obtain references to those repositories using Jenkins credentials. When a
220-
developer runs those same jobs locally, you can create two files with the
221-
appropriate contents locally:
222-
223-
* `${HOME}/.config/pbench/ci_registry.name`
224-
* `${HOME}/.config/pbench/public_registry.name`
211+
container images from remote image registries. The CI jobs
212+
obtain references to those repositories using Jenkins credentials. When
213+
running those same jobs locally, you can provide the registry via
214+
`${HOME}/.config/pbench/ci_registry.name`.
225215

226-
If those files are not provided local execution will report an error when those
227-
values are missing.
216+
If this file is not provided, local execution will report an error.

docs/.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
_build/
1+
_build/

lib/pbench/agent/tool_data_sink.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2125,7 +2125,7 @@ def start(prog: Path, parsed: Arguments):
21252125

21262126

21272127
def main(argv: List[str]):
2128-
"""Main program for the Tool Meister.
2128+
"""Main program for the Tool Data Sink.
21292129
21302130
Arguments: argv - a list of parameters
21312131

lib/pbench/cli/agent/commands/triggers/register.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ def callback(ctxt, param, value):
107107
)(f)
108108

109109

110-
@click.command(help="list registered triggers")
110+
@click.command(help="register tool triggers")
111111
@common_options
112112
@_group_option
113113
@_start_option

0 commit comments

Comments
 (0)