From ae8e42aa1a5e6d8ed347f4bde12c8c6a8cdc8c81 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Fri, 5 Aug 2011 17:13:24 +0100 Subject: Generate manpage with cliapp's --generate-manpage. --- .bzrignore | 1 + Makefile | 5 +- genbackupdata.1 | 158 ----------------------------------------------------- genbackupdata.1.in | 76 ++++++++++++++++++++++++++ 4 files changed, 81 insertions(+), 159 deletions(-) delete mode 100644 genbackupdata.1 create mode 100644 genbackupdata.1.in diff --git a/.bzrignore b/.bzrignore index 1cbec07..47cb8ec 100644 --- a/.bzrignore +++ b/.bzrignore @@ -1,2 +1,3 @@ .coverage blackboxtest.log +genbackupdata.1 diff --git a/Makefile b/Makefile index 684a6b5..9cb035b 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,7 @@ -all: +all: genbackupdata.1 + +genbackupdata.1: genbackupdata.1.in genbackupdata + ./genbackupdata --generate-manpage=genbackupdata.1.in > genbackupdata.1 check: python -m CoverageTestRunner --ignore-missing-from without-tests diff --git a/genbackupdata.1 b/genbackupdata.1 deleted file mode 100644 index 342fbf5..0000000 --- a/genbackupdata.1 +++ /dev/null @@ -1,158 +0,0 @@ -.TH GENBACKUPDATA 1 -.SH NAME -genbackupdata \- generate backup test data -.SH SYNOPSIS -.B genbackupdata -.RI [ options "] " directory -.SH DESCRIPTION -.B genbackupdata -generates test data sets for performance testing of backup software. -It creates a directory tree filled with files of different sizes. -The total size and the distribution of sizes between small and big are -configurable. -The program can also modify an existing directory tree by creating new -files, and deleting, renaming, or modifying existing files. -This can be used to generate test data for successive generations of backups. -.PP -The program is deterministic: with a given set of parameters (and a given -pre-existing directory tree), it always creates the same output. -This way, it is possible to reproduce backup tests exactly, without having -to distribute the potentially very large test sets. -.PP -The data set consists of plain files and directories. -Files are either small text files or big binary files. -Text files contain the "lorem ipsum" stanza, -binary files contain randomly generated byte streams. -The percentage of file data that is small text or big binary files can be set, -as can the sizes of the respective file types. -.PP -Files and directories are named "fileXXXX" or "dirXXXX", where "XXXX" -is a successive integer, separate successions for files and directories. -There is an upper limit to how many files a directory may contain. -After the file limit is reached, a new sub-directory is created. -The first set of files go into the root directory of the test set. -.PP -You have to give one of the options -.BR \-\-create , -.BR \-\-delete , -.BR \-\-rename , -or -.BR \-\-modify -for the program to do anything. -You can, however, give more than one of them, if -.I DIR -already exists. -(Giving the same option more than once means that only the last instance -is counted.) -.RI ( DIR ) -is created if it doesn't exist already. -.SH OPTIONS -When giving file sizes -.RI ( SIZE -below), -the default unit is a byte. -The suffixes "K", "M", "G", and "T" (upper or lower) can be used to refer to -kibi-, mebi-, gibi-, and tebibytes, respectively -(2 to the power of 10, 20, 30, or 40). -.PP -When giving file counts -.RI ( COUNT -below), the same suffixes may be used, but then they will -refer to kilo-, mega-, giga-, and tera- (10 to the power of 3, 6, 9, or 12). -.PP -When referring to a size or file count, when it makes sense to give a relative -size, the suffix "%" may be used to indicate percentage. -.PP -Numbers may be integer or floating point (using the locale's floating point -syntax). -.TP -\fB\-\-seed\fR=\fISEED\fR -Set the (integer) seed to the psuedo-random number generator. -Default: 0. -.TP -\fB\-\-max\-count\fR=\fICOUNT\fR -Set the maximum number of files in a directory. -Default: 256. -.TP -\fB\-p\fR, \fB\-\-percentage\-text\-data\fR=\fIPERCENTAGE\fR -Set the percentage of file data (not file count) in newly created files -(not modified files) allocated to small text files. -Default: 10%. -.TP -\fB\-t\fR, \fB\-\-text\-file\-size\fR=\fISIZE\fR -Set the size of text files. -Cannot be a relative size. -Default: 10 KiB. -.TP -\fB-b\fR, \fB\-\-binary\-file\-size\fR=\fISIZE\fR -Set the size of binary files. -Cannot be a relative size. -Default: 10 MiB. -.TP -\fB\-c\fR, \fB\-\-create\fR=\fISIZE\fR -Create -.I SIZE -amount of new files. -A relative amount refers to the size of the pre-existing files. -.I DIR -is created if it doesn't exist already. -Default: 0. -.TP -\fB\-d\fR, \fB\-\-delete\fR=\fICOUNT\fR -Remove -.I COUNT -pre-existing files. -A relative amount refers to the number of pre-existing files. -.I DIR -must exist already. -Default: 0. -.TP -\fB\-r\fR, \fB\-\-rename\fR=\fICOUNT\fR -Rename -.I COUNT -pre-existing files to new names, without changing the contents. -A relative amount refers to the number of pre-existing files. -.I DIR -must exist already. -Default: 0. -.TP -\fB\-l\fR, \fB\-\-link\fR=\fICOUNT\fR -Create -.I COUNT -links to pre-existing files. -.TP -\fB\-m\fR, \fB\-\-modify\fR=\fISIZE\fR -Modify pre-existing files by appending to them. -The new data is divided into text and binary data as for -.BR \-\-create , -but no regard is given as to whether the file that receives the new data is -a text or binary file. -Files are picked by random among the pre-existing ones, and the size is -increased according to the percentage set by -.BR \-\-modify\-percentage . -A relative -.I SIZE -refers to the total size of pre-existing files. -.I DIR -must exist already. -Default: 0. -.TP -\fB\-\-modify\-percentage\fR=\fIPERCENT\fR -Set the number of percent each file is grown when using -.BR \-\-modify . -Note that zero size files are not grown (X% of 0 is always 0). -Default: 10%. -.SH EXAMPLES -Create data for the first generation of a backup: -.PP -.RS -genbackupdata \-\-create=10G testdir -.RE -.PP -Modify an existing set of backup data to create a new generation: -.PP -.RS -genbackupdata \-c 5% \-d 2% \-m 5% \-r 0.5% testdir -.RE -.PP -The above command can be run for each new generation. diff --git a/genbackupdata.1.in b/genbackupdata.1.in new file mode 100644 index 0000000..4e2a579 --- /dev/null +++ b/genbackupdata.1.in @@ -0,0 +1,76 @@ +.\" Copyright 2007-2011 Lars Wirzenius +.\" +.\" This program is free software: you can redistribute it and/or modify +.\" it under the terms of the GNU General Public License as published by +.\" the Free Software Foundation, either version 3 of the License, or +.\" (at your option) any later version. +.\" +.\" This program is distributed in the hope that it will be useful, +.\" but WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License +.\" along with this program. If not, see . +.\" +.TH GENBACKUPDATA 1 +.SH NAME +genbackupdata \- generate backup test data +.SH SYNOPSIS +.SH DESCRIPTION +.B genbackupdata +generates test data sets for performance testing of backup software. +It creates a directory tree filled with files of different sizes. +The total size and the distribution of sizes between small and big are +configurable. +The program can also modify an existing directory tree by creating new +files, and deleting, renaming, or modifying existing files. +This can be used to generate test data for successive generations of backups. +.PP +The program is deterministic: with a given set of parameters (and a given +pre-existing directory tree), it always creates the same output. +This way, it is possible to reproduce backup tests exactly, without having +to distribute the potentially very large test sets. +.PP +The data set consists of plain files and directories. +Files are either small text files or big binary files. +Text files contain the "lorem ipsum" stanza, +binary files contain randomly generated byte streams. +The percentage of file data that is small text or big binary files can be set, +as can the sizes of the respective file types. +.PP +Files and directories are named "fileXXXX" or "dirXXXX", where "XXXX" +is a successive integer, separate successions for files and directories. +There is an upper limit to how many files a directory may contain. +After the file limit is reached, a new sub-directory is created. +The first set of files go into the root directory of the test set. +.PP +You have to give one of the options +.BR \-\-create , +.BR \-\-delete , +.BR \-\-rename , +or +.BR \-\-modify +for the program to do anything. +You can, however, give more than one of them, if +.I DIR +already exists. +(Giving the same option more than once means that only the last instance +is counted.) +.RI ( DIR ) +is created if it doesn't exist already. +.SH OPTIONS +.SH EXAMPLES +Create data for the first generation of a backup: +.PP +.RS +genbackupdata \-\-create=10G testdir +.RE +.PP +Modify an existing set of backup data to create a new generation: +.PP +.RS +genbackupdata \-c 5% \-d 2% \-m 5% \-r 0.5% testdir +.RE +.PP +The above command can be run for each new generation. -- cgit v1.2.1