Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
changelogs for initial 3.0 and 4.0 version
- Loading branch information
1 parent
24ddc06
commit 48d50d7
Showing
2 changed files
with
200 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,118 @@ | ||
## Tapper release 3.0 2011-03-02 (first public release) | ||
|
||
Tapper is an infrastructure for all aspects of testing inclusive | ||
Operating Systems and Virtualization. | ||
|
||
## Tapper contains | ||
|
||
* Automation | ||
* Machine Scheduling | ||
* Command line utils | ||
* Web Frontend application | ||
* Support for writing tests | ||
* Powerful result evaluation API | ||
* Testplan support with TaskJuggler | ||
* Many use-cases from tracking test results to benchmarking to full OS testing including virtualization | ||
|
||
## Feature overview | ||
|
||
### Automation | ||
|
||
* Network boot (PXE + TFTP + NFS) | ||
* Machine self-setup driven by abstract specfiles | ||
* Image-based or kickstart/autoyast based installation | ||
* Lightweight status API to easily plug in foreign installers | ||
* Support for virtualization setups (Xen and KVM) | ||
* Inject packages, programs, files into hosts/guests | ||
* Control execution of test scripts in hosts/guests | ||
* Interdependent setup and sync of co-operating machines | ||
* Complex timeout handling for complete test cycle, inclusive virtualizated guest | ||
* Reboot handling | ||
* Console logging | ||
* Hardware reset | ||
|
||
### Scheduling | ||
|
||
* Optimize utilization of pools with "not enough" machines for "too many use-cases" | ||
* Multiplex queues of freely definable use-cases (e.g., Xen, KVM, baremetal kernels, ad-hoc tests, benchmarks) with different bandwidths | ||
* Pluggable core scheduling algorithm (default "Weighted Fair Queuing") | ||
* Feature driven host matching (by memory, cores, vendor, etc. or complex combinations) | ||
* Dynamic queue and host management (add, delete, de/activate) | ||
* Host/queue binding for dedicated scheduling | ||
* Auto re-queuing for continuous testing | ||
* Multi-host scenarios | ||
|
||
### Web Application | ||
|
||
* Frontend to 2 databases: testruns and reports | ||
* Providing a "management view" and high-level test result evaluation | ||
* Overview lists and detailed zoom-in, GREEN/YELLOW/RED coloring | ||
* Filters over time, testsuites, machines, success status | ||
* RSS feeds on such filters | ||
* Visualize groups of connected results (virtualized neighbour guests) | ||
* Control start of testruns | ||
|
||
### Result Evaluation | ||
|
||
* Programmable complement to the web frontend | ||
* Allow complex queries on the test result database | ||
* No client side toolchain neccessary | ||
* Easy API to send and get back queries embedded in templates | ||
* API allows SQL and XPath like queries in an abstract way | ||
* Presentation about the query interface at the YAPC::Europe 2009 | ||
|
||
### Testplan Support | ||
|
||
* Testplans combine many Tapper features into concise points of interest | ||
* Manage testplan hierarchy allowing specfile reuse for complex testplan matrix | ||
* Interoperation with TaskJuggler on dedicated QA tasks for automatic scheduling and reporting | ||
* Consequently a complete focused QA life cycle of planning, execution and reporting | ||
|
||
### Support for writing tests | ||
|
||
* Format test results based on standard Test Anything Protocol (TAP) | ||
* Existing standard TAP toolchains available for about 20 programming languages | ||
* Dedicated Tapper support for Shell, Perl, Python available | ||
|
||
### Many use-cases | ||
|
||
* Kernel testing (stress, function, reboot) | ||
* Virtualization Testing (Xen, KVM) | ||
* Test matrix of host/guest combinations | ||
* Distribution testing (like OS or compilers) | ||
* Multi-machine scenarios | ||
* Complex result evaluation | ||
|
||
### Technology | ||
|
||
* Test Anything Protocol (TAP) | ||
* Core system written in Perl and CPAN | ||
* DB independent via OR mapper, developed on MySQL and SQLite | ||
* HTML/CSS, cautious Javascript | ||
* Language agnostic testing (e.g, Perl/Python/Shell test suites) | ||
* PXE, GRUB, TFTP, NFS boot automation | ||
* Strong decoupling of functional layers (webgui, testsuites, automation) to allow you amalgamate own infrastructures | ||
|
||
## Correlation to autotest.kernel.org | ||
|
||
The main focus of autotest.kernel.org project is on testing the Linux | ||
kernel. It provides a broad coverage of kernel functionality testing | ||
and wrappers of many existing test suites. | ||
|
||
Tapper provides many complex scenarios, like virtualization (Xen/KVM), | ||
distribution testing (RHEL, SLES, Debian), SimNow testing and | ||
benchmarking. Tapper can schedule them all multiplexed with according | ||
bandwidths over large or small machine pools. The autotest.kernel.org | ||
client can be used in a Tapper infrastructure via a thin wrapper that | ||
utilizes the TAP export we provided to the autotest project. Tapper | ||
then complements it with Testplan support, a result database and a | ||
homogeneous result evaluation API. More information about Tapper: | ||
Downloading Tapper | ||
|
||
* https://github.com/amd | ||
* search.cpan.org/~amd | ||
|
||
## Tapper Support | ||
|
||
* IRC: #tapper (irc.freenode.net) | ||
* Mailing List: tapper@amd64.org |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
* She's mad at everybody. She's even mad at the ice cream man. | ||
"Why does the ice cream truck have to come just before lunch | ||
or just before dinner, spoil the children's appetite?" | ||
I have to listen to that. I hear that 3 time a week, you know | ||
that's 12 times a month. | ||
|
||
Columbo, "The Most Crucial Game" (1972) | ||
|
||
## Tapper release 4.0 codename "Columbo" 2012-05-16 | ||
|
||
### Automation | ||
|
||
* better linux32 chroot/exec support | ||
* persistent automation layer, based on event-queues | ||
(Tapper::MCP, Tapper::MCP::MessageReceiver) | ||
* introduce SSH-connect to test without complete machine setup | ||
* support suspend/resume testing; | ||
via abstract central 'actions' to be called from remote clients | ||
(Tapper::Action) | ||
* conditionally trigger notifications on incoming results | ||
(Tapper::Notification) | ||
* keep-alive mechanics for broken hosts | ||
* much better scriptability everywhere to support strangest | ||
requirements | ||
* reworked TaskJuggler/Testplan bridge | ||
(Tapper::Testplan) | ||
|
||
### Testsuites | ||
|
||
* Tapper-autotest wrapper: | ||
* now send+upload virtually all result details+files | ||
* allow use snapshots to not suffer from upstream changes | ||
* Tapper-autoreport: better virtualization support (probably the | ||
world's current best Xen/KVM host/guest detection heuristics, | ||
really) | ||
* better Perl::Formance benchmarking integration | ||
|
||
### Reports database | ||
|
||
* store attachments bzip2 compressed (optionally compress already | ||
existing attachments) | ||
|
||
### Reports API | ||
|
||
* allow passthrough of incoming results to 3rd party applications | ||
(e.g. extract benchmark results and pass them along them to external | ||
graph rendering - aka. "level 2 receivers") | ||
* more robust TAP::Archive support | ||
|
||
### Query API | ||
|
||
* easier attachment downloading | ||
* QueryAPI now available in testplan template to allows generate | ||
testruns based on older results (think of "use last successful | ||
aka. known-good Xen changeset for another complicated test") | ||
|
||
### Web GUI | ||
|
||
* user authentication (via PAM) | ||
* reworked filter framework | ||
* better show current scheduling state | ||
* configurable site customizations for non-OSRC instances | ||
|
||
### CLI | ||
|
||
* new frontend tool 'tapper' | ||
* more subcommands for user/notification/testplan handling | ||
* testplan development support | ||
|
||
### misc | ||
|
||
* better configurable control over grub entry writing | ||
* utils to fake/test the automation layer (Tapper::Fake) | ||
|
||
### Hacking on Tapper | ||
|
||
* we now use Dist::Zilla to author Perl libs | ||
* plugins: | ||
* Dist::Zilla::PluginBundle::AMD | ||
* PodWeaver::PluginBundle::AMD | ||
* Task::BeLike::AMD | ||
|