Compare commits

...

1364 Commits

Author SHA1 Message Date
Michael Larabel
c1f92941cb Phoronix Test Suite 6.2.1 2016-02-22 20:13:19 -06:00
Michael Larabel
a2b0ff2c76 pts_Graph: Add some more product series to the color lookup table 2016-02-22 15:10:21 -06:00
Michael Larabel
70834b9d0a perf_per_dollar: Another fix for module 2016-02-22 13:54:44 -06:00
Michael Larabel
4d1413e5d5 perf_per_dollar: Fix for uninitialized test_result object 2016-02-22 13:48:47 -06:00
Michael Larabel
678b3d95b9 phodevi: Add OpenCL version reporting to system software string 2016-02-21 18:23:17 -06:00
Michael Larabel
33cab40573 deploy: Use DRI3 by default in farm system scripts 2016-02-21 17:06:28 -06:00
Michael Larabel
0cf46fd198 pts-core: Update copyright on the local results viewer 2016-02-21 12:56:43 -06:00
Michael Larabel
cea88fe829 phodevi: Extra Vulkan information reportingphodevi: Extra Vulkan information reporting 2016-02-17 08:02:23 -06:00
Michael Larabel
2b3246f88b pts-core: Bump version for release 2016-02-15 19:07:56 -06:00
Michael Larabel
fe7563d3ad module: Some version bumps, prepping for release 2016-02-15 19:06:34 -06:00
Michael Larabel
cbbcb0cb9a ChangeLog: Prep 2016-02-15 19:05:38 -06:00
Michael Larabel
8bd52e82f0 documentation: rebuild 2016-02-15 19:04:32 -06:00
Michael Larabel
480cf94d0c phodevi: Missing copyright updates 2016-02-15 19:03:06 -06:00
Michael Larabel
5748a84a88 Begin prepping for Gamvik final 2016-02-15 12:20:33 -06:00
Michael Larabel
7e05c67dde pts_Graph: Support for branded colors on more graphs 2016-02-15 12:20:09 -06:00
Michael Larabel
4a87fb301e phodevi: plumbing v 2016-02-15 12:19:02 -06:00
Michael Larabel
472fdeea03 Merge pull request #109 from numerant/sensors
Monitoring and MATISK fixes
2016-02-15 08:30:08 -06:00
Jakub Maleszewski
d7186a11ac pts-core: monitoring results are now properly distinguished between both normal and MATISK test runs 2016-02-13 18:17:23 +01:00
Jakub Maleszewski
9896d0a1d5 pts-core: fix missing "self::" in MATISK 2016-02-13 15:10:09 +01:00
Jakub Maleszewski
1887b4431d pts-core: update environmental variables in system_monitor 2016-02-13 14:51:01 +01:00
Michael Larabel
fa006e04f6 pts_Graph: Compact to scalar of line graphs at 8 rather than 10 2016-02-12 14:02:03 -06:00
Michael Larabel
dc18aa5b0c system_monitor: Don't append test X string to the description 2016-02-12 12:51:32 -06:00
Michael Larabel
470f2dbd80 pts_Graphs: Some tweaks 2016-02-10 09:31:31 -06:00
Michael Larabel
b026cb1ada pts_Graph: Add make_identifiers_web_links hook to horizontal bar graph 2016-02-09 16:05:41 -06:00
Michael Larabel
ab1adb6276 pts-core: Fix pts_test_profile_parser() failing to open test profile ZIP files 2016-02-09 10:21:08 -06:00
Michael Larabel
2755eff0ac Phoronix Test Suite 6.2 Milestone 5 2016-02-05 09:26:44 -06:00
Michael Larabel
a29af9da51 ChangeLog: Drop pre-3.0 changes from the shipped ChangeLog 2016-02-05 09:07:40 -06:00
Michael Larabel
3673eaf57d system_monitor: Typo from copy paste of previous commit :) 2016-02-03 15:14:51 -06:00
Michael Larabel
2b698d630c system_monitor: Handling for posix_kill absence in code 2016-02-03 15:03:29 -06:00
Michael Larabel
47417cc126 phodevi: Sensor clean-up and fixes (Jakub Maleszewski) 2016-02-03 14:46:08 -06:00
Michael Larabel
8fac5c73b0 Merge pull request #94 from numerant/sensors
Sensor monitoring - cleanup and bugfixes
2016-02-03 14:45:07 -06:00
Michael Larabel
ee99fb31b3 pts-core: Add golang as possible external dependency 2016-02-02 15:34:34 -06:00
Michael Larabel
08ae7da2a2 changelog: Restore MATISK module 2016-02-02 06:53:08 -06:00
Michael Larabel
d565f79c05 Merge pull request #108 from numerant/matisk
MATISK module restored and updated for PTS 6
2016-02-02 06:52:18 -06:00
Jakub Maleszewski
7085e4b2cf pts-core: fixed MATISK's incompatibility with PTS 6 2016-02-02 13:39:34 +01:00
Jakub Maleszewski
c41e7b3460 pts-core: re-added MATISK module (version from 25afbd5 commit) 2016-02-02 13:35:04 +01:00
Jakub Maleszewski
7038cad520 pts-core: introduced support for NVMe and MMC in HDD sensors; replaced problematic preg_grep with globbing 2016-02-02 11:26:35 +01:00
Michael Larabel
ea9df9424f phodevi: Mention Jakub Maleszewski for the recent Phodevi sensor work 2016-02-01 16:17:06 -06:00
Michael Larabel
b580e615cf pts-core: Use http://openbenchmarking.org/PTS for connectivity check now that OB is on a better server 2016-02-01 09:43:22 -06:00
Michael Larabel
8910c2fb9a phoromatic: Also add whether power off signaling is allowed next to WoL details on maintenance page 2016-01-30 20:07:07 -06:00
Michael Larabel
070b2ed512 phoromatic: Add Wake On LAN details to the Phoromatic maintenace table page 2016-01-30 20:05:57 -06:00
Michael Larabel
a280b288ff pts_Graph: Fix warning from earlier commit 2016-01-29 15:09:55 -06:00
Michael Larabel
e792c7bef2 pts-graph: Few improvements driven by new OpenBenchmarking.org code paths 2016-01-28 10:47:08 -06:00
Michael Larabel
2ca57c5d8c pts-core: Some README.md tweaks based upon Pull request #105 2016-01-27 06:36:36 -06:00
Michael Larabel
fad2cd4e5d Merge pull request #104 from atom-symbol/master
Run graphics detection only if required
2016-01-27 06:32:44 -06:00
Jan Ziak (⚛)
0bc981e517 Run graphics detection only if required
This improves performance of "./phoronix-test-suite help" for example.
2016-01-27 11:01:24 +01:00
Michael Larabel
852fb9378b Finish of Phoronix Test Suite 6.2 M4 commit 2016-01-26 17:49:44 -06:00
Michael Larabel
db6037dd7b Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-01-26 17:48:37 -06:00
Michael Larabel
ac289cc8ff Phoronix Test Suite 6.2 Milestone 4 2016-01-26 17:48:02 -06:00
Michael Larabel
c61b7a09c0 pts_Graph: Fix for graphs sometime not rendering correctly on multi-way comparisons 2016-01-26 17:46:26 -06:00
Fatima Sheremetyeva
6c2f939266 pts-core: Fix regression of multi-way comparison graphs caused by 120638b8ff 2016-01-26 18:30:17 -05:00
Michael Larabel
64b0483248 pts-core: More tweaks pertaining to the PDF rendering and pretty XML printing 2016-01-24 20:05:11 -06:00
Michael Larabel
8765e26c5e pts-core: Rework PDF generation of test results 2016-01-24 18:19:10 -06:00
Michael Larabel
5f093b7919 pts-core: More PDF work 2016-01-24 17:18:55 -06:00
Michael Larabel
4a51138f02 pts-core: Introduce pts_result_file_output::result_file_to_pdf() 2016-01-24 17:10:20 -06:00
Michael Larabel
b2e6aa8bac pts-core: in the OB result schema allow a title of 1 char 2016-01-23 17:26:41 -06:00
Michael Larabel
077f9dd659 pts_Graph: Switch PNG for SVG logo on table 2016-01-23 15:47:00 -06:00
Michael Larabel
17ccadb307 pts-core: PTS_NO_COMPILER_MASK 2016-01-21 12:40:01 -06:00
Michael Larabel
79f0b2b535 phoromatic: Add option to result viewer for exposing possible points of interest\ 2016-01-20 19:30:22 -06:00
Michael Larabel
658d624f32 pts-core: Safeguards against API change from previous commit if in future the new options are enabled along these other code-paths 2016-01-20 15:45:27 -06:00
Michael Larabel
34c86410c2 pts-core: Add function for optionally removing unchanged results
pts-core: Add function for optionally removing noisy results
2016-01-20 15:32:45 -06:00
Michael Larabel
bc81c03158 phoromatic: UI tweaks to the export public results viewer 2016-01-20 11:00:41 -06:00
Michael Larabel
d3d8942cb6 pts-core: Allow reversing a sorted a buffer of results 2016-01-19 08:10:02 -06:00
Michael Larabel
bb5ac80ee7 pts-core: Other part of fix 2016-01-18 15:53:30 -06:00
Michael Larabel
15ab3d3434 perf_per_dollar: Fix for commit 2016-01-18 15:52:49 -06:00
Michael Larabel
a2ce8583de pts-core: Cleanups 2016-01-18 14:19:35 -06:00
Jakub Maleszewski
33a15ca53f pts-core: replace array_push() with $array[] in system_monitor 2016-01-17 14:12:17 +01:00
Jakub Maleszewski
22ea9587bb Merge branch 'sensors' 2016-01-17 14:09:32 +01:00
Jakub Maleszewski
06e7f695be Merge remote-tracking branch 'upstream/master' 2016-01-17 13:51:57 +01:00
Jakub Maleszewski
432def01d2 pts-core: per-test-try monitoring fixes 2016-01-17 13:49:34 +01:00
Jakub Maleszewski
9d677ef936 pts-core: make monitoring results distinguishable between MATISK runs 2016-01-17 11:33:17 +01:00
Michael Larabel
e428d3781b phoromatic: Report the web server 2016-01-13 10:45:51 -06:00
Michael Larabel
25fcf9f3be phoromatic: Add secret PHOROMATIC_WANTS_APACHE option 2016-01-12 18:33:04 -06:00
Michael Larabel
73fb1b3ace pts_Graph: Add bsd color for bar graphs 2016-01-12 16:40:50 -06:00
Michael Larabel
33be563142 pts-core: Add OpenBSD helper for pkg_add 2016-01-12 11:27:45 -06:00
Michael Larabel
69b1b5dc1a pts-core: Another skip for ctype_alnum 2016-01-12 09:56:52 -06:00
Michael Larabel
960245ac7b pts-core: Typo from previous commit 2016-01-12 09:56:19 -06:00
Michael Larabel
f2495baadb pts-core: Fix for ctype_alnum not showing up on dfly bsd 2016-01-12 09:54:23 -06:00
Michael Larabel
7dbde7e982 pts_Graph: Fix from earlier commit 2016-01-11 14:03:58 -06:00
Michael Larabel
849fa769e4 pts_Graph: Comment out the incomplete noisy result detection code from previous commit 2016-01-11 12:02:49 -06:00
Michael Larabel
fa34e629de pts_Graph: Add FirePro/Quadro color coding to horizontal bar too 2016-01-11 12:00:17 -06:00
Michael Larabel
99ed71c045 phoromatic: Add view_results_since support to the export results viewer 2016-01-09 17:50:01 -06:00
Michael Larabel
4fc9b5046f pts-core: Similar fix for virtual test suites 2016-01-09 07:33:05 -06:00
Michael Larabel
2276ea9611 pts-core: Fix for some test profiles not showing up in list-tests sub-command 2016-01-09 07:31:10 -06:00
Michael Larabel
7718da8d06 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-01-07 20:18:42 -06:00
Michael Larabel
b5c58544d1 bump to 6131 2016-01-07 20:18:31 -06:00
Fatima Sheremetyeva
92c5a89757 Revert "phodevi: Change array pushing"
This reverts commit 6c98586662.
2016-01-07 20:54:18 -05:00
Michael Larabel
a5639a25b1 phoromatic: When in limited network mode, reset from ping at different times 2016-01-07 18:19:06 -06:00
Michael Larabel
798a3e6fba phoromatic: Add an extra sleep on start-up when doing limited network communication 2016-01-07 18:15:01 -06:00
Michael Larabel
e2fac00203 phoromatic: Expand the random time element slightly 2016-01-07 18:11:53 -06:00
Michael Larabel
d6d64bdd13 Phoronix Test Suite 6.2 Milestone 3 2016-01-07 18:08:31 -06:00
Michael Larabel
e65f6e913f phoromatic: Add LimitNetworkCommunication option 2016-01-07 18:06:40 -06:00
Michael Larabel
0e62d0c4c1 pts-core: Add midori to browser list 2016-01-06 18:57:42 -06:00
Michael Larabel
367b8e680f pts-core: Finish most of removal of array_push() 2016-01-06 17:54:16 -06:00
Michael Larabel
6c98586662 phodevi: Change array pushing 2016-01-06 17:33:40 -06:00
Jakub Maleszewski
f17a504909 pts-core: children processes are now killed after processing results, cgroup name insertion fixed
pts_arrays::unique_push
2016-01-06 22:25:45 +01:00
Michael Larabel
835d06be2d pts-core: Add httpd as a possible external dependency 2016-01-06 09:41:58 -06:00
Michael Larabel
c1262c4476 pts-core: Optimize array usage along hot paths 2016-01-06 08:36:48 -06:00
Michael Larabel
81b2145f2a pts-core: Drop array_push usage in client objects 2016-01-06 08:24:15 -06:00
Michael Larabel
a97b5fbff8 pts-core: More array conversion 2016-01-06 08:02:50 -06:00
Michael Larabel
414098f601 pts-coreL Fix for previous commit 2016-01-06 07:55:50 -06:00
Michael Larabel
11b8283843 pts-core: More array push conversion 2016-01-06 07:54:19 -06:00
Michael Larabel
7d81b9224c pts-core: Optimize some more arrays 2016-01-06 07:28:27 -06:00
Michael Larabel
673e37a22b pts_Graph: Drop array_push usage 2016-01-06 07:21:52 -06:00
Fatima Sheremetyeva
6f8f6150a1 pts-core: Add pts-footnote support 2016-01-05 17:53:08 -05:00
Michael Larabel
1698818efb Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2016-01-05 16:10:08 -06:00
Michael Larabel
297bc4206d phoromatic: Fix in listing tests on schedules page when dealing with cache mismatch 2016-01-05 16:09:45 -06:00
Michael Larabel
79bee6a042 pts-core: Some copyright updates forgot to do from previous commits 2016-01-05 13:20:58 -06:00
Michael Larabel
6b6c70b649 Merge pull request #102 from juju-solutions/charms.benchmark
Charms.benchmark
2016-01-05 13:19:59 -06:00
Adam Israel
142e2f92c1 Deprecate chlp in favor of charms.benchmark 2016-01-05 11:06:27 -05:00
Michael Larabel
120638b8ff pts_Graph: rendering fix on collision of result identifiers 2016-01-04 10:55:16 -06:00
Michael Larabel
23c7f8ad8c pts-core: Add a few more safety checks 2016-01-04 10:46:48 -06:00
Adam Israel
eb6d354c94 Merge remote-tracking branch 'phoronix-test-suite/master' 2016-01-04 10:28:04 -05:00
Michael Larabel
94ace3c885 pts-core: Add system to default list of repositories 2016-01-04 07:04:28 -06:00
Michael Larabel
4a544ffb56 Phoronix Test Suite 6.2 M2 appears all good 2016-01-02 06:43:11 -06:00
Michael Larabel
54898f7377 Phoronix Test Suite 6.2 Milestone 2 2016-01-01 10:44:28 -06:00
Michael Larabel
0f51b6b3a2 pts-core: Add MinimalTestTime user configuration option 2016-01-01 08:10:19 -06:00
Michael Larabel
faf1b27b2c Merge pull request #101 from ptzafrir/timeout
set minimal test timeout by configuration variable
2016-01-01 08:09:31 -06:00
Tzafrir Poupko
610fb640ad move minimalTestTime to options/TestResultValidation 2016-01-01 16:06:14 +02:00
Tzafrir Poupko
e31385f604 set minimal test time by configuration variable 2016-01-01 15:42:45 +02:00
Michael Larabel
a3f2256336 pts-core: Add FullOutput to pts_config 2015-12-29 12:20:11 -06:00
Michael Larabel
e4b7e7f2d9 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-12-29 12:18:53 -06:00
Michael Larabel
bf78f2db13 pts-core: Add FullOutput to the default user config 2015-12-29 12:18:33 -06:00
Michael Larabel
ebb76e4752 Merge pull request #99 from ptzafrir/output
Add configuration option to print all test steps
2015-12-29 12:17:51 -06:00
Tzafrir
5fe117b776 Add configuration option to print all test steps
This address issue #95 - FullOutput configuration option is added
If set the output of pre/test/interim/post is dumped to stdout
2015-12-28 15:44:19 +02:00
Michael Larabel
1ec700cee9 phoromatic: Export viewer tweaks 2015-12-28 06:25:26 -06:00
Michael Larabel
2bab1bda45 phodevi: Fixes for the landing of PTS_NPROC 2015-12-28 06:23:41 -06:00
Michael Larabel
036b735a69 Merge pull request #97 from ptzafrir/nproc
Add support for nproc environment variable
2015-12-28 06:21:44 -06:00
Tzafrir
ab2c13b82e use std_caching 2015-12-27 16:51:59 +02:00
Tzafrir
fa148e7553 fix compile error 2015-12-27 16:24:04 +02:00
Tzafrir
8ec8eab7cb use num cpu cores in phodevi.php 2015-12-27 16:21:23 +02:00
Michael Larabel
03a122e87a Merge pull request #98 from ptzafrir/pre-post
Check pre/post scripts exit status
2015-12-27 06:17:31 -06:00
Tzafrir
5102ccd9a7 Check pre/post scripts exit status
And fail the test if the script failed
2015-12-27 13:45:36 +02:00
Tzafrir
4f14e3314c Add support for nproc environment variable
This allows to change the cpu count for multiple tests
to test performance under variable number of cpu cores used
2015-12-27 12:47:31 +02:00
Michael Larabel
3806120ef7 phoromatic: Adjust export dump rule 2015-12-20 18:39:00 -06:00
Michael Larabel
4097daeeb7 phodevi: Software string detection improvements 2015-12-16 15:04:43 -06:00
Michael Larabel
9aabbab6e5 pts-core: Use bash when available in the pts_tests call script 2015-12-16 13:27:54 -06:00
Michael Larabel
7cc0abd595 Phoronix Test Suite 6.2 Milestone 1 2015-12-15 11:18:00 -06:00
Michael Larabel
14ad1180a4 pts-core: Don't include the Extends of tests on upload-test-profile 2015-12-14 10:48:46 -06:00
Michael Larabel
5eaa004c70 pts-core: Fix for possible OB login failure 2015-12-14 10:11:06 -06:00
Michael Larabel
6b687e75f8 phodevi: Support sys.power sensor monitoring fallback on BAT1 2015-12-10 07:25:57 -06:00
Michael Larabel
597ef4c764 pts-core: Allow the SupportedPlatforms and SoftwareType to be optional (when using CTP extends) 2015-12-08 12:13:52 -06:00
Michael Larabel
48fa67f007 Time to bump the version for 6.2 Gamvik development 2015-12-08 11:57:12 -06:00
Fatima Sheremetyeva
a8fb00a7d6 pts-core: Allow Cascading Test Profiles / Extends to inherit the results-definition.xml 2015-12-08 12:56:05 -05:00
Fatima Sheremetyeva
b002052840 pts-core: Add basic Arch dependency handler using pkgfile 2015-12-08 11:30:17 -06:00
Michael Larabel
7e61625fa5 pts-core: Basic implementation of SystemDependencies for dynamically resolving system/external dependencies based on file name 2015-12-08 11:18:22 -06:00
Michael Larabel
9a5f42e0c9 pts-core: Add new TestProfile/SystemDependencies field to test profile specification, to be implemented 2015-12-08 10:23:24 -06:00
Fatima Sheremetyeva
a17e271dad pts-core: Add ubuntu dependency handler 2015-12-08 11:07:47 -05:00
Michael Larabel
d71296dd0b pts-core: Begin work on dynamic dependency handler infrastructure 2015-12-03 07:50:44 -06:00
Michael Larabel
8838244dc0 phoromatic: Allow public listing of download cache files when navigating in browser to /download-cache.php 2015-11-29 18:41:43 -06:00
Jakub Maleszewski
0208723886 pts-core: remove var_dump from system_monitor 2015-11-29 21:27:58 +01:00
Jakub Maleszewski
db92ec4195 pts-core: fix off-by-one bug in system_monitor's offset saving 2015-11-29 21:26:12 +01:00
Michael Larabel
14589143da phodevi: Assume Windows is x86_64 when PROCESSOR_ARCHITEW6432 is missing 2015-11-24 05:52:35 -06:00
Jakub Maleszewski
db4f94fdee pts-core: replaced ugly shell_exec grepping with native PHP code in HDD sensors 2015-11-22 22:03:47 +01:00
Jakub Maleszewski
95b3e69384 pts-core: formatting fixes 2015-11-22 21:47:57 +01:00
Michael Larabel
349a2a0d1a documentation rebuild 2015-11-20 09:46:01 -06:00
Michael Larabel
6b644b22ef Phoronix Test Suite 6.0.1 2015-11-20 09:43:51 -06:00
Michael Larabel
0c73c8fee2 phodevi: More fixes for the sensors code 2015-11-19 21:08:58 -06:00
Michael Larabel
d878e36de9 phodevi: Fix cpu_freq bug 2015-11-19 17:01:57 -06:00
Michael Larabel
db94680cb6 Ready Phoronix Test Suite 6.0-Hammerfest 2015-11-16 15:42:50 -06:00
Michael Larabel
7f511d0805 pts_Graph: Fix line tracking graphs 2015-11-16 11:27:34 -06:00
Michael Larabel
c76354b40e pts-core: Some warning fixes 2015-11-16 10:47:56 -06:00
Michael Larabel
700a88f598 pts-core: Some last minute minor fixes 2015-11-16 07:55:46 -06:00
Fatima Sheremetyeva
60697dd0d5 phodevi: Jetson TX1 GPU temperature monitoring support 2015-11-13 15:59:41 +00:00
Michael Larabel
b3c9e690e0 pts_Graph: add two isset() checks to fend possible warnings 2015-11-13 09:44:00 -06:00
Michael Larabel
fdf797476b pts_Graph: Fix multi-way comparison line graphs from color collision 2015-11-13 09:34:02 -06:00
Michael Larabel
01fdd8a353 pts-core: Update some colors on the PDF template 2015-11-13 07:44:31 -06:00
Michael Larabel
29d304474e pts-core: Move common dependencies later in the external dependency handling process 2015-11-13 07:08:17 -06:00
Michael Larabel
9897174f10 pts-core: Stop logging lsusb as on some systems calling the command will hang\ 2015-11-13 06:11:12 -06:00
Michael Larabel
f887a37971 pts-core: Don't load the supported sensors only when needed since most tests just want sys.time 2015-11-12 21:20:34 -06:00
Michael Larabel
fc2dabd639 pts-core: Code formatting fixes for system_monitor 2015-11-12 21:10:32 -06:00
Michael Larabel
c9c2207efc phodevi: Add another safety check 2015-11-12 19:54:03 -06:00
Michael Larabel
50cb6ce77a phodevi: Fixes 2015-11-12 19:44:22 -06:00
Michael Larabel
98c05394d3 Phoronix Test Suite 6.0 Milestone 6 2015-11-12 18:45:29 -06:00
Michael Larabel
e7b31a2f43 pts-core: pts_openbenchmarking::available_tests() don't show deprecated test profiles by default 2015-11-12 18:36:19 -06:00
Michael Larabel
3d204682b5 phodevi: More formatting fixes 2015-11-12 17:07:41 -06:00
Michael Larabel
11ab3743e6 phodevi: Formatting fixes, etc 2015-11-12 17:04:57 -06:00
Michael Larabel
7aeaeca131 phodevi: Support reporting /sys/firmware/devicetree/base/model for part of motherboard/SBC string 2015-11-12 16:30:57 -06:00
Michael Larabel
a31749f1cd phoromatic: Dashboard update 2015-11-12 16:11:53 -06:00
Michael Larabel
82f3231b35 phoromatic: More 2015-11-12 16:07:59 -06:00
Michael Larabel
91b3ece67d phoromatic: More CSS 2015-11-12 16:06:33 -06:00
Michael Larabel
c05d0ce5c2 phoromatic: More CSS tweaks 2015-11-12 16:03:27 -06:00
Michael Larabel
a706dbb72d phoromatic: Update test profiles page 2015-11-12 15:43:28 -06:00
Michael Larabel
5396c9961d Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-11-12 15:20:49 -06:00
Michael Larabel
9139fbaefc phoromatic: More tweaking 2015-11-12 15:20:37 -06:00
Fatima Sheremetyeva
1ffa9c6da7 phoromatic: Add changelog note 2015-11-12 14:39:18 -06:00
Michael Larabel
f8c4acb98a phoromatic: Style the em 2015-11-12 14:22:39 -06:00
Michael Larabel
c80df7572e phoromatic 2015-11-12 14:21:38 -06:00
Michael Larabel
2b505aa3c6 phoromatic: Dashboard take 2 2015-11-12 14:19:56 -06:00
Michael Larabel
9402058de9 phoromatic: Dashboard styling 2015-11-12 14:17:22 -06:00
Michael Larabel
84c3d11373 phoromatic: Color tweak 2015-11-12 14:12:50 -06:00
Michael Larabel
a446543681 phoromatic: fff 2015-11-12 14:10:20 -06:00
Fatima Sheremetyeva
1e77843914 Phoronix 2015-11-12 14:03:58 -06:00
Michael Larabel
e2c5bd1cc8 phoromatic: Replace PNG with SVG for the pts-white-logo 2015-11-12 13:11:22 -06:00
Michael Larabel
f1a0ecba6d pts-core: Fix warning in pts_client::fork when PCNTL is not present 2015-11-12 11:00:18 -06:00
Michael Larabel
f539b25374 pts-core: Bump PTS_CORE_VERSION 2015-11-12 10:49:11 -06:00
Michael Larabel
bf4625ab70 Merge pull request #92 from numerant/master
Sensor monitoring changes
2015-11-11 16:51:38 -06:00
Michael Larabel
e4f156072b pts-core: Fix regression with multiple result scales for single test profile 2015-11-10 16:41:32 -06:00
Michael Larabel
ff972c3729 pts-core: Documentation rebuild 2015-11-07 16:37:29 -06:00
Michael Larabel
8e37ba9957 Merge pull request #83 from rkingsbury/windows-install-doc
Add documentation for Windows installation, troubleshooting, and improve .bat file
2015-11-07 16:35:15 -06:00
Michael Larabel
3f27a44916 Merge pull request #84 from rkingsbury/fix-hophop-typo
Fix typo in Facebook HipHop section of documentation
2015-11-07 16:33:10 -06:00
Michael Larabel
33c942b5a4 pts-core: Add invalid command helper to result-file-to-suite 2015-11-07 07:20:36 -06:00
Michael Larabel
b593bec216 pts-core: Fix a warning for virtual test suite when running pts/installed e.g. in auto or batch mode 2015-11-06 12:42:45 -06:00
Michael Larabel
a905d212d9 pts-core: Add !$restored_from_cache check 2015-11-05 06:57:36 -06:00
Michael Larabel
8a3dfe542c pts-core: Add sleep during open_basedir warning to make it easier to see 2015-11-04 16:53:33 -06:00
Jakub Maleszewski
894b08eb1c pts-core: fix zero values not being included on graphs 2015-11-04 23:24:59 +01:00
Jakub Maleszewski
67210f71a1 Revert "pts-core: first part of phodevi_sensor_monitor changes"
This reverts commit 5fad4a2a82.
2015-11-04 23:06:49 +01:00
Jakub Maleszewski
3ee4d142c3 pts-core: read_sensor now creates temporary sensor object if it isn't passed as parameter 2015-11-04 22:57:42 +01:00
Jakub Maleszewski
5fad4a2a82 pts-core: first part of phodevi_sensor_monitor changes 2015-11-04 22:10:05 +01:00
Michael Larabel
ab295eac25 Phoronix Test Suite 6.0 Milestone 5 2015-11-04 10:43:17 -06:00
Michael Larabel
6b6f0c7977 phoronix-test-suite: Separate the yum and dnf messages 2015-11-04 10:36:44 -06:00
Jakub Maleszewski
52f8e0ab8c Merge remote-tracking branch 'upstream/master' 2015-11-04 14:35:51 +01:00
Michael Larabel
8e585dcbd4 documentation: More cleanup 2015-11-03 18:18:23 -06:00
Michael Larabel
38ae716570 documentation: Update HTML template style 2015-11-03 18:13:10 -06:00
Michael Larabel
c38c9d10b2 pts-core: More work on the new result viewer 2015-11-03 17:38:40 -06:00
Michael Larabel
ab2342035b pts-core: Add OpenGL prefix to string in webui 2015-11-03 17:15:39 -06:00
Michael Larabel
f0d0ee0866 pts-core: Adjust ordering on zypper before apt-get 2015-11-03 13:21:27 -06:00
Michael Larabel
039d70827b pts-core: Rewrite of the local results viewer, now use HTML+JS rather than XSL 2015-11-03 12:58:45 -06:00
Michael Larabel
f118eb4f48 pts-core: Properly handle spaces in shell_exec() export 2015-11-03 10:26:21 -06:00
Michael Larabel
2059360879 pts-core: Fix CSV result output when there are missing results 2015-11-03 08:24:45 -06:00
Michael Larabel
d118bb0b6e phodevi: Support for finding the Xorg.0.log in ~/.local/share/xorg/ with Debian now using that for non-root X Server 2015-11-03 08:03:53 -06:00
Michael Larabel
4b846a6778 pts-core: Fix results getting compacted into single result comparison object when using a local test without version post-fix 2015-11-02 16:12:56 -06:00
Michael Larabel
0d2d37f14b phoromatic: REMOTE_ACCESS define isn't used anywhere 2015-11-01 16:23:29 -06:00
Michael Larabel
259e0f4e9d pts-core: Fix finish-run command functionality 2015-11-01 08:43:47 -06:00
Michael Larabel
2671b36d23 pts-core: Tighten up the "test run ended prematurely" characteristics 2015-11-01 07:17:57 -06:00
Michael Larabel
190aad8ce7 phoromatic: Fix reporting of results total 2015-10-31 09:50:32 -05:00
Michael Larabel
68b5d3776e phoromatic: Tweak 2015-10-31 09:08:21 -05:00
Michael Larabel
37d3696aff pts-core: Tweak the force line graph 2015-10-30 14:05:38 -05:00
Michael Larabel
df4cc7fa65 phoromatic: Add "Force Line Graph" option to result page 2015-10-30 13:31:24 -05:00
Jakub Maleszewski
8003b1205d Merge remote-tracking branch 'upstream/master' 2015-10-28 12:43:02 +01:00
Michael Larabel
6adcb24f1d Phoronix Test Suite 6.0 Milestone 4 2015-10-25 17:22:27 -05:00
Michael Larabel
8be5e74092 pts-graph: Fix bad copy paste from previous commit 2015-10-25 12:29:24 -05:00
Michael Larabel
9fc24919c7 pts-Graph: Tweaks 2015-10-25 11:26:55 -05:00
Michael Larabel
ae90fae8a8 pts-core: Tweaks 2015-10-21 08:31:35 -05:00
Michael Larabel
a574958843 phoromatic: Add test_results_total() 2015-10-18 12:35:00 -05:00
Michael Larabel
ef57724ae2 pts-core: Various improvements 2015-10-18 10:42:02 -05:00
Michael Larabel
e344551fea pts-core: Bump PTS_CORE_VERSION 2015-10-13 17:23:02 -05:00
Michael Larabel
2e08a956f4 linux_perf: Add new module to provide perf output reporting on a per-test-run basis when LINUX_PERF=1 environment variable is set 2015-10-13 17:21:12 -05:00
Michael Larabel
ef18199cbc pts-core: Few minor changes to make some modules more capable 2015-10-13 17:19:57 -05:00
Michael Larabel
fa5f02aaf6 phoromatic: Support for exporting results as XML via the viewer 2015-10-13 16:06:31 -05:00
Michael Larabel
734fdeb3e3 pts-core: Reimplement is_results_tracker() 2015-10-13 08:42:16 -05:00
Michael Larabel
a3ac1d50e3 phoromatic: Tweaks 2015-10-12 15:33:14 -05:00
Michael Larabel
28c90a0822 phoromatic: Change the blue 2015-10-12 09:54:00 -05:00
Jakub Maleszewski
de7e80ba6b pts-core: OS X CPU frequency retrieval fix; indentation fixes in phodevi class 2015-10-11 23:10:15 +02:00
Michael Larabel
81ce4e894c phoromatic: Tweak 2015-10-11 16:04:51 -05:00
Jakub Maleszewski
a521a04c78 pts-core: updated module information in system_monitor 2015-10-11 21:55:19 +02:00
Jakub Maleszewski
e8137f7328 Merge branch 'sensors' 2015-10-11 21:41:07 +02:00
Jakub Maleszewski
27a88e1cd4 Merge remote-tracking branch 'upstream/master' 2015-10-11 21:40:52 +02:00
Jakub Maleszewski
643f454568 pts-core: renamed "sensors-new" directory to "sensors", as all the sensor classes are already ported 2015-10-11 21:37:52 +02:00
Jakub Maleszewski
01a6b50e06 pts-core: ported network_usage sensor 2015-10-11 21:34:37 +02:00
Jakub Maleszewski
51af8a47ba pts-core: cpu_freq doesn't show CPU0 as device name on systems not supporting per-CPU monitoring anymore 2015-10-11 20:46:41 +02:00
Jakub Maleszewski
6310f9f87c pts-core: fixed sys_voltage sensor being unnecessarily loaded on OS X 2015-10-11 20:41:33 +02:00
Jakub Maleszewski
f8f3002882 pts-core: fixed cpu_freq sensor on OS X 2015-10-11 20:39:32 +02:00
Jakub Maleszewski
524caa60b0 pts-core: fixed memory_usage sensor on OS X 2015-10-11 20:36:29 +02:00
Jakub Maleszewski
6639c56762 pts-core: clear test try monitoring offsets after successful test run 2015-10-11 11:48:57 +02:00
Jakub Maleszewski
41c57a9414 pts-core: make system_monitor recognize "all." sensor names again (for the sake of compatibility) 2015-10-11 10:54:55 +02:00
Jakub Maleszewski
872e9eb1cd pts-core: prevent system_monitor from running when results are not saved to a file 2015-10-11 10:20:36 +02:00
Michael Larabel
c2eeb47041 phoromatic: More UI work 2015-10-10 16:05:26 -05:00
Michael Larabel
bb86af2ee3 phoromatic: More work 2015-10-10 15:58:09 -05:00
Michael Larabel
25e4f51629 phoromatic: Start of major web UI rework 2015-10-10 15:24:01 -05:00
Jakub Maleszewski
9e890c7df5 pts-core: fixed module unloading 2015-10-10 20:59:14 +02:00
Jakub Maleszewski
a3222463ac pts-core: fix for the last commit (cgroup exclusion when 'all' option is used) 2015-10-10 20:21:30 +02:00
Jakub Maleszewski
a53df5b4ff pts-core: excluded cgroup sensors from monitoring when 'all' option is specified 2015-10-10 20:16:33 +02:00
Michael Larabel
e779ffdeaf phoromatic: Remove one more query from hot path, can be replaced by simple directory check 2015-10-09 13:53:41 -05:00
Michael Larabel
fdb6d0f1b6 Phoronix Test Suite 6.0 Milestone 3 2015-10-09 11:10:57 -05:00
Michael Larabel
26d157ebee pts-core: Fix pts-test-description 2015-10-09 09:52:32 -05:00
Michael Larabel
06bb9cdaeb pts-core: Fix multi-pass fail parsing regression 2015-10-09 09:45:25 -05:00
Michael Larabel
6224ff2341 pts-core: Fix for commit yesterday 2015-10-09 07:43:38 -05:00
Michael Larabel
be5a7c4d39 pts-core: FreeBSD tweaks/fixes 2015-10-08 17:23:23 -05:00
Michael Larabel
f6a1eac273 pts-core: Unset it too 2015-10-08 16:38:20 -05:00
Michael Larabel
b7b9d7a979 Get ready for Phoronix Test Suite 6.0 M3 2015-10-08 16:26:00 -05:00
Michael Larabel
ffb6f0227f phoromatic: Always ensure DB gets closed 2015-10-08 16:25:15 -05:00
Michael Larabel
19fd1a389b pts-core: Updates to debug-test-download-links 2015-10-08 16:00:01 -05:00
Michael Larabel
b821807895 pts-core: Add NO_HTTPS environment variable option for systems that have trouble with HTTPS 2015-10-08 15:22:01 -05:00
Michael Larabel
e03fc64a46 pts-core: String_bool should be good now 2015-10-08 14:03:08 -05:00
Michael Larabel
2924a1a959 pts-core: Improve the new string_bool fallback 2015-10-08 13:56:31 -05:00
Michael Larabel
ee61f69e0f pts-core: Rewrite the DragonFlyBSD external dependency handling to now use dports pkg rather than pkgsrc 2015-10-08 13:52:49 -05:00
Michael Larabel
a7183c313a pts-core: Fix for filter_var() not being enabled in the DragonFlyBSD php package 2015-10-08 13:37:29 -05:00
Michael Larabel
c2983ee7f0 pts-core: Add "smartmontools" as new PTS External Dependency 2015-10-08 10:50:36 -05:00
Michael Larabel
2f3b7ad195 pts-core: Improve pass/fail detection 2015-10-08 10:37:47 -05:00
Michael Larabel
8149dadb52 pts_Graph: Fix bug in pass fail graph 2015-10-08 10:34:11 -05:00
Michael Larabel
e9aa202a80 pts-core: Add extra warning about RequiresRoot=TRUE tests 2015-10-08 10:20:12 -05:00
Michael Larabel
09a74f1b12 pts-core: Detect NVMe drives when looking for block devices for disk testing 2015-10-08 10:14:06 -05:00
Michael Larabel
5e7f241682 pts-core: Fix "auto-disks" test option to not show partitions 2015-10-08 10:10:03 -05:00
Michael Larabel
03f5fa199b pts-core: Add "FAILED" also to pass/fail parser 2015-10-08 09:48:14 -05:00
Jakub Maleszewski
417ddc89a2 pts-core: first part of performance per watt fixes 2015-10-07 23:44:45 +02:00
Jakub Maleszewski
c7598310b9 pts-core: sys_power sensor ported 2015-10-07 23:07:28 +02:00
Jakub Maleszewski
cf0d4c2fd0 pts-core: ported sys_temp sensor 2015-10-07 22:48:37 +02:00
Jakub Maleszewski
ef4fb2eae1 pts-core: ported sys_iowait sensor 2015-10-07 22:42:31 +02:00
Jakub Maleszewski
4ff4c7a333 pts-core: ported sys_fanspeed sensor 2015-10-07 22:35:04 +02:00
Jakub Maleszewski
840d19faaf pts-core: ported hdd_temp sensor 2015-10-07 21:57:46 +02:00
Michael Larabel
6f831b6a83 pts-core: Fix issue in test_run_manager 2015-10-05 13:13:41 -05:00
Michael Larabel
24bfaecfca phoromatic: Fix missing dc_exists 2015-10-05 10:04:47 -05:00
Michael Larabel
a7d825b6a5 pts-core: Finish work on auto-authenticating clients / settings page option to automatically approve newly added systems by default 2015-10-04 10:57:08 -05:00
Michael Larabel
02a4fdf2e6 pts-core: Fix for potential system log prompt on OB uploads when in batch or auto mode 2015-10-04 10:26:33 -05:00
Michael Larabel
344633e96a pts-core: Fix for menu enty 2015-10-04 10:20:44 -05:00
Jakub Maleszewski
62838ca856 pts-core: set INSTANT_MEASUREMENT to false for several sensors 2015-10-04 13:52:30 +02:00
Jakub Maleszewski
d32f62965e pts-core: instant measurement check fixed, cleanup in phodevi_sensor class 2015-10-04 13:28:45 +02:00
Jakub Maleszewski
a273e35ecc pts-core: fixed disk speed sensors not recognizing multiple devices 2015-10-04 12:20:40 +02:00
Jakub Maleszewski
afaf83d0f3 pts-core: fixed gpu_usage sensor, dropped fences/s and commands/s support 2015-10-04 12:04:39 +02:00
Jakub Maleszewski
335f422f99 pts-core: update system_monitor's module info 2015-10-04 11:33:17 +02:00
Jakub Maleszewski
2ef8300927 pts-core: fixed sensor list in interactive mode 2015-10-03 12:39:59 +02:00
Jakub Maleszewski
1f8eb41fa0 pts-core: temporarily disabled gpu_usage sensor 2015-10-03 12:17:20 +02:00
Michael Larabel
36ee0ba814 pts-core: Fix warnngs on test profile page of phoromatic 2015-09-29 15:41:16 -05:00
Jakub Maleszewski
6f6360c722 pts-core: added ability to specify if sensor shuould be monitored in a separate process 2015-09-28 17:53:01 +02:00
Michael Larabel
88cf1f29e2 pts-core: Tweak previous commit 2015-09-28 10:48:49 -05:00
Michael Larabel
efcdddeece pts-core: Fix warnings on empty test options 2015-09-28 10:47:28 -05:00
Michael Larabel
7f42665dcf pts-core: Fix fatal error in cleanup_tests_to_run() as shouldn't be static 2015-09-28 10:45:32 -05:00
Jakub Maleszewski
a46c231a1f pts-core: swap_usage sensor ported 2015-09-28 16:59:54 +02:00
Jakub Maleszewski
b4c8d27e70 pts-core: fixed cgroup creation and removal 2015-09-28 16:37:57 +02:00
Jakub Maleszewski
ca3ee1635f Merge branch 'sensors' 2015-09-25 15:54:55 +02:00
Jakub Maleszewski
7f070caca2 Merge remote-tracking branch 'upstream/master' 2015-09-25 15:54:16 +02:00
Jakub Maleszewski
ac1d806826 pts-core: disk speed sensors ported to the new interface, related flaw fixed in phodevi_linux_parser 2015-09-25 15:48:36 +02:00
Michael Larabel
e5b807de54 pts-core: Fix class names from yesterday's changes 2015-09-25 08:39:10 -05:00
Michael Larabel
6e3e89eb41 pts-core: Check for posix kill more 2015-09-24 17:03:26 -05:00
Michael Larabel
f938146c2c pts-core: Some missing cleanup 2015-09-24 17:01:03 -05:00
Michael Larabel
60db32bff9 pts-core: Fix for previous commit 2015-09-24 16:53:16 -05:00
Michael Larabel
5a1420ed7d pts-core: Various cleaning, try to avoid phoromatic using pts_client::init, etc 2015-09-24 16:52:41 -05:00
Michael Larabel
11eca4c258 pts-core: Redo the init path a bit 2015-09-24 15:48:01 -05:00
Michael Larabel
bd9ce2b541 pts_Graph: Fix notes text 2015-09-24 15:14:26 -05:00
Michael Larabel
2d1678ebad pts_Graph: SVG version of OpenBenchmark icon 2015-09-24 12:32:38 -05:00
Michael Larabel
44d1b6ec8f pts_Graph: Another small SVG optimization 2015-09-24 11:57:15 -05:00
Michael Larabel
b7a5644216 Phoronix Test Suite 6.0 Milestone 2 2015-09-24 11:20:33 -05:00
Michael Larabel
0bc2849a07 pts-core: Small fixes 2015-09-24 11:14:59 -05:00
Michael Larabel
2fa2c072c7 phoromatic: Typo in previous commit 2015-09-23 10:48:06 -05:00
Michael Larabel
b6d08efcb5 phoromatic: Try to optimize the test profile page 2015-09-23 10:47:33 -05:00
Michael Larabel
60c3715ab7 phoromatic: Don't uselessly re-read the JSON cache download so many times 2015-09-23 10:33:59 -05:00
Michael Larabel
a92793152e phoromatic: Drop pre-5.4 client connection support 2015-09-22 10:19:36 -05:00
Jakub Maleszewski
3bfc86c3b1 Merge branch 'sensors' 2015-09-22 17:03:54 +02:00
Jakub Maleszewski
29c709cd3c Merge remote-tracking branch 'upstream/master' 2015-09-22 17:01:54 +02:00
Michael Larabel
01f784ce49 pts-core: Optimize pts_sys_graph with SVG groups 2015-09-22 09:54:45 -05:00
Jakub Maleszewski
9035b8c4a0 pts-core: ported system voltage monitoring to the new interface; single class supports all the system voltages now 2015-09-22 16:36:22 +02:00
Jakub Maleszewski
4b6b7b3b58 pts-core: ported gpu_voltage sensor 2015-09-22 15:11:42 +02:00
Jakub Maleszewski
67d64b164a pts-core: gpu_usage sensor ported 2015-09-22 15:05:07 +02:00
Jakub Maleszewski
913a0a66d8 pts-core: ported gpu_temp sensor 2015-09-22 14:58:43 +02:00
Jakub Maleszewski
1184bd468d pts-core: ported gpu_power sensor 2015-09-22 14:54:09 +02:00
Jakub Maleszewski
415058062b pts-core: gpu_freq sensor ported, gpu_fanspeed class name fixed 2015-09-22 14:35:51 +02:00
Jakub Maleszewski
3dad2c0cd3 pts-core: ported gpu_fanspeed sensor 2015-09-22 14:29:39 +02:00
Jakub Maleszewski
c3c668b863 pts-core: ported cpu_voltage sensor, minor cpu_temp cleanup 2015-09-22 14:01:37 +02:00
Jakub Maleszewski
6c9ed8ec67 pts-core: cpu_temp sensor ported, small cpu_usage cleanup 2015-09-22 13:52:32 +02:00
Michael Larabel
7a35da766d pts-core: Finish merging phx-graph back into pts_Graph 2015-09-19 14:06:48 -05:00
Michael Larabel
ba9a280db7 Add back pts_graph_core from renaming in previous commit 2015-09-19 14:03:04 -05:00
Michael Larabel
78e1ff1463 pts-core: Drop the unused old graph files 2015-09-19 14:02:35 -05:00
Michael Larabel
d59d48fed1 pts-core: Default to using new graphing code 2015-09-19 13:45:22 -05:00
Michael Larabel
1bf75bdd5e pts-core: Various optimizations, tweaks, fixes 2015-09-19 13:37:37 -05:00
Michael Larabel
f401b4aa32 phx-graph: Port over scatter plot 2015-09-19 12:54:44 -05:00
Michael Larabel
9e155e42ae pts-core: Drop unused PIE_CHART type 2015-09-19 12:38:35 -05:00
Michael Larabel
76f13e29e5 pts-core: Port over pass fail graph to phx-graph codebase 2015-09-19 12:32:59 -05:00
Michael Larabel
1a602c6b4a pts-core: Fix breakage of pass/fail type tests in result parser 2015-09-19 12:04:54 -05:00
Michael Larabel
23e93187ac phx-graph: Minor optimization to IQC graph 2015-09-19 11:35:00 -05:00
Michael Larabel
ad17aa6d52 phx-graph: Merge IQC image comparison graphs into new interfaces 2015-09-19 11:32:44 -05:00
Michael Larabel
57ba629867 phx-graph: More SVG compacting 2015-09-19 11:04:03 -05:00
Michael Larabel
6a21fc9bdc phx-graph: More SVG grouping optimizations 2015-09-19 10:53:28 -05:00
Jakub Maleszewski
bc7da46250 pts-core: BSD, OS X and Solaris support restored in cpu_usage sensor, obsolete class deleted 2015-09-19 13:05:09 +02:00
Jakub Maleszewski
e5ee7200bd pts-core: removed obsolete classes already ported to the new monitoring interface 2015-09-19 12:45:45 +02:00
Jakub Maleszewski
892913cea3 pts-core: CPU frequency sensor ported to the new monitoring interface 2015-09-19 12:43:48 +02:00
Jakub Maleszewski
545728bd60 pts-core: CPU fan speed sensor ported to the new monitoring interface 2015-09-19 11:57:45 +02:00
Jakub Maleszewski
948044a809 pts-core: support_check function moved to phodevi_sensor from its subclasses 2015-09-19 11:52:24 +02:00
Jakub Maleszewski
b7d0f8c648 pts-core: cpu_power sensor converted to the new monitoring interface 2015-09-19 11:45:16 +02:00
Michael Larabel
4f1ecf6e4f pts-core: Optimizations to handling of nodes in pts svg dom 2015-09-18 15:13:44 -05:00
Michael Larabel
fbb7386a30 phx-graph: More space optimizations 2015-09-18 15:05:33 -05:00
Michael Larabel
4fc35f0304 pts-core: More SVG work 2015-09-18 14:50:17 -05:00
Michael Larabel
0297d70ea2 phx-graph: More G work 2015-09-18 14:25:38 -05:00
Michael Larabel
7be51e615f pts-core: Add support for emitting SVG files with g tag to save space 2015-09-18 14:15:41 -05:00
Michael Larabel
8aa6273250 phx-graph: Fixes 2015-09-18 13:12:51 -05:00
Michael Larabel
2ee7deefb3 Merge pull request #88 from xorgy/align-pts-graph-strokes
Align phx_graph strokes with the pixel grid.
2015-09-17 21:15:22 -05:00
Aaron Hamilton
d4eaee2c3d Align phx_graph strokes with the pixel grid. 2015-09-18 01:35:11 +00:00
Michael Larabel
0430d89ee4 phx-graph: More cleaning up work 2015-09-17 10:35:50 -05:00
Michael Larabel
7992908b9d phx_graph: Get rid of true that was used when testing 2015-09-17 09:05:02 -05:00
Michael Larabel
47f617ef80 pts_Graph: Support coloring based on brand 2015-09-17 08:50:10 -05:00
Michael Larabel
ab1e967cf2 pts-core: Remove debug comment 2015-09-17 08:49:38 -05:00
Michael Larabel
61066a4e10 pts-core: More cleanup/fix 2015-09-16 17:19:45 -05:00
Michael Larabel
d6e1dbf8d5 phx_graph: Port over box plot graph 2015-09-16 16:48:02 -05:00
Michael Larabel
cfb534aa2b pts-core: Drop old/unused/deprecated code 2015-09-16 15:48:00 -05:00
Michael Larabel
f3143d1e50 pts-core: Fix graph alignment 2015-09-16 14:52:06 -05:00
Michael Larabel
19cadf6a62 Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-09-16 12:42:31 -05:00
Michael Larabel
0d0b19ed61 phx_graph: More cleaning up 2015-09-16 12:42:01 -05:00
Michael Larabel
1933ffa349 phx-graph: More work 2015-09-16 12:31:54 -05:00
Michael Larabel
483b08e584 pts-core: Fixes 2015-09-16 11:11:30 -05:00
Michael Larabel
067c9e2995 Merge pull request #87 from xorgy/align-pts-graph-image-transform
Align logo to pixel grid in pts_Graph as well.
2015-09-16 10:10:36 -05:00
Aaron Hamilton
89dae4f137 Align logo to pixel grid in pts_Graph as well. 2015-09-16 15:09:29 +00:00
Michael Larabel
859da61732 Merge pull request #86 from xorgy/align-image-transform
ceil() calculated translation values to align them to whole pixels
2015-09-16 09:56:57 -05:00
Aaron Hamilton
a2c514c4e3 ceil() calculated x and y translation values to align them to whole pixels for better rasterization. 2015-09-16 14:53:17 +00:00
Michael Larabel
55246e453a More phx_graph work 2015-09-16 09:51:59 -05:00
Michael Larabel
2702958233 pts-core: Typo fixes 2015-09-16 09:29:17 -05:00
Michael Larabel
9e226552cb pts-core: Avoid duplicate systems in results 2015-09-16 09:23:20 -05:00
Michael Larabel
e469794c89 pts-core: Avoid duplicate result identifier/values in results 2015-09-16 09:21:03 -05:00
Michael Larabel
b986bccd46 pts_Graph: The meta http_link attribute doesn't work on raw path 2015-09-16 08:57:58 -05:00
Michael Larabel
b430d883c6 pts_Graph: Switch to small SVG version of pts logo thanks to xorgy 2015-09-16 08:53:14 -05:00
Jakub Maleszewski
ded8b0e28d pts-core: updated some system_monitor comments, function name changed in phodevi_sensor 2015-09-15 22:53:12 +02:00
Jakub Maleszewski
d3f457ba4b pts-core: fixed "all" suffix support in system_monitor 2015-09-15 22:20:54 +02:00
Jakub Maleszewski
00251658b2 pts-core: removed unnecessary MONITOR_PARAM_FILE environmental variable from system_monitor 2015-09-15 21:38:26 +02:00
Michael Larabel
7110810bbc phx-graph: More work on the new pts_Graph 2015-09-15 13:14:31 -05:00
Michael Larabel
7cf8ba5dc7 pts-core: More work on the new phx_graph code 2015-09-14 15:06:47 -05:00
Michael Larabel
4df0f25898 Fork pts_Graph into phx_graph to begin work on new graphing interface 2015-09-14 11:07:07 -05:00
Jakub Maleszewski
59767a93fe pts-core: following YAGNI principle removed JSON configuration support from sensor monitoring module. Sensors can now take a single parameter. Fixed some system-sensors bugs. 2015-09-14 12:53:21 +02:00
Michael Larabel
f80adcb8a0 pts-core: Don't pre-set gcc as CC if CC is set 2015-09-10 21:05:09 -05:00
Jakub Maleszewski
e163437c8c pts-core: some work on showing more information in 'system-sensors' 2015-09-10 23:54:44 +02:00
Michael Larabel
69824dc939 pts-core: Warning fix 2015-09-09 19:50:46 -05:00
Michael Larabel
4f596f7b8f pts-core: Fix if test doesn't end up starting up due to lock 2015-09-09 17:05:00 -05:00
Michael Larabel
e6af7a2675 pts-core: Get rid of multi_way_compact 2015-09-09 14:07:58 -05:00
Michael Larabel
8e6aa772c4 pts-core: Fix saving system-logs 2015-09-09 10:56:33 -05:00
Jakub Maleszewski
875820aa78 pts-core: renamed cpu.usage-per-core sensor to cpu.usage 2015-09-08 23:07:36 +02:00
Jakub Maleszewski
e61f1b7400 pts-core: implemented Linux part of memory.usage sensor, fixed some bugs 2015-09-08 22:31:42 +02:00
Jakub Maleszewski
3ff2a9690f pts-core: restored ability to parse comma-separated sensor list passed in MONITOR variable 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
1536d5356c pts-core: compatibility fix in system_monitor for PHP 5.3 users 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
b9e055b4ec pts-core: system_monitor refactoring and fixes, part two 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
7d4058d90c pts-core: phodevi's functions working on sensor objects now take references instead of vaules 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
2655819be6 pts-core: significant system_monitor module refactoring and fixes, part one 2015-09-08 21:19:33 +02:00
Jakub Maleszewski
c476f28dd8 pts-core: made static variables private in system_monitor. Cgroup name is now stored in a variable. 2015-09-08 21:19:05 +02:00
Jakub Maleszewski
07823c37a0 Merge remote-tracking branch 'upstream/master' 2015-09-08 21:12:34 +02:00
Michael Larabel
d10a3e736f pts_Graph: Will get rid of lots of empties in the result table 2015-09-08 12:27:34 -05:00
Michael Larabel
78a8f8fe26 pts-core: Fix secondary results merging 2015-09-08 11:00:15 -05:00
Michael Larabel
06d672b969 pts-core: Silly fixes 2015-09-08 10:20:33 -05:00
Ryan S. Kingsbury
309e66c4fb fix directory instructions 2015-09-06 18:02:23 -04:00
Ryan S. Kingsbury
7b7e330d20 Add Windows and general troubleshooting notes to docs 2015-09-06 17:59:59 -04:00
Ryan S. Kingsbury
751ae49d7d Expand PHP search paths on Windows 2015-09-06 17:59:36 -04:00
Ryan S. Kingsbury
2003299875 Fix typo in Facebook HipHop section 2015-09-06 11:49:45 -04:00
Michael Larabel
53932a23f4 pts-core: Just mention PHP 5.3 as the new base requirement. Code still should largely work with PHP 5.2, but don't advertise it 2015-09-05 10:19:22 -05:00
Michael Larabel
08a02584ff pts-core: Typo for previous commit 2015-09-05 07:50:13 -05:00
Michael Larabel
7232b549a1 pts-core: Fix for secondary results 2015-09-05 07:46:44 -05:00
Michael Larabel
c79cd9a341 pts-core: One more fix 2015-09-04 13:02:25 -05:00
Michael Larabel
2f799644cd pts-core: Missed that line 2015-09-04 12:58:24 -05:00
Michael Larabel
4cf4978f6f pts-core: Rename emalloc line 2015-09-04 12:56:55 -05:00
Michael Larabel
b9f4cb393e pts-core: Another fix for recent restructuring 2015-09-04 12:54:56 -05:00
Michael Larabel
ffdc063cbc pts-core: Fixes 2015-09-04 12:50:53 -05:00
Michael Larabel
65b09adf6e pts-core: Add some extras to debug-self-test 2015-09-04 11:59:07 -05:00
Jakub Maleszewski
82a3224ccf Post-merge fixes. 2015-09-04 12:42:35 +02:00
Jakub Maleszewski
6f08299562 Merge cgroups
Conflicts:
	pts-core/modules/system_monitor.php
2015-09-04 12:21:36 +02:00
Jakub Maleszewski
e9ef328b49 Root access script fixes (now it uses /bin/echo). 2015-09-04 11:48:57 +02:00
Michael Larabel
53fb5570ee phoromatic: More stuff 2015-09-03 21:03:17 -05:00
Michael Larabel
d72aa3625f phoromatic: Add "Tests" page 2015-09-03 17:25:49 -05:00
Michael Larabel
7f233b2d9f phoromatic: No need to update that system info so often 2015-09-03 16:36:12 -05:00
Michael Larabel
b2f76bf424 phoromatic: Fixes 2015-09-03 15:09:40 -05:00
Michael Larabel
c22702e591 pts-core: More restructuring 2015-09-03 14:11:24 -05:00
Jakub Maleszewski
76528582ba Fixed backslash escapes not being interpreted in root access wrapper. 2015-09-03 21:07:18 +02:00
Michael Larabel
34b2463350 pts-core: Get rid of test_result_parser_writer 2015-09-03 13:21:21 -05:00
Michael Larabel
65437851f8 pts-core: Get rid of another unused class 2015-09-03 13:14:01 -05:00
Michael Larabel
f8c9cdf013 pts-core: Latest round of mega rework, restructuring, and cleaning 2015-09-03 13:02:42 -05:00
Michael Larabel
d3e7a4d1a5 pts-core: Fixes for reordering 2015-09-03 09:33:30 -05:00
Michael Larabel
274c12a65c pts-core: Next part of the big rework! So far no apparent regressions aside from still needing to implement attributes 2015-09-03 08:24:48 -05:00
Jakub Maleszewski
a12089475b Cgroups are now automatically created by PTS. 2015-09-03 13:46:51 +02:00
Michael Larabel
a8ad8334f4 pts-core: MASSIVE REWORK of handling of test result generation through result_manager 2015-09-02 21:24:57 -05:00
Jakub Maleszewski
fe8240cbbe Basic cgroup-based CPU monitoring implemented. 2015-09-02 23:56:29 +02:00
Michael Larabel
c432861f31 pts-core: More refactoring 2015-09-02 16:14:55 -05:00
Michael Larabel
e80b48f74f pts-core: Update merge-results 2015-09-02 15:43:47 -05:00
Michael Larabel
ea4550fb01 pts-core: Update extract-from-result-file to new API 2015-09-02 15:20:59 -05:00
Michael Larabel
ca4d333056 pts-core: Drop copy-run-in-result-file, update edit-result-file for new API 2015-09-02 15:11:12 -05:00
Michael Larabel
0f85d39ac9 pts-core: Port auto-sort-result-file to new API 2015-09-02 14:57:19 -05:00
Michael Larabel
c83672bf20 pts-core: Rework reorder-result-file to use new APIs 2015-09-02 14:49:04 -05:00
Michael Larabel
8b540a428f pts-core: Make use of new APIs for remove-from-result-file 2015-09-02 14:02:38 -05:00
Michael Larabel
4cfe873dac pts-core: Some cleaning to pts_result_file 2015-09-02 12:10:58 -05:00
Michael Larabel
ca321c594f pts-core: Fix for accessing result file from radar overview 2015-09-02 10:50:16 -05:00
Michael Larabel
3124472ff5 pts-core: HHVM no longer seems to have problems with create comment 2015-09-02 10:35:11 -05:00
Michael Larabel
732c150321 pts_Graph: Drop the codename in comment to save bit of space 2015-09-02 10:29:12 -05:00
Michael Larabel
b8e7817a8b pts_Graph: Don't embed the PNG logo directly into the SVG file, but rely on HTTPS link 2015-09-02 10:16:01 -05:00
Michael Larabel
3eb475733d pts-core: Do test execution with proc_open(), allow modules to tap the process 2015-09-02 09:53:00 -05:00
Michael Larabel
e27f2cd4f5 pts-core: Fix local graph rendering in some instances of the graphs not saving 2015-09-02 09:50:23 -05:00
Jakub Maleszewski
7cb188c075 Applied Michael Larabel's patch allowing obtainment of benchmark script's PID. 2015-09-02 10:24:41 +02:00
Michael Larabel
28e4024346 pts-core: Change raw_xml 2015-09-01 20:30:23 -05:00
Michael Larabel
e8131f8f6e pts-core: Updates 2015-09-01 17:42:16 -05:00
Jakub Maleszewski
df0ab2c3a7 Added ability to show sensor monitoring results on chart per test try.
Also deleted some "sleeps" (or made them shorter) to improve chart accuracy.
2015-09-02 00:22:24 +02:00
Michael Larabel
4e9dd6093f pts-core: Start on a new, faster result merger 2015-09-01 17:01:29 -05:00
Michael Larabel
0dd9037d7c pts-core: Add rename support into result file and result buffer itself 2015-09-01 16:49:07 -05:00
Michael Larabel
a0fca3a7ce pts-core: Add memory usage to debug-render-test 2015-09-01 16:31:00 -05:00
Michael Larabel
fc076ca6f1 pts-core: Dump the debug-render-test results 2015-09-01 16:29:42 -05:00
Michael Larabel
296fa8120e pts-core: Should have been part of last commit 2015-09-01 15:58:10 -05:00
Michael Larabel
f4de8dbaaa pts-core: Clean things up here 2015-09-01 15:57:49 -05:00
Michael Larabel
7542d5e9ce pts-core: Immediately parse the XML for pts_result_file 2015-09-01 15:50:39 -05:00
Michael Larabel
8285b21d17 pts-core: Add basic caching to the pts_result_file 2015-09-01 15:07:15 -05:00
Michael Larabel
a0d18794ba pts-core: Fix for previous commit 2015-09-01 14:53:27 -05:00
Michael Larabel
abcf66fded pts-core: More result file clean-ups 2015-09-01 14:52:25 -05:00
Michael Larabel
190131429f pts-core: Rework handling of system data in result files 2015-09-01 14:40:57 -05:00
Michael Larabel
6e5a42759f pts-core: Should be all safe cleanups 2015-09-01 13:21:07 -05:00
Jakub Maleszewski
bac1b88951 Code reformat. 2015-09-01 14:32:23 +02:00
Jakub Maleszewski
de378032de Memory usage sensor added to sensors-new. 2015-09-01 13:14:10 +02:00
Jakub Maleszewski
f7cc4be402 Parameter correctness checking added to system monitor.
Minor bugfixes.
2015-09-01 13:06:43 +02:00
Jakub Maleszewski
84f6e8e1a3 System-sensors command fixed. 2015-09-01 13:01:00 +02:00
Michael Larabel
505b4071af Revert "pts-core: Some memory optimizations"
This reverts commit 6d15fcc721.
2015-08-31 18:43:18 -05:00
Michael Larabel
1b94484a5a Revert "ppts-core: another add"
This reverts commit 9f67da01bd.
2015-08-31 18:43:03 -05:00
Michael Larabel
9f67da01bd ppts-core: another add 2015-08-31 18:36:10 -05:00
Michael Larabel
6d15fcc721 pts-core: Some memory optimizations 2015-08-31 18:33:50 -05:00
Michael Larabel
3703a1636a Merge pull request #81 from StuntsPT/master
Added support for https in test-profile definitions URLs.
2015-08-31 18:31:24 -05:00
Francisco Pina Martins
2041283b29 Added support for https in test-profile definitions URLs. 2015-09-01 00:08:19 +01:00
Michael Larabel
570acd1ae1 pts-core: Fix for export public viewer in Phoromatic 2015-08-31 17:36:12 -05:00
Michael Larabel
a1a8d6beb2 pts-core: More opt work 2015-08-31 14:49:16 -05:00
Michael Larabel
f281a47a3b pts-core: Decode the JSON later in result buffer item 2015-08-31 13:08:37 -05:00
Michael Larabel
f66ddc072c pts-core: Pass it through 2015-08-31 12:57:01 -05:00
Michael Larabel
63e0277f7d pts-core: Fixes 2015-08-31 12:43:18 -05:00
Michael Larabel
9b33ee556a pts-core: Fix pass by ref 2015-08-31 12:24:48 -05:00
Michael Larabel
afa5dcd193 pts-core: More 2015-08-31 12:23:59 -05:00
Michael Larabel
7833413e65 pts-core: Continuing opt work 2015-08-31 12:14:20 -05:00
Michael Larabel
bdc2613613 pts-core: See if can always do a non-normal init from the ptes_result_file parser 2015-08-31 11:37:59 -05:00
Michael Larabel
923bc85ebe pts-core: Possible pts_test_profile_parser optimizations 2015-08-31 11:33:05 -05:00
Michael Larabel
05ebc7d1bc Add debug-render-test for helping to optimize the graph/result rendering process 2015-08-31 11:00:22 -05:00
Jakub Maleszewski
5ec87112cc Sensors are now monitored in separate processes.
When monitoring multiple sensors which need some time to be read (like CPU usage, where it's about a second) polling frequency might become much lower than set by MONITOR_INTERVAL environment variable. Reading their values in parallel (instead of one by one) makes the problem less noticeable.
Changes in system_monitor entailed modifications in pts_timed_function and pts_fork_function (parameters can now be passed to the called function).
2015-08-30 19:50:28 +02:00
Michael Larabel
d7d1528412 phodevi: AMDGPU Linux detection improvements 2015-08-30 09:27:10 -05:00
Michael Larabel
becf3cd9ed pts-core: Add FileFormat to the parser writer 2015-08-29 17:37:13 -05:00
Michael Larabel
3838aa2565 pts-core: Add FileFormat optional tag to result parser with CSV support 2015-08-29 14:50:46 -05:00
Jakub Maleszewski
c4df437840 Implemented basic functionality of parametrized sensor monitoring (in CLI, no Phoromatic support yet).
- system_monitor: sensors are now stored as objects, results are logged separately for each of them
- system_monitor: monitoring parameters are now read from JSON file; path has to be specified in MONITOR_PARAM_FILE
environment variable
- phodevi_sensor: it is now an abstract class with some functions implemented
- phodevi_sensor: objects of its subclasses should now store their instance number (for identification)
- phodevi_sensor: get_readable_params() function added for getting instance-specific parameters in human-readable, easy to
understand form (for example in "Sensors To Be Logged:")
- cpu_usage_per_core: the first sensor supporting system monitor changes; allows per-core and total CPU usage monitoring
- phodevi: added helper sensor parameter reading fuctions taking sensor object as a parameter instead of array with sensor
name and type
- phodevi: updated read_sensor function to make it work on phodevi_sensor objects
- phodevi: until transition is finished, updated sensors are stored in "sensors-new" subdirectory
2015-08-28 05:04:23 +02:00
Michael Larabel
a2e41e5cec 6.0m1 documentation update 2015-08-26 20:19:48 -05:00
Michael Larabel
1a5ec4bab1 Phoronix Test Suite 6.0 Milestone 1 2015-08-26 20:19:01 -05:00
Michael Larabel
8ec2cc189b pts-core: Fix bash completion 2015-08-25 17:55:25 -05:00
Michael Larabel
a802571353 pts-core: WebSocket fixes 2015-08-22 07:47:06 -05:00
Michael Larabel
7e6cf58a1e Merge pull request #76 from NickZ/master
Socket_select timeout and forking issues fixed
2015-08-22 07:45:57 -05:00
Nicholas Zatkovich
53ea8d57ac Fixed a few forking issues.
#1: pts_web_socket failed to kill its child processes after they finished processing data, so it effectively became a Fork bomb.
#2: SIDCHLD wasn't being caught from dead child processes, so they became zombies. Installing a SIGCHLD handler fixed this.
#3: a child process using the "exit(0)" function instead of the process being killed resulted in all the current child processes being zombified. Replaced that with posix_kill-ing itself.
2015-08-21 21:33:18 -07:00
Nicholas Zatkovich
cc6e7dcefb Changed socket_select timeout from '0' to 'null'
remember this bug? If you put 0 for the timeout value of socket_select, it just keeps spinning in place and chews up the cpu. Setting it to 'null' makes it block instead, and boosts performance.
2015-08-21 17:14:37 -07:00
Nicholas Zatkovich
fed8b63258 Merge remote-tracking branch 'upstream/master' 2015-08-21 15:40:48 -07:00
Michael Larabel
9f3855df61 phodevi: Add BcacheFS superblock 2015-08-21 11:03:27 -05:00
Michael Larabel
9c811bded1 phoronix-test-suite: Helper updates 2015-08-21 11:02:21 -05:00
Michael Larabel
e11b9faa07 system_monitor: Support reporting a meta/overall performance-per-Watt result at end of result file when activated 2015-08-20 18:37:02 -05:00
Michael Larabel
2c1ff71aa3 perf_per_dollar: Make easy performance-per-dollar benchmarks 2015-08-20 11:09:56 -05:00
Michael Larabel
8d26c39037 pts-core: Fixes for test profile validation following recent restructuring 2015-08-19 10:18:18 -05:00
Michael Larabel
cc43f12ab6 pts_Graph: Support reporting a min result on graphs when there is no max value to be reported 2015-08-17 17:03:53 -05:00
Michael Larabel
c530590922 pts-core: Bad keyboard 2015-08-17 16:56:10 -05:00
Michael Larabel
5109dabd47 pts-core: Another fix from recent XG work 2015-08-17 16:55:45 -05:00
Michael Larabel
a0ec388f1c pts-core: API fix 2015-08-17 16:55:10 -05:00
Michael Larabel
eb24e07602 pts-core: Don't report vars that are statically set 2015-08-17 15:08:01 -05:00
Michael Larabel
af8fca7503 pts-core: Unconditionally always ensure __GL_SYNC_TO_VBLANK=0 2015-08-17 15:06:05 -05:00
Michael Larabel
a12b9b4e7c toggle_screensaver: GNOME 3 update 2015-08-17 11:05:56 -05:00
Michael Larabel
7edb910c35 pts-core: Addd /DRAM 2015-08-15 11:15:07 -05:00
Michael Larabel
378e1438f1 pts-core: Minor optimization in analyzer 2015-08-14 18:17:30 -05:00
Michael Larabel
5310e8889a pts-core: Should have bumped for 6.0-HAMMERFEST devel earlier, but do it now 2015-08-14 15:13:29 -05:00
Michael Larabel
e254c1a6f5 pts-core: More pts_test_profile_parser tweaks 2015-08-14 15:09:52 -05:00
Michael Larabel
dc88345069 pts-core: Fix 2015-08-14 14:40:22 -05:00
Michael Larabel
e19504328e pts-core: Allow bypassing normal init on test profile parser 2015-08-14 14:36:38 -05:00
Michael Larabel
7ac0cdffc1 pts-core: Drop the __clone on profile parser 2015-08-14 13:45:03 -05:00
Michael Larabel
66b1474564 pts-core: Regression fixes 2015-08-14 13:41:41 -05:00
Michael Larabel
419c77f2d1 pts-core: Fixes 2015-08-14 13:39:27 -05:00
Michael Larabel
47ad3e82b0 pts-core: Fixes 2015-08-14 13:35:34 -05:00
Michael Larabel
755646ff19 pts-core: Minor result file optimization 2015-08-14 13:19:10 -05:00
Michael Larabel
37ab81a488 pts-core: Fix for previous commit 2015-08-14 13:15:30 -05:00
Michael Larabel
2834582dff pts-core: Add new test profile parsing back-end 2015-08-14 13:13:22 -05:00
Michael Larabel
5ab9ff4669 phoromatic: Fixes 2015-08-14 10:00:06 -05:00
Michael Larabel
2ff04c4b19 pts-core: Show estimated date/time next to estimated duration left on tests 2015-07-27 13:05:18 -05:00
Michael Larabel
b8af975c3d phoromatic: Go between 60 and 90 seconds for tick thread cycle 2015-07-17 16:37:28 -05:00
Michael Larabel
365318b91e Merge branch 'master' of github.com:phoronix-test-suite/phoronix-test-suite 2015-07-12 13:11:14 -05:00
Michael Larabel
b20c159f1f pts-core: Support /usr/lib/os-release for stateless systems 2015-07-12 13:10:52 -05:00
Michael Larabel
ddcbdc77fb Merge pull request #74 from abartol/master
Fixes dead link when clicking on: "Systems Page" link when not runnin…
2015-07-09 13:35:58 -05:00
abartol
893e1909e9 Fixes dead link when clicking on: "Systems Page" link when not running on localhost 2015-07-09 14:30:30 -04:00
Michael Larabel
96c3ae5565 pts-core: Few render optimizations 2015-07-01 11:31:56 -05:00
Michael Larabel
327c096682 phoromatic: Set the pts_results_area in public viewer 2015-06-29 15:11:44 -05:00
Michael Larabel
e6fbee9e42 phoromatic: Improvements when server addressing setup fails 2015-06-24 10:01:50 -05:00
Michael Larabel
a3a5633c73 Prep Phoronix Test Suite 5.8.1 2015-06-23 09:28:42 -05:00
Michael Larabel
3de6d52325 Merge pull request #72 from achernet/superlu-dependency-fix
Fix SuperLU missing dependency issues on Fedora
2015-06-21 07:44:37 -05:00
Alex Chernetz
540975a5a0 Fix SuperLU missing dependency issues on Fedora
libsuperlu3 is the Debian package name, it should be SuperLU-devel, but
I made it lower case in order to better match the file's conventions.
2015-06-21 04:13:37 -07:00
Michael Larabel
1cf19ce6fd phoromatic: Sort systems on main page 2015-06-20 19:16:54 -05:00
Michael Larabel
71a0ebbedf pts-core: Don't report which errors on launcher 2015-06-17 18:30:41 -05:00
Michael Larabel
3023c91df2 pts-core: Other changes 2015-06-16 10:45:05 -05:00
Michael Larabel
bfff4b08d5 pts-core: Fix batch-setup and other commands using override values 2015-06-16 10:44:21 -05:00
Michael Larabel
9285d8f342 phoromatic: Various fixes 2015-06-13 17:45:41 -05:00
Michael Larabel
87e438750d phoromatic: Set 'force_tracking_line_graph' on tracker page 2015-06-10 14:05:38 -05:00
Michael Larabel
850b65fcd4 phoromatic: Append URL in public viewer link for extra flags 2015-06-10 14:03:34 -05:00
Michael Larabel
b65b4e79be phoromatic: Result tracker detection improvements 2015-06-10 13:58:52 -05:00
Michael Larabel
2483d29b72 phoromatic: Fix closing bracket 2015-06-10 13:15:43 -05:00
Michael Larabel
3d49299ca5 phoromatic: Enhancements to the main page 2015-06-10 12:52:10 -05:00
Michael Larabel
46e9ac3c93 phoromatic: Main page reporting tweaks 2015-06-10 12:35:57 -05:00
Michael Larabel
80020ef97e phoromatic: Version locking option 2015-06-10 12:02:47 -05:00
Michael Larabel
c6d9399856 phoromatic: Allow basic sub-targeting as part of test schedule trigger URLs 2015-06-10 11:24:52 -05:00
Michael Larabel
dfde34c776 pts-core: Add force_tracking_line_graph option 2015-06-10 11:04:55 -05:00
Michael Larabel
5901e664a9 pts-core: Fix result file validation against XML schema 2015-06-10 10:21:17 -05:00
Michael Larabel
404a8af886 pts-core: Warning fix in make-openbenchmarking-cache 2015-06-10 09:47:02 -05:00
Michael Larabel
e2f35c6f0d pts-core: Don't show /boot/efi in auto-disk-mount-points 2015-06-09 20:51:03 -05:00
Michael Larabel
3c31134e17 pts-core: Change blas-development detection to libblas.so 2015-06-09 12:08:35 -05:00
Michael Larabel
85052a3e7e pts-core: Add another TTF font found on Fedora 22 Server 2015-06-09 10:51:12 -05:00
Michael Larabel
8e0ab94813 phoromatic: Pass attributes 2015-06-09 10:47:50 -05:00
Michael Larabel
df3ee07729 phoromatic: Play with SVG width 2015-06-09 10:42:35 -05:00
Michael Larabel
fe8884506e phoromatic: Pass extra attributes during PDF generation to allow for PDF sorting, etc 2015-06-09 10:41:25 -05:00
Michael Larabel
ff700ff4c7 phoromatic: No wrapping on benchmark page of checkboxes 2015-06-08 19:23:50 -05:00
Michael Larabel
c977238115 phoromatic: Fix in previous commit 2015-06-05 14:43:11 -05:00
Michael Larabel
3afe8da5a0 phoromatic: Add button to schedules page to allow skipping current trigger 2015-06-05 14:41:14 -05:00
Michael Larabel
9bb99e691d installer: Fix for missing xdg-mime and xdg-icon-resource 2015-06-05 08:23:02 -05:00
Michael Larabel
e7e5a1e5d9 Phoronix Test Suite 5.8.0 2015-06-04 15:21:49 -05:00
Michael Larabel
35baecb3b8 phoromatic: Last minute tweaks 2015-06-04 13:39:28 -05:00
Michael Larabel
b20bf0ddc5 Bump again, almost ready..,. 2015-06-04 12:28:07 -05:00
Michael Larabel
8ff4eb8536 pts-core: Fix for reading multiple dependency names 2015-06-04 12:15:15 -05:00
Michael Larabel
9cdf6b1874 pts-core: Add attr as an external dependency 2015-06-04 12:05:39 -05:00
Michael Larabel
4d12ddba96 phoromatic: Additional validation on result uploads 2015-06-04 10:32:27 -05:00
Michael Larabel
fc521eff35 pts-core: Automatically re-install tests if compiler flag environment variables change 2015-06-04 10:23:29 -05:00
Michael Larabel
5c192fcee6 Start getting ready for 5.8-Belev 2015-06-03 20:14:14 -05:00
Michael Larabel
9c628426ad phoromatic: Small results viewer improvements 2015-06-03 20:13:49 -05:00
Michael Larabel
09e3b9b005 phoromatic: Client update script every 20 minutes 2015-06-03 18:44:56 -05:00
Michael Larabel
b47b06b8d0 phoromatic: Updates 2015-06-03 18:42:51 -05:00
Michael Larabel
df9be063f2 phoromatic: Refresh OB repository lists prior to benchmarks 2015-06-03 18:40:55 -05:00
Michael Larabel
b531e36b6d phoromatic: Track core version of clients in database 2015-06-03 12:38:38 -05:00
Michael Larabel
0a14668df8 pts-core: Don't needlessly write out config file each time if nothing relevant has changed 2015-06-03 12:30:28 -05:00
Michael Larabel
ce91b466b1 phoromatic: Tweak 2015-06-03 11:49:47 -05:00
Michael Larabel
769683c183 phoromatic: Fix on commit too 2015-06-03 11:48:26 -05:00
Michael Larabel
09489ac54f phoromatic: Fix updater when \r only 2015-06-03 11:45:52 -05:00
Michael Larabel
ede9b430b8 phoromatic: Allow OB uploads on more than standalone results 2015-06-03 09:58:19 -05:00
Michael Larabel
0311405892 phoromatic: Typo in previous commit 2015-06-03 09:45:05 -05:00
Michael Larabel
da8c868247 phoromatic: Don't clash names on ticket runs 2015-06-03 09:43:45 -05:00
Michael Larabel
a80cc38d31 phoromatic: Add global checkbox to key pages 2015-06-03 09:34:33 -05:00
Michael Larabel
8b280457f3 phoromatic: Add checkboxes to benchmark page 2015-06-03 09:19:55 -05:00
Michael Larabel
3082df135c pts-core: Add invalid command helper to finish-run 2015-06-02 09:24:43 -05:00
Michael Larabel
417122edce phodevi: Some basic hardware reporting improvements that help the MIPS Creator CI20 2015-06-01 17:32:02 -05:00
Michael Larabel
ea6304afc9 phoromatic: Fix what was overlooked 2015-06-01 17:20:21 -05:00
Michael Larabel
517900be99 phoromatic: Fix on odd systems 2015-06-01 17:19:12 -05:00
Michael Larabel
f09bca90c7 Phoronix Test Suite 6.x codenames 2015-05-31 20:52:03 -05:00
Michael Larabel
25372703cb TODO updates 2015-05-31 19:13:36 -05:00
Michael Larabel
d881c8ed73 phoromatic: Be safer when calling fetchArray() 2015-05-30 09:29:32 -05:00
Michael Larabel
49b7802a00 pts-core: Another step to try to ensure /etc/phoronix-test-suite.xml doesn't get messed up 2015-05-30 09:15:31 -05:00
Michael Larabel
d42633c44a ChangeLog: update 2015-05-29 09:30:52 -05:00
Michael Larabel
8a6275295c phoromatic: Try rebooting system if communication fails 10+ times 2015-05-29 09:30:00 -05:00
Michael Larabel
86cc320f4b pts-core: Try change in PTS_IS_DAEMONIZED_SERVER_PROCESS 2015-05-29 09:27:32 -05:00
Michael Larabel
a28fc90efe Phoronix Test Suite 5.8 Milestone 5 2015-05-28 20:26:44 -05:00
Michael Larabel
27033a5192 phoromatic: Report benchmark result total on main page 2015-05-26 12:29:05 -05:00
Michael Larabel
93dabe6b7b phoromatic: Rebuild docs 2015-05-26 11:04:55 -05:00
Michael Larabel
e3730e423b phoromatic: Change shell_exec on update_script 2015-05-26 11:03:34 -05:00
Michael Larabel
a224760c6f phoromatic: Add "All Results" option on the export viewer 2015-05-25 16:50:43 -05:00
Michael Larabel
0ed5f440f1 phoromatic: More export viewer work 2015-05-25 15:01:39 -05:00
Michael Larabel
65d6dc457e phoromatic: Add the Phoromatic Export Viewer 2015-05-25 14:45:52 -05:00
Michael Larabel
9edbc87f01 phoromatic: Index change on export 2015-05-25 13:22:34 -05:00
Michael Larabel
b2d61b843b phoromatic: Add phoromatic.export-results-for-account-schedules option 2015-05-25 12:50:48 -05:00
Michael Larabel
b63e475e3b phoromatic: Various improvements to Tracker 2015-05-25 10:52:29 -05:00
Michael Larabel
de2f726f71 phoromatic: Scale SVG result graphs to better page size 2015-05-25 10:00:31 -05:00
Michael Larabel
ed8fb8ecad phoromatic: Work on some changes to tracker 2015-05-25 09:45:06 -05:00
Michael Larabel
f626509133 phoromatic: More system page graph work 2015-05-23 13:20:06 -05:00
Michael Larabel
57ce669fe5 phoromatic: Add graphs to systems page 2015-05-23 13:18:09 -05:00
Michael Larabel
5c3baf99a3 pts-core: Caching for pts_openbenchmarking::read_repository_index() 2015-05-23 13:06:57 -05:00
Michael Larabel
acd2524c42 pts-core: Another small optimization 2015-05-23 12:59:34 -05:00
Michael Larabel
ac32ff5b7c pts-core: Some minor optimizations 2015-05-23 12:45:50 -05:00
Michael Larabel
41df9c86d5 pts-core: Fix check 2015-05-23 10:29:19 -05:00
Michael Larabel
a299626b7d phoromatic: Last of sys_graph tweaks for the moment 2015-05-23 10:28:12 -05:00
Michael Larabel
2e223cba2e phoromatic: More tweaks 2015-05-23 10:23:40 -05:00
Michael Larabel
2fb030888f phoromatic: Tweaks to dashboard graphs 2015-05-23 10:19:56 -05:00
Michael Larabel
d3720e9ea0 phoromatic: Show prominent sensors via the dashboard 2015-05-23 10:13:33 -05:00
Michael Larabel
ade60887c9 phoromatic: Log tick sensors into sensors-pool 2015-05-23 09:04:58 -05:00
Michael Larabel
a276b0a4d1 phoromatic: increase the busy timeout on SQLite 2015-05-22 22:33:13 -05:00
Michael Larabel
bc76bc65d4 pts-core: Another micro optimization 2015-05-22 22:17:51 -05:00
Michael Larabel
c7f2aadc4c pts-core: Avoid possible expensive query 2015-05-22 22:06:51 -05:00
Michael Larabel
a11937081f pts-core: Fix for warnings 2015-05-22 22:02:41 -05:00
Michael Larabel
f53271ddf3 pts-core: Return false in this OB func 2015-05-22 21:59:54 -05:00
Michael Larabel
cd934d9792 pts-core: Basic fixes 2015-05-22 21:56:40 -05:00
Michael Larabel
3b65a34d15 pts-core: Change various XML things 2015-05-22 21:52:35 -05:00
Michael Larabel
051cd7dbe4 pts-core: Fixes 2015-05-22 21:33:37 -05:00
Michael Larabel
87a1aa9761 pts-core: Some more XML changes 2015-05-22 21:28:44 -05:00
Michael Larabel
03fe4ab3dd pts-core: Further cleanup with simple XML 2015-05-22 21:26:57 -05:00
Michael Larabel
f69fd06c5c pts-core: SimpleXML fixes 2015-05-22 21:23:53 -05:00
Michael Larabel
31a0163fb8 phoromatic: Re-enable some extra stuff in tracker 2015-05-22 21:17:44 -05:00
Michael Larabel
5ed245ec29 pts-core: Rewrite of pts_result_file 2015-05-22 21:07:52 -05:00
Michael Larabel
66fc8c5eac pts-core: Fix notice from previous commit 2015-05-22 12:06:53 -05:00
Michael Larabel
531e811f2a pts-core: Add possible caching layer in pts_results_nye_XmlReader 2015-05-22 12:05:51 -05:00
Michael Larabel
a0b7b0186d phoromatic: Crash fix in the event server 2015-05-22 11:33:31 -05:00
Michael Larabel
87842c0e03 pts_Graph: force_simple_keys support in graph_key_height() 2015-05-22 09:40:57 -05:00
Michael Larabel
5b59b2d909 pts_Graph: Add force_simple_keys option 2015-05-22 09:37:39 -05:00
Michael Larabel
729b30b968 phoromatic: Graph render tweaks 2015-05-22 09:25:43 -05:00
Michael Larabel
88fa6654b2 phoromaitc: Footer improvements 2015-05-22 09:06:33 -05:00
Michael Larabel
fe8fbe1b98 phoromatic: Tweaks 2015-05-22 08:54:47 -05:00
Michael Larabel
8908704fed phoromatic: Tracker page tweaks 2015-05-22 08:32:32 -05:00
Michael Larabel
bf361b50f0 phoromatic: Reporting string tweaks 2015-05-22 08:23:38 -05:00
Michael Larabel
cdf6560782 pts-core: Fix for possible race condition with config file location handling 2015-05-22 08:20:01 -05:00
Michael Larabel
f52024568e phoromatic: Allow local stress run to have greater thread count than test count 2015-05-21 12:33:02 -05:00
Michael Larabel
45bad928c5 phoromatic: Another tweak 2015-05-20 12:02:19 -05:00
Michael Larabel
2ede099f1d phoromatic: Update maintenance table layout 2015-05-20 12:01:25 -05:00
Michael Larabel
c4e635158d Rebuild docs 2015-05-20 11:55:24 -05:00
Michael Larabel
ca4d4918bb Phoronix Test Suite 5.8 Milestone 4 2015-05-20 11:54:26 -05:00
Michael Larabel
98a7883739 phoromatic: Change interface of reporting sensor values 2015-05-20 11:53:01 -05:00
Michael Larabel
7dd67a89dc phoromatic: Update 2015-05-20 11:27:01 -05:00
Michael Larabel
2f4043dc72 phoromatic: Ensure sample hash is past state of feature add 2015-05-20 10:59:51 -05:00
Michael Larabel
ceabd81039 phoromatic: Add support for specifying custom client update script via account settings page to keep clients PTS updated 2015-05-20 10:57:55 -05:00
Michael Larabel
32634dad4d Improved open-source GPU frequency detection when X Server not active 2015-05-20 10:25:16 -05:00
Michael Larabel
c5d3cf29bd phodevi: Fix for Radeon GPU voltage reporting 2015-05-20 10:16:54 -05:00
Michael Larabel
7910383f83 phodevi: Report kernel's build date when detected it's running on a daily/devel/RC kernel 2015-05-20 09:45:02 -05:00
Michael Larabel
213c29d271 phoromatic: Fix for previous commit 2015-05-19 14:17:10 -05:00
Michael Larabel
7870f61b0a phoromatic: Fix for crash test_run_manager crash 2015-05-19 14:15:31 -05:00
Michael Larabel
2880169ddb phoromatic: Another damn SQLite fix 2015-05-16 21:35:13 -05:00
Michael Larabel
e359a362c0 phoromatic: Fix 2015-05-16 21:34:29 -05:00
Michael Larabel
068cbbdcf9 phoromatic: Fix 2015-05-16 21:31:40 -05:00
Michael Larabel
9ee07e85a9 phoromatic: More SQLite fixes 2015-05-16 21:30:25 -05:00
Michael Larabel
473eca3600 phoromatic: Fix 2015-05-16 21:20:31 -05:00
Michael Larabel
e00f64c807 phoromatic: Another SQLite fix 2015-05-16 21:19:43 -05:00
Michael Larabel
d7c3a8c81e phoromatic: Another SQLite crash fix 2015-05-16 21:17:06 -05:00
Michael Larabel
50ecd84573 phoromatic: Fix 2015-05-16 21:11:29 -05:00
Michael Larabel
5f58fdc896 phoromatic: Various changes 2015-05-14 18:31:55 -05:00
Michael Larabel
e6c8d9f546 pts-core: Support for using DNF directly when available on Fedora 2015-05-12 18:39:40 -05:00
Michael Larabel
e9a07525de Phoronix Test Suite 5.8 Milestone 3 2015-05-12 15:43:24 -05:00
Michael Larabel
aed687de07 phoromatic: Don't show flagged results for the moment on the main page 2015-05-12 15:40:04 -05:00
Michael Larabel
632cb7c710 Version bump, will release M3 later today 2015-05-12 13:44:27 -05:00
Michael Larabel
1f719b1b76 phoromatic: Add support for real-time halt testing and rebooting from the Phoromatic Web UI 2015-05-12 13:40:06 -05:00
Michael Larabel
0442637fc0 phoromatic: Support for reporting system sensors and client log to systems page 2015-05-12 13:11:47 -05:00
Michael Larabel
e9d1062fac phoromatic: Tick fixes 2015-05-12 12:54:57 -05:00
Michael Larabel
d324637ba2 phoromatic: Fix for previous commit 2015-05-12 12:02:13 -05:00
Michael Larabel
7415aea898 phoromatic: Start working on tick thread 2015-05-12 11:58:41 -05:00
Michael Larabel
8c173f4fbe phoromatic: Initial support for the Mongoose Embedded Web Server, used by default if php-cgi and mongoose binaries are found in PATH 2015-05-12 10:35:39 -05:00
Michael Larabel
dab343f9b5 phoromatic: Add start of WS communication backend 2015-05-12 10:20:36 -05:00
Michael Larabel
b5905625e3 phoromatic: Lots of early Web Sockets work 2015-05-12 10:10:13 -05:00
Michael Larabel
41e422ecc9 phoromatic: Tweak available_tests() call to OB on build suite page 2015-05-11 12:15:53 -05:00
Michael Larabel
bfdb7c58e4 phoromatic: Add $dc to build_suite page 2015-05-11 11:12:22 -05:00
Michael Larabel
d9afc0d44a pts-core: Restructure phoromatic objects 2015-05-10 22:36:00 -05:00
Michael Larabel
ece7eddcfe Initial commit of WIP pts_web_socket_server_phoromatic 2015-05-10 17:38:13 -05:00
Michael Larabel
63587835a3 pts-core: Separate out WebSocket server back-ends 2015-05-10 15:48:24 -05:00
Michael Larabel
1e9796928e phoromatic: Set Phoromatic System Variables set by server on Phoromatic clients as env vars 2015-05-09 19:48:10 -05:00
Michael Larabel
d99a94d647 phoromatic: Don't print network connectivity messages 2015-05-08 16:48:33 -05:00
Michael Larabel
335b7ef931 phoromatic: Honor show_local_tests_only option via the build suite page 2015-05-08 14:05:39 -05:00
Michael Larabel
cb250655f9 Merge pull request #65 from vanillajonathan/master
Rename CHANGE-LOG to ChangeLog
2015-05-05 08:21:13 -05:00
Jonathan
d70e64d598 Rename CHANGE-LOG to ChangeLog
As per Gnits standard and most naming common convention.
http://www.gnu.org/software/automake/manual/html_node/Gnits.html#Gnits
2015-05-05 15:02:11 +02:00
Michael Larabel
0f2f41ff6c Merge pull request #64 from vanillajonathan/patch-1
Fixed markup
2015-05-05 07:09:48 -05:00
Jonathan
cd0b59bf87 Fixed markup 2015-05-05 11:16:22 +02:00
Michael Larabel
0aa62825da Merge pull request #62 from juju-solutions/juju-pts-iteration
Update maintainer email
2015-04-29 06:56:28 -05:00
Adam Israel
dc4b713855 Update maintainer email 2015-04-29 13:37:36 +02:00
Michael Larabel
9c356d59cd phoromatic: Fix jumping on page on checkbox selection when scrolling 2015-04-24 09:44:45 -05:00
Michael Larabel
9e18981850 phoromatic: Remove another IP-based claim check 2015-04-23 07:43:05 -05:00
Michael Larabel
5306cc9f54 phoromatic: Disable IP matching 2015-04-22 20:06:19 -05:00
Michael Larabel
d73b2c0bc4 Phoronix Test Suite 5.8 Milestone 2 2015-04-21 21:15:32 -05:00
Michael Larabel
788d1d3e28 phoromatic: Add "System Targets" info to benchmark ticket page & "View All Past Tickets" 2015-04-21 15:23:25 -05:00
Michael Larabel
6d2ad9ae03 pts-core: Exec in path update 2015-04-21 11:15:02 -05:00
Michael Larabel
fe613f1f54 pts-core: Add pts-core/hooks/startup 2015-04-21 11:00:10 -05:00
Michael Larabel
98acce582a pts-core: Finish removal of hhvm-server support since it's long been discontinued upstream 2015-04-21 10:27:14 -05:00
Michael Larabel
fcc0018ab1 pts-core: Spring cleaning 2015-04-21 10:23:44 -05:00
Michael Larabel
e94a9f98a6 (For Previous Commits) phodevi: Reporting of Btrfs RAID levels to system component table when running disk tests 2015-04-19 15:54:30 -05:00
Michael Larabel
2e79cbf8a6 phoromatic: Doh for previous issue 2015-04-19 15:49:56 -05:00
Michael Larabel
a2435498e1 phoromatic: More Btrfs RAID fixes 2015-04-19 15:46:04 -05:00
Michael Larabel
2109002dc7 phodevi: More BTRFS RAID reporting work 2015-04-19 15:39:32 -05:00
Michael Larabel
c8f846b4de phodevi: Btrfs RAID level reporting 2015-04-19 15:33:56 -05:00
Michael Larabel
d49785b863 pts-core: Comments on top of previous commit 2015-04-16 15:34:32 -05:00
Michael Larabel
0ed26f76e5 pts-core: Enforce CCACHE_DISABLE=1 during install/runtime testing 2015-04-16 15:32:57 -05:00
Michael Larabel
cdcecd8879 phoromatic: Start work on nginx server configuration (not yet working) 2015-04-16 08:46:28 -05:00
Michael Larabel
15127d0104 phoromatic: Update results selection on rootadmin data page 2015-04-13 21:20:30 -05:00
Michael Larabel
29f17f1fd2 phoromatic: Shorten public link text 2015-04-13 21:08:02 -05:00
Michael Larabel
63d26f7cc0 phoromatic: Fix AccountID warning on public page 2015-04-13 20:43:05 -05:00
Michael Larabel
6a84ac16f1 phoromatic: Add LetPublicViewResults option and new public results listing page 2015-04-13 12:32:04 -05:00
Michael Larabel
e2a584549d phoromatic: Workaround for instr() usage in SQLite that caused issues with older distributions 2015-04-13 08:13:38 -05:00
Michael Larabel
1d16a3645d Merge pull request #61 from cen1/sqlitefix
Sqlitefix
2015-04-13 08:11:04 -05:00
cen
11537cb636 instr changed to NOT IN sql statement 2015-04-13 10:41:29 +02:00
Michael Larabel
dde77c36c8 Merge pull request #60 from juju-solutions/juju-pts-iteration
Juju pts iteration
2015-04-10 22:00:44 -05:00
Adam Israel
6e9d91a24c Fix key name 2015-04-10 16:04:46 -04:00
Adam Israel
8f8044d52a Add support for user-config 2015-04-10 11:40:03 -04:00
Adam Israel
1dc5d21046 Fix error if key contains a space 2015-04-10 11:39:46 -04:00
Adam Israel
68e7e2eff9 Update to reflect upstream charm and new functionality 2015-04-10 11:39:22 -04:00
Michael Larabel
5d9cd6991d pts-core: Fix potential crash in list-installed-suites sub-command 2015-04-06 11:09:47 -05:00
Michael Larabel
11efbedc20 Regenerate docs for 5.8.0m1 2015-04-02 09:58:58 -05:00
Michael Larabel
77e698c91b Phoronix Test Suite 5.8 Milestone 1 2015-04-02 09:58:11 -05:00
Adam Israel
3ff13bd3e9 Rearrange directory structure to work with juju deploy 2015-04-01 12:49:47 -04:00
cen
0bec2dc635 Changed instr() into a LIKE statement, fix #56 2015-03-31 22:15:18 +02:00
Michael Larabel
dc9f14e9dc phoromatic: Fix for getting the system name on other shared results 2015-03-31 11:21:34 -05:00
Michael Larabel
5690996c9e phoromatic: Add new table to "Results Shared By Other Groups" 2015-03-31 11:20:16 -05:00
Michael Larabel
5270926b30 phoromatic: Fix benchmark right menu; sort system_check_for_open_benchmark_ticket() ASC 2015-03-30 11:00:58 -05:00
Michael Larabel
f718524330 pts-core: Drop AnonymousHardwareReporting / AnonymousSoftwareReporting as no longer used on OpenBenchmarking.org 2015-03-29 12:10:45 -05:00
Michael Larabel
6fcaa42bdb phoromatic: More alterations to UI 2015-03-28 18:36:59 -05:00
Michael Larabel
2724442416 pts-core: Bump PTS_CORE_VERSION to force refresh of cache files 2015-03-28 18:35:04 -05:00
Michael Larabel
4a19981a98 phoromatic: Remove right bar on more pages 2015-03-28 18:32:00 -05:00
Michael Larabel
2dcb331aca phoromatic: Save CSS 2015-03-28 18:15:09 -05:00
Michael Larabel
2e34d13d5c phoromatic: Start work on new main page 2015-03-28 18:13:04 -05:00
Michael Larabel
fc2066117a phoromatic: Start on something 2015-03-28 17:51:56 -05:00
Michael Larabel
22df4734b0 phoromatic: More tweaking of UI 2015-03-28 14:09:27 -05:00
Michael Larabel
9e3790b35e phoromatic: Don't show benchmark ticket page if there's no local suites 2015-03-28 13:59:39 -05:00
Michael Larabel
94d7404357 phoromatic: Move settings and users page below search area along with logout 2015-03-28 12:52:34 -05:00
Michael Larabel
3291618016 phoromatic: Header tweak 2015-03-28 12:22:13 -05:00
Michael Larabel
a8d2d096ca phoromatic: More UI tweaks 2015-03-28 11:59:13 -05:00
Michael Larabel
f645969a1b phoromatic: CSS tweaking 2015-03-28 10:55:19 -05:00
Michael Larabel
ef6aeab21e phoromatic: More CSS tweaking 2015-03-28 10:14:59 -05:00
Michael Larabel
fc2f0efe29 phoromatic: CSS color tweak 2015-03-28 10:05:18 -05:00
Michael Larabel
29dcb2e782 phoromatic: New checkbox handling on results page to manage comparisons and multi-delete results 2015-03-28 09:17:33 -05:00
Michael Larabel
f86d9f4fbf phoromatic: Add "PowerOnSystemDaily" setting option to ensure regardless of schedule that systems will at least power-up/communicate daily if enabled 2015-03-28 08:34:16 -05:00
Michael Larabel
359af64442 deploy: Add intel/radeon xorg.conf templates 2015-03-27 16:32:32 -05:00
Michael Larabel
f076848bf9 install-sh: Copy deploy/ to /usr/share/phoronix-test-suite/deploy/ 2015-03-27 16:26:21 -05:00
Michael Larabel
97963cf6b2 phoromatic: Add "System Maintenance Table" 2015-03-27 11:22:39 -05:00
Michael Larabel
2f3f06f35b phoromatic: Only show minutes if less than 4 hours 2015-03-27 08:28:30 -05:00
Michael Larabel
1e8d10b121 deploy: Add the farm-system-customizations start 2015-03-27 08:25:23 -05:00
Michael Larabel
bc9cd7f364 phoromatic: Always unset the GRUB recordfail when applicable 2015-03-27 08:12:50 -05:00
Michael Larabel
2bf416f16f phoromatic: Make checkboxes on results page (initial stab!) 2015-03-26 18:10:27 -05:00
Michael Larabel
15dd619ea1 phoromatic: Now expecting dynamic power ons to work so don't care if system tests later in day 2015-03-26 16:52:59 -05:00
Michael Larabel
3edf383248 phoromatic: Unify more code 2015-03-26 16:47:18 -05:00
Michael Larabel
b92a926614 phoromatic: Unify more code from start.php into phoromatic_server 2015-03-26 16:20:33 -05:00
Michael Larabel
1b5ff93462 phoromatic: Allow WoL power-ups for honoring benchmark tickets 2015-03-26 16:10:52 -05:00
Michael Larabel
ba2a325762 phoromatic: Get rid of block-poweroff file check in client module now that it can be done per-system from server-side 2015-03-26 13:32:43 -05:00
Michael Larabel
2aa88fd5e2 phoromatic: Allow per-system overriding of whether automatic power-offs of system are permitted 2015-03-26 13:24:05 -05:00
Michael Larabel
d5bce250dc phoromatic: Check if EstimatedTaskForTime expired before sending email 2015-03-26 13:02:39 -05:00
Michael Larabel
6684d827f8 phoromatic: Fix in admin config the function return value in write context error 2015-03-26 11:42:46 -05:00
Michael Larabel
b4b1a7eb45 phoromatic: Fix for removing a system from all groups on the "system group editing" systems page 2015-03-26 10:22:13 -05:00
Michael Larabel
70c1c4bb08 phoromatic: Allow results page search box to also search system's hardware/software components 2015-03-26 09:42:10 -05:00
Michael Larabel
9ce47ccfc5 phoromatic: Allow results page to be limited to particular hash or ticket matches 2015-03-26 09:10:56 -05:00
Michael Larabel
be1867f98d phoromatic: Don't block adding annotation after deleting annotation 2015-03-26 08:53:37 -05:00
Michael Larabel
3b47c0c12b phoromatic: Show matching ticket results in the compare results column on results page 2015-03-26 08:50:33 -05:00
Michael Larabel
2ebc4e05ff phoromatic: Ensure $right is always declared 2015-03-26 08:39:50 -05:00
Michael Larabel
db36f95508 phoromatic: Don't show empty "Benchmark Tickets" right column list 2015-03-26 08:39:20 -05:00
Michael Larabel
608b27bcf1 phoromatic: Typo fix 2015-03-25 17:03:02 -05:00
Michael Larabel
2b75139e87 phoromatic: Fix "Triggered Ago" 2015-03-25 17:02:25 -05:00
Michael Larabel
e37789f5bd phoromatic: Few more main page tweaks 2015-03-25 17:00:23 -05:00
Michael Larabel
b09dad3b56 phoromatic: Clean-up main page schedule for schedules with no associated systems 2015-03-25 16:51:41 -05:00
Michael Larabel
bebf9a7cd6 phodevi: More allowance for clients to recover Internet connection / server communication failure 2015-03-24 18:31:09 -05:00
Michael Larabel
853d37bcbe pts-core: Indent tweak for previous JSON commit 2015-03-24 11:52:19 -05:00
Michael Larabel
384619146e pts-core: Add very basic result-file-to-json sub-command 2015-03-24 11:44:31 -05:00
Michael Larabel
457d284f1e Pull in JuJu scripts from https://github.com/juju-solutions/pts to deploy/juju 2015-03-24 10:16:29 -05:00
Michael Larabel
d2d96af37c - pts-core: Move phoromatic-client and phoromatic-server Upstart job files to deploy/ 2015-03-24 10:07:05 -05:00
Michael Larabel
63669356de pts-core: Move phoromatic-client and phoromatic-server Upstart job files to deploy/ 2015-03-24 10:02:00 -05:00
Michael Larabel
cbd56b106c Post-release version bump to start Phoronix Test Suite 5.8 development 2015-03-24 09:57:11 -05:00
Michael Larabel
ad2803bcde pts-core: Start moving possible deployment scripts into deploy/ directory 2015-03-24 09:54:56 -05:00
Michael Larabel
11090103e3 CHANGE-LOG: Add date to new version 2015-03-24 07:42:06 -05:00
Michael Larabel
71ce513b02 Phoronix Test Suite 5.6.0 2015-03-24 07:40:23 -05:00
Michael Larabel
0463bb4667 phoromatic: Don't attempt to open DB in read-only mode if phoromatic.db not yet made 2015-03-23 09:03:09 -05:00
Michael Larabel
42d7246d87 pts-core: Fix potential warning in detailed-system-info sub-command 2015-03-22 11:28:01 -05:00
Michael Larabel
af8999f5d2 phodevi: Workaround Hyper Threading detection on OS X 2015-03-22 11:18:57 -05:00
Michael Larabel
681b007017 phoromatic: Fix for previous HFS+ OS X commit 2015-03-22 11:14:14 -05:00
Michael Larabel
9e5a67f4f5 phodevi: HFS+ file-system fallback detection on OS X 2015-03-22 11:09:48 -05:00
Michael Larabel
a1fd9e5e4d pts-core: cli_set_process_title() still emits error on OS X so block its usage 2015-03-22 10:59:20 -05:00
Michael Larabel
de75f7b20a phoromatic: Pass AccountID to system_id_to_name() within public viewer 2015-03-19 14:58:06 -05:00
Michael Larabel
dfa22abd4e pts-core: Detect Internet presence for enterprise-setup 2015-03-18 19:21:35 -05:00
Michael Larabel
62769ff58d pts-core: Yield /dev/mapper/* points in auto-disk-mount-points 2015-03-18 10:48:30 -05:00
Michael Larabel
c8322dfd4b phoromatic: Mark system state as unknown when communication fails and hits the event server check 2015-03-18 09:16:47 -05:00
Michael Larabel
00c86faea2 pts-core: Drop bilde_renderer since it's been deprecated for a while 2015-03-18 09:06:58 -05:00
Michael Larabel
65e5fc78c1 phoromatic: Fix line breaks in annotations 2015-03-18 08:51:23 -05:00
Michael Larabel
47d43cca9b phoromatic: Handle line breaks when adding annotation 2015-03-17 12:58:27 -05:00
Michael Larabel
4c911b9176 phoromatic: Improve formatting of annotations 2015-03-17 12:41:10 -05:00
Michael Larabel
9b6ae61e71 phoromatic: Tweak 2015-03-17 10:23:47 -05:00
Michael Larabel
28a579136c phoromatic: Dashboard tweak 2015-03-17 10:23:08 -05:00
Michael Larabel
c5dd052476 phoromatic: Add case for no results found 2015-03-12 09:24:56 -05:00
Michael Larabel
328a4366ab phoromatic: Add universal search functionality from web interface 2015-03-12 09:19:07 -05:00
Michael Larabel
c757829566 Phoronix Test Suite 5.6 Milestone 5 2015-03-11 09:31:18 -05:00
Michael Larabel
c9e3db6077 phoromatic: Add support for the user to delete annotations 2015-03-11 09:28:45 -05:00
Michael Larabel
a745fe09bb pts-core: Switch the dump-documentation sub-command to generating the README in md format 2015-03-11 09:18:38 -05:00
Michael Larabel
8ffde5b53d phoromatic: Add basic support for annotating/commenting on result files and individual graphs 2015-03-10 12:23:20 -05:00
Michael Larabel
1e95bd2cf2 phoromatic: Extra check for previous commit 2015-03-10 10:15:07 -05:00
Michael Larabel
890d7fe048 phoromatic: Dashboard improvement 2015-03-10 10:13:32 -05:00
Michael Larabel
8254fec563 pts-core: Allow 128 character result identifier strings 2015-03-09 11:32:04 -05:00
Michael Larabel
3172e49a56 phoromatic: Allow stress runs up to 24 concurrent tests 2015-03-09 10:07:59 -05:00
Michael Larabel
e7a2a7b5eb pts-core: Check twice for internet connectivity with wait while operating as server process 2015-03-08 16:51:09 -05:00
Michael Larabel
bbd4656b8b phoromatic: Fix reply-to 2015-03-05 11:59:07 -06:00
Michael Larabel
a4399578ee phoromatic: Allow stress tests up to 90 days 2015-03-05 11:57:58 -06:00
Michael Larabel
a4f0cbd53b phoromatic: Change the custom From email sender to Reply-To 2015-03-05 11:54:10 -06:00
Michael Larabel
9a3a8668e4 pts-core: Ignore test run locking in stress/multi-run mode 2015-03-05 08:56:37 -06:00
Michael Larabel
0b92c8019a phoromatic: Stress run test message changes
Signed-off-by: Michael Larabel <Michael@phoronix.com>
2015-03-05 08:49:14 -06:00
Michael Larabel
6f562d0560 phoromatic: Allow stress tests up to ten days 2015-03-05 08:43:35 -06:00
Michael Larabel
1a4995a87a phoromatic: Add "End Ticket" option to benchmark page 2015-03-05 08:34:24 -06:00
Michael Larabel
22fa761e8e phoromatic: Scroll bar on local suites page condensing 2015-03-05 08:22:07 -06:00
Michael Larabel
a6725a415d phoromatic: Send emails from rootadmin or group admin's email address where applicable rather than no-reply@ 2015-02-27 09:49:36 -06:00
Michael Larabel
6dd96ea414 phoromatic: fix 2015-02-26 18:43:05 -06:00
Michael Larabel
39ea33ae4e pts-core: Fix version appending 2015-02-26 17:46:08 -06:00
Michael Larabel
7313943017 phoromatic: Don't pass test flags there 2015-02-26 17:10:08 -06:00
Michael Larabel
db478c34fc phoromatic: Use short display mode 2015-02-26 17:09:30 -06:00
Michael Larabel
4e64bac57f phoromatic: Initial hook-up of stress-run functionality on client and rest of server 2015-02-26 16:49:25 -06:00
Michael Larabel
85f555b848 Phoronix Test Suite 5.6 M4 2015-02-25 12:29:05 -06:00
Michael Larabel
11b1ad1b14 phoromatic: Show all test versions supported via the UI 2015-02-24 16:50:44 -06:00
Michael Larabel
f4ea87131c phoromatic: Add basic support for system variables 2015-02-24 14:14:27 -06:00
Michael Larabel
18e281d5cf pts-core: Make-download-cache to attempt caching all versions of a test profile 2015-02-24 13:46:14 -06:00
Michael Larabel
82cd3c1447 phoromatic: Add support for repeating tickets 2015-02-24 12:13:33 -06:00
Michael Larabel
8e992e5c85 pts-core: Improvements to phoronix-test-suite make-download-cache 2015-02-24 11:57:27 -06:00
Michael Larabel
8f20ff042b phoromatic: Add initial support for "Test All Options" to build suite 2015-02-23 13:00:19 -06:00
Michael Larabel
78d280dc5a phoromatic: Allow creating new group accounts from the rootadmin page 2015-02-23 09:43:05 -06:00
Michael Larabel
9b77c4dbb4 phoromatic: Allow tickets to be removed from the individual benchmark page 2015-02-17 11:28:15 -06:00
Michael Larabel
95c3cf6951 phoromatic: Allow triggers to be nuked from the rootadmin page 2015-02-17 11:11:02 -06:00
Michael Larabel
99f880c34a - phoromatic: Allow for system identifier variable in benchmark tickets of .GROUP 2015-02-17 10:32:54 -06:00
Michael Larabel
b20b34c569 phoromatic: Add support for .SYSTEM variable 2015-02-17 10:27:26 -06:00
Michael Larabel
ece449f050 phoromatic: Remove original XML results when deleting result as rootadmin 2015-02-17 08:40:31 -06:00
Michael Larabel
e15b736e1f phoromatic: Tighten up initial sleep time on freshly booted system 2015-02-17 08:29:23 -06:00
Michael Larabel
9d8d1e689f phoromatic: Support nuking benchmark tickets 2015-02-16 14:44:31 -06:00
Michael Larabel
2861672bf9 phoromatic: No limits on result showing, remove from _results and _systems too 2015-02-16 14:39:27 -06:00
Michael Larabel
55593610dc phoromatic: Add "admin data" page to let the rootadmin permanently delete schedules/results/systems 2015-02-16 10:05:33 -06:00
Michael Larabel
c1c0a94cd4 Phoronix Test Suite 5.6.0 Milestone 3 2015-02-15 07:50:02 -06:00
Michael Larabel
9def58b211 phoromatic: Prepend system ID to result string when running multiple tests without variables 2015-02-12 08:46:00 -06:00
Michael Larabel
d6b6d7631f pts-core: Fix notice about JSON_PRETTY_PRINT in make-download-cache on pre PHP 5.4 2015-02-12 06:27:41 -06:00
Michael Larabel
73eef7a11a phoromatic: Fix missing rand() from sleep 2015-02-11 15:22:24 -06:00
Michael Larabel
650b689ad5 phoromatic: Don't check against title for benchmark ticket check 2015-02-11 14:34:54 -06:00
Michael Larabel
673489f6f5 phoromatic: Add option to force rebuild of results databases 2015-02-10 09:58:46 -06:00
Michael Larabel
2db7cf9660 phoromatic: Limits on the benchmark page 2015-02-09 20:22:39 -06:00
Michael Larabel
790b3625fe Test: multiple uploads on result upload failure for Phoromatic if needed 2015-02-09 14:38:13 -06:00
Michael Larabel
47b50018df phoromatic: Add some server debug log info 2015-02-09 14:31:29 -06:00
Michael Larabel
bd7d2b4e5f phoromatic: Fix CSS styling of lists 2015-02-09 11:07:57 -06:00
Michael Larabel
52f7de4ea6 phoromatic: Start on UI for stress testing and system_monitor module 2015-02-09 10:41:15 -06:00
Michael Larabel
bf83f78e96 phoromatic: Add more dummy messages 2015-02-09 08:46:49 -06:00
Michael Larabel
aaeea7372c phoromatic: Add support for viewing issued benchmark tickets 2015-02-09 08:28:35 -06:00
Michael Larabel
43ec99b830 phoromatic: Useless warning fix 2015-02-08 20:00:03 -06:00
Michael Larabel
5433279f90 phoromatic: Last of tweaks for today... The single-run benchmarking mode should be working fine as a first cut 2015-02-08 19:56:23 -06:00
Michael Larabel
18a860d32b phoromatic: Fix potential infinite loop 2015-02-08 19:49:35 -06:00
Michael Larabel
4e6872e31d phoromatic: Fix 2015-02-08 19:45:04 -06:00
Michael Larabel
859ebca16a phoromatic: Client improvements 2015-02-08 19:39:23 -06:00
Michael Larabel
4a14a868ab phoromatic: Fix 2015-02-08 19:35:45 -06:00
Michael Larabel
3a49252378 phoromatic: Tweaks to latest work 2015-02-08 19:30:44 -06:00
Michael Larabel
6d24497665 phoromatic: Typo fix 2015-02-08 19:19:35 -06:00
Michael Larabel
699ede0d95 phoromatic: Benchmark tickets now work? 2015-02-08 19:02:32 -06:00
Michael Larabel
ef968316ff phoromatic: Add benchmark page 2015-02-08 18:27:36 -06:00
Michael Larabel
6626f86cec phoromatic: Add support for local suites page 2015-02-08 17:23:57 -06:00
Michael Larabel
294bfd488b phoromatic: Working build suite page 2015-02-08 17:01:34 -06:00
Michael Larabel
92172da6b7 phoromatic: Enforce new PTS sign-on whenever the PTS core version changes due to potential interface changes 2015-02-08 13:28:47 -06:00
Michael Larabel
cb41681e9f phoromatic: Tweaks 2015-02-08 10:23:50 -06:00
Michael Larabel
4e4f2dde72 phoromatic: Add new option to results page 2015-02-08 10:20:00 -06:00
Michael Larabel
1299ac74e8 phoromatic: Add result RSS support 2015-02-08 09:40:13 -06:00
Michael Larabel
11e50f9c8b phoromatic: Rely on caching for determining pre-existing cached test profiles from the web UI
Signed-off-by: Michael Larabel <Michael@phoronix.com>
2015-02-05 19:50:43 -06:00
Michael Larabel
4167d346c6 phoromatic: Allow triggers to be deleted 2015-02-05 18:30:29 -06:00
Michael Larabel
3f93db214c phoromatic: Typo fix 2015-02-05 12:10:53 -06:00
Michael Larabel
72d69a8ccb phoromatic: Show dashboard even if just one system is live 2015-02-05 09:40:09 -06:00
Michael Larabel
3910e6f2cc pts-core: Include system-wide FPDF if it's found 2015-02-05 09:38:14 -06:00
Michael Larabel
eae98cc06a Phoronix Test Suite 5.6 Milestone 2 2015-02-04 19:19:57 -06:00
Michael Larabel
2c7b7f4ff3 phoromatic: Add phoromatic.clone sub-command for clients to clone viewable test results 2015-02-04 19:10:22 -06:00
Michael Larabel
114f94ba11 phoromatic: Work on clone option 2015-02-04 18:57:18 -06:00
Michael Larabel
2c5070d34a phoromatic: Add phoromatic.list-results sub-command for clients 2015-02-04 18:45:42 -06:00
Michael Larabel
f4508ea766 phoromatic: Work on list-result 2015-02-04 18:29:49 -06:00
Michael Larabel
cf8dc18cfd phoromatic: Support for exporting result files to download as CSV or TXT 2015-02-04 16:59:36 -06:00
Michael Larabel
25afe6313f phoromatic: Add option to pre-seed test installs to systems when otherwise idling 2015-02-04 16:13:32 -06:00
Michael Larabel
a9042dad3a phoromatic: Start work on test pre-seeding 2015-02-04 16:00:56 -06:00
Michael Larabel
08d2c9e39b phoromatic: Download latest OpenBenchmarking.org test suites/profiles in background thread from the event server 2015-02-04 15:40:59 -06:00
Michael Larabel
88c1d5e4cf phoromatic: Add "Only Advertise Cached Tests" option to rootadmin 2015-02-04 14:36:08 -06:00
Michael Larabel
440eb38920 phoromatic: Fix compare results link 2015-02-04 14:24:50 -06:00
Michael Larabel
e68049b612 phoromatic: Results improvementsd 2015-02-04 13:43:50 -06:00
Michael Larabel
35d8df0f08 phoromatic: Register module-discovered Phoromatic Servers with pts-core 2015-02-04 11:25:12 -06:00
Michael Larabel
1edd60f919 phoromatic: Changes requested by Chris 2015-02-03 16:38:51 -06:00
Michael Larabel
80a553e63d phoromatic: Improvements to test details, still working on build suite 2015-02-03 13:50:13 -06:00
Michael Larabel
ff7bf7d1de phoromatic: Stub our work on starting new build a suite page 2015-02-03 13:35:20 -06:00
Michael Larabel
bcaca6042c phoromatic: Allow merged results to be exported to PDF and sent to public viewer 2015-02-03 12:44:22 -06:00
Michael Larabel
79ecd9ae17 phoromatic: Add comparable results listing on individual result pages 2015-02-03 12:19:39 -06:00
Michael Larabel
6e1d45df7a phoromatic: Hide search button until it's fully working 2015-02-03 11:38:04 -06:00
Michael Larabel
dcfe9840fc phoromatic: Add time limit option on results page 2015-02-03 10:53:36 -06:00
Michael Larabel
2a6bec9409 phoromatic: Allow comparisons with shared results 2015-02-03 10:28:02 -06:00
Michael Larabel
58cb071b65 phoromatic: Get rid of some unneeded JS now 2015-02-03 10:10:52 -06:00
Michael Larabel
9c1a525514 phoromatic: Add back delete result capability 2015-02-03 10:03:43 -06:00
Michael Larabel
cc5b09661e phoromatic: New comparison functionality 2015-02-03 09:45:49 -06:00
Michael Larabel
09f4dea6d4 phoromatic: Fix custom CacheDirectory for download-cache 2015-02-02 17:15:46 -06:00
Michael Larabel
84ed3c504f phoromatic: Add extra debug info to download-cache 2015-02-02 17:06:27 -06:00
Michael Larabel
53a6a85909 phoromatic: Potential fix for download issue 2015-02-02 16:58:27 -06:00
Michael Larabel
f9dd9c3f2c phoromatic: Add "force result sharing" option to rootadmin to override per-account settings 2015-02-02 16:33:09 -06:00
Michael Larabel
9ee56d7ecf pts-core: RPM build fix 2015-02-02 15:38:27 -06:00
Michael Larabel
beb03041f3 phoromatic: Attempt more connectiosn if needed 2015-02-02 09:42:09 -06:00
Michael Larabel
3f09b801b2 phoromatic: Allow optional result sharing between groups / unique accounts (controlled via settings) 2015-01-31 13:42:59 -06:00
Michael Larabel
d39b7f5307 phoromatic: Compute PPRID when uploading new results 2015-01-31 13:04:58 -06:00
Michael Larabel
52c533a9ee phoromatic: Introduce PPRID structure as universal unique identifier for results between accounts 2015-01-31 13:01:29 -06:00
Michael Larabel
79351c4cbe phoromatic: Chrome JavaScript fix 2015-01-31 10:59:58 -06:00
Michael Larabel
9b3b5edd82 phoromatic: Add IP ping test to system claim page 2015-01-31 10:51:23 -06:00
Michael Larabel
83b5115aa4 phoromatic: Don't show idling systems on the dashboard 2015-01-31 10:35:08 -06:00
Michael Larabel
060f09067f phoromatic: Allow setting a main page message string to show users once logging into their account, via rootadmin's config page 2015-01-31 10:31:48 -06:00
Michael Larabel
509133e0dc phoromatic: Allow disabling new account registration by setting custom string via rootadmin's config page 2015-01-31 10:16:34 -06:00
Michael Larabel
2f68303085 phoromatic: Allow downloading results as PDF 2015-01-31 10:01:35 -06:00
Michael Larabel
a40c08c0a5 pts-core: Import copy of FPDF locally for PDF rendering 2015-01-31 09:29:13 -06:00
Michael Larabel
2718847c96 phoromatic: Add "group name" concept to Phoromatic group of accounts 2015-01-31 08:58:13 -06:00
Michael Larabel
dfb06d5679 phoromatic: Don't show inactive systems in groups 2015-01-31 08:37:27 -06:00
Michael Larabel
a609c20ee9 phoromatic: Improve boxes on main page 2015-01-31 08:35:26 -06:00
Michael Larabel
ad02af1ed3 phoromatic: Download cache changes 2015-01-30 09:35:51 -06:00
Michael Larabel
c2b3f326c1 phoromatic: Many of the requested cosmetic changes by client 2015-01-29 22:21:37 -06:00
Michael Larabel
7c6894c700 phoromatic: Fix PHOROMATIC_USER_IS_VIEWER check to be after session_start() 2015-01-28 16:42:45 -06:00
Michael Larabel
1223ef2356 phoromatic: Allow users to reset their own password by navigating to the settings page 2015-01-27 15:57:22 -06:00
Michael Larabel
ce4d002458 phoromatic: Add basic "Upload To OpenBenchmarking.org" link from test result page 2015-01-27 13:39:41 -06:00
Michael Larabel
eb04908e77 pts-core: Add a public view of test results by going to result page entry -> Result Export -> Public Viewer 2015-01-27 12:41:14 -06:00
Michael Larabel
ab9538f922 pts-core: Fix for session save path on Fedora when running as normal user 2015-01-27 12:06:50 -06:00
Michael Larabel
0261dec8df pts-core: Add hidden ?seed_accountid= option to the welcome / account creation page for custom 6 character ID 2015-01-22 13:06:48 -06:00
Michael Larabel
fa3144fdd8 pts-core: Fix fallback compression support 2015-01-22 10:36:49 -06:00
Michael Larabel
f38b88d591 pts-core: Check for posix_setid() in timed_function() of pts_client 2015-01-18 19:06:45 -06:00
Michael Larabel
5193556183 Merge pull request #41 from vanillajonathan/master
Readme file in Markdown for GitHub
2015-01-18 19:03:36 -06:00
Michael Larabel
0b0ff8ddf4 Merge pull request #42 from BryanQuigley/master
Debian packaging fixes
2015-01-18 19:02:31 -06:00
Michael Larabel
8e9eea9aa2 pts_Graph: Don't append extra s to strings already ending in s 2015-01-18 09:16:50 -06:00
Bryan Quigley
3bdee751de Fix enough lintian errors so Ubuntu Software
Center doesn't complain about package quality
Now requires fakeroot being installed
2015-01-15 13:05:14 -05:00
Bryan Quigley
68ac640236 Corrected build-package vs package-build due to name change 2015-01-15 12:01:41 -05:00
Jonathan
0a90971308 Markdown for hyperlinks 2015-01-14 11:33:20 +01:00
Jonathan
ea623095be Fixed headers 2015-01-14 11:27:29 +01:00
Jonathan
bcb5fbb03b Create README.md
Markdown file
2015-01-14 11:26:25 +01:00
Michael Larabel
e0a0715d09 pts-core: Fix for upload-test-suite 2015-01-13 21:11:40 -06:00
Michael Larabel
6d595c693c pts-core: Change MD5 failed string to Checksum failed string since SHA256 sum is also along this path 2015-01-13 20:58:30 -06:00
Michael Larabel
9c8c810226 Phoronix Test Suite 5.6 Milestone 1 2015-01-13 20:40:06 -06:00
Michael Larabel
60437b9156 pts-core: Change PTS_TEMP_STORAGE location when running as daemonized server process 2015-01-13 15:18:44 -06:00
Michael Larabel
4b0dcb428f phoromatic: Fix typo in earlier phoromatic.php commit 2015-01-13 13:00:20 -06:00
Michael Larabel
71d37b74b7 timed_screenshot: Fix for crash when PHP GD missing 2015-01-13 08:44:31 -06:00
Michael Larabel
79203b63b0 phoromatic: Better recovery of existing Phoromatic accounts on reloaded systems where the machine self ID changed 2015-01-11 16:59:18 -06:00
Michael Larabel
66f545f5d5 pts-core: Update some of the forgotten copyrights 2015-01-10 12:46:07 -06:00
Michael Larabel
257a629254 pts-core: Add support for libframetime output result parsing 2015-01-10 12:44:24 -06:00
Michael Larabel
cdd0fa9db3 pts-core: Add TOTAL_LOOP_TIME=infinite support to stress-run for testing in an infinite loop 2015-01-08 20:23:11 -06:00
Michael Larabel
4025334c5b pts-core: Fix trivial message for line 170 in stress-run 2015-01-08 11:35:41 -06:00
Michael Larabel
e25637aaf4 pts-core: More stress-run work and fix for PTS_CONCURRENT_TEST_RUNS 2015-01-07 19:18:14 -06:00
Michael Larabel
db023450cc pts-core: Whoops 2015-01-07 19:10:29 -06:00
Michael Larabel
1c11e3843b pts-core: LOOP_UNTIL_TIME tweak 2015-01-07 19:09:30 -06:00
Michael Larabel
ede496a21b pts-core: Rework the short display mode 2015-01-07 19:07:30 -06:00
Michael Larabel
e45fd1a60f stress-run: More stuff 2015-01-07 18:57:19 -06:00
Michael Larabel
9fa3fd8b97 pts-core: Add TOTAL_LOOP_TIME support to stress-run 2015-01-07 18:46:26 -06:00
Michael Larabel
a0470e588b pts-core: Fix for previous commit 2015-01-07 18:35:18 -06:00
Michael Larabel
45f2d49dc2 pts-core: More work 2015-01-07 18:34:08 -06:00
Michael Larabel
53b8b48ba3 pts-core: More stress-run work 2015-01-07 18:31:31 -06:00
Michael Larabel
e9cb4cac84 pts-core: Some code refactoring for stress-run 2015-01-07 18:28:00 -06:00
Michael Larabel
0b63f47e68 Bump for PTS 5.6 development 2015-01-07 13:29:33 -06:00
Michael Larabel
6d59c0f03a pts-core: Add stress-run command to allow for concurrent stress testing / burn-in / torture testing 2015-01-07 13:28:30 -06:00
Michael Larabel
ffd3270cab pts-core: Prep changes for stress-run 2015-01-07 13:27:28 -06:00
Michael Larabel
3379a6bf34 pts-core: Add "short" display mode 2015-01-07 10:37:15 -06:00
Michael Larabel
2c19337986 phoromatic: Query it too... 2015-01-05 10:50:24 -06:00
Michael Larabel
0148a8949c phoromatic: On tracker page use system name, not schedule name for ID 2015-01-05 10:49:43 -06:00
Michael Larabel
83a023a2a6 phoromatic: Initial commit of basic tracker page 2015-01-05 10:45:30 -06:00
Michael Larabel
4ec0dd07da Phoronix Test Suite 5.4.1-Lipki 2014-12-23 08:16:20 -06:00
Michael Larabel
9c5e30bb50 pts-core: AppData adjust screenshot size 2014-12-22 08:25:32 -06:00
Michael Larabel
41169330b6 pts-core: Update AppData and systemd service files 2014-12-22 08:22:32 -06:00
Michael Larabel
53fd3ff4a7 pts-core: Allow min/max reporting 2014-12-21 06:56:32 -06:00
Michael Larabel
cd87404c29 pts-core: Add csv-dump-frame-latencies support to result parser 2014-12-20 10:53:39 -06:00
Michael Larabel
354f63a521 phoromatic: Move IP info to separate var to avoid removal issue 2014-12-15 12:00:02 -06:00
Michael Larabel
5d9375b48b phoromatic: Attempt to detect and report IP address next to requested MAC address claim on the system claim page 2014-12-15 11:07:38 -06:00
Michael Larabel
2ab7c30cbe phoromatic: Add enterprise-setup sub-command 2014-12-15 10:45:54 -06:00
Michael Larabel
6a9a659429 phoromatic: Improve formatting of result strings when merging random result files together 2014-12-15 10:26:51 -06:00
Michael Larabel
8e43f61dee pts-core: Add PTS_SILENT_MODE to skip initial prompts 2014-12-09 11:04:37 -06:00
Michael Larabel
900e566dce Phoronix Test Suite 5.4-Lipki 2014-12-09 10:20:58 -06:00
Michael Larabel
34069838c5 phoromatic: Last tweaks 2014-12-09 10:18:58 -06:00
Michael Larabel
0c085c4ee9 phodevi: Round GPU freq when needed 2014-12-08 10:31:10 -06:00
Michael Larabel
b6b9c2e6e1 phoromatic: Few more additions to the component table 2014-12-07 21:12:41 -06:00
Michael Larabel
c9b7e2ade7 phoromatic 2014-12-06 21:50:11 -06:00
Michael Larabel
3f5f37a5af phoromatic: Condense claims listing 2014-12-06 21:45:43 -06:00
Michael Larabel
ffaa6da142 phoromatic: Last minute design tweaks 2014-12-06 21:43:37 -06:00
Michael Larabel
c96f329349 phoromatic: Tweaks 2014-12-06 20:10:48 -06:00
Michael Larabel
4ded61fd5c phoromatic: Tweaks 2014-12-06 09:38:46 -06:00
Michael Larabel
0905e4eef0 pts-core: Fix for two character binary names in FileCheck of external dependencies 2014-12-05 21:07:04 -06:00
Michael Larabel
f9e822aa69 pts-core: Add bc external dependency 2014-12-05 21:01:11 -06:00
Michael Larabel
6e403dd41f phoromatic: Minor improvements 2014-12-05 20:13:56 -06:00
Michael Larabel
247b80884e phoromatic: Typo in previous commit 2014-12-05 12:31:15 -06:00
Michael Larabel
e2b319c6df phoromatic: Put in sleep 2014-12-05 12:24:58 -06:00
Michael Larabel
e1345ca9ac phoromatic: Attempt connection multiple times if needed 2014-12-05 12:24:28 -06:00
Michael Larabel
4e1a726743 phoromatic: Fix link on component table 2014-12-05 10:01:20 -06:00
Michael Larabel
d7ca83f021 phoromatic: Fix bad CSS from previous commit 2014-12-05 09:35:02 -06:00
Michael Larabel
76c6d3ebf9 phoromatic: Add about page 2014-12-04 20:59:35 -06:00
Michael Larabel
98c4929501 phoromatic: Alt conf 2014-12-04 11:39:50 -06:00
Michael Larabel
a6674b82e9 phoromatic: Fix removing on system claim, limit isn't needed for that query 2014-12-03 12:01:59 -06:00
Michael Larabel
941906fbd0 phoromatic: Workaround false email mornings at midnight 2014-12-03 10:22:25 -06:00
Michael Larabel
1eb72b08d6 phoromatic-client: Fix init/upstart files 2014-12-02 13:04:29 -06:00
Michael Larabel
7fc4f12d16 phoromatic: Run In time recalculation 2014-12-02 12:43:01 -06:00
Michael Larabel
e395a7a2e8 pts-core: Tweaks 2014-12-02 12:36:19 -06:00
Michael Larabel
0dc404286b phoromatic: Tweaks 2014-12-02 12:27:25 -06:00
Michael Larabel
63d963e190 phoromatic: Main page update 2014-12-02 12:23:14 -06:00
Michael Larabel
1f3d9d9a71 pts-core: Other m7 update spins 2014-12-01 22:41:04 -06:00
Michael Larabel
508fb4ad21 Phoronix Test Suite 5.4 Milestone 7 2014-12-01 22:24:06 -06:00
Michael Larabel
bc6e94df52 phoromatic: Implement maintenance mode on server side 2014-12-01 20:15:42 -06:00
Michael Larabel
fcaa047d87 phoromatic: Add scheduled workload to main page 2014-12-01 19:47:52 -06:00
Michael Larabel
d6a7b3f956 phoromatic: Tweaks 2014-12-01 18:43:00 -06:00
Michael Larabel
47cef2726a phoromatic: Report Phoronix Test Suite version to the system component table 2014-12-01 17:44:53 -06:00
Michael Larabel
4789fcda0d phoromatic: Fixes 2014-12-01 16:47:19 -06:00
Michael Larabel
4027c28907 phoromatic: Fixes 2014-12-01 16:27:06 -06:00
Michael Larabel
be3eeed77a pts-core: Improve MAC acquisition 2014-12-01 15:18:58 -06:00
Michael Larabel
45facd61ac phoromatic: Formatting fix 2014-12-01 13:42:54 -06:00
Michael Larabel
53592eee0a phoromatic: Report next job in time on systems page 2014-12-01 13:41:14 -06:00
Michael Larabel
b3f0cc8a37 phoromatic: Rework idle support and add maintenance mode support to client 2014-12-01 13:16:15 -06:00
Michael Larabel
fa887ff97f phoromatic: Convert to hours when needed for dashboard 2014-12-01 12:35:22 -06:00
Michael Larabel
ac590ca50b phoromatic: Alert in dashboard on down system 2014-12-01 12:19:29 -06:00
Michael Larabel
c8e8c1b907 phoromatic: Add system check if down to dashboard 2014-12-01 12:17:08 -06:00
Michael Larabel
c9703435e2 phoromatic: Add legacy init.d script support 2014-12-01 11:57:54 -06:00
Michael Larabel
f56a153d46 phoromatic: Add JS timer 2014-12-01 11:03:25 -06:00
Michael Larabel
fc4736b124 phoromatic: Tweaking 2014-12-01 10:46:02 -06:00
Michael Larabel
f993fe45ec phoromatic: More dashboard features 2014-12-01 10:44:22 -06:00
Michael Larabel
6bec33e5df phoromatic: More dashboard formatting 2014-12-01 10:24:59 -06:00
Michael Larabel
809349340b phoromatic: More dashboard fun 2014-12-01 10:21:35 -06:00
Michael Larabel
718d09dba4 phoromatic: system dashboard tweaking 2014-12-01 10:09:53 -06:00
Michael Larabel
abc4d8906d phoromatic: Dashboard tweaks 2014-12-01 10:05:40 -06:00
Michael Larabel
11cfb8e855 phoromatic: Add system dashboard 2014-12-01 10:03:53 -06:00
Michael Larabel
64a081e052 phoromatic: Add new reporting features to server 2014-12-01 09:35:37 -06:00
Michael Larabel
ac45a9329b phoromatic: Update system component table 2014-11-30 22:02:47 -06:00
Michael Larabel
c9193a4c47 phoromatic: Add system component table 2014-11-30 21:59:09 -06:00
Michael Larabel
c89499c517 phoromatic: UI tweaks 2014-11-30 21:28:32 -06:00
Michael Larabel
a45757a3c4 phoromatic: Be smarter when detecting if trigger match is true 2014-11-30 21:15:41 -06:00
Michael Larabel
24d963b630 phoromatic: Tweaks 2014-11-30 18:10:23 -06:00
Michael Larabel
5a93331bdc phoromatic: Percent computation 2014-11-30 16:17:49 -06:00
Michael Larabel
611170c72d phoromatic: Report percent complete of task to server 2014-11-30 16:14:00 -06:00
Michael Larabel
ecede77d63 phoromatic: Hook in estimated time remaining for task 2014-11-30 16:03:28 -06:00
Michael Larabel
460bd7e7f9 phoromatic: Hook in estimated run time reporting 2014-11-30 15:49:36 -06:00
Michael Larabel
6de87fe870 phoromatic: System status string updates 2014-11-30 15:13:14 -06:00
Michael Larabel
07056907cb phoromatic: blockquote 2014-11-30 15:00:46 -06:00
Michael Larabel
d4198d0371 phoromatic: Show context scripts in schedule 2014-11-30 14:58:44 -06:00
Michael Larabel
7cc9ed0b4b phoromatic: CSS tweaks 2014-11-30 14:50:07 -06:00
Michael Larabel
a039727f74 phoromatic: Results today 2014-11-30 14:42:00 -06:00
Michael Larabel
8c7442d75c phoromatic: CSS update 2014-11-30 14:32:50 -06:00
Michael Larabel
b342bc002d phoromatic: Formatting improvements 2014-11-30 14:13:40 -06:00
Michael Larabel
73a92ed086 phoromatic: Update schedules page 2014-11-30 14:04:23 -06:00
Michael Larabel
b58582f449 phoromatic: Change around recently active systems 2014-11-30 13:41:23 -06:00
Michael Larabel
305e6d70a5 phoromatic: Show schedules/group on system page 2014-11-30 12:22:43 -06:00
Michael Larabel
e23c837082 phoromatic: Fixes 2014-11-30 11:44:08 -06:00
Michael Larabel
6a91ed45ec phoromatic: More fine tuning 2014-11-30 11:36:34 -06:00
Michael Larabel
45b3325510 phoromatic: Add custom Wake-On-LAN packet generator if etherwake isn't found on server 2014-11-30 11:30:09 -06:00
Michael Larabel
764a9588f6 phoromatic: More email reporting of hung systems / systems not running tests when they should 2014-11-30 11:09:14 -06:00
Michael Larabel
d268ebc2e4 phoromatic: Fix API from previous commit 2014-11-30 10:47:29 -06:00
Michael Larabel
5890af3a95 phoromatic: Adjust system checking if down 2014-11-30 10:46:07 -06:00
Michael Larabel
1e47011290 phoromatic: Prominently show "systems needing attention" from the server UI 2014-11-30 10:39:14 -06:00
Michael Larabel
a55dd4dd10 phoromatic: Don't show yesterday / week results on main page 2014-11-30 09:07:21 -06:00
Michael Larabel
4275af6f51 phoromatic: Fix for last commit 2014-11-29 23:05:04 -06:00
Michael Larabel
e601c740a4 phoromatic: Adjust recently active systems listing 2014-11-29 23:04:13 -06:00
Michael Larabel
1d46fdf0a9 phoromatic: Tweaks 2014-11-29 23:01:50 -06:00
Michael Larabel
e2217ddf33 phoromatic: Main page tweaks 2014-11-29 22:57:37 -06:00
Michael Larabel
eed8c5ef83 phoromatic: abs() the vari 2014-11-29 22:52:45 -06:00
Michael Larabel
1bbcdfa458 phoromatic: Increase size to report flagged results 2014-11-29 22:50:22 -06:00
Michael Larabel
4b6459dde6 pts-core: Don't prompt when dependencies fail 2014-11-29 19:08:13 -06:00
Michael Larabel
341dda1eff phoromatic: Give time to sleep after shutdown/reboot 2014-11-28 18:21:14 -06:00
Michael Larabel
9914b80db7 phoromatic: Allow blocking poweroffs by touching modules-data/phoromatic/block-poweroff 2014-11-28 18:04:01 -06:00
Michael Larabel
3805f7002d phoromatic: Styling fixes on the Phoromatic systems page 2014-11-28 17:41:42 -06:00
Michael Larabel
e6dbd74393 phoromatic: Add sleep between waking systems to make sure power doesn't spike all at the same time 2014-11-28 13:30:47 -06:00
Michael Larabel
c480868d2f phoromatic: Need to pass $elapsed_benchmark_time to upload_test_result 2014-11-28 12:03:35 -06:00
Michael Larabel
e0df691a0b phoromatic: Upstart job tweaking 2014-11-28 11:20:16 -06:00
Michael Larabel
b2961f1936 pts-core: Don't install Upstart files by default due to enabling both server/clients by default 2014-11-28 10:52:06 -06:00
Michael Larabel
e8480f0855 pts-core: Revise phoromatic Upstart files 2014-11-28 09:27:12 -06:00
Michael Larabel
00214bd8c1 phoromatic: Allow IP/MAC based system claiming from Phoromatic Server UI 2014-11-27 22:31:16 -06:00
Michael Larabel
d5b7197793 phoromatic: Tweaks 2014-11-27 21:42:50 -06:00
Michael Larabel
c6edeeef1c phoromatic: Refactor server connection setup 2014-11-27 21:24:30 -06:00
Michael Larabel
4edfa4c2b2 phoromatic: Add "configure Phoromatic client via SSH" to Phoromatic Server 2014-11-27 17:51:37 -06:00
Michael Larabel
64a6f5c197 phoromatic: Allow Phoromatic Servers to be specified via a simple text file at PTS_USER_PATH/phoromatic-servers 2014-11-27 17:05:34 -06:00
Michael Larabel
31ac494408 phoromatic: Track elapsed time during the testing process, report to Phoromatic Server 2014-11-27 16:41:35 -06:00
Michael Larabel
85d576ec68 phoromatic: Support for disabling accounts via rootadmin 2014-11-27 11:32:41 -06:00
Michael Larabel
d9d48e060d phoromatic: AdminLevel adjustments 2014-11-27 11:19:58 -06:00
Michael Larabel
03393a00cc phoromatic: Fix for rootadmin from not showing the first account 2014-11-26 13:05:41 -06:00
Michael Larabel
bf2e86002b phoromatic: Improve download-cache for large files 2014-11-26 10:54:47 -06:00
Michael Larabel
e62a1b9beb download-cache: Improvements 2014-11-26 09:25:17 -06:00
Michael Larabel
66ee94b15d phoromatic: Client module update 2014-11-26 08:53:37 -06:00
Michael Larabel
1bd6983b35 phoromatic: Add support for viewing system logs from the result page link on right hand side 2014-11-25 11:46:08 -06:00
Michael Larabel
e236dc922c phoromatic: Log improvements 2014-11-25 11:34:45 -06:00
Michael Larabel
28a90e2cc8 phoromatic: Add logs page 2014-11-25 11:29:02 -06:00
Michael Larabel
80b17dedb8 phoromatic: Arg fix 2014-11-25 11:18:46 -06:00
Michael Larabel
2457f27557 phoromatic: List context logs 2014-11-25 11:08:10 -06:00
Michael Larabel
492e8ab3e6 phoromatic: Allow logging of Phoromatic set user context execution 2014-11-25 10:35:13 -06:00
Michael Larabel
edf75419c8 phoromatic: Use pts_client::shell_exec() in user_set_context() 2014-11-25 10:03:28 -06:00
Michael Larabel
afbb3d439e phoromatic: Enforce better timing on WoL 2014-11-24 19:46:58 -06:00
Michael Larabel
22114366c7 phoromatic: Set busy time out on DB connection 2014-11-24 19:26:50 -06:00
Michael Larabel
ca36aeab22 phoromatic: Fix 2014-11-24 19:03:58 -06:00
Michael Larabel
3d22c14436 phoromatic: Don't create a persistent DB connection in the event server 2014-11-24 19:02:21 -06:00
Michael Larabel
b5cb2232a1 phoromatic: DB flags fix 2014-11-24 18:53:57 -06:00
Michael Larabel
bcc0d398ad phoromatic: Allow read-only DB connections 2014-11-24 18:51:20 -06:00
Michael Larabel
9ed9516700 phoromatic: Add option to network wake on lan (WoL) systems when needed for testing 2014-11-24 18:43:32 -06:00
Michael Larabel
aff9bc8de9 phoromatic: Add option to power off systems when no more scheduled tests are scheduled for the day 2014-11-24 17:47:18 -06:00
Michael Larabel
4947d4ef73 phoromatic: Add notification option to email to users when systems appear hung for more than an hour 2014-11-24 17:29:46 -06:00
Michael Larabel
2cb5deeb71 phoromatic: Report network's Wake-On-LAN information to Phoromatic Server 2014-11-24 16:10:40 -06:00
Michael Larabel
2ab82ed6a5 phoromatic: Report systems MAC address from the systems page 2014-11-24 09:11:23 -06:00
Michael Larabel
32d9a75975 phoronix-test-suite: Fix for mktemp on Darwin / OS X 2014-11-24 08:54:50 -06:00
Michael Larabel
e636c0c163 phoromatic: Fix salted password issue 2014-11-21 14:52:30 -06:00
Michael Larabel
223d169c3a phoromatic: String change 2014-11-21 09:56:34 -06:00
Michael Larabel
b85c72fa23 phoromatic: Allow changing the admin level for users by the main administrator from the Users page 2014-11-21 09:52:05 -06:00
Michael Larabel
919d4c0b4d phoromatic: Add add_new_users_to_account option for adding new users automatically to existing account 2014-11-21 09:34:12 -06:00
Michael Larabel
504e25bfcf pts-core: Assume http:// on download files if not set 2014-11-19 08:58:39 -06:00
Michael Larabel
0b00debf50 pts-core: Check for file before attempting to filesize() it 2014-11-19 08:53:51 -06:00
Michael Larabel
b7c8025aa0 Phoronix Test Suite 5.4 Milestone 6 2014-11-19 08:11:56 -06:00
Michael Larabel
2f354aec02 pts-core: Avoid ZIP warnings, just nuke the empty temp file 2014-11-18 20:32:22 -06:00
Michael Larabel
8d03af2570 pts-core: Append / to temp file dir 2014-11-18 20:24:12 -06:00
Michael Larabel
370199a77b pts-core: ZIP improvements for RHEL/Fedora 2014-11-18 20:22:37 -06:00
Michael Larabel
dc52fb58ef phoromatic: Ensure pts_logger is properly used 2014-11-18 20:08:00 -06:00
Michael Larabel
deea31eb01 pts-core: Use system's zip library if PHP ZIP is not available 2014-11-18 20:05:59 -06:00
Michael Larabel
ec592336cf phoromatic: Warning when system log ZIP file fails to produce 2014-11-18 19:41:34 -06:00
Michael Larabel
eae06fdfb8 phoromatic: Fix 2014-11-18 19:35:47 -06:00
Michael Larabel
04ed24fcbc phoromatic: Fixes 2014-11-18 19:24:52 -06:00
Michael Larabel
3134144a58 phoromatic: Explore network setting improvements 2014-11-18 19:22:30 -06:00
Michael Larabel
c4c2912817 phoromatic: Fix 2014-11-18 19:21:08 -06:00
Michael Larabel
48ed4dc83b phoromatic: More tweaking 2014-11-18 19:11:13 -06:00
Michael Larabel
fe98e95aaf phoromatic: Add reboot and shutdown commands to Phoromatic module 2014-11-18 10:41:02 -06:00
Michael Larabel
707001b7d0 phoromatic: Copy paste fail 2014-11-18 10:29:08 -06:00
Michael Larabel
7c71ecc710 phoromatic: More updates 2014-11-18 10:27:42 -06:00
Michael Larabel
660c4bbb73 phoromatic: More tweaking of connection establishment 2014-11-18 10:20:34 -06:00
Michael Larabel
4b6bec708a phoromatic: Trim the file of last-phoromatic-server 2014-11-18 10:16:15 -06:00
Michael Larabel
ffdb2485fd phoromatic: Tweaking 2014-11-18 10:13:23 -06:00
Michael Larabel
4066bcebdd pts-core: Print log file location 2014-11-18 10:07:31 -06:00
Michael Larabel
f5ff5338a4 phoromatic: Remember last successful Phoromatic Server connection 2014-11-18 10:04:11 -06:00
Michael Larabel
5c59eee778 pts-core: Enhance PHP_BIN detection 2014-11-18 06:42:38 -06:00
Michael Larabel
66e727caa1 phoromatic: Phoromatic-client requires network-online.target 2014-11-17 22:17:16 -06:00
Michael Larabel
30fbfb7296 pts-core: Tweak 2014-11-17 21:44:54 -06:00
Michael Larabel
ecd36e8ba5 phoromatic: Add PHOROMATIC_PROCESS 2014-11-17 21:44:15 -06:00
Michael Larabel
9a0bc3a5dd phoromatic: Improve bool handling 2014-11-17 21:27:23 -06:00
Michael Larabel
577ff051e1 phoromatic: Fix for deactivating options on settings page 2014-11-17 21:19:50 -06:00
Michael Larabel
f06986ed80 phoromatic: Add "Upload results to OpenBenchmarking.org" option to settings page 2014-11-17 20:05:13 -06:00
Michael Larabel
2a4ad1005b phoromatic: Fix 2014-11-17 19:37:11 -06:00
Michael Larabel
d6eb12dba0 phoromatic: Show recent triggers on a test schedule's page 2014-11-17 19:33:15 -06:00
Michael Larabel
1400493f26 phoromatic: Expose all possible video modes as test options 2014-11-17 19:25:07 -06:00
Michael Larabel
060919ddb5 phoromatic: Ensure DISPLAY=:0 when running the phoromatic-client.service 2014-11-17 19:11:29 -06:00
Michael Larabel
f9ae8e546e phoromatic: Let the module sleep 60 seconds if system was booted in past 5 minutes if it's still bringing up services 2014-11-17 19:00:02 -06:00
Michael Larabel
8b40053209 phoromatic: Increase memory_limit on download cache downloads 2014-11-17 18:50:54 -06:00
Michael Larabel
46cb4fecc2 pts-core: Enhanced make-download-cache 2014-11-17 18:35:23 -06:00
Michael Larabel
d5defe52ac phoromatic: download-cache path addition 2014-11-17 18:16:21 -06:00
Michael Larabel
2ed5a4ec07 phoromatic: Various changes 2014-11-17 17:12:27 -06:00
Michael Larabel
54cd526cce phoromatic: Improve session_save_path handling 2014-11-17 12:00:43 -06:00
Michael Larabel
c43511ef95 phoromatic: Fix for session_save_path() issue on EL6 2014-11-17 11:55:13 -06:00
Michael Larabel
df2255b369 phoromatic: Upstart testing 2014-11-17 11:49:24 -06:00
Michael Larabel
ab6f52ea4a pts-core: Too quick of earlier commit 2014-11-17 11:43:43 -06:00
Michael Larabel
84b5580333 pts-core: Check for PHP Sockets support 2014-11-17 11:42:18 -06:00
Michael Larabel
3ac89e0041 phoromatic: Allow the HTTP / WebSocket ports to be modified from the webUI when logging in as rootadmin 2014-11-17 11:28:34 -06:00
Michael Larabel
000f4ba487 phoromatic: Allow the network proxy details to be modified from the webUI when logging in as rootadmin 2014-11-17 10:57:51 -06:00
Michael Larabel
baeb3da5b6 phoromatic: Allow the download cache location to be modified from the webUI when logging in as rootadmin 2014-11-17 10:34:44 -06:00
Michael Larabel
d7a04d678d phoromatic: Allow the PhoromaticStorage location to be modified from the webUI when logging in as rootadmin 2014-11-17 10:12:32 -06:00
Michael Larabel
d32846a94e phoromatic: Tweaks 2014-11-17 09:24:32 -06:00
Michael Larabel
e7e201d9a1 phoromatic: Add "Run Test Schedule Now" button to test schedule page to allow for easy one-time/manual testing 2014-11-15 09:48:39 -06:00
Michael Larabel
fd9e5a6685 phoromatic: Add some basic statistics to the rootadmin page 2014-11-11 16:19:30 -06:00
Michael Larabel
3f80e41cc4 pts-core: Fix result merging when PTS test identifier is null, use title string instead as identifier 2014-11-11 10:18:12 -06:00
Michael Larabel
dce1e25345 phoromatic: Avoid name collision with Phoromatic Server avahi instances 2014-11-10 19:39:09 -06:00
Michael Larabel
699d9a7822 Phoronix Test Suite 5.4 Milestone 5 2014-11-10 19:02:07 -06:00
Michael Larabel
d319839682 phoromatic: Add basic root administrator support to the Phoronix web interface 2014-11-10 17:49:26 -06:00
Michael Larabel
f411449798 phoromatic-server: Chmod the SQLite file later on 2014-11-10 16:04:12 -06:00
Michael Larabel
0867cc3749 pts-core: Avoid ~/.phoronix-test-suite/ under systemd 2014-11-10 16:02:38 -06:00
Michael Larabel
83aa121740 pts-core: chmod 0600 the pt2so and Phoromatic SQLite files 2014-11-10 15:55:38 -06:00
Michael Larabel
9bd36df56c phoromatic: Print message whe no servers auto found 2014-11-10 13:42:58 -06:00
Michael Larabel
17b120cbce phoromatic: Avahi service as phoromatic-server 2014-11-10 13:33:51 -06:00
Michael Larabel
3ff9299457 phoromatic: Hopefully Avahi now works nicely... 2014-11-10 13:30:21 -06:00
Michael Larabel
2a043d47c0 phoromatic: Start up tweaks 2014-11-10 13:01:27 -06:00
Michael Larabel
7d1365de3a phoromatic: Whoops 2014-11-10 12:44:56 -06:00
Michael Larabel
76eb5d7bca phoromatic: Fixes 2014-11-10 12:37:15 -06:00
Michael Larabel
b7f86b7634 phoromatic: Improve SQLite message for EL users 2014-11-10 12:21:00 -06:00
Michael Larabel
65f7cca658 phoromatic: Startup optimization 2014-11-10 12:17:30 -06:00
Michael Larabel
930ae1de35 phoromatic: Use a randomly chosen available port by default when starting the Phoromatic Server if no ports are defined 2014-11-10 12:14:56 -06:00
Michael Larabel
d3ff37c070 pts-core: Don't print recommended extensions when not needed when running as a daemonized server process 2014-11-10 11:57:25 -06:00
Michael Larabel
8f187721b0 pts-core: More work for avoiding HOME attempts on systemd server use 2014-11-10 11:46:17 -06:00
Michael Larabel
56b9857fa4 phoromatic: Show file/path locations when starting the Phoromatic Server 2014-11-10 11:42:10 -06:00
Michael Larabel
195ec1e1ec phoromatic: Ignore "attempting to redownload" error messages 2014-11-09 20:52:21 -06:00
Michael Larabel
60b6561b89 pts-core: Detect if no bytes received when downloading files from the cache 2014-11-09 20:48:00 -06:00
Michael Larabel
c5bcd42382 pts-core: Tweaks 2014-11-08 16:18:59 -06:00
Michael Larabel
3d94b9a9f7 phoromatic: Make unscheduled test result tables and graphs render correctly 2014-11-08 10:17:03 -06:00
Michael Larabel
9cbba0eebf phoromatic: Allow other/unscheduled test results to be uploaded to the Phoromatic Server using the phoromatic.upload-result sub-command 2014-11-08 10:09:16 -06:00
Michael Larabel
4ed6b8f741 phoromatic: Add result flagging to the main page 2014-11-07 21:21:02 -06:00
Michael Larabel
997f4a2cc2 pts_ResultFileTable: another potential crash fix 2014-11-07 18:29:10 -06:00
Michael Larabel
19560fa00d phoromatic: Formatting changes 2014-11-07 18:26:14 -06:00
Michael Larabel
d0237ed24a phoromatic: Add test count to the schedules page 2014-11-07 18:02:06 -06:00
Michael Larabel
76ea6ca9d3 pts-core: More improvements 2014-11-07 17:50:36 -06:00
Michael Larabel
e5facf31e9 phoromatic: More 2014-11-07 11:50:43 -06:00
Michael Larabel
acc512b600 phoromatic: More design work 2014-11-07 11:35:23 -06:00
Michael Larabel
9538dd7285 phoromatic: More styling work 2014-11-07 11:21:43 -06:00
Michael Larabel
66ff69471d phoromatic: Change default font weight 2014-11-07 10:52:31 -06:00
Michael Larabel
de54acf175 pts-core: Prefer firefox over Epiphany browser 2014-11-07 10:03:07 -06:00
Michael Larabel
72e6047c8c phoromatic: Add "show only results with variation" to result viewing page 2014-11-07 10:01:34 -06:00
Michael Larabel
871d630551 phoromatic: Table'ize users list 2014-11-06 20:34:57 -06:00
Michael Larabel
d3002a8e65 phoromatic: Stale cache busting 2014-11-06 20:32:46 -06:00
Michael Larabel
f4e6d8921e phoromatic: More UI improvements 2014-11-06 20:27:08 -06:00
Michael Larabel
e6e0ac37ae phoromatic: Add times viewed to results 2014-11-06 20:18:59 -06:00
Michael Larabel
394e295811 phoromatic: Improve formatting of lists 2014-11-06 20:13:00 -06:00
Michael Larabel
8170db2e7c phoromatic: Styling tweaks 2014-11-06 17:43:06 -06:00
Michael Larabel
c175c8527c phoromatic: Allow easily comparing a result file to other results for that given schedule ID 2014-11-06 17:30:11 -06:00
Michael Larabel
475d99af59 pts_Graph: Shrink size of sub title text strings when they're too long 2014-11-06 17:00:32 -06:00
Michael Larabel
b30cbf638f pts-core: Various tweaks 2014-11-06 16:43:23 -06:00
Michael Larabel
516e39d737 pts-core: Use a temp directory when launching server services 2014-11-06 14:38:21 -06:00
Michael Larabel
1fd3fd9588 phoromatic: Avoid a potential error 2014-11-06 14:16:03 -06:00
Michael Larabel
ee2dfbf11f phoromatic: Implement email notifications on new systems added 2014-11-06 13:58:41 -06:00
Michael Larabel
0f201375e1 phoromatic: Implement email notifications on system generated errors/warnings 2014-11-06 13:48:24 -06:00
Michael Larabel
5111bcb6f3 phoromatic: Implement email notifications on result uploads 2014-11-06 13:37:38 -06:00
Michael Larabel
2fdc54f62d phoromatic: Start on HTML mail improvements 2014-11-06 13:00:47 -06:00
Michael Larabel
743409ef1c Rebuild documentation for PTS 5.4 M4 2014-11-05 21:11:58 -06:00
Michael Larabel
d88d5a756d Phoronix Test Suite 5.4 Milestone 4 2014-11-05 21:11:28 -06:00
Michael Larabel
5a6c8dd983 pts-core: More work 2014-11-05 21:10:53 -06:00
Michael Larabel
4490dde69c phoromatic: Support for jumping to test results page for XXX past days of test from schedule page 2014-11-05 20:26:35 -06:00
Michael Larabel
8654c554ea phoromatic: Add more options to the result page 2014-11-05 18:52:01 -06:00
Michael Larabel
e3b968802a phoromatic: Add normalize results option to the phoromatic result page 2014-11-05 18:38:16 -06:00
Michael Larabel
387d386b8a phoromatic: Tweaks 2014-11-05 18:17:53 -06:00
Michael Larabel
38fcbc6412 pts-core: Add PhoromaticStorage option to Phoronix Test Suite user configuration XML file 2014-11-05 18:04:22 -06:00
Michael Larabel
3f1e485e9a pts-core: Start working on support for using standard Linux file-system hierarchy when running as root as a service 2014-11-05 17:54:24 -06:00
Michael Larabel
568daeb0c8 pts-core: Add 3840 x 2160 (4K UHD) to more of the mode-setting fall-back modes 2014-10-28 18:38:24 -05:00
Michael Larabel
74b38adc61 phoromatic: Implement "Power User" account level 2014-10-25 19:09:26 -05:00
Michael Larabel
ec48bda85b phoromatic: Improve result identifier / title reporting for results 2014-10-25 19:02:16 -05:00
Michael Larabel
81988aa10e phoromatic: 4 username length 2014-10-24 14:59:27 -05:00
Michael Larabel
9af41ff8c0 phoromatic: Add today's scheduled events to the side bar 2014-10-24 11:06:36 -05:00
Michael Larabel
ab4f396e74 phoromatic: Add a schedule overview to the schedules page 2014-10-24 10:52:53 -05:00
Michael Larabel
e47faa11b7 phoromatic: UI updates by Fatima Sheremetyeva 2014-10-23 19:07:59 -05:00
Michael Larabel
5ceaa9c69d pts-core: Update TODO 2014-10-22 21:36:34 -05:00
Michael Larabel
204878e743 phoromatic: Various improvements 2014-10-22 20:18:30 -05:00
Michael Larabel
c9f4ebdcd4 Install systemd service files to /usr/lib/systemd/system/ 2014-10-22 17:02:34 -05:00
Michael Larabel
b6e8f60b72 phoromatic: Usernames need to be at least four characters long 2014-10-22 16:46:45 -05:00
Michael Larabel
e94490d55d pts-core: Workaround pass by ref issue 2014-10-22 11:08:32 -05:00
Michael Larabel
86968247fd phodevi: IBM POWER hardware detection improvements 2014-10-22 11:04:30 -05:00
Michael Larabel
d126f227b0 phoromatic: Condense account activity schedules 2014-10-21 21:58:16 -05:00
Michael Larabel
e61c148411 phoromatic: report test install errors to server 2014-10-21 21:42:48 -05:00
Michael Larabel
d4c0b8aa9b phoromatic: Don't attempt to re-run test schedules on clients if they previously reported errors/warnings for that schedule / trigger ID combination 2014-10-21 21:37:10 -05:00
Michael Larabel
7b163e7475 phoromatic: Show system errors/warnings from the Phoromatic web UI 2014-10-21 21:20:31 -05:00
Michael Larabel
8cc2f02f1f phoromatic: Report benchmarking / test run errors to server 2014-10-21 21:04:05 -05:00
Michael Larabel
e463d3c261 pts-core: Whoops 2014-10-21 20:37:25 -05:00
Michael Larabel
1142786b55 pts-core: Don't pass by ref 2014-10-21 20:36:45 -05:00
Michael Larabel
8f2a1e24b7 pts-core: Support passing test run error messages to modules via __event_run_error hook 2014-10-21 20:35:56 -05:00
Michael Larabel
6d05f5e6e7 phoromatic: Reporting of overall result counts for given test schedules 2014-10-21 19:16:48 -05:00
Michael Larabel
90c0b94435 Phoronix Test Suite 5.4 Milestone 3 2014-10-20 20:58:06 -05:00
Michael Larabel
a5a1abe670 phoromatic: Support for deleting results from the web UI's results page 2014-10-20 20:49:19 -05:00
Michael Larabel
2495d01bea phoromatic: Support for merging result files from the results page by clicking on each of them once 2014-10-20 20:29:29 -05:00
Michael Larabel
386ee6e23b phoromatic: Introduce activity stream and logging of user events / display from "activity events" page 2014-10-20 10:32:29 -05:00
Michael Larabel
17c97467d7 phoromatic: Improve schedule display a bit more 2014-10-12 11:55:49 -05:00
Michael Larabel
95431cb944 phoromatic: Support for removing system groups 2014-10-12 11:31:33 -05:00
Michael Larabel
773a9c377c phoromatic: Support for mass editing of systems in groups via the systems page 2014-10-12 11:09:01 -05:00
Michael Larabel
a82c1d8e6d phoromatic: Fix for adding systems to groups 2014-10-12 10:42:42 -05:00
Michael Larabel
192fc1a0cd phoromatic: Add multi-user account documentation 2014-10-11 19:38:15 -05:00
Michael Larabel
8bb6f632bb phoromatic: Add support for the main administrator to create multiple users associated with the same account
phoromatic: Add support for "viewer accounts" where they can view data but not alter/write data
2014-10-11 19:07:01 -05:00
Michael Larabel
59865f49a9 phoromatic: Update the CSS style 2014-10-11 17:12:19 -05:00
Michael Larabel
224f9702ac pts-core: Support for obtaining the local IP on Fedora 2014-10-11 11:53:09 -05:00
Michael Larabel
80f9036327 phoromatic: Support for reporting the network MAC address (for later WoL purposes) 2014-10-11 11:48:57 -05:00
Michael Larabel
d741f9e0ff phoromatic: Support for activating/deactivating "deleting" test schedules from the web UI 2014-10-11 11:22:55 -05:00
Michael Larabel
14d42b51e3 phoromatic: Support for editing schedules from the web UI 2014-10-11 11:02:11 -05:00
Michael Larabel
c597a2dadd pts-core: Fix RPM package generation with Upstart files 2014-10-09 11:48:44 -05:00
Michael Larabel
aa6e10a4b8 install-sh: Just always install the systemd service and Upstart conf files 2014-10-09 11:38:15 -05:00
Michael Larabel
32c6e2d371 install-sh: update 2014-10-08 15:42:30 -05:00
Michael Larabel
f0b4e85a5b pts-core: Fix systemd service file installation 2014-10-08 15:41:04 -05:00
Michael Larabel
7c55979561 phoromatic: Add new create schedule interface
phoromatic: Properly hook in system ID / group validation for test schedules
2014-10-08 14:58:21 -05:00
Michael Larabel
f63976e833 pts-core: Notice fix 2014-10-08 10:56:35 -05:00
Michael Larabel
06743fc076 phoromatic: Save admin/administrator usernames for other purposes 2014-10-06 17:16:57 -05:00
Michael Larabel
2249328776 phoromatic: Better documentation on the log-in page 2014-10-06 16:58:10 -05:00
Michael Larabel
65ab3b5aca pts-core: Fix whoops from previous commit 2014-10-06 10:51:53 -05:00
Michael Larabel
1bae8b3541 pts-core: Try downloading files from remote download caches up to two times in event of failure / checksum issues 2014-10-06 10:51:14 -05:00
Michael Larabel
9a8e005a79 pts-core: More error logging work 2014-10-06 10:31:44 -05:00
Michael Larabel
0c547a65d0 phoromatic: Avoid duplicate log messages 2014-10-06 10:20:06 -05:00
Michael Larabel
0cc646a60d phoromatic: Clean up DEBUG TEST message 2014-10-06 10:18:14 -05:00
Michael Larabel
414acebf64 pts-core: Start generating log file for the Phoromatic client 2014-10-06 10:11:00 -05:00
Michael Larabel
2b0364464e phoromatic: Start a basic logger of Phoromatic Server events 2014-10-06 09:49:33 -05:00
Michael Larabel
be57f8eafc Phoronix Test Suite 5.4-Lipki Milestone 2 2014-10-05 20:34:38 -05:00
Michael Larabel
8f41896a47 phoromatic: Add a cache settings page to the web interface 2014-10-05 20:22:34 -05:00
Michael Larabel
0e1c62051e pts-core: Initial Upstart and systemd configurations for the Phoromatic clients 2014-10-05 14:44:37 -05:00
Michael Larabel
d2a12edb06 pts-core: Start on Phoromatic Server documentation 2014-10-05 14:30:57 -05:00
Michael Larabel
18f81f6c38 phoromatic: defined 2014-10-05 12:25:54 -05:00
Michael Larabel
3706917cc3 phoromatic: Ignore warning on no PTS_GSID 2014-10-05 12:25:19 -05:00
Michael Larabel
ee1e5f932c pts-core: Allow discovery of Phoromatic Server account associated with it by the PTS machine ID 2014-10-05 12:24:03 -05:00
Michael Larabel
96463b0eae pts-core: ; typo 2014-10-05 11:53:07 -05:00
Michael Larabel
b623d305f4 pts-core: Allow PhoromaticServers user-config.xml to specify static Phoromatic Server IP:port information 2014-10-05 11:47:21 -05:00
Michael Larabel
12df1c8316 pts-core: Crash fix if passing an object name to the command line and the module_manager attempts to try to access a non-existant class constant 2014-10-05 11:28:57 -05:00
Michael Larabel
d55d27e816 pts-core: Move the Phoromatic Server probing to be dynamic when needed rather than always on start-up 2014-10-05 11:26:10 -05:00
Michael Larabel
a0177952b6 phoromatic: Add phoromatic.explore sub-command for showing discovered Phoromatic servers and their server/debugging information 2014-10-05 11:17:10 -05:00
Michael Larabel
ea3eec6438 pts-core: Fix 2014-10-05 10:18:02 -05:00
Michael Larabel
fa63231915 pts-core: Typo fix 2014-10-05 10:15:51 -05:00
Michael Larabel
8ba0f420cd pts-core: Don't probe Phoromatic server duplicates 2014-10-05 10:15:08 -05:00
Michael Larabel
a855d5560b pts-core: Introduce pts_client::available_phoromatic_servers() 2014-10-05 10:12:30 -05:00
Michael Larabel
202e1745ca pts-core: Introduce make-openbenchmarking-cache sub-command for trying to cache all test/suite meta-data from OpenBenchmarking.org 2014-10-05 09:52:13 -05:00
Michael Larabel
7a1fda21ff pts-core: Be sure to remove broken/old Phoromatic Servers previously detected 2014-10-04 19:41:23 -05:00
Michael Larabel
d1cf5938f2 pts-core: Allow result file titles up to 126 characters in length 2014-10-04 18:22:46 -05:00
Michael Larabel
d1ca6ad9f5 pts-core: Should fix systems that result in endless forking when the PTS test installer compiler mask picks up a compiler with ccache 2014-10-04 17:00:21 -05:00
Michael Larabel
5e69a0cc7f system_monitor: Allow user-set time interval period between sensor measurements using MONITOR_INTERVAL environment variable 2014-10-04 16:49:07 -05:00
Michael Larabel
b0833c1437 pts-core: Introduce machine_self_id as UUIDv5 compliant self-generated unique identifier for each PTS client
phoromatic: Support pts-core's machine_self_id for system identification as an alternative to OpenBenchmarking.org GSID
2014-10-04 16:27:26 -05:00
Michael Larabel
e88592b1ee pts-core: Improved dump-core-storage output 2014-10-04 15:18:23 -05:00
Michael Larabel
f7bba09772 pts-core: Few more Internet checks 2014-10-04 14:34:34 -05:00
Michael Larabel
28d00c08cf pts-core: Few more Internet support checks 2014-10-04 14:05:15 -05:00
Michael Larabel
0b8702bf0f pts-core: Couple installer improvements when Internet is not present 2014-10-04 13:42:23 -05:00
Michael Larabel
5c2fe4ef86 phoromatic: Allow sharing OpenBenchmarking.org index/test/suite cache data from server with local Phoromatic clients 2014-10-04 13:09:02 -05:00
Michael Larabel
73e8368ee0 pts-core: OpenBenchmarking tweaks for earlier commit 2014-10-04 12:56:44 -05:00
Michael Larabel
7679af256b pts-core: Typo fix 2014-10-04 12:05:25 -05:00
Michael Larabel
378bb49dd9 pts-core: Client support for being able to obtain OpenBenchmarking.org index/test/suite data from local Phoromatic Servers 2014-10-04 12:02:42 -05:00
Michael Larabel
762d98c6a2 pts-core: Make sure dpkg is present when running the build-package-deb script 2014-10-04 10:20:24 -05:00
Michael Larabel
69f449b199 phodevi: Restructure when /etc/os-release is parsed for obtaining OS name/version information 2014-10-04 10:05:08 -05:00
Michael Larabel
b7d4a31805 pts_Graph: Fix for horizontal box plot graphs with certain values where their top end line is being cut off 2014-10-04 09:31:07 -05:00
Michael Larabel
6f00af8ddb phoromatic: Support the /usr/share/phoronix-test-suite/download-cache/ location 2014-10-03 12:58:03 -05:00
Michael Larabel
05b4c90ba1 pts-core: Support /usr/share/phoronix-test-suite/download-cache as another download cache by default 2014-10-03 12:56:14 -05:00
Michael Larabel
d35573ae97 pts-core: User configuration XML handling improvements 2014-10-03 10:34:19 -05:00
Michael Larabel
4620ac6af6 pts-core: More systemd-related work 2014-10-03 10:06:23 -05:00
Michael Larabel
b30be27c68 pts-core: Start work on phoromatic-server systemd instance 2014-10-02 16:59:17 -05:00
Michael Larabel
9d307ca2fc pts-core: Rewrite most of the RPM package generator 2014-10-02 10:11:40 -05:00
Michael Larabel
8ce35dd771 - phodevi: Allow multiple providers for one VFS entry in case of failure in prior commands/files
- phodevi: Allow reading X Server log from the systemd journalctl
2014-10-02 10:09:20 -05:00
Michael Larabel
123f982898 phodevi: Allow GPU frequency detection for DRM/KMS drivers when no X Server DDX is detected 2014-10-02 10:07:56 -05:00
Michael Larabel
eceaf92806 pts-core: Couple small changes 2014-09-23 10:49:16 -05:00
Michael Larabel
2bbe0e02dc pts-core: Missing file check for pts_test_file_download->check_file_hash() 2014-09-22 15:14:05 -05:00
Michael Larabel
b9f2e48f11 Bump PTS_CORE_VERSION after the recent changes 2014-09-22 14:24:32 -05:00
Michael Larabel
9eb323e9a7 pts-core: Allow Phoronix Test Suite clients to automatically discover Phoromatic download-cache archives
phoromatic: Automatically setup download-cache over Phoromatic HTTP with the system's local download-cache archive
2014-09-22 14:02:38 -05:00
Michael Larabel
1cb10c3c35 pts-core: Convert to a JSON-based representation instead of XML for the pts-download-cache file
pts-core: Various file hash checking improvements during test installation
2014-09-22 12:23:06 -05:00
Michael Larabel
21817cd187 pts-core: Add "failed to load" to the scan_for_error of test execution failures 2014-09-22 09:15:47 -05:00
Michael Larabel
86519919da pts-core: From copy and paste of previous commit, don't need stripos on 404 number, only strpos 2014-09-22 09:08:28 -05:00
Michael Larabel
479d153262 pts-core: Improved detection of file downloads that fail and serve HTML 404/not found responses 2014-09-22 09:07:30 -05:00
Michael Larabel
99e3d6b62a pts-core: Update make-download-cache description 2014-09-21 21:24:24 -05:00
Michael Larabel
9e11eb6ebe pts-core: Allow passing arguments to make-download-cache 2014-09-21 21:22:39 -05:00
Michael Larabel
1d5c4b88f5 pts-core: Improvements to make-download-cache 2014-09-21 21:19:13 -05:00
Michael Larabel
16ee622c5f phoromatic: Update the new server.php information file 2014-09-21 20:47:16 -05:00
Michael Larabel
fe76aa3bed pts-core: Add support to PTS clients for automatically finding Phoromatic Servers using Avahi zero-conf network discovery
The infrastructure support is in place. The rest of the client code still needs to build upon it...
2014-09-21 20:44:56 -05:00
Michael Larabel
bb5385e3f6 pts-core: Separate out NoNetworkCommunication user option into NoInternetCommunication/NoNetworkCommunication user config options for those still wanting LAN/intranet support 2014-09-21 19:56:03 -05:00
Michael Larabel
e1e5ab55d4 phoromatic: Advertise Phoromatic Server using Advahi zero-conf networking service when avahi-publish available and AdvertiseServiceZeroConf user config option is TRUE 2014-09-21 19:32:04 -05:00
Michael Larabel
5c937d0a19 phoromatic: With this latest client/server code, local (behind firewall) result uploads are now possible and don't depend on OpenBenchmarking.org. 2014-09-21 16:51:21 -05:00
Michael Larabel
f5465f6634 phoromatic: Client-side changes shared with OB for uploading test results directly to Phoromatic server 2014-09-20 18:27:07 -05:00
Michael Larabel
7c89a57a35 phoromatic: Add SQLite schema changes for local results storage, based on OpenBenchmarking.org schema. 2014-09-20 17:46:10 -05:00
Michael Larabel
d7842c0ef6 pts-core: Rename debug-run mode to debug-benchmark, add extra features 2014-09-13 20:32:56 -05:00
Michael Larabel
ae51b7a333 pts-core: Bump core version to 5311 after the result file parsing improvements 2014-09-13 10:40:30 -05:00
Michael Larabel
2289cbad2b - pts-core: Add "ResultAfterString" to test result parser XML schema
- pts-core: Other result file parsing improvements/fixes
2014-09-13 10:31:50 -05:00
Michael Larabel
7d4773be31 Phoronix Test Suite 5.4 Milestone 1 2014-09-05 12:16:52 -05:00
Michael Larabel
89443b99c8 phodevi: Improved SoC detection 2014-09-05 09:15:26 -05:00
Michael Larabel
e6555dca53 pts_LineGraph: Alignment fix for keys 2014-09-04 09:11:51 -05:00
Michael Larabel
f510712cc6 phodevi: Improvement to monitor name EDID parsing 2014-08-30 23:37:41 -05:00
Michael Larabel
eb126f7e39 pts-core: Drop phoromatic_legacy support (old Phoromatic.com version) 2014-08-30 23:02:03 -05:00
Michael Larabel
44881b0ecb Should have bumped the development version numbering a while ago... PTS 5.4 Lipki development. 2014-08-30 22:40:14 -05:00
Michael Larabel
b3891efa11 phodevi: Support for reading monitor EDID over sysfs, decoding descriptors, and obtaining monitor name 2014-08-30 22:38:53 -05:00
Michael Larabel
fadada1130 pts-core: Don't set memory_limit with HHVM 2014-08-29 08:57:34 -05:00
Michael Larabel
aa6b123d71 Bug fix 2014-08-29 06:54:20 -05:00
Michael Larabel
d23bca1c46 system_monitor: Correct perf-per-Watt calculation for LIB results 2014-08-28 20:37:41 -05:00
Michael Larabel
18a8f03a89 phodevi: Support Nouveau's pstate formatting changes to read core/mem MHz on newer kernels 2014-08-27 16:23:59 -05:00
Michael Larabel
222cc70b86 pts_webui: SERVER_ADDR fix - http://www.phoronix.com/forums/showthread.php?102512-Remote-gui-not-accessible-in-Phoronix-Test-Suite-5-2&p=430312#post430312 2014-07-23 09:50:53 -05:00
Michael Larabel
810d4ce8e2 pts-core: Sanitize pts_result_file user strings 2014-07-18 07:58:45 -05:00
Michael Larabel
bef6df0cf1 Phoronix Test Suite 5.2.1 Khanino 2014-07-11 07:58:27 -05:00
Michael Larabel
db8c955464 phodevi: Add DDE / Deepin Desktop Environment detection 2014-07-06 15:07:22 -05:00
Michael Larabel
200be24751 pts-core: Rework result-file-to-text sub-command, show text-based graph results 2014-06-25 09:04:18 -05:00
Michael Larabel
cc815aea76 pts-core: Don't check OpenBenchmarking.org credentials when the network is down 2014-06-25 08:25:36 -05:00
Michael Larabel
e0f17f4cef pts_LineGraph: More tweaking of key alignment... 2014-06-08 11:56:05 -05:00
Michael Larabel
e5de1334a7 pts_LineGraph: Another minor tweak for key spacing 2014-06-08 11:35:20 -05:00
Michael Larabel
75334d3e6f phodevi: Fix for previous commit typo 2014-06-07 23:26:09 -05:00
Michael Larabel
e5e1cfab63 phodevi: Improve NVIDIA binary driver GPU utilization detection 2014-06-07 23:22:56 -05:00
Michael Larabel
e08c8c231e pts_Graph: This should actually be sufficient for rendering width... 2014-06-07 15:32:59 -05:00
Michael Larabel
11ceeac2e1 pts-core: Add VDPAU as a dependency to the xorg-video external dependency on more platforms 2014-06-07 15:29:45 -05:00
Michael Larabel
160cb97d8e pts_Graph: Few minor graph alignment corrections 2014-06-07 14:06:56 -05:00
Michael Larabel
2aaaa24b0a Phoronix Test Suite 5.2.0 2014-06-05 11:04:20 -05:00
Michael Larabel
be79fd9d73 pts-core: Support for GZ compressing result file XML data before uploading to OpenBenchmarking.org 2014-06-02 13:50:28 -05:00
Michael Larabel
08fcab1748 pts_Graph: More improvements... 2014-05-30 16:35:30 -05:00
Michael Larabel
8d824647d6 pts_svg_dom_gd: Support for translating SVG circle to GD drawing 2014-05-29 11:54:05 -05:00
Michael Larabel
9af7d5bc02 pts_Graph: More improvements... 2014-05-29 11:47:30 -05:00
Nick Zatkovich
421734cbe1 Merge branch 'master' of https://github.com/phoronix-test-suite/phoronix-test-suite 2014-02-19 05:35:03 -08:00
NickZ
712bed1f82 Merge pull request #1 from phoronix-test-suite/master
how does github work
2014-02-16 15:18:28 -08:00
414 changed files with 27580 additions and 16733 deletions

View File

@@ -1,8 +1,8 @@
Copyright 2008 - 2014 by Phoronix Media.
Copyright 2008 - 2016 by Phoronix Media.
Lead Architects:
- Michael Larabel <michael@phoronix.com>
- Matthew Tippett <matthew@phoronix.com>
There's also other individuals and organizations who have contributed patches, ideas, and made other contributions to the Phoronix Test Suite. These names are mentioned in the HTML / PDF documentation.
There's also other individuals and organizations who have contributed patches, ideas, and made other contributions to the Phoronix Test Suite.

2092
CHANGE-LOG

File diff suppressed because it is too large Load Diff

1652
ChangeLog Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,7 @@
Phoronix Test Suite 5.2.0m4
# Phoronix Test Suite 6.2.1
http://www.phoronix-test-suite.com/
#####################################
The Phoronix Test Suite is the most comprehensive testing and benchmarking
The **Phoronix Test Suite** is the most comprehensive testing and benchmarking
platform available for Linux, Solaris, Mac OS X, and BSD operating systems. The
Phoronix Test Suite allows for carrying out tests in a fully automated manner
from test installation to execution and reporting. All tests are meant to be
@@ -31,15 +30,15 @@ seamless collection of test profiles and/or additional test suites. A test
profile consists of a set of bash/shell scripts and XML files while a test suite
is a single XML file.
OpenBenchmarking.org <http://www.openbenchmarking.org/> also allows for
[OpenBenchmarking.org](http://www.openbenchmarking.org/) also allows for
conducting side-by-side result comparisons, a central location for storing and
sharing test results, and collaborating over test data. Phoromatic
<http://www.phoromatic.com/> is a complementary platform to OpenBenchmarking.org
and the Phoronix Test Suite for interfacing with Phoronix Test Suite client(s)
to automatically execute test runs on a timed, per-commit, or other
trigger-driven basis. Phoromatic is designed for enterprise and allows for the
easy management of multiple networked systems running Phoronix Test Suite
clients via a single web-based interface.
sharing test results, and collaborating over test data.
[Phoromatic](http://www.phoromatic.com/) is a complementary platform to
OpenBenchmarking.org and the Phoronix Test Suite for interfacing with Phoronix
Test Suite client(s) to automatically execute test runs on a timed, per-commit,
or other trigger-driven basis. Phoromatic is designed for enterprise and allows
for the easy management of multiple networked systems running Phoronix Test
Suite clients via a single web-based interface.
Professional support and custom engineering for the Phoronix Test Suite,
Phoromatic, and OpenBenchmarking.org is available by contacting
@@ -47,10 +46,9 @@ Phoromatic, and OpenBenchmarking.org is available by contacting
Full details on the Phoronix Test Suite setup and usage is available from the
included HTML/PDF documentation within the phoronix-test-suite package and from
the Phoronix Test Suite web-site.
the Phoronix Test Suite website.
INSTALLATION & SETUP:
#####################
## Installation & Setup
The Phoronix Test Suite is supported on Linux, *BSD, Solaris, Mac OS X, and
Windows systems. However, the most full-featured and well supported operating
@@ -63,32 +61,31 @@ architectures.
The Phoronix Test Suite can be installed for system-wide usage or run locally
without installation from the extracted tar.gz/zip package. The only hard
dependency on the Phoronix Test Suite is having command-line support for PHP
(PHP 5.2+) installed. A complete PHP stack (e.g. with web-server) is NOT needed,
but merely the PHP command-line support, which is widely available from
operating system package managers under the name php, php5-cli, or php5.
(PHP 5.3+) installed. A complete PHP stack (e.g. with web-server) is **not**
needed, but merely the PHP command-line support, which is widely available from
operating system package managers under the name `php`, `php5-cli`, or `php5`.
USAGE:
######
## Usage
The process to download, install/setup, execute, and report the results of a
benchmark can be as simple as a command such as *phoronix-test-suite benchmark
smallpt* to run a simple CPU test profile. If wishing to simply install a test,
it's a matter of running *phoronix-test-suite install <test or suite name>* and
to run it's *phoronix-test-suite run <test or suite name>*. There's also a batch
mode for non-interactive benchmarking by first running *phoronix-test-suite
batch-setup* and then using the *batch-run* sub-command rather than *run*.
benchmark can be as simple as a command such as `phoronix-test-suite benchmark
smallpt` to run a simple CPU test profile. If wishing to simply install a test,
it's a matter of running `phoronix-test-suite install <test or suite name>` and
to run it's `phoronix-test-suite run <test or suite name>`. There's also a batch
mode for non-interactive benchmarking by first running `phoronix-test-suite
batch-setup` and then using the `batch-run` sub-command rather than `run`.
Viewing installed system hardware and software is available via
*phoronix-test-suite system-info* or *phoronix-test-suite detailed-system-info*
`phoronix-test-suite system-info` or `phoronix-test-suite detailed-system-info`
for greater verbosity.
Facilitating a result comparison from OpenBenchmarking.org can be done by
running, for example, *phoronix-test-suite benchmark 1204293-BY-PHORONIX357* if
running, for example, `phoronix-test-suite benchmark 1204293-BY-PHORONIX357` if
wishing to compare the results of the
*http://openbenchmarking.org/result/1204293-BY-PHORONIX357* result file.
`http://openbenchmarking.org/result/1204293-BY-PHORONIX357` result file.
Additional information is available from the Phoronix Test Suite web-site
Additional information is available from the Phoronix Test Suite website
<http://www.phoronix-test-suite.com/> and the material bundled within the
phoronix-test-suite/documentation/ directory. A man page is also bundled with
`phoronix-test-suite/documentation/` directory. A man page is also bundled with
the phoronix-test-suite software.

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -23,9 +23,20 @@
if(!is_executable("phoronix-test-suite") || !is_dir("pts-core/"))
{
echo "\nYou must run this script from the root directory of the phoronix-test-suite/ folder!\n";
echo "Example: php5 pts-core/static/scripts/package-build-deb.php\n";
echo "Example: php5 deploy/deb-package/build-package-deb.php\n";
exit(0);
}
if(!is_executable('/usr/bin/dpkg'))
{
echo PHP_EOL . "dpkg must be present on the system to generate the phoronix-test-suite Debian package." . PHP_EOL . PHP_EOL;
exit;
}
if(!is_executable('/usr/bin/fakeroot'))
{
echo PHP_EOL . "fakeroot must be present on the system to generate the phoronix-test-suite Debian package." . PHP_EOL . PHP_EOL;
exit;
}
@require("pts-core/pts-core.php");
if(!defined("PTS_VERSION"))
@@ -49,6 +60,7 @@ shell_exec("chmod +x /tmp/pts-deb-builder/usr/bin/phoronix-test-suite");
$control_file = "Package: phoronix-test-suite\n";
$control_file .= "Version: " . $pts_version . "\n";
$control_file .= "Section: Utilities\n";
$control_file .= "Installed-Size: " . shell_exec("cd /tmp/pts-deb-builder/; du -s | cut -f 1");
$control_file .= "Priority: optional\n";
$control_file .= "Architecture: all\n";
$control_file .= "Depends: php5-cli, php5-gd, php5-json\n";
@@ -58,7 +70,7 @@ $control_file .= "Description: An Automated, Open-Source Testing Framework\n " .
$control_file .= "Homepage: http://www.phoronix-test-suite.com/ \n";
file_put_contents("/tmp/pts-deb-builder/DEBIAN/control", $control_file);
shell_exec("dpkg --build /tmp/pts-deb-builder ../phoronix-test-suite_" . $pts_version . "_all.deb");
shell_exec("fakeroot dpkg --build /tmp/pts-deb-builder ../phoronix-test-suite_" . $pts_version . "_all.deb");
shell_exec("rm -rf /tmp/pts-deb-builder");
?>

29
deploy/deployments.md Normal file
View File

@@ -0,0 +1,29 @@
# Pre-Scripted Phoronix Test Suite / Phoromatic Deployments
## deb-package: Generate A Debian/Ubuntu Package
Running `php deploy/deb-package/build-package-deb.php` from the main `phoronix-test-suite/` directory will generate a basic Phoronix-Test-Suite Debian package. This script depends upon `fakeroot` and `dpkg` being present on the system.
## rpm-package: Generate A RedHat/Fedora RPM Package
Running `php deploy/rpm-package/build-package-rpm.php` from the main `phoronix-test-suite/` directory will generate a basic Phoronix-Test-Suite RPM package for Red Hat / Fedora based distributions. This script depends upon `rpmbuild` being present on the system.
## phoromatic-upstart: Reference Upstart job files for Phoromatic
The `*.conf` files provide basic `phoromatic-client` and `phoromatic-server` job files for Upstart-powered Linux systems looking to deploy the Phoromatic on either the front or back-end. Read the Phoronix Test Suite documentation for more details.
## phoromatic-systemd: Reference systemd service files for Phoromatic
The `*.service` files provide basic `phoromatic-client` and `phoromatic-server` job files for systemd-based Linux systems looking to deploy Phoromatic for controlling the Phoronix Test Suite.
## phoromatic-initd: Reference sysvinit script for Phoromatic
The files provide basic `phoromatic-client` /etc/init.d implementation for older Linux systems.
## JuJu
Ubuntu JuJu deployment charm for the Phoronix Test Suite.
## farm-system-customizations: Example files of common system changes made to systems in the LinuxBenchmarking.com farm
Various scripts commonly used by the Phoronix reference farm / LinuxBenchmarking.com for reference purposes.

View File

@@ -0,0 +1,27 @@
Section "Monitor"
Identifier "Monitor0"
Modeline "1920x1080" 174.83 1920 2056 2248 2536 1080 1081 1084 1149 # 174.83 MHz, 68.94 kHz, 60.00 Hz
Option "PreferredMode" "1920x1080"
Option "Enable" "true"
EndSection
Section "Device"
Identifier "Device0"
Driver "intel" #Choose the driver used for this monitor
Option "DDC" "0"
Option "Virtualheads" "1"
Option "Vsync" "0"
Option "SwapbuffersWait" "0"
Option "DRI" "3"
EndSection
Section "Screen"
Identifier "Screen0" #Collapse Monitor and Device section to Screen section
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24 #Choose the depth (16||24)
SubSection "Display"
Depth 24
Modes "1920x1080" #Choose the resolution
EndSubSection
EndSection

View File

@@ -0,0 +1,23 @@
Section "Device"
Identifier "Device0"
Driver "radeon"
Option "SwapBuffersWait" "0"
Option "DRI "3"
EndSection
Section "Monitor"
Identifier "Monitor0"
Option "enable" "true"
Modeline "1920x1080" 148.50 1920 2448 2492 2640 1080 1084 1089 1125 +hsync +vsync
EndSection
Section "Screen"
Identifier "Fake"
Device "Device0"
Monitor "Monitor0"
Option "ConnectedMonitor" "Monitor0"
SubSection "Display"
Depth 24
Modes "1920x1080"
EndSubSection
EndSection

View File

@@ -0,0 +1,10 @@
#!/bin/sh
sudo apt-get install openssh-server git-core php5-cli
echo "GRUB_RECORDFAIL_TIMEOUT=0" >> /etc/default/grub
update-grub
sudo passwd
# check if needing "tty -s &&" for auto log-in user in ~/.profile

View File

@@ -0,0 +1,116 @@
# Overview
[Phoronix Test Suite](http://www.phoronix-test-suite.com/) (PTS) is a comprehensive
testing and benchmarking suite.
This charm requires Juju 1.23 or later and uses [Juju
Actions](https://jujucharms.com/docs/latest/authors-charm-actions/) to run the
benchmarks.
# Usage
First bootstrap Juju and then deploy pts:
juju bootstrap
juju deploy pts
From source:
cd phoronix-test-suite/deploy/juju
juju deploy --repository=. local:trusty/pts
# Configuration
juju set pts user-config="`cat /path/to/user-config.xml`"
# Running benchmarks
You can list all of the actions available with the following command:
juju action defined pts
This charm supports the following benchmarks:
- `cpu`: CPU centric stress tests
- `custom`: Custom stress tests
- `io`: IO centric tests.
- `memory`: Memory centric stress tets
- `smoke`: Smoke test, tests that complete quickly.
To execute a benchmark you can use a Juju action, in this example we run the cpu
stress tests on the first pts unit launched:
juju action do pts/0 cpu
or in this case, do a io test on pts unit 3:
juju action do pts/3 io
You can also run benchmarks across the entire pts service:
```sh
juju deploy pts # Deploys one unit
juju add-unit -n10 pts # Add 10 more nodes
juju action do pts memory # Exec the memory benchmark on all 11 pts nodes
```
If you want to run custom benchmarks:
juju action do pts/0 smoke tests='pts/apache pts/nginx'
# Check on actions
`juju action status` allows you to see the current status of an action. The benchmark results will be available once the action status has changed to `completed`.
```
juju action status 7707a291-be29-46aa-8d02-2daa8ee24ebf
actions:
- id: 7707a291-be29-46aa-8d02-2daa8ee24ebf
status: running
unit: pts/0
```
# Get results
Once an action has completed, you can fetch the results in yaml or json, in addition to the default *smart* format. The `wait` flag allows you to tell fetch how long to wait for results. This is useful if you want to block while waiting for an action to finish.
```
juju action fetch --wait 0 7707a291-be29-46aa-8d02-2daa8ee24ebf
results:
results:
cachebench-read:
units: MB/s
value: "1129.95"
cachebench-read-modify-write:
units: MB/s
value: "5158.10"
cachebench-write:
units: MB/s
value: "3601.54"
phpbench:
units: Score
value: "35783"
stream-add:
units: MB/s
value: "13187.50"
stream-copy:
units: MB/s
value: "12179.08"
stream-scale:
units: MB/s
value: "12292.20"
stream-triad:
units: MB/s
value: "13069.26"
status: completed
timing:
completed: 2015-03-23 18:47:32 +0000 UTC
enqueued: 2015-03-23 17:51:59 +0000 UTC
started: 2015-03-23 17:52:03 +0000 UTC
```
The raw output from pts will be stored on the unit, in timestamped directories under /opt/pts/results.
# Contact Information
- Maintainer: Adam Israel <adam.israel@canonical.com>
- [Phoronix Test Suite](http://www.phoronix-test-suite.com/) homepage

View File

@@ -0,0 +1,20 @@
custom:
description: "Custom stress tests"
params:
tests:
description: "Which PTS tests to run, space delimited. See README for full list"
type: string
default: ""
smoke:
description: Smoke test, tests that complete quickly.
params:
tests:
description: "Memory centric stress tests"
type: string
default: "pts/phpbench pts/cachebench pts/stream"
memory:
description: Memory centric stress tets
cpu:
description: CPU centric stress tests
io:
description: "IO centric tests."

View File

@@ -0,0 +1,27 @@
#!/bin/bash
set -e
run_benchmark() {
params="$@"
mkdir -p /opt/pts/results
rm -rf /root/.phoronix-test-suite
cp -Rpf files/dotfile-phoronix-test-suite /root/.phoronix-test-suite
run=`date +%s`
userconfig=`config-get user-config`
if [ ! -z "$userconfig" ]; then
echo $userconfig > /root/.phoronix-test-suite/user-config.xml
fi
phoronix-test-suite batch-install $params > /dev/null 2>&1
benchmark-start || true
phoronix-test-suite batch-run $params
benchmark-finish || true
rsync -aqz /root/.phoronix-test-suite /opt/pts/results/$run
scripts/parse /opt/pts/results/$run/.phoronix-test-suite/test-results/$(date +%Y)-*/test-1.xml
}

View File

@@ -0,0 +1,11 @@
#!/bin/bash
set -eux
# We're just sourcing the central benchmark, typically people will just put
# their benchmarks in one file.
. actions/benchmark
params=`action-get tests`
run_benchmark $params

View File

@@ -0,0 +1,9 @@
#!/bin/bash
set -e
# We're just sourcing the central benchmark, typically people will just put
# their benchmarks in one file.
. actions/benchmark
run_benchmark pts/ramspeed pts/stream

View File

@@ -0,0 +1 @@
custom

View File

@@ -0,0 +1,18 @@
options:
submit-results:
default: false
description: Submit the results of benchmark runs to OpenBenchmarking.org.
type: boolean
proxy-address:
default: ''
description: The address of the proxy server to use.
type: string
proxy-port:
default: 0
description: The port of the proxy server to use.
type: int
user-config:
default: ''
description: The contents of the user-config.xml to use for defaults.
type: string

View File

@@ -0,0 +1,60 @@
<?xml version="1.0"?>
<!--Phoronix Test Suite v3.6.1 (Arendal)-->
<?xml-stylesheet type="text/xsl" href="xsl/pts-user-config-viewer.xsl"?>
<PhoronixTestSuite>
<Options>
<OpenBenchmarking>
<AnonymousUsageReporting>FALSE</AnonymousUsageReporting>
<AnonymousSoftwareReporting>FALSE</AnonymousSoftwareReporting>
<AnonymousHardwareReporting>FALSE</AnonymousHardwareReporting>
<IndexCacheTTL>3</IndexCacheTTL>
<AlwaysUploadSystemLogs>FALSE</AlwaysUploadSystemLogs>
</OpenBenchmarking>
<General>
<DefaultBrowser></DefaultBrowser>
<UsePhodeviCache>TRUE</UsePhodeviCache>
<DefaultDisplayMode>DEFAULT</DefaultDisplayMode>
</General>
<Modules>
<LoadModules>toggle_screensaver, update_checker</LoadModules>
</Modules>
<Installation>
<RemoveDownloadFiles>TRUE</RemoveDownloadFiles>
<SearchMediaForCache>TRUE</SearchMediaForCache>
<SymLinkFilesFromCache>FALSE</SymLinkFilesFromCache>
<PromptForDownloadMirror>FALSE</PromptForDownloadMirror>
<EnvironmentDirectory>~/.phoronix-test-suite/installed-tests/</EnvironmentDirectory>
<CacheDirectory>~/.phoronix-test-suite/download-cache/</CacheDirectory>
</Installation>
<Testing>
<SaveSystemLogs>TRUE</SaveSystemLogs>
<SaveInstallationLogs>TRUE</SaveInstallationLogs>
<SaveTestLogs>TRUE</SaveTestLogs>
<RemoveTestInstallOnCompletion>FALSE</RemoveTestInstallOnCompletion>
<ResultsDirectory>~/.phoronix-test-suite/test-results/</ResultsDirectory>
<AlwaysUploadResultsToOpenBenchmarking>FALSE</AlwaysUploadResultsToOpenBenchmarking>
</Testing>
<TestResultValidation>
<DynamicRunCount>TRUE</DynamicRunCount>
<LimitDynamicToTestLength>20</LimitDynamicToTestLength>
<StandardDeviationThreshold>3.50</StandardDeviationThreshold>
<ExportResultsTo></ExportResultsTo>
</TestResultValidation>
<BatchMode>
<SaveResults>TRUE</SaveResults>
<OpenBrowser>FALSE</OpenBrowser>
<UploadResults>FALSE</UploadResults>
<PromptForTestIdentifier>FALSE</PromptForTestIdentifier>
<PromptForTestDescription>FALSE</PromptForTestDescription>
<PromptSaveName>FALSE</PromptSaveName>
<RunAllTestCombinations>TRUE</RunAllTestCombinations>
<Configured>TRUE</Configured>
</BatchMode>
<Networking>
<NoNetworkCommunication>FALSE</NoNetworkCommunication>
<Timeout>20</Timeout>
<ProxyAddress></ProxyAddress>
<ProxyPort></ProxyPort>
</Networking>
</Options>
</PhoronixTestSuite>

View File

@@ -0,0 +1,47 @@
PhoronixTestSuite:
Options:
Installation:
SymLinkFilesFromCache: "FALSE"
SearchMediaForCache: "TRUE"
EnvironmentDirectory: ~/.phoronix-test-suite/installed-tests/
PromptForDownloadMirror: "FALSE"
RemoveDownloadFiles: "TRUE"
CacheDirectory: ~/.phoronix-test-suite/download-cache/
Modules:
LoadModules: toggle_screensaver, update_checker
General:
DefaultDisplayMode: DEFAULT
DefaultBrowser:
UsePhodeviCache: "TRUE"
Networking:
ProxyPort:
ProxyAddress:
NoNetworkCommunication: "FALSE"
Timeout: "20"
BatchMode:
PromptSaveName: "FALSE"
SaveResults: "TRUE"
Configured: "TRUE"
RunAllTestCombinations: "TRUE"
PromptForTestIdentifier: "FALSE"
OpenBrowser: "FALSE"
UploadResults: "FALSE"
PromptForTestDescription: "FALSE"
TestResultValidation:
StandardDeviationThreshold: "3.50"
DynamicRunCount: "TRUE"
ExportResultsTo:
LimitDynamicToTestLength: "20"
Testing:
RemoveTestInstallOnCompletion: "FALSE"
ResultsDirectory: ~/.phoronix-test-suite/test-results/
SaveSystemLogs: "TRUE"
AlwaysUploadResultsToOpenBenchmarking: "FALSE"
SaveTestLogs: "TRUE"
SaveInstallationLogs: "TRUE"
OpenBenchmarking:
IndexCacheTTL: "3"
AlwaysUploadSystemLogs: "FALSE"
AnonymousUsageReporting: "FALSE"
AnonymousHardwareReporting: "FALSE"
AnonymousSoftwareReporting: "FALSE"

View File

@@ -0,0 +1,24 @@
#!/usr/bin/env ruby
# Author: Peter M. Petrakis <peter.petrakis@canonical.com>
require 'rubygems'
require 'nokogiri'
require 'active_support' # for enhanced Hash
# http://dirk.net/2010/08/05/convert-between-xml-hash-yaml-json-in-ruby-conversion-cheat-sheet/
# We can convert to JSON, YAML, whatever.
def return_hash()
pts_xml = 'dotfile-phoronix-test-suite/user-config.xml'
pts_array = Array.new
File.open(pts_xml).each { |x| pts_array.push(x) }
my_hash = Hash.from_xml(pts_array.to_s)
return my_hash
end
if __FILE__ == $PROGRAM_NAME
my_hash = return_hash()
File.open('/tmp/yaml-out', 'w') do |fd|
my_hash.to_yaml.each { |x| fd.puts(x) }
end
end
# vim:ts=2:sw=2:et:ft=ruby:

View File

@@ -0,0 +1 @@
phoronix-common

View File

@@ -0,0 +1 @@
phoronix-common

View File

@@ -0,0 +1,178 @@
#!/bin/bash -u
# cannot use set dash e with heredoc read variable assignment
# vim:ts=2:sw=2:et:ft=sh:
CWD=$(dirname $0)
TOP=${CHARM_DIR}
COMMAND=$(basename $0)
# there's some hardcoded XML that depends on this so not
# exposing this for now
PTSDIR="/root/.phoronix-test-suite"
PTSARCHIVE="/root/phoronix-archive"
# crazy right? :)
# http://stackoverflow.com/questions/1167746/how-to-assign-a-heredoc-value-to-a-variable-in-bash
# http://peterpetrakis.blogspot.com/2013/07/execute-complex-python-or-ruby-code.html
read -r -d '' upstart_status <<'EOF'
import sys, re
import traceback
from subprocess import Popen, PIPE
try:
state = sys.stdin.read().rstrip('\n')
g = re.match('^([\w-]+)(\s[\w+\/]+)(, \w+ \d+)?',state).groups()
# it always returns array.len = 3, if the last one isn't None, it's running
if g[-1] is not None:
print 'running'
else:
print 'stopped'
except Exception:
print 'running' # assume busted
exc_type, exc_value, exc_traceback = sys.exc_info()
lines = traceback.format_exception(exc_type, exc_value, exc_traceback)
cmd = 'juju-log %s' % lines
Popen(cmd.split(), stdout=PIPE)
EOF
build_testsuites() {
pts_mode=$(config-get pts_mode)
juju-log "pts: building test config: ${pts_mode}"
if [ $pts_mode = 'full' ]; then
# get each one and concat it all with some space padding
local sys=$(config-get pts_sys)
local cpu=$(config-get pts_cpu)
local mem=$(config-get pts_mem)
local io=$(config-get pts_io)
echo "${sys} ${cpu} ${mem} ${io}"
elif [ $pts_mode = 'custom' ]; then
local tmp=$(config-get pts_custom)
if [ -z $tmp ]; then
echo " " # otherwise facter gets angry
else
echo "${tmp}"
fi
else
# we default to something sensible
echo $(config-get pts_smoke)
fi
}
# I know I could have just used vars for this but this
# was a facter proving ground, the simplist possible use.
install_job() {
local job=/etc/init/cabs-runner.conf
rm -f $job
# the quotes around EOF suppress shell expansion
tee $job <<'EOF'
# run test suite
description "Run phoronix test suite"
task
script
mv -f /tmp/*tgz $(facter phoronix-archive) || :
PTSRESULTS="/tmp/pts-results-$(uname -n)-$(date +%y%m%d%H%M%S).tgz"
rm -rf $(facter phoronix-testdir) || :
cp -Rpf $(facter phoronix-source) $(facter phoronix-testdir) || :
echo 'Y N N' | phoronix-test-suite batch-install $(facter phoronix-testsuite)
phoronix-test-suite batch-run $(facter phoronix-testsuite)
tar cvf - $(facter phoronix-testdir) | gzip -c > "$PTSRESULTS"
chmod 775 /tmp/*tgz || :
end script
EOF
}
start_test() {
juju-log "pts: starting test run - `date +%y%m%d%H%M%S`"
initctl stop cabs-runner || :
initctl start --no-wait cabs-runner || :
}
stop_test() {
juju-log "pts: stopping test run - `date +%y%m%d%H%M%S`"
initctl stop cabs-runner || :
}
clear_facts() {
juju-log "puppet facter reset"
fact-del phoronix-testsuite 2>&1 > /dev/null || :
fact-del phoronix-testdir 2>&1 > /dev/null || :
}
install_phoronix() {
juju-log "installing phoronix"
clear_facts
stop_test
apt-get -qq update
apt-get install -qqy unzip build-essential default-jre-headless mesa-utils
apt-get install -qqy phoronix-test-suite
apt-get install -qqy python python-pip
pip install --upgrade charms.benchmark
# puppet helper to distribute facts between scripts
apt-get install -qqy facter-customfacts-plugin
# install this to allow querying via upstart to proceed
# for whatever reason, even though we're in 'config'
# when we enter config_changed, the initial job isn't
# created until we actually setup or run a test
install_job
install --mode=775 -d $PTSARCHIVE
fact-add phoronix-source "$TOP/files/dotfile-phoronix-test-suite"
}
config_changed_phoronix() {
# if we change this while a test is running we can't stop it
# as upstart loses track of the pids
# We are devolving a bit in the meanwhile because of a newly
# discovered bug in juju config where it coalesces config-set
# under some circumstances making a deterministic interface
# impossible.
#
# Until the benchmark-control interface is deployed... If you
# try to do a config-set while the benchmark is running, config-changed
# hook will simply die, prompting external intervention
local state=$(initctl status cabs-runner | python -c "$upstart_status")
juju-log "phoronix is $state"
[ $state == 'running' ] && exit 1
juju-log 'configuring pts'
local suite=$(build_testsuites)
fact-add phoronix-archive "$PTSARCHIVE"
fact-add phoronix-testsuite "$suite"
fact-add phoronix-testdir "$PTSDIR"
juju-log "confirm benchmark settings"
juju-log "archive: $(facter phoronix-archive)"
juju-log "suite: $(facter phoronix-testsuite)"
juju-log "dir: $(facter phoronix-testdir)"
}
case $COMMAND in
install)
install_phoronix
;;
start)
juju-log "starting phoronix is a nop, use the upstart job"
;;
stop)
juju-log "starting phoronix is a nop, use the upstart job"
;;
config-changed)
config_changed_phoronix
;;
upgrade-charm)
install_phoronix
;;
*)
juju-log "command not recognized"
esac
exit 0

View File

@@ -0,0 +1 @@
phoronix-common

View File

@@ -0,0 +1 @@
phoronix-common

View File

@@ -0,0 +1 @@
phoronix-common

View File

@@ -0,0 +1,6 @@
name: pts
maintainer: Adam Israel <adam.israel@canonical.com>
summary: The Phoronix Test Suite
description: |
Installs phoronix-test-suite and provides simple interface to enable
individual stress tests and runs them via upstart job

View File

@@ -0,0 +1 @@
15

View File

@@ -0,0 +1,50 @@
#!/usr/bin/python
import os
import re
import sys
import json
import subprocess
import xml.etree.ElementTree as ET
# Description keys to strip for multi-test readability
strips = ['Test: ', 'Type: ', 'PHP Benchmark Suite', ' ']
def action_set(key, val):
action_cmd = ['action-set']
key = key.strip().replace(' ', '-')
if isinstance(val, dict):
for k, v in val.iteritems():
k = k.strip().replace(' ', '-')
action_set('%s.%s' % (key, k), v)
return
action_cmd.append('%s=%s' % (key, val))
subprocess.check_call(action_cmd)
test_file = sys.argv[1]
if not os.path.isfile(test_file):
sys.exit(1)
tree = ET.parse(test_file)
root = tree.getroot()
for result in root.iter('Result'):
desc = result.find('Description').text
for s in strips:
desc = desc.replace(s, '')
test = result.find('Title').text.lower()
desc = re.sub(r'[\W]', '-', desc.lower())
value = result.find('Data').find('Entry').find('Value').text
units = result.find('Scale').text
print(test, desc, value, units)
key = 'results.%s-%s' % (test, desc) if desc else 'results.%s' % test
action_set(key, {'value': value, 'units': units})

View File

@@ -0,0 +1,73 @@
#!/bin/sh
#
# /etc/init.d/phoromatic-client
# Init script for Phoronix Test Suite Phoromatic client
#
# chkconfig: 2345 95 05
# description: Starting the Phoronix Test Suite Phoromatic client
#
# processname: phoromatic-client
# config: /etc/phoronix-test-suite.xml
# source function library
. /etc/rc.d/init.d/functions
RETVAL=0
prog="phoromatic-client"
start() {
echo -n $"Starting $prog:"
env DISPLAY=:0
/usr/bin/phoronix-test-suite phoromatic.connect
RETVAL=$?
[ "$RETVAL" = 0 ] && touch /var/lock/subsys/$prog
echo
}
stop() {
echo -n $"Stopping $prog:"
killproc $prog -TERM
RETVAL=$?
[ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/$prog
echo
}
reload() {
echo -n $"Reloading $prog:"
killproc $prog -HUP
RETVAL=$?
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
reload)
reload
;;
condrestart)
if [ -f /var/lock/subsys/$prog ] ; then
stop
sleep 6
start
fi
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
RETVAL=1
esac
exit $RETVAL

View File

@@ -0,0 +1,14 @@
[Unit]
Description=Phoronix Test Suite Phoromatic Client
After=syslog.target network-online.target
Documentation=man:phoronix-test-suite(1)
[Service]
TimeoutStartSec=300
ExecStart=/usr/bin/phoronix-test-suite phoromatic.connect
Environment=DISPLAY=:0
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,14 @@
[Unit]
Description=Phoronix Test Suite Phoromatic Server
After=syslog.target network.target
Documentation=man:phoronix-test-suite(1)
[Service]
TimeoutStartSec=300
ExecStart=/usr/bin/phoronix-test-suite start-phoromatic-server
Restart=on-failure
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,10 @@
# description "Phoronix Test Suite Phoromatic Client"
# author "Phoronix Media"
start on (local-filesystems and net-device-up IFACE!=lo)
stop on stopping network
stop on starting shutdown
env DISPLAY=:0
exec /usr/bin/phoronix-test-suite phoromatic.connect

View File

@@ -0,0 +1,8 @@
description "Phoronix Test Suite Phoromatic Client"
author "Phoronix Media"
start on runlevel [35]
stop on runlevel [0126]
env DISPLAY=:0
exec /usr/bin/phoronix-test-suite phoromatic.connect

View File

@@ -0,0 +1,10 @@
# description "Phoronix Test Suite Phoromatic Server"
# author "Phoronix Media"
start on (local-filesystems and net-device-up IFACE!=lo)
stop on stopping network
stop on starting shutdown
respawn
exec /usr/bin/phoronix-test-suite start-phoromatic-server

View File

@@ -3,7 +3,7 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008, Andrew Schofield
This program is free software; you can redistribute it and/or modify
@@ -20,12 +20,18 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
if(!is_file("phoronix-test-suite") || !is_dir("pts/") || !is_dir("pts-core/"))
if(!is_file("phoronix-test-suite") || !is_dir("pts-core/"))
{
echo "\nYou must run this script from the root directory of the phoronix-test-suite/ folder!\n";
echo "Example: php5 pts-core/scripts/package-build-rpm.php\n";
echo "Example: php5 deploy/rpm-package/build-package-rpm.php\n";
exit(0);
}
if(!is_executable('/usr/bin/rpmbuild'))
{
echo PHP_EOL . "rpmbuild must be present on the system. Try: yum install rpm-build." . PHP_EOL . PHP_EOL;
exit;
}
@require("pts-core/pts-core.php");
if(!defined("PTS_VERSION"))
@@ -34,21 +40,23 @@ if(!defined("PTS_VERSION"))
exit(0);
}
$rpm_v = PTS_VERSION . '.' . date('YmdHi');
shell_exec("rm -rf /tmp/pts-rpm-builder/");
shell_exec("mkdir -p /tmp/pts-rpm-builder/{BUILD,RPMS,S{OURCE,PEC,RPM}S,phoronix-test-suite-" . PTS_VERSION . "}");
shell_exec("cp -R ./ /tmp/pts-rpm-builder/phoronix-test-suite-" . PTS_VERSION . "/");
shell_exec("tar --exclude=.git -C /tmp/pts-rpm-builder/ -cjvf /tmp/pts-rpm-builder/SOURCES/phoronix-test-suite-" . PTS_VERSION . ".tar.bz2 phoronix-test-suite-" . PTS_VERSION . "/");
shell_exec("mkdir -p /tmp/pts-rpm-builder/{BUILD,RPMS,S{OURCE,PEC,RPM}S,phoronix-test-suite-" . $rpm_v . "}");
shell_exec("cp -R ./ /tmp/pts-rpm-builder/phoronix-test-suite-" . $rpm_v . "/");
shell_exec("tar --exclude=.git -C /tmp/pts-rpm-builder/ -cjvf /tmp/pts-rpm-builder/SOURCES/phoronix-test-suite-" . $rpm_v . ".tar.bz2 phoronix-test-suite-" . $rpm_v . "/");
$spec_file = "Summary: A Comprehensive Linux Benchmarking System\n";
$spec_file .= "Name: phoronix-test-suite\n";
$spec_file .= "Version: " . PTS_VERSION . "\n";
$spec_file .= "Version: " . $rpm_v . "\n";
$spec_file .= "Release: 1\n";
$spec_file .= "License: GPL\n";
$spec_file .= "Group: Utilities\n";
$spec_file .= "URL: http://www.phoronix-test-suite.com/\n";
$spec_file .= "Source: phoronix-test-suite-" . PTS_VERSION . ".tar.bz2\n";
$spec_file .= "Source: phoronix-test-suite-" . $rpm_v . ".tar.bz2\n";
$spec_file .= "Packager: Phoronix Media <trondheim-pts@phoronix-test-suite.com>\n";
$spec_file .= "Requires: php-cli, php-gd\n";
$spec_file .= "Requires: php-cli, php-xml\n";
$spec_file .= "BuildArch: noarch\n";
$spec_file .= "BuildRoot: %{_tmppath}/%{name}-%{version}-root\n";
$spec_file .= "%description\n";
@@ -65,18 +73,25 @@ $spec_file .= "rm -rf %{buildroot}\n";
$spec_file .= "%files\n";
$spec_file .= "%{_bindir}/phoronix-test-suite\n";
$spec_file .= "%{_datadir}/phoronix-test-suite/*\n";
$spec_file .= "%{_datadir}/applications/*\n";
$spec_file .= "%{_datadir}/icons/hicolor/*\n";
$spec_file .= "%{_datadir}/appdata/%{name}.appdata.xml\n";
$spec_file .= "%{_datadir}/doc/*\n";
$spec_file .= "%{_mandir}/man1/%{name}.1*\n";
$spec_file .= "%config(noreplace) %{_sysconfdir}/bash_completion.d\n";
$spec_file .= "%config(noreplace) %{_sysconfdir}/../usr/lib/systemd/system/*\n";
//$spec_file .= "%config(noreplace) %{_sysconfdir}/init/*\n";
$spec_file .= "%changelog\n";
$spec_file .= "* Fri Jun 06 2008 Andrew Schofield <andrew_s@fahmon.net>\n";
$spec_file .= "* " . date('D M d Y') . " Phoronix Media <phoronix@phoronix.com>\n";
$spec_file .= "- Initial release.";
file_put_contents("/tmp/pts-rpm-builder/SPECS/pts.spec", $spec_file);
shell_exec("mv -f " . pts_client::user_home_directory() . ".rpmmacros /tmp/pts-rpm-builder");
file_put_contents(pts_client::user_home_directory() .".rpmmacros", "%_topdir /tmp/pts-rpm-builder");
shell_exec("mv -f " . getenv('HOME') . "/.rpmmacros /tmp/pts-rpm-builder 2>&1");
file_put_contents(getenv('HOME') ."/.rpmmacros", "%_topdir /tmp/pts-rpm-builder");
shell_exec("rpmbuild -ba --verbose /tmp/pts-rpm-builder/SPECS/pts.spec");
shell_exec("cp /tmp/pts-rpm-builder/RPMS/noarch/phoronix-test-suite-" . PTS_VERSION . "-1.noarch.rpm ./");
shell_exec("rm -f " . pts_client::user_home_directory() . "/.rpmmacros");
shell_exec("mv -f /tmp/pts-rpm-builder/.rpmmacros " . pts_client::user_home_directory());
shell_exec("cp /tmp/pts-rpm-builder/RPMS/noarch/phoronix-test-suite-" . $rpm_v . "-1.noarch.rpm ./");
shell_exec("rm -f " . getenv('HOME') . "/.rpmmacros");
shell_exec("mv -f /tmp/pts-rpm-builder/.rpmmacros " . getenv('HOME') . ' 2>1');
shell_exec("rm -rf /tmp/pts-rpm-builder");
?>

View File

@@ -8,30 +8,27 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
- Support for multiple languages / internationalization.
- BLKID fall-back support for determining file-system [e.g. /sbin/blkid -s TYPE -o value /dev/sda1].
- Possibly restore "weighted suites" [http://phorogit.com/index.php?p=phoronix-test-suite.git&a=commitdiff&h=548e5c073cc90d92ac3f382ca4933d5f556e78c6&hb=444441f9be866f51920e0ad8ca3909951b4d90c5]
- Integrate recover-run command into the run command, auto-detect if the result file was a partial save and then ask if to perform run recovery' [ POSSIBLY DO THE SAME FOR FINISH-RUN]
- Integrate finish-run command into the run command, auto-detect if the result file was a partial save and then ask if to perform run recovery'
- Multi-threaded downloading of test files
- Numerous pts_render improvements [see in-line code comments]
- Optimus / DRI_PRIME=1 / xrandr --listproviders better GPU detection
- NVIDIA make use of UsedDedicatedGPUMemory as new GPU sensor
- Clean up all the WebSocket code and make it fit to spec
- Incremental result uploads support
- Check with Phodevi's parsers what other tools support JSON outputs - e.g. http://karelzak.blogspot.com/2015/06/json-output-for-basic-tools.html for cleaner parsing
### PTS-GRAPH ###
- Improve rendering of large data-sets, e.g. http://openbenchmarking.org/result/1205231-LI-BL460G6BE41
- Rotated text alignment for some PNG graphixs is sometimes off by 90/180 degrees compared to SVG, e.g. http://openbenchmarking.org/s/Compiler
- SVG graph improvements
- WebP image support
### OPENBENCHMARKING.ORG ###
- Shorten long change-logs on test profile pages - e.g. http://openbenchmarking.org/test/pts/hpcc
[ REST SUBJECT TO PHORONIX MEDIA NDA ]
### NEW TEST PROFILES ###
### POSSIBLE NEW TEST PROFILES ###
- Python-libmemcached [http://code.google.com/p/python-libmemcached/]
- Intel HiBench [https://github.com/intel-hadoop/HiBench]
- Hadoop Benchmarks
- Hadoop Benchmarks / TeraSort
- LATT Latency Tests [git://git.kernel.dk/latt.git]
- QMC Beaver [http://qmcbeaver.sourceforge.net/]
- Some potential interesting GPGPU tests [http://www.bealto.com/gpu-benchmarks.html]
@@ -42,7 +39,9 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
- http://hashcat.net/oclhashcat/
- Handbrake [http://handbrake.fr/]
- libMicro [https://github.com/portante/libMicro]
- http://markjstock.org/pages/rad_bench.html
- https://code.google.com/p/pyrit/
- https://github.com/acangiano/ruby-benchmark-suite
- http://www.nwchem-sw.org/index.php/Compiling_NWChem
- http://sourceforge.net/projects/ffsb/
- http://www.ratgpu.com/
@@ -53,7 +52,24 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
- http://www.capsl.udel.edu/splash/Download.html
- https://github.com/facebook/linkbench
- https://github.com/vasi/pixz
- stephentu/silo
- http://nondot.org/sabre/LLVMNotes/#benchmarks
- https://code.google.com/p/smhasher/wiki/SMHasher
- http://benchmarksgame.alioth.debian.org/u32/performance.php?test=fasta / http://benchmarksgame.alioth.debian.org/u32/program.php?test=nbody&lang=gcc&id=1#sourcecode
- https://openfoamwiki.net/index.php/Benchmarks_standard_v1
- Cassandra 1.2 stress - http://docs.datastax.com/en/cassandra/1.2/cassandra/tools/toolsCStress_t.html
- http://gcc.opensuse.org/c++bench-frescobaldi/
- http://dacapobench.org/
- https://github.com/GoogleCloudPlatform/PerfKitBenchmarker
- https://gooseberry.blender.org/gooseberry-production-benchmark-file/
- https://github.com/hhvm/oss-performance
- https://github.com/gormanm/mmtests
- https://github.com/pandegroup/fahbench
- https://github.com/STH-Dev/linux-bench
- http://anzwix.com/a/FFmpeg/CryptobenchAddSupportForBlowfish
- https://wiki.mikejung.biz/Benchmarking
- http://dacapobench.org/
- https://github.com/soumith/convnet-benchmarks
### WEB SOCKET / HTML5 USER INTERFACE WORK ###
@@ -65,14 +81,7 @@ PHORONIX TEST SUITE PUBLIC TODO LIST:
### PHOROMATIC ####
- Hookup the email notifications
- Group handling
- Get the Phoromatic search box implemented/working
- Editing/deleting lots of different possible items like scheduling meta-data
- Implement the complementary WebSocket communication to HTTP pulls
- More mobile form factor optimizations
- Ensure sane validating of more user input / resource uploads
- Hook up the system targeting / groups support for test schedules
- Restore some of the older phoromatic code for allowing reboots to happen during context script execution
- Hook up TriggerTarget for allowing event.php to optionally specify a sub-set of systems/groups to target for a given trigger
- Clean up the code and modularize more of the code into functions

View File

@@ -1,4 +1,4 @@
.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "5.2.0m4"
.TH phoronix-test-suite 1 "www.phoronix-test-suite.com" "6.2.1"
.SH NAME
phoronix-test-suite \- The Phoronix Test Suite is an extensible open-source platform for performing testing and performance evaluation.
.SH SYNOPSIS
@@ -6,18 +6,18 @@ phoronix-test-suite \- The Phoronix Test Suite is an extensible open-source plat
.br
.B phoronix-test-suite benchmark [test | suite]
.SH DESCRIPTION
The Phoronix Test Suite is the most comprehensive testing and benchmarking platform available for Linux, Solaris, Mac OS X, and BSD operating systems. The Phoronix Test Suite allows for carrying out tests in a fully automated manner from test installation to execution and reporting. All tests are meant to be easily reproducible, easy-to-use, and support fully automated execution. The Phoronix Test Suite is open-source under the GNU GPLv3 license and is developed by Phoronix Media in cooperation with partners.
The **Phoronix Test Suite** is the most comprehensive testing and benchmarking platform available for Linux, Solaris, Mac OS X, and BSD operating systems. The Phoronix Test Suite allows for carrying out tests in a fully automated manner from test installation to execution and reporting. All tests are meant to be easily reproducible, easy-to-use, and support fully automated execution. The Phoronix Test Suite is open-source under the GNU GPLv3 license and is developed by Phoronix Media in cooperation with partners.
.SH OPTIONS
.TP
.SH TEST INSTALLATION
.B install [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option will install the selected test(s) inside the testing environment directory). The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.
This option will install the selected test(s) inside the testing environment directory. The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.
.TP
.B install-dependencies [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option will install the external dependencies needed by the selected test(s) using the distribution's package management system. For example, some tests depend upon GCC for compiling code. If GCC is not detected on the system, the Phoronix Test Suite will attempt to install GCC using the distribution's package management system. If you are running this command as a local user, you may be prompted for the root password while the process is running. For unsupported distributions, the dependency names will be displayed along with common names for the package. The install-dependencies option needs to be supplied with the test name or suite as an argument. When using the install option, the external dependencies are automatically checked.
.TP
.B make-download-cache
This option will create a download cache for use by the Phoronix Test Suite.
This option will create a download cache for use by the Phoronix Test Suite. The download cache is created of test files already downloaded to the local system. If passing any test/suite names to make-download-cache, the needed files for those test profiles will first be automatically downloaded before creating the cache.
.TP
.B remove-installed-test [Test]
This option will permanently remove a installed test by the Phoronix Test Suite.
@@ -41,6 +41,9 @@ This option will query OpenBenchmarking.org to run random benchmarks and result
.B run-tests-in-suite
This option can be used if you wish to run all of the tests found in a supplied suite, but you wish to re-configure each of the test options rather than using the defaults supplied by the suite.
.TP
.B stress-run [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option will run the passed tests/suites in the multi-process stress-testing mode. The stress-run mode will not produce a result file but is rather intended for running multiple test profiles concurrently to stress / burn-in the system. The number of tests to run concurrently can be toggled via the PTS_CONCURRENT_TEST_RUNS environment variable and by default is set to a value of 2.
.TP
.SH BATCH TESTING
.B batch-benchmark [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option and its arguments are equivalent to the benchmark option, but the process will be run in the Phoronix Test Suite batch mode.
@@ -65,11 +68,14 @@ This option and its arguments pre-set the Phoronix Test Suite batch run mode wit
.TP
.SH OPENBENCHMARKING.ORG
.B clone-result [OpenBenchmarking ID] ...
This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied. More than one ID can be specified and the results will then be merged.
This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied.
.TP
.B list-recommended-tests
This option will list recommended test profiles for benchmarking sorted by hardware sub-system. The recommended tests are determined via querying OpenBenchmarking.org and determining the most popular tests for a given environment based upon the number of times a test profile has been downloaded, the number of test results available on OpenBenchmarking.org for a given test profile, the age of the test profile, and other weighted factors.
.TP
.B make-openbenchmarking-cache
This option will attempt to cache the test profile/suite meta-data from OpenBenchmarking.org for all linked repositories. This is useful if you're going to be running the Phoronix Test Suite / Phoromatic behind a firewall or without any Internet connection. Those with unrestricted Internet access or not utilizing a large local deployment of the Phoronix Test Suite / Phoromatic shouldn't need to run this command.
.TP
.B openbenchmarking-changes
This option will list recent changes to test profiles of enabled OpenBenchmarking.org repositories.
.TP
@@ -148,13 +154,13 @@ This option will list various details about installed tests and their usage.
This option will list all available test profiles that are available from the enabled OpenBenchmarking.org repositories but are NOT SUPPORTED on the given hardware/software platform. This is mainly a debugging option for those looking for test profiles to potentially port to new platforms, etc.
.TP
.SH ASSET CREATION
.B debug-benchmark [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the <em>run</em> option but will yield more information during the run process that can be used to debug issues with a test profile or to verify the test profile is functioning correctly.
.TP
.B debug-install [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the install option but will yield more information during the run process that can be used to debug issues with a test profile installer or to verify the test profile is functioning correctly.
.TP
.B debug-run [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
This option is intended for use by test profile writers and is identical to the <em>run</em> option but will yield more information during the run process that can be used to debug issues with a test profile or to verify the test profile is functioning correctly.
.TP
.B debug-test-download-links [Test | Suite]
.B debug-test-download-links [Test | Suite | OpenBenchmarking.org ID | Test Result]
This option will check all download links within the specified test profile(s) to ensure there are no broken URLs.
.TP
.B download-test-files [Test | Suite | OpenBenchmarking.org ID | Test Result] ...
@@ -179,9 +185,6 @@ This option can be used for validating a Phoronix Test Suite test suite as being
.B auto-sort-result-file [Test Result]
This option is used if you wish to automatically attempt to sort the results by their result identifier string.
.TP
.B copy-run-in-result-file [Test Result]
This option is used if you wish to change an existing test run within a saved results file.
.TP
.B edit-result-file [Test Result]
This option is used if you wish to edit the title and description of an existing result file.
.TP
@@ -212,6 +215,9 @@ This option is used if you wish to manually change the order in which test resul
.B result-file-to-csv [Test Result]
This option will read a saved test results file and output the system hardware and software information along with the results to a CSV output. The CSV (Comma Separated Values) output can then be loaded into a spreadsheet for easy viewing.
.TP
.B result-file-to-json [Test Result]
This option will read a saved test results file and output the basic result information to JSON (JavaScript Object Notation).
.TP
.B result-file-to-pdf [Test Result]
This option will read a saved test results file and output the system hardware and software information along with the results to a PDF file.
.TP
@@ -225,28 +231,28 @@ Open up the test results in the Phoronix Test Suite Result Viewer or on OpenBenc
.B analyze-all-runs [Test Result]
This option will generate a candlestick graph showing the distribution of results from all trial runs. The candlestick graph is similar to the Japanese candlestick charts used by the financial industry, except instead of representing stock data it is numerical result data from all trial runs.\n\nThe tip of the upper-wick represents the highest value of the test runs with the tip of the lower-wick representing the lowest value of all test runs. The upper-edge of the candle body represents the first or last run value and the lower-edge represents the first or last run value. Lastly, if the last run value is less than the first run value, the candle body is the same color as the graph background, otherwise the last run value is greater.
.TP
.B analyze-batch [Test Result]
This option will analyze a batch results file and plot out the performance impact from the different options onto a line graph (i.e. to see the impact that changing the video resolution has on the system's performance).
.TP
.B analyze-image-delta [Test Result]
This option will analyze a test result file if it contains any test results that produced an image quality comparison (IQC) and will render image deltas illustrating the difference between images from two test results.
.TP
.SH OTHER
.B build-suite
This option will guide the user through the process of generating their own test suite, which they can then run. Optionally, passed as arguments can be the test(s) or suite(s) to add to the suite to be created, instead of being prompted through the process.
.TP
.B debug-dependency-handler
This option is used for testing the distribution-specific dependency handler for external dependencies.
.TP
.B debug-render-test
This option is used during the development of the Phoronix Test Suite software for testing of the result and graph rendering code-paths This option will download a large number of reference test results from LinuxBenchmarking.com.
.TP
.B debug-self-test
This option is used during the development of the Phoronix Test Suite software for testing of internal interfaces, commands, and other common code-paths. The produced numbers should only be comparable for the same version of the Phoronix Test Suite, on the same hardware/software system, conducted on the same day of testing. This isn't intended as any scientific benchmark but simply to stress common PHP code-paths and looking for hot areas to optimize, etc.
.TP
.B enterprise-setup
This option can be run by enterprise users immediately after package installation or as part of an in-house setup script. Running this command will ensure the phoronix-test-suite program is never interrupted on new runs to accept user agreement changes and defaults the anonymous usage reporting to being disabled and other conservative defaults.
.TP
.B help
This option will display the list of available Phoronix Test Suite commands.
.TP
.B network-setup
This option allows the user to configure how the Phoronix Test Suite connects to OpenBenchmarking.org and other web-services. Connecting through an HTTP proxy can be configured through this option.
.TP
.B rebuild-composite-xml [Test Result]
This option can be used to rebuild your composite XML file in the event that the main result file was corrupted and the test-X.xml files are still present in the result file directory.
.TP
.B user-config-reset
This option can be used for resetting the Phoronix Test Suite user configuration file to its default state.
.TP
@@ -261,10 +267,10 @@ This option will display the Phoronix Test Suite client version.
Launch the Phoronix Test Suite HTML5 web user-interface in the local GUI mode (no remote web support) and attempt to auto-launch the web-browser.
.TP
.B start-remote-gui-server
Start the GUI web server and WebSocket server processes for remote (or local) access via the web-browser. The settings can be configured via the Phoronix Test Suite's user-config.xml configuration file.
Start the GUI web server and WebSocket server processes for remote (or local) access via the web-browser. The settings can be configured via the Phoronix Test Suite's XML configuration file.
.TP
.B start-ws-server
Manually start a WebSocket server for communication by remote Phoronix Test Suite GUIs, the Phoronix Test Suite Multi-System Commander, and other functionality.
Manually start a WebSocket server for communication by remote Phoronix Test Suite GUIs, the Phoronix Test Suite Multi-System Commander, and other functionality. This function checks the PTS_WEBSOCKET_PORT and PTS_WEBSOCKET_SERVER environment variables for configuration.
.TP
.SH MODULES
.B list-modules
@@ -279,9 +285,9 @@ This option will allow you to configure all available end-user options for a Pho
.B test-module [Phoronix Test Suite Module]
This option can be used for debugging a Phoronix Test Suite module.
.TP
.SH GUI / WEB SUPPORT
.B r
p
.SH PHOROMATIC
.B g
n
.TP
.SH SEE ALSO
.B Websites:
@@ -296,5 +302,5 @@ http://www.phoronix.com/
.br
http://www.phoronix.com/forums/
.SH AUTHORS
Copyright 2008 - 2014 by Phoronix Media, Michael Larabel.
Copyright 2008 - 2016 by Phoronix Media, Michael Larabel.
.TP

View File

@@ -0,0 +1,90 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Title>Phoronix Test Suite Phoromatic</Title>
</head>
<body>
<h1>Phoromatic Server</h1>
<h2>Introduction</h2>
<p>Phoromatic is a remote management system for the Phoronix Test Suite. Phoromatic allows the automatic (hence the name <em>Phoro-matic</em>) scheduling of tests, remote installation of new tests, and the management of multiple test systems all through an intuitive, easy-to-use web interface. Tests can be scheduled to automatically run on a routine basis across multiple test systems. The test results are then available from this central, secure location.</p>
<p>Phoromatic was originally introduced with Phoronix Test Suite 2.0 via Phoromatic.com as a project going back to 2008~2009. Phoromatic.com debuted as a hosted instance with the option of behind-the-firewall licensing for use within organizations. With Phoronix Test Suite 5.2 the model shifted to offer a local, open-source version of Phoromatic built into the Phoronix Test Suite code-base. Thanks to continued enterprise development, with Phoronix Test Suite 5.4 is now a fully-functioning, built-in version of Phoromatic that's open-source and can be used for behind-the-firewall testing without needing to push results to OpenBenchmarking.org and the ability to keep all results private.</p>
<p>Phoromatic in Phoronix Test Suite 5.4 also has the ability to support zero-conf network discovery using Avahi and the automatic distribution of needed test profiles/suites and test files. Phoronix Test Suite 5.4's Phoromatic is a significant breakthrough for open-source testing particularly those running this GPL benchmarking software within test labs and other large organizations.</p>
<h2>Features<h2>
<p>Built atop the Phoronix Test Suite, Phoromatic offers many features for both enterprise and community/personal users:</p>
<h3>Automated Scheduling</h3>
<p>Whether it is every evening at 6:00PM, once every Thursday at 10:00AM or somewhere in between, Phoromatic can schedule tests to be run at user-defined intervals. The testing schedules can be updated through Phoromatic web interface. After the test(s) have run, the results will be immediately uploaded to Phoromatic.</p>
<h3>Extensible</h3>
<p>Any test profile or test suite that is compliant with the Phoronix Test Suite specification will work with Phoromatic. Phoromatic is able to leverage the hundreds of test profiles and test suites currently in the Phoronix Test Suite via OpenBenchmarking.org, along with any custom or proprietary test profiles you or your company utilize. Additionally, the Phoromatic interface allows the user to construct their own test suite(s).</p>
<h3>Remote Testing</h3>
<p>Once the test system is setup, all testing and management of that system can be done remotely. There is no need to execute Phoronix Test Suite commands locally using the GUI or command line version, but instead nearly all of the same features are accessible from the Phoromatic interface.</p>
<h3>Multi-System Support</h3>
<p>A single Phoromatic account is able to manage multiple test systems running the Phoronix Test Suite. Phoromatic supports grouping together test systems, tagging, and other features to support effectively managing many test systems. From the Phoromatic interface, installed system hardware and software from a given system can also be viewed.</p>
<h3>Turn-Key Deployment</h3>
<p>No additional software needs to be installed to support Phoromatic; all that's needed is Phoronix Test Suite 5.4 or later for full compatibility. New test systems can easily be synced with a given Phoromatic account by running a single command from the Phoronix Test Suite client.</p>
<h3>Result Management</h3>
<p>Test results are automatically uploaded to the Phoromatic account and remain private unless you opt to upload them to OpenBenchmarking.org. From the Phoromatic interface, results from multiple test systems can easily be compared and multiple results from the same systems can be used to track performance over time. There are also options to look at the statistical significance of the results and other features to efficiently and effectively analyze the system's performance.</p>
<h3>Decentralized</h3>
<p>Once the Phoronix Test Suite running on the Phoromatic Server has been able to cache all of the OpenBenchmarking.org test files and the needed files for each test, Phoromatic with any Phoronix Test Suite clients on your LAN can run fully decentralized without the need for a constant stream of OpenBenchmarking.org communication or Internet connection for that matter. (The only exception would be if your local systems don't have all their needed external dependencies and your system's package manager would need to install components like a compiler or necessary system libraries.</p>
<h3>Fully Open-Source</h3>
<p>Phoromatic is now fully open-source within the Phoronix Test Suite code-base for fostering greater development and new capabilities. Patches are welcome and Phoronix Media is available to provide commercial support and custom engineering services around Phoromatic and the Phoronix Test Suite.</p>
<h2>Phoromatic Server Setup</h2>
<p>Phoromatic is built into the Phoronix Test Suite code-base and should be found in all packaged versions of the <strong>phoronix-test-suite</strong>. Starting the Phoromatic Server entails running phoronix-test-suite start-phoromatic-server after configuring the server information within <em>~/.phoronix-test-suite/user-config.xml</em>. The Phoromatic Server can with or without root permissions depending upon your firewall and the port numbers you wish to use for the server.</p>
<p>On the "client side", any up-to-date version of the Phoronix Test Suite can automatically communicate with the Phoromatic Server. If Avahi support is available (commonly in Linux distribution repositories as <u>avahi-tools</u>), there should be zero-conf discovery if the Phoromatic Server and client systems are on the same LAN. If a Phoronix Test Suite client discovers a Phoromatic Server, it will attempt to use it automatically as a local download cache. In the event of no Internet connection, it will also attempt to obtain the needed OpenBenchmarking.org test/suite meta-data from the Phoromatic Server based upon its archived meta-data. This allows the Phoronix Test Suite / Phoromatic deployment on the LAN to be self-sustaining without an Internet connection as long as the systems have all installed test dependencies.</p>
<p>Further configuration of the setup parameters for the Phoromatic Server and Phoronix Test Suite clients can be tuned via the <em>~/.phoronix-test-suite/user-config.xml</em> file. All control and configuration of the Phoromatic Server is done via the web-based interface when the Phoromatic Server is active.</p>
<p>The Phoromatic Server utilizes PHP/HHVM's built-in web-server capabilities and there's also a Phoronix Test Suite built-in WebSocket server that's also initiated for back-end processing. At this time there are no ports set by default for these services but must be defined within the user configuration file. With the Avahi zero-conf network discovery and other automated detection in place, there's little restrictions over the port selection.</p>
<p>Systemd and Upstart service files are shipped with the Phoronix Test Suite for those that wish to have the services automatically run as daemons. The only new requirements over the basic Phoronix Test Suite system requirements is having PHP-SQLite support installed and the newer version of PHP or HHVM is recommended for offering the best support.</p>
<h2>Example Deployments</h2>
<h3>Use Case A: Unrestricted Internet Access, Local Result Storage</h3>
<p>Systems on your network with unrestricted Internet access is the easiest and simplest deployment for the Phoronix Test Suite and Phoromatic. After installing the Phoronix Test Suite on the system you wish to designate the Phoromatic Server and have configured the <em>user-config.xml</em> file, simply run:</p>
<p><strong>$ phoronix-test-suite start-phoromatic-server</strong></p>
<p>Assuming you have no firewall or permission issues, the built-in web server and WebSocket server should proceed to initiate along with outputting the IP/port information for these services. Unless otherwise disabled from the user configuration file and if avahi-tools is present, the Phoromatic Server will be advertised with Avahi for zero-configuration networking.</p>
<p>From the Phoromatic web interface you are able to create an account and from there proceed with the creating of test schedules, updating settings, and connecting systems. From the "client systems" you wish to use as the benchmarking nodes, it's simply a matter of running <strong>phoronix-test-suite phoromatic.connect</strong> with zero-conf networking or otherwise follow the information from the Phoromatic web interface for manual setup with the IP/port information.</p>
<h3>Use Case B: No Internet Available To Client Systems</h3>
<p>It's possible to run the Phoronix Test Suite and Phoromatic Server without a persistent Internet connection as long as you are able to first download the necessary files to the Phoromatic Server. After installing the Phoronix Test Suite on the system you wish to designate the Phoromatic Server and have configured the <em>user-config.xml</em> file, a few commands from the system while having an Internet connection will be able to cache the needed data:</p>
<p><strong>$ phoronix-test-suite make-download-cache x264 xonotic ffmpeg</strong></p>
<p>This command will simply download all of the needed test files for the tests/suites passed to the sub-command. Alternatively you could also pass pts/all to cache all tests. It's important though to just cache the tests/suites you'll be using on your network. This will generate the test file download cache by default to <em>~/.phoronix-test-suite/download-cache/</em> or <em>/usr/share/phoronix-test-suite/download-cache/</em> depending upon your write permissions. You can always run this command later with more test files. Alternatively, if you already have a number of tests installed on the system, simply running "phoronix-test-suite make-download-cache" will generate the cache based upon the currently installed tests.</p>
<p><strong>$ phoronix-test-suite make-openbenchmarking-cache</strong></p>
<p>This command will cache as much of the OpenBenchmarking.org meta-data as possible for test profiles and test suites. After the above commands, the Phoromatic Server should no longer need a persistent Internet connection.</p>
<p><strong>$ phororonix-test-suite start-phoromatic-server</strong></p>
<p>Proceed to start the Phoromatic Server and operate as normal.</p>
<p>For the test clients without an Internet connection, as long as they're able to reach the Phoromatic Server, the Phoromatic Server should be able to automatically serve all of the needed test files download cache and OpenBenchmarking.org meta-data to the systems locally.</p>
<h3>Use Case C: Phoromatic Across The Internet</h3>
<p>If wishing to use the same Phoromatic Server across multiple geographic locations, it's easily possible -- you just lose out on the zero-conf networking ability. To let the Phoronix Test Suite client systems know about the remote Phoromatic Server, simply add the Phoromatic Server information to the client's <em>PhoromaticServers</em> element within the <em>user-config.xml</em>. Of course, make sure the Phoromatic Server has a globally resolvable IP address and its Phoromatic HTTP/WebSocket ports are open. Once informing the client of the Phoromatic Server, the use cases as above apply in the same manner.</p>
<h2>Client Setup</h2>
<p>From Phoronix Test Suite client systems running on the LAN, the following command will report all available detected Phoromatic Servers along with important server and debugging information:</p>
<p><strong>$ phoronix-test-suite phoromatic.explore</strong></p>
<p>With the following example output on finding one successful server:</p>
<p><em>IP: 192.168.1.211<br />
HTTP PORT: 5447<br />
WEBSOCKET PORT: 5427<br />
SERVER: PHP 5.5.9-1ubuntu4.4 Development Server<br />
PHORONIX TEST SUITE: Phoronix Test Suite v5.4.0m1 [5313]<br />
DOWNLOAD CACHE: 19 FILES / 2390 MB CACHE SIZE<br />
SUPPORTED OPENBENCHMARKING.ORG REPOSITORIES:<br />
pts - Last Generated: 05 Oct 2014 07:16</em></p>
<p>Phoromatic Servers are detected by the Phoronix Test Suite through Avahi or if manually configuring the Phoronix Test Suite clients to point to Phoromatic Servers. For networks without Avahi/auto-discovery support or for test systems that may be connecting from another network, the IP address and HTTP port number can be added to the local system's <em>~/.phoronix-test-suite/user-config.xml</em> with the <em>PhoromaticServers</em> element. Adding the <em>IP:port</em> (the Phoromatic Server's HTTP port) to the PhoromaticServers <em>user-config.xml</em> element for will perform targeted probing by the Phoronix Test Suite without any dependence on Avahi. Multiple Phoromatic Servers can be added if each IP:port is delimited by a comma.</p>
<p>To connect a Phoronix Test Suite system for benchmarking to an account, log into your Phoromatic account from the web-interface and on the main/system pages will be instructions along with a specially formed string to run, e.g. <em>phoronix-test-suite phoromatic.connect 192.168.1.211:5447/I0SSJY</em>. When running that command once on the system(s) to be synced to that account, as the administrator you'll be able to validate/approve the systems from the Phoromatic web interface. After that, whenever the system(s) are to be running benchmarks, simply have the <strong>phoronix-test-suite phoromatic.connect</strong> command running on the system (after the initial account has been synced, simply running <strong>phoronix-test-suite phoromatic.connect</strong> is enough for the system to find the server and its account).</p>
<h2>Root Administrator</h2>
<p>The root administrator account is able to manage the server-level settings, e.g. Phoromatic storage location and other global settings related to the Phoronix Test Suite / Phoromatic Server, from the web user-interface.</p>
<p>To enable the root administrator log-in, first from the server's command-line interface run <strong>phoronix-test-suite phoromatic.set-root-admin-password</strong> to set the password. Following that, you can log into the root administrator account via the web interface via the <em>rootadmin</em> user-name and the set password.</p>
<h2>Other Advice</h2>
<h3>Disable Internet Precaution</h3>
<p>If you have an Internet connection but want to ensure your Phoronix Test Suite client doesn't attempt to use it for any matter, via the <em>~/.phoronix-test-suite/user-config.xml</em> you can set <em>NoInternetCommunication</em> to <em>TRUE</em>. There's also a NoNetworkCommunication tag, but setting that to TRUE will disable any form of network communication -- including communication with the Phoromatic Server.</p>
<h3>Ports / Services</h3>
<p>The Phoromatic Server process currently relies upon a PHP/HHVM built-in web server process and a PTS-hosted WebSocket server. The web server process handles the web UI and much of the responsibilities of the Phoromatic Server. Over time the PTS WebSocket server will be increasingly utilized for bi-directional, real-time communication between the server and clients -- including for features like viewing real-time hardware sensors of client systems from the server UI.</p>
<h3>Systemd / Upstart</h3>
<p>Packaged with the Phoronix Test Suite are basic <em>phoromatic-client</em> and <em>phoromatic-server</em> configurations for both Upstart and systemd init systems. The <em>phoromatic-server</em> configuration will launch the Phoronix Test Suite's Phoromatic Server and the <em>phoromatic-client</em> service will attempt to connect to a <u>pre-configured</u> Phoromatic Server. The systemd service files will automatically be installed via the Phoronix Test Suite <em>install-sh</em> process while the Upstart jobs can be copied from <em>deploy/phoromatic-upstart/*</em> to <em>/etc/init</em>.</p>
<h3>Cache Verification</h3>
<p>To confirm the files accessible to Phoronix Test Suite client systems, from the Phoromatic Server web user-interface go to the <em>settings</em> page followed by the <em>cache settings</em> link to view information about the download and OpenBenchmarking.org caches. From the client systems, running <strong>phoronix-test-suite phoromatic.explore</strong> will also supply cache statistics.</p>
<h3>Log Files</h3>
<p>The Phoromatic Server will produce a log file of events / debugging information to <em>~/.phoronix-test-suite/phoromatic.log</em> or <em>/var/log/phoromatic.log</em> depending upon the service's permissions. When running the Phoronix Test Suite Phoromatic client, the log will be written to one of the respective locations in <em>phoronix-test-suite.log</em>.</p>
<h3>Multi-User Accounts</h3>
<p>For each time a user account is made from the Phoromatic web UI's log-in page, all of the test schedules, systems, and other account information is separate to allow for a completely isolated multi-user system. If a main administrator (the one creating the account) wishes to have multiple users sharing the same account data, that user can create additional accounts from the <em>Users</em> tab of their account. The main administrator can make an additional administrator account or a &quot;viewer&quot; account that can consume the account's data but not create/modify the schedules, systems, or other account details.</p>
<h3>
<h3>File Locations</h3>
<p>When running the Phoronix Test Suite Phoromatic Server as root, rather than using the <em>~/.phoronix-test-suite/</em> directory, the standard Linux file-system hierarchy standard is honored. The main storage path is <em>/var/lib/phoronix-test-suite/</em>, the user configuration file is <em>/etc/phoronix-test-suite.xml</em>, and <em>/var/cache/phoronix-test-suite/</em> for cache files.</p>
<h3>Uploading Other Test Results</h3>
<p>Unscheduled test results and other results found on connected systems to a Phoromatic account can upload the data to the Phoromatic Server using the <em>phoronix-test-suite phoromatic.upload-result &lt;result file identifier &gt;</em> sub-command.</p>
<h3>User Context File Logging</h3>
<p>For those utilizing custom set context script files as part of the Phoromatic test schedule, any important notes / log information can be written to the file specified by the <em>PHOROMATIC_LOG_FILE</em> environment variable set while running the user context scripts. The contents of that file is then sent to the Phoromatic Server otherwise the standard output of the script's execution is submitted to the Phoromatic Server for logging. These logs can then be viewed by the Phoromatic Server along with the test results. Other environment variables accessible when running a user context script include <em>PHOROMATIC_TRIGGER</em>, <em>PHOROMATIC_SCHEDULE_ID</em>, and <em>PHOROMATIC_SCHEDULE_PROCESS</em>.</p>
</body>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Module Options</title></head><body><p>The following list is the modules included with the Phoronix Test Suite that are intended to extend the functionality of pts-core. Some of these options have commands that can be run directly in a similiar manner to the other Phoronix Test Suite user commands. Some modules are just meant to be loaded directly by adding the module name to the LoadModules tag in ~/.phoronix-test-suite/user-config.xml or via the PTS_MODULES environmental variable. A list of available modules is also available by running <em>phoronix-test-suite list-modules.</em><hr></p><h2>Dummy Module</h2><p>This is a simple module intended for developers to just demonstrate some of the module functions.</p><p>phoronix-test-suite dummy_module.dummy-command</p><h2>OpenBenchmarking.org Ekofisk</h2><p>The Ekofisk client is used for connecting to OpenBenchmarking.org to facilitate the automatic running of tests, generally across multiple test nodes in a routine manner.</p><p>phoronix-test-suite ekofisk.start</p><p>phoronix-test-suite ekofisk.user-system-return</p><h2>Graphics Event Checker</h2><p>This module checks a number of events prior to and and after running a test to make sure the graphics sub-system was not put in a sour or unintended state by the application. For instance, it makes sure syncing to vBlank is not forced through the driver and that a graphics test has not left the display in an unintended mode.</p><h2>Graphics Override</h2><p>This module allows you to override some graphics rendering settings for the ATI and NVIDIA drivers while running the Phoronix Test Suite.</p><p>This module utilizes the following environmental variables: FORCE_AA, FORCE_AF.</p><h2>MATISK</h2><p>My Automated Test Infrastructure Setup Kit</p><p>phoronix-test-suite matisk.run</p><p>phoronix-test-suite matisk.template</p><h2>Phoromatic Client</h2><p>The Phoromatic client is used for connecting to a Phoromatic server (Phoromatic.com or a locally run server) to facilitate the automatic running of tests, generally across multiple test nodes in a routine manner. For more details visit http://www.phoromatic.com/. This module is intended to be used with Phoronix Test Suite 5.2+ clients and servers.</p><p>phoronix-test-suite phoromatic.connect</p><h2>Phoromatic Legacy Client</h2><p>The Phoromatic client is used for connecting to a Phoromatic server (Phoromatic.com or a locally run server) to facilitate the automatic running of tests, generally across multiple test nodes in a routine manner. For more details visit http://www.phoromatic.com/. THIS MODULE IS USED FOR CONNECTING TO THE PRE-2014 VERSION OF PHOROMATIC; THIS OLDER VERSION OF PHOROMATIC IS NO LONGER BEING ACTIVELY MAINTAINED. PLEASE UPGRADE TO PHORONIX-TEST-SUITE 5.2+ WITH ITS BUILT-IN PHOROMATIC SERVER.</p><p>phoronix-test-suite phoromatic_legacy.start</p><p>phoronix-test-suite phoromatic_legacy.user-system-return</p><p>phoronix-test-suite phoromatic_legacy.upload-results</p><p>phoronix-test-suite phoromatic_legacy.clone-results</p><p>phoronix-test-suite phoromatic_legacy.system-schedule</p><p>phoronix-test-suite phoromatic_legacy.system-schedule-today</p><p>phoronix-test-suite phoromatic_legacy.send-message</p><h2>Pushover.net</h2><p>Submit notifications to your iOS/Android mobile devices of test results in real-time as push notifications, etc. Using the Pushover.net API.</p><p>This module utilizes the following environmental variables: PUSHOVER_NET_USER.</p><h2>Result Notifier</h2><p>A notification module.</p><h2>System Monitor</h2><p>This module contains sensor monitoring support.</p><p>This module utilizes the following environmental variables: MONITOR, PERFORMANCE_PER_WATT.</p><h2>Timed Screenshot</h2><p>This is a module that will take a screenshot of the system at a pre-defined interval. ImageMagick must be installed onto the system prior to using this module.</p><p>This module utilizes the following environmental variables: SCREENSHOT_INTERVAL.</p><h2>Toggle Screensaver</h2><p>This module toggles the system's screensaver while the Phoronix Test Suite is running. At this time, the GNOME and KDE screensavers are supported.</p><p>This module utilizes the following environmental variables: HALT_SCREENSAVER.</p><h2>Update Checker</h2><p>This module checks to see if the Phoronix Test Suite -- and its tests and suites -- are up to date.</p></body></html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Module Options</title></head><body><p>The following list is the modules included with the Phoronix Test Suite that are intended to extend the functionality of pts-core. Some of these options have commands that can be run directly in a similiar manner to the other Phoronix Test Suite user commands. Some modules are just meant to be loaded directly by adding the module name to the LoadModules tag in ~/.phoronix-test-suite/user-config.xml or via the PTS_MODULES environmental variable. A list of available modules is also available by running <em>phoronix-test-suite list-modules.</em><hr></p><h2>Dummy Module</h2><p>This is a simple module intended for developers to just demonstrate some of the module functions.</p><p>phoronix-test-suite dummy_module.dummy-command</p><h2>Graphics Event Checker</h2><p>This module checks a number of events prior to and and after running a test to make sure the graphics sub-system was not put in a sour or unintended state by the application. For instance, it makes sure syncing to vBlank is not forced through the driver and that a graphics test has not left the display in an unintended mode.</p><h2>Graphics Override</h2><p>This module allows you to override some graphics rendering settings for the ATI and NVIDIA drivers while running the Phoronix Test Suite.</p><p>This module utilizes the following environmental variables: FORCE_AA, FORCE_AF.</p><h2>Linux Perf Framework Reporter</h2><p>Setting LINUX_PERF=1 will auto-load and enable this Phoronix Test Suite module. The module also depends upon running a modern Linux kernel (supporting perf) and that the perf binary is available via standard system paths.</p><p>This module utilizes the following environmental variables: LINUX_PERF.</p><h2>MATISK</h2><p>My Automated Test Infrastructure Setup Kit</p><p>phoronix-test-suite matisk.run</p><p>phoronix-test-suite matisk.template</p><h2>Performance Per Dollar/Cost Calculator</h2><p>Setting the COST_PERF_PER_DOLLAR= environment variable to whatever value of the system cost/component you are running a comparison on will yield extra graphs that calculate the performance-per-dollar based on the test being run. The COST_PERF_PER_DOLLAR environment variable is applied just to the current test run identifier.</p><p>This module utilizes the following environmental variables: COST_PERF_PER_DOLLAR.</p><h2>Phoromatic Client</h2><p>The Phoromatic client is used for connecting to a Phoromatic server (Phoromatic.com or a locally run server) to facilitate the automatic running of tests, generally across multiple test nodes in a routine manner. For more details visit http://www.phoromatic.com/. This module is intended to be used with Phoronix Test Suite 5.2+ clients and servers.</p><p>phoronix-test-suite phoromatic.connect</p><p>phoronix-test-suite phoromatic.explore</p><p>phoronix-test-suite phoromatic.upload-result</p><p>phoronix-test-suite phoromatic.set-root-admin-password</p><p>phoronix-test-suite phoromatic.list-results</p><p>phoronix-test-suite phoromatic.clone</p><p>phoronix-test-suite phoromatic.export-results-for-account-schedules</p><h2>Pushover.net</h2><p>Submit notifications to your iOS/Android mobile devices of test results in real-time as push notifications, etc. Using the Pushover.net API.</p><p>This module utilizes the following environmental variables: PUSHOVER_NET_USER.</p><h2>Result Notifier</h2><p>A notification module.</p><h2>System Monitor</h2><p>This module contains sensor monitoring support.</p><p>This module utilizes the following environmental variables: MONITOR, PERFORMANCE_PER_WATT, MONITOR_INTERVAL, MONITOR_PER_RUN.</p><h2>Timed Screenshot</h2><p>This is a module that will take a screenshot of the system at a pre-defined interval. ImageMagick must be installed onto the system prior to using this module.</p><p>This module utilizes the following environmental variables: SCREENSHOT_INTERVAL.</p><h2>Toggle Screensaver</h2><p>This module toggles the system's screensaver while the Phoronix Test Suite is running. At this time, the GNOME and KDE screensavers are supported.</p><p>This module utilizes the following environmental variables: HALT_SCREENSAVER.</p><h2>Update Checker</h2><p>This module checks to see if the Phoronix Test Suite -- and its tests and suites -- are up to date.</p></body></html>

View File

@@ -8,7 +8,9 @@
<p>Among the distributions where the Phoronix Test Suite has been officially tested include Ubuntu, Fedora, Mandriva / Mageia, Gentoo, PCLinuxOS, Arch Linux, Pardus, OpenSuSE, Optware, webOS, Zenwalk, CentOS, Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, Debian, Mint, MEPIS, and Amazon Linux EC2.</p>
<p>Among the tested BSD distributions are FreeBSD, PC-BSD, NetBSD, OpenBSD, Debian GNU/kFreeBSD, and DragonflyBSD. Tested Solaris distributions include OpenSolaris, Solaris Express 11, Oracle Solaris 11, OpenIndiana, Illumos, and Nexenta.</p>
<h1>Dependencies</h1>
<p>The only required dependency for the Phoronix Test Suite is PHP 5.2 or newer. On Linux distributions, the needed package is commonly called <em>php5-cli</em> or <em>php-cli</em> or <em>php</em>. It is important to note that only PHP for the command-line is needed and not a web server (Apache) or other packages commonly associated with PHP and its usage by web-sites. The PHP5 version required is PHP 5.2+ and can also be found at <a href="http://www.php.net/">www.php.net</a>.</p>
<p>The only required dependency for the Phoronix Test Suite is PHP 5.3 or newer. On Linux distributions, the needed package is commonly called <em>php5-cli</em> or <em>php-cli</em> or <em>php</em>. It is important to note that only PHP for the command-line is needed and not a web server (Apache) or other packages commonly associated with PHP and its usage by web-sites. The PHP5 version required is PHP 5.3+ and can also be found at <a href="http://www.php.net/">www.php.net</a>.</p>
<p>For installing PHP on Windows, the <a href="https://www.microsoft.com/web/platform/phponwindows.aspx">Microsoft Web Platform Installer</a> provides an automated alternative that will install PHP into the directory expected by Phoronix Test Suite. Users opting to install PHP manually must extract the files to <em>C:\Program Files (x86)\PHP\</em> or a subdirectory.</p>
<p>As part of the PHP requirement, the following PHP extensions are required and/or highly recommended in order to take advantage of the Phoronix Test Suite capabilities:</p>
<ul>
<li><strong>PHP DOM</strong> is needed for XML operations and must be installed for the Phoronix Test Suite to function.</li>
@@ -46,14 +48,17 @@
<h2>OpenSolaris Installation</h2>
<p>The Phoronix Test Suite core (pts-core) is supported on Solaris and OpenSolaris platforms, but some features may not fully function. Additionally, the PTS External Dependencies feature is supported on OpenSolaris using IPS (the Image Packaging System). However, not all test profiles are supported on Solaris / OpenSolaris, and it may be in violation of your end-user agreement to perform such benchmarks on the Sun Solaris operating system. Using the OpenSolaris Image Packaging System, installing <em>SUNWphp524</em> will provide PHP, PHP GD, and related dependencies. The Phoronix Test Suite has also been tested on Oracle Solaris 11 Express, OpenIndiana, StormOS, and Nexenta Core Platform.</p>
<h2>BSD Installation</h2>
<p>The Phoronix Test Suite also supports *BSD operating systems. However, like the Solaris support, not all test profiles are compatible with BSD operating systems, but pts-core has been tested against FreeBSD 7.x/8.x/9.x, NetBSD, PC-BSD 7/8/9, DragonFlyBSD 3.0/3.2/3.4/3.6, and OpenBSD 4.4/4.6. The Phoronix Test Suite will also work with Debian GNU/kFreeBSD.</p>
<p>For DragonFlyBSD, it's a matter of just using <em>pkg_radd</em> with php5, php5-json, php5-dom, and php5-zip or <em>pkgsrc</em>. Under FreeBSD/PC-BSD, PHP can be obtained from the <em>php5</em> and <em>php5-extensions</em> Ports collection.</p>
<p>The Phoronix Test Suite also supports *BSD operating systems. However, like the Solaris support, not all test profiles are compatible with BSD operating systems, but pts-core has been tested against FreeBSD 7.x/8.x/9.x, NetBSD, PC-BSD 7/8/9, DragonFlyBSD 3.0/3.2/3.4/3.6/4.2, and OpenBSD 4.4/4.6. The Phoronix Test Suite will also work with Debian GNU/kFreeBSD.</p>
<p>For DragonFlyBSD, it's a matter of just using <em>pkg_radd</em> with php5, php5-json, php5-dom, and php5-zip or <em>pkgsrc</em>. With DragonFlyBSD using dports, the command is <em>pkg install php5 php5-dom php5-zip php5-json php5-simplexml</em>. Under FreeBSD/PC-BSD, PHP can be obtained from the <em>php5</em> and <em>php5-extensions</em> Ports collection.</p>
<h2>Mac OS X Installation</h2>
<p>The Phoronix Test Suite is fully supported on Apple's Mac OS X operating system as of Mac OS X 10.5 with improved support under Mac OS X 10.6. PHP ships with Mac OS X by default so it's simply a matter of downloading the Phoronix Test Suite package, extracting it, and running the executable. For tests that rely upon a compiler, Apple's XCode with GCC and LLVM can be utilized.</p>
<h2>Windows Installation</h2>
<p>The Phoronix Test Suite support on Windows is in development and will function just fine, but is not yet feature complete compared to the other operating systems support. At this time the Phoronix Test Suite client is dependent upon PHP being installed to <em>C:\Program Files (x86)\PHP\php</em>. The Phoronix Test Suite also uses <a href="http://www.cpuid.com/cpuz.php">CPU-Z</a> for much of the hardware detection support on Windows and is dependent upon CPU-Z being installed to <em>C:\Program Files\CPUID\CPU-Z\cpuz.exe</em> if you wish to utilize this hardware reporting feature. In terms of the Microsoft Windows support, right now the Phoronix Test Suite is developed and solely tested against Microsoft Windows 7 x64 and Microsoft Windows 8 x64.</p>
<p>The Phoronix Test Suite support on Microsoft Windows is in development and will function just fine, but is not yet feature complete compared to the other operating systems support. Only a small subset of test profiles, mostly related to graphics, are supported. In terms of the version support, right now the Phoronix Test Suite is developed and tested solely against Microsoft Windows 7 x64 and Microsoft Windows 8 x64.</p>
<p>At this time the Phoronix Test Suite client is dependent upon the <em>php.exe</em> executable being installed to <em>C:\Program Files (x86)\PHP\ </em> or one of its subdirectories (see PHP installation notes above). Once this requirement is met, simply download the Phoronix Test Suite package, extract it to a directory of your choice, and run <em>phoronix-test-suite.bat</em></p>
<p>The Phoronix Test Suite also uses <a href="http://www.cpuid.com/cpuz.php">CPU-Z</a> for much of the hardware detection support on Windows and is dependent upon CPU-Z being installed to <em>C:\Program Files\CPUID\CPU-Z\cpuz.exe</em> if you wish to utilize this hardware reporting feature. </p>
<p>NOTE: because of lack of external dependencies support, it is necessary to manually download and install the files for some test profiles, such as the Unigine graphics benchmarks. See Troubleshooting for more information.</p>
<h2>Facebook HipHop</h2>
<p>The Phoronix Test Suite can use Facebook's <a href="https://github.com/facebook/hiphop-php">HopHop HHVM</a> virtual machine as an alternative to the de facto PHP implementation. The Phoronix Test Suite has been tested against HHVM 2.0. If HHVM is present on the system but not PHP, it will automatically be used by the Phoronix Test Suite. Alternatively, the <em>PHP_BIN</em> environment variable can be set to point to an alternative <em>hhvm</em> binary.</p>
<p>The Phoronix Test Suite can use Facebook's <a href="https://github.com/facebook/hiphop-php">HipHop HHVM</a> virtual machine as an alternative to the de facto PHP implementation. The Phoronix Test Suite has been tested against HHVM 2.0. If HHVM is present on the system but not PHP, it will automatically be used by the Phoronix Test Suite. Alternatively, the <em>PHP_BIN</em> environment variable can be set to point to an alternative <em>hhvm</em> binary.</p>
<p>The Phoronix Test Suite also supports the older version of Facebook HipHop that serves as a PHP to C++ translator and compiler with GCC. This support though is primitive and not officially supported. To compile the Phoronix Test Suite using HipHop/GCC, run <em>find . -name "*.php" > files.list && hphp --input-list=files.list -k 1 --log=3 --include-path="." --cluster-count=50 -v "AllDynamic=true" -v "AllVolatile=true"</em> from the root <em>phoronix-test-suite/</em> directory. It can then be executed in the form of <em>/tmp/hphp_XXX/program -f pts-core/phoronix-test-suite.php system-info</em>.</p>
</body>
</html>

View File

@@ -46,7 +46,7 @@
<p><strong>PTS_DISPLAY_MODE</strong></p>
<p>If you wish to load a non-default display mode for a single instance, specify the mode in this variable.</p>
<p><strong>TOTAL_LOOP_TIME</strong></p>
<p>When running any test(s), if you would like the test(s) to continue running as a loop until a certain time has been reached, this variable can be used. The value should be the number of minutes to run the testing process before the loop is ended.</p>
<p>When running any test(s), if you would like the test(s) to continue running as a loop until a certain time has been reached, this variable can be used. The value should be the number of minutes to run the testing process before the loop is ended. The testing will finish whenever the currently active test has finished once the time has elapsed. The minimum value allowed is 10 minutes.</p>
<p><strong>LIMIT_ELAPSED_TEST_TIME</strong></p>
<p>If you want to ensure that the time for a given Phoronix Test Suite process doesn't elapse past a certain number of minutes, specify the number of minutes for this environment variable. When the amount of time spent testing exceeds that amount, the testing will end prematurely while still saving the tests that were completed in time.</p>
<p><strong>TOTAL_LOOP_COUNT</strong></p>
@@ -57,6 +57,8 @@
<p>This is similar to the FORCE_TIMES_TO_RUN option but will only be used if the test profile's run count is less than this defined value.</p>
<p><strong>NO_FILE_HASH_CHECKS</strong></p>
<p>To disable MD5/SHA256 check-sums from being checked when downloading test files, set this variable to 1. This variable used to be known as <em>NO_MD5_CHECKS</em>, which is still honored but was changed to <em>NO_FILE_HASH_CHECKS</em> to reflect other kind of file hash sum checks.</p>
<p><strong>NO_HTTPS</strong></p>
<p>Set this environment variable to 1 if you don't wish to use HTTPS download links for test profiles (or the system/network lacks HTTPS support). When enabled, HTTPS links will then be done over HTTP.</p>
<p><strong>PTS_DOWNLOAD_CACHE</strong></p>
<p>While non-standard Phoronix Test Suite download caches can be specified within the <em>user-config.xml</em> file, an additional directory to look for potential Phoronix Test Suite download files can be specified by this variable.</p>
<p><strong>GRAPH_HIGHLIGHT</strong></p>

View File

@@ -34,6 +34,13 @@
<p>- If you want the specified test(s) to run in a loop for a set period of time, use the <em>TOTAL_LOOP_TIME</em> environment variable. For instance, running <em>TOTAL_LOOP_TIME=120 phoronix-test-suite benchmark ffmpeg</em> would keep running the ffmpeg test profile for 120 minutes.</p>
<p>- If you want the specified test(s) to run in a loop for a set number of times, use the <em>TOTAL_LOOP_COUNT</em> environment variable. For instance, running <em>TOTAL_LOOP_COUNT=3 phoronix-test-suite benchmark ffmpeg</em> would keep running the ffmpeg test profile three times.</p>
<p>- When any tests are being installed and when tests are being run, a lock is created in the system's temporary directory with the name <em>phoronix-test-suite.active</em> (i.e. <em>/tmp/phoronix-test-suite.active</em>) and is removed upon completion. Thus if you have any system scripts that you wish to run when tests are not running or being installed as to not impact the results, one simple way to handle this is by having the script check for the existence of this lock.</p>
<h2>Troubleshooting</h2>
In the event that a test profile fails to install or run, the following general troubleshooting steps may be helpful:
<p>- If a test profile fails immediately after starting, check the test profile's directory in <em>~/.phoronix-test-suite/installed-tests/</em> to confirm that the needed files are present. On platforms without External Dependencies support (Windows), it may be necessary to download the files manually and place them in this directory. If this is the case, you will notice that the "Downloading" phase of test installation completes instantly.</p>
<p>- Inspect the scripts inside the above test profile's directory and confirm that directories or search paths for the test correspond to those on your system</p>
<p>- Try running the test profile with the <em>debug-benchmark</em> command, or reinstalling with the <em>debug-install</em> command and make note of any unusual output.
<h2>Configuration</h2>
<p>- The user configuration options for the Phoronix Test Suite are stored in <em>~/.phoronix-test-suite/user-config.xml</em>. The batch mode options are also stored within this file and those can be adjusted by running <em>phoronix-test-suite batch-setup</em>.</p>
<p>- The colors, size, and other attributes for the graphs found within the Phoronix Test Suite Results Viewer can be modified via the file <em>~/.phoronix-test-suite/graph-config.json</em>.</p>

File diff suppressed because one or more lines are too long

View File

@@ -4,14 +4,6 @@
</head>
<body>
<h1>Overview</h1>
<p><em>Phoromatic is a remote management system for the Phoronix Test Suite. Phoromatic allows the automatic (hence the name Phoromatic) scheduling of tests, remote installation of new tests, and the management of multiple test systems all through an intuitive, easy-to-use web interface. Tests can be scheduled to automatically run on a routine basis across multiple test systems. The test results are then available from this central, secure location.</em></p>
<h1>Basic Instructions</h1>
<ol>
<li>Create a free account at <a href="http://www.phoromatic.com/">Phoromatic.com</a>. Phoromatic can also be installed on a LAN / intranet for professional and enterprise support customers of the Phoronix Test Suite.</li>
<li>On each test system, install the latest version of the Phoronix Test Suite and then run <em>phoronix-test-suite module-setup phoromatic</em>. During this process it will ask the user for an account code and activiation ID that are shown from the <em>Systems</em> page of your Phoromatic account.</li>
<li>Phoromatic cannot install external dependencies for a test if the Phoronix Test Suite is not running as root, so it would be recommended to now run <em>phoronix-test-suite install-dependencies all</em>. Alternatively, you can also run <em>phoronix-test-suite install all</em> to install all tests at this time, or begin selectively installing the tests you wish to use. Phoromatic can install tests automatically though, it just cannot install external dependencies when the user is not root.</li>
<li>When you are all set, run <em>phoronix-test-suite phoromatic.start</em>, which begins the process of the Phoronix Test Suite listening to the Phoromatic server waiting for installation and run commands, etc. The installed system software/hardware is also reported all automatically, etc.</li>
</ol>
<p>For more information on Phoromatic and a detailed guide, read <a href="http://www.phoronix.com/vr.php?view=14347">Building A Benchmarking Test Farm With Phoromatic</a>.</p>
<p>The Phoronix Test Suite now features its own built-in Phoromatic server and client implementations. See the <em>phoromatic.pdf</em> / <em>phoromatic.html</em> documentation for more information on this advanced capability.</p>
</body>
</html>

View File

@@ -3,55 +3,4 @@
<Title>Development Credits</Title>
</head>
<body>
<p>The Phoronix Test Suite is based upon the extensive testing and internal tools developed by <a href="http://www.phoronix.com/">Phoronix.com</a> since 2004 along with support from leading tier-one computer hardware and software vendors. The principal architects of the Phoronix Test Suite are <a href="http://www.michaellarabel.com/">Michael Larabel</a> and Matthew Tippett. The phoronix-test-suite, pts_Graph, bilde_renderer, Phodevi, tandem_Xml, and nye_Xml are some of the related open-source projects provided by <a href="http://www.phoronix-media.com/">Phoronix Media</a>.</p>
<p>Below is a list of individuals and organizations that have contributed upstream patches, test profiles, and/or made other contributions to the Phoronix Test Suite that Phoronix Media would like to thank.</p>
<ul>
<li>Achim Gottinger</li>
<li>Achim Lange</li>
<li>Andrew Schofield</li>
<li>Apaige</li>
<li>Ben Kero</li>
<li>Bryan Quigley</li>
<li>Chris Campbell</li>
<li>Daniel D&iacute;az</li>
<li>Daniel Stodden / Citrix</li>
<li>Dean Hilkewich</li>
<li>ESET s.r.o.</li>
<li>Fatima Sheremetyeva</li>
<li>Fujitsu</li>
<li>Hans Ulrich Niedermann</li>
<li>Intel Open-Source Technology Center</li>
<li>Jeroen van Rijn</li>
<li>Johannes Obermayr</li>
<li>Juan Aguado</li>
<li>J&ouml;rg Schirottke</li>
<li>Kenney Phillis</li>
<li>Kim Bisgaard</li>
<li>Laminar Research</li>
<li>Marco Poletti</li>
<li>Matthew Tippett</li>
<li>Michael Larabel</li>
<li>Michael Opdenacker</li>
<li>Michael Ploujnikov</li>
<li>Michal Zatloukal</li>
<li>Mufasa72</li>
<li>Nicholas Omann</li>
<li>NickZ</li>
<li>Nils Kneuper</li>
<li>NVIDIA Corporation</li>
<li>Pekka Panula</li>
<li>Peter Kraus</li>
<li>Rainer K&ouml;nig</li>
<li>SOMA Networks, Inc.</li>
<li>Stefan Doesinger</li>
<li>Stepan Hrbek</li>
<li>St&eacute;phane Teletch&eacute;a</li>
<li>Sun Microsystems</li>
<li>Tao Zhang</li>
<li>Thomas Klausner</li>
<li>Unigine Corp</li>
<li>Vadim Peretokin</li>
<li>Zachary Powers</li>
</ul>
</body>
</html>
<p>The Phoronix Test Suite is based upon the extensive testing and internal tools developed by <a href="http://www.phoronix.com/">Phoronix.com</a> since 2004 along with support from leading tier-one computer hardware and software vendors. The principal architects of the Phoronix Test Suite are <a href="http://www.michaellarabel.com/">Michael Larabel</a> and Matthew Tippett. The phoronix-test-suite, pts_Graph, Phoromatic, Phodevi, tandem_Xml, and nye_Xml are some of the related open-source projects provided by <a href="http://www.phoronix-media.com/">Phoronix Media</a>.</p>

View File

@@ -2,26 +2,24 @@ The Phoronix Test Suite itself is an open-source framework for conducting automa
This framework is designed to be an extensible architecture so that new test profiles and suites can be easily added to represent performance benchmarks, unit tests, and other quantitative and qualitative (e.g. image quality comparison) measurements. Available through OpenBenchmarking.org, a collaborative storage platform developed in conjunction with the Phoronix Test Suite, are more than 200 individual test profiles and more than 60 test suites available by default from the Phoronix Test Suite. Independent users are also able to upload their test results, profiles, and suites to OpenBenchmarking.org. A test profile is a single test that can be executed by the Phoronix Test Suite -- with a series of options possible within every test -- and a test suite is a seamless collection of test profiles and/or additional test suites. A test profile consists of a set of bash/shell scripts and XML files while a test suite is a single XML file.
OpenBenchmarking.org <http://www.openbenchmarking.org/> also allows for conducting side-by-side result comparisons, a central location for storing and sharing test results, and collaborating over test data. Phoromatic <http://www.phoromatic.com/> is a complementary platform to OpenBenchmarking.org and the Phoronix Test Suite for interfacing with Phoronix Test Suite client(s) to automatically execute test runs on a timed, per-commit, or other trigger-driven basis. Phoromatic is designed for enterprise and allows for the easy management of multiple networked systems running Phoronix Test Suite clients via a single web-based interface.
[OpenBenchmarking.org](http://www.openbenchmarking.org/) also allows for conducting side-by-side result comparisons, a central location for storing and sharing test results, and collaborating over test data. [Phoromatic](http://www.phoromatic.com/) is a complementary platform to OpenBenchmarking.org and the Phoronix Test Suite for interfacing with Phoronix Test Suite client(s) to automatically execute test runs on a timed, per-commit, or other trigger-driven basis. Phoromatic is designed for enterprise and allows for the easy management of multiple networked systems running Phoronix Test Suite clients via a single web-based interface.
Professional support and custom engineering for the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org is available by contacting <http://www.phoronix-test-suite.com/>.
Full details on the Phoronix Test Suite setup and usage is available from the included HTML/PDF documentation within the phoronix-test-suite package and from the Phoronix Test Suite web-site.
Full details on the Phoronix Test Suite setup and usage is available from the included HTML/PDF documentation within the phoronix-test-suite package and from the Phoronix Test Suite website.
INSTALLATION & SETUP:
#####################
## Installation & Setup
The Phoronix Test Suite is supported on Linux, *BSD, Solaris, Mac OS X, and Windows systems. However, the most full-featured and well supported operating system for conducting the tests is Linux with some non-basic functionality not being available under all platforms. The Phoronix Test Suite software/framework is compatible with all major CPU architectures (e.g. i686, x86_64, ARM, PowerPC), but not all of the test profiles/suites are compatible with all architectures.
The Phoronix Test Suite can be installed for system-wide usage or run locally without installation from the extracted tar.gz/zip package. The only hard dependency on the Phoronix Test Suite is having command-line support for PHP (PHP 5.2+) installed. A complete PHP stack (e.g. with web-server) is NOT needed, but merely the PHP command-line support, which is widely available from operating system package managers under the name php, php5-cli, or php5.
The Phoronix Test Suite can be installed for system-wide usage or run locally without installation from the extracted tar.gz/zip package. The only hard dependency on the Phoronix Test Suite is having command-line support for PHP (PHP 5.3+) installed. A complete PHP stack (e.g. with web-server) is **not** needed, but merely the PHP command-line support, which is widely available from operating system package managers under the name `php`, `php5-cli`, or `php5`.
USAGE:
######
## Usage
The process to download, install/setup, execute, and report the results of a benchmark can be as simple as a command such as *phoronix-test-suite benchmark smallpt* to run a simple CPU test profile. If wishing to simply install a test, it's a matter of running *phoronix-test-suite install <test or suite name>* and to run it's *phoronix-test-suite run <test or suite name>*. There's also a batch mode for non-interactive benchmarking by first running *phoronix-test-suite batch-setup* and then using the *batch-run* sub-command rather than *run*.
The process to download, install/setup, execute, and report the results of a benchmark can be as simple as a command such as `phoronix-test-suite benchmark smallpt` to run a simple CPU test profile. If wishing to simply install a test, it's a matter of running `phoronix-test-suite install <test or suite name>` and to run it's `phoronix-test-suite run <test or suite name>`. There's also a batch mode for non-interactive benchmarking by first running `phoronix-test-suite batch-setup` and then using the `batch-run` sub-command rather than `run`.
Viewing installed system hardware and software is available via *phoronix-test-suite system-info* or *phoronix-test-suite detailed-system-info* for greater verbosity.
Viewing installed system hardware and software is available via `phoronix-test-suite system-info` or `phoronix-test-suite detailed-system-info` for greater verbosity.
Facilitating a result comparison from OpenBenchmarking.org can be done by running, for example, *phoronix-test-suite benchmark 1204293-BY-PHORONIX357* if wishing to compare the results of the *http://openbenchmarking.org/result/1204293-BY-PHORONIX357* result file.
Facilitating a result comparison from OpenBenchmarking.org can be done by running, for example, `phoronix-test-suite benchmark 1204293-BY-PHORONIX357` if wishing to compare the results of the `http://openbenchmarking.org/result/1204293-BY-PHORONIX357` result file.
Additional information is available from the Phoronix Test Suite web-site <http://www.phoronix-test-suite.com/> and the material bundled within the phoronix-test-suite/documentation/ directory. A man page is also bundled with the phoronix-test-suite software.
Additional information is available from the Phoronix Test Suite website <http://www.phoronix-test-suite.com/> and the material bundled within the `phoronix-test-suite/documentation/` directory. A man page is also bundled with the phoronix-test-suite software.

View File

@@ -2,7 +2,7 @@
# Phoronix Test Suite
# URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
# Copyright (C) 2008 - 2014, Phoronix Media
# Copyright (C) 2008 - 2016, Phoronix Media
#
# 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
@@ -42,7 +42,7 @@ fi
mkdir -p $DESTDIR$INSTALL_PREFIX
if [ ! -w $DESTDIR$INSTALL_PREFIX ]
then
echo "\nERROR: $DESTDIR$INSTALL_PREFIX is not writable. Run this installer as root or specify a different directory prefix as the first argument sent to this script.\n"
echo "ERROR: $DESTDIR$INSTALL_PREFIX is not writable. Run this installer as root or specify a different directory prefix as the first argument sent to this script."
exit
fi
@@ -57,8 +57,10 @@ mkdir -p $DESTDIR$INSTALL_PREFIX/share/man/man1/
mkdir -p $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
mkdir -p $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/bash_completion.d/
#mkdir -p $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
#mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/init/
cp CHANGE-LOG $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
cp ChangeLog $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
cp COPYING $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
cp AUTHORS $DESTDIR$INSTALL_PREFIX/share/doc/phoronix-test-suite/
@@ -74,8 +76,15 @@ cp pts-core/static/phoronix-test-suite.desktop $DESTDIR$INSTALL_PREFIX/share/app
cp pts-core/static/phoronix-test-suite-launcher.desktop $DESTDIR$INSTALL_PREFIX/share/applications/
cp pts-core/static/phoronix-test-suite.appdata.xml $DESTDIR$INSTALL_PREFIX/share/appdata/
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts/etc/scripts/package-build-*
mkdir -p $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
cp deploy/*-systemd/*.service $DESTDIR$INSTALL_PREFIX/../usr/lib/systemd/system/
# mkdir -p $DESTDIR$INSTALL_PREFIX/../etc/init/
# cp pts-core/static/upstart/*.conf $DESTDIR$INSTALL_PREFIX/../etc/init/
rm -rf $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core
cp -r pts-core $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
cp -r deploy $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/static/phoronix-test-suite.desktop
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/static/phoronix-test-suite-launcher.desktop
rm -f $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/openbenchmarking.org/openbenchmarking-mime.xml
@@ -90,7 +99,7 @@ chmod +x $DESTDIR$INSTALL_PREFIX/bin/phoronix-test-suite
# sed 's:\$url = PTS_PATH . \"documentation\/index.html\";:\$url = \"'"$INSTALL_PREFIX"'\/share\/doc\/packages\/phoronix-test-suite\/index.html\";:g' pts-core/commands/gui_gtk.php > $DESTDIR$INSTALL_PREFIX/share/phoronix-test-suite/pts-core/commands/gui_gtk.php
# XDG MIME OpenBenchmarking support
if [ "X$DESTDIR" = "X" ]
if [ "X$DESTDIR" = "X" ] && which xdg-mime >/dev/null && which xdg-icon-resource >/dev/null
then
#No chroot
xdg-mime install pts-core/openbenchmarking.org/openbenchmarking-mime.xml

View File

@@ -3,8 +3,8 @@
#
# Phoronix Test Suite
# URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
# Copyright (C) 2008 - 2014, Phoronix Media
# Copyright (C) 2008 - 2014, Michael Larabel
# Copyright (C) 2008 - 2016, Phoronix Media
# Copyright (C) 2008 - 2016, Michael Larabel
# phoronix-test-suite: The Phoronix Test Suite is an extensible open-source testing / benchmarking platform
#
# This program is free software; you can redistribute it and/or modify
@@ -31,6 +31,15 @@ then
cd $PTS_DIR
fi
# Run any start-up hooks, such as to pre-seed environment variables or other non-default behaviors / customizations
if [ -d pts-core/hooks/startup ]
then
for file in pts-core/hooks/startup/*.sh
do
./$file
done
fi
# Determine PHP binary location
if [ ! "X$PHP_BIN" = "X" ] && [ -x $PHP_BIN ]
then
@@ -53,9 +62,18 @@ then
elif [ -x /usr/pkg/libexec/cgi-bin/php ]
then
export PHP_BIN="/usr/pkg/libexec/cgi-bin/php"
elif which php >/dev/null 2>&1 ;
then
export PHP_BIN="php"
elif which php5 >/dev/null 2>&1 ;
then
export PHP_BIN="php5"
elif [ -x /usr/bin/hhvm ]
then
export PHP_BIN="/usr/bin/hhvm"
elif which hhvm >/dev/null 2>&1 ;
then
export PHP_BIN="hhvm"
else
export PHP_BIN=""
fi
@@ -65,42 +83,76 @@ if [ "X$PHP_BIN" = "X" ]
then
cat <<'EOT'
PHP 5.2 or newer must be installed for the Phoronix Test Suite
PHP 5.3 or newer must be installed for the Phoronix Test Suite
The PHP command-line package is commonly called php-cli, php5-cli, or php.
For more information visit: http://www.phoronix-test-suite.com/
EOT
if [ -x /usr/bin/apt-get ]
then
echo "The command to likely run for your operating system is: "
echo "# apt-get install php5-cli php5-json php5-gd"
echo " "
elif [ -x /usr/bin/yum ]
then
echo "The command to likely run for your operating system is: "
echo "# yum install php-cli php-xml"
echo " "
elif [ -x /usr/bin/zypper ]
if [ -x /usr/bin/zypper ]
then
# SUSE / OpenSUSE
echo "The command to likely run for your operating system is: "
echo "# zypper install php5 php5-zip"
echo " "
elif [ -x /usr/bin/apt-get ]
then
# Debian / Ubuntu Based Systems
echo "The command to likely run for your operating system is: "
echo "# apt-get install php5-cli"
echo " "
elif [ -x /usr/bin/dnf ]
then
# Modern Fedora
echo "The command to likely run for your operating system is: "
echo "# dnf install php-cli php-xml"
echo " "
elif [ -x /usr/bin/yum ]
then
# Red Hat / Fedora / etc
echo "The command to likely run for your operating system is: "
echo "# yum install php-cli php-xml"
echo " "
elif [ -x /usr/bin/pkg_radd ]
then
# BSD
echo "The command to likely run for your operating system is: "
echo "# pkg_radd php5 php5-json php5-zip php5-dom"
echo " "
elif [ -x /usr/bin/pacman ]
then
# Arch Linux
echo "The command to likely run for your operating system is: "
echo "# pacman -S php"
echo " "
elif [ -x /usr/local/sbin/pkg ] || [ -x /usr/sbin/pkg ]
then
# DragonFlyBSD and others
echo "The command to likely run for your operating system is: "
echo "# pkg install php5 php5-dom php5-zip php5-json php5-simplexml"
echo " "
elif [ -x /usr/local/swupd ]
then
# Clear Linux
echo "The command to likely run for your operating system is: "
echo "# swupd bundle-add os-testsuite-phoronix"
echo " "
elif [ -x /usr/sbin/pkg_add ]
then
# OpenBSD
echo "The command to likely run for your operating system is: "
echo "# pkg_add php php-zip"
echo " "
fi
exit
fi
if [ ! -f pts-core/phoronix-test-suite.php ] && [ -f `dirname $0`/pts-core/phoronix-test-suite.php ]
then
cd `dirname $0`
fi
# Ensure the user is in the correct directory
if [ ! -f pts-core/phoronix-test-suite.php ]
then
@@ -118,15 +170,12 @@ case "$1" in
"test-module" | "debug-module" | "webui")
export PTS_IGNORE_MODULES=1
;;
"enterprise-setup")
export PTS_SILENT_MODE=1
;;
esac
if [ -f $HOME/.phoronix-test-suite/web-server-launcher ]
then
rm -f $HOME/.phoronix-test-suite/web-server-launcher
elif [ -f $HOME/.phoronix-test-suite/phoromatic-server-launcher ]
then
rm -f $HOME/.phoronix-test-suite/phoromatic-server-launcher
fi
export PTS_EXT_LAUNCH_SCRIPT_DIR=`mktemp -d 2>/dev/null || mktemp -d -t ptstmp`
# Run The Phoronix Test Suite
PTS_EXIT_STATUS=8
@@ -135,14 +184,15 @@ while [ $PTS_EXIT_STATUS -eq 8 ]; do
PTS_EXIT_STATUS=$?
done
if [ -f $HOME/.phoronix-test-suite/web-server-launcher ]
if [ -f $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher ]
then
chmod +x $HOME/.phoronix-test-suite/web-server-launcher
exec $HOME/.phoronix-test-suite/web-server-launcher
rm -f $HOME/.phoronix-test-suite/web-server-launcher
elif [ -f $HOME/.phoronix-test-suite/phoromatic-server-launcher ]
chmod +x $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher
exec $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher
rm -f $PTS_EXT_LAUNCH_SCRIPT_DIR/web-server-launcher
elif [ -f $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher ]
then
chmod +x $HOME/.phoronix-test-suite/phoromatic-server-launcher
exec $HOME/.phoronix-test-suite/phoromatic-server-launcher
rm -f $HOME/.phoronix-test-suite/phoromatic-server-launcher
chmod +x $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher
exec $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher
rm -f $PTS_EXT_LAUNCH_SCRIPT_DIR/phoromatic-server-launcher
fi
# rm -rf $PTS_EXT_LAUNCH_SCRIPT_DIR

20
phoronix-test-suite.bat Executable file → Normal file
View File

@@ -1,7 +1,7 @@
:: Phoronix Test Suite
:: URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
:: Copyright (C) 2008 - 2014, Phoronix Media
:: Copyright (C) 2008 - 2014, Michael Larabel
:: Copyright (C) 2008 - 2016, Phoronix Media
:: Copyright (C) 2008 - 2016, Michael Larabel
:: phoronix-test-suite: The Phoronix Test Suite is an extensible open-source testing / benchmarking platform
::
:: This program is free software; you can redistribute it and/or modify
@@ -25,11 +25,19 @@ set PTS_MODE=CLIENT
:: TODO: Other work to bring this up to sync with the *NIX phoronix-test-suite launcher
If defined PHP_BIN goto SkipBinSearch
echo "No PHP_BIN defined checking for usual locations."
If exist "C:\Program Files (x86)\PHP"\php set PHP_BIN="C:\Program Files (x86)\PHP"\php
If exist C:\php-gtk2\php set PHP_BIN=C:\php-gtk2\php
set PHP_BIN="C:\Program Files (x86)\PHP"\php
:: Recursively search C:Program Files (x86)\PHP\ and subdirectories for the php executable
:: (installed location may vary depending on the installation method.)
for /f "delims=" %%i in ('dir "C:\Program Files (x86)\PHP\php.exe" /s /b') do (set PHP_BIN="%%i")
If exist C:\php-gtk2\php.exe (
set PHP_BIN=C:\php-gtk2\php.exe
)
:SkipBinSearch
cls
%PHP_BIN% pts-core/phoronix-test-suite.php %*
%PHP_BIN% pts-core\phoronix-test-suite.php %*

View File

@@ -1,30 +1,24 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class analyze_all_runs implements pts_option_interface
{
const doc_section = 'Result Analytics';
const doc_description = 'This option will generate a candlestick graph showing the distribution of results from all trial runs. The candlestick graph is similar to the Japanese candlestick charts used by the financial industry, except instead of representing stock data it is numerical result data from all trial runs.\n\nThe tip of the upper-wick represents the highest value of the test runs with the tip of the lower-wick representing the lowest value of all test runs. The upper-edge of the candle body represents the first or last run value and the lower-edge represents the first or last run value. Lastly, if the last run value is less than the first run value, the candle body is the same color as the graph background, otherwise the last run value is greater.';
public static function argument_checks()
{
return array(
@@ -33,8 +27,7 @@ class analyze_all_runs implements pts_option_interface
}
public static function run($args)
{
pts_client::regenerate_graphs($args[0], 'The ' . $args[0] . ' result file graphs have been re-rendered to show all test runs.', array('graph_render_type' => 'CANDLESTICK'));
pts_client::regenerate_graphs($args[0], 'The ' . $args[0] . ' result file graphs have been re-rendered to show all test runs.', array('graph_render_type' => 'HORIZONTAL_BOX_PLOT'));
}
}
?>

View File

@@ -1,54 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class analyze_batch implements pts_option_interface
{
const doc_section = 'Result Analytics';
const doc_description = 'This option will analyze a batch results file and plot out the performance impact from the different options onto a line graph (i.e. to see the impact that changing the video resolution has on the system\'s performance).';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function run($args)
{
$base_file = $args[0];
do
{
$rand_file = rand(1000, 9999);
$save_to = 'analyze-' . $rand_file . '/';
}
while(is_dir(PTS_SAVE_RESULTS_PATH . $save_to));
$save_to .= 'composite.xml';
// Analyze Results
$SAVED_RESULTS = pts_merge::generate_analytical_batch_xml($base_file);
pts_client::save_test_result($save_to, $SAVED_RESULTS);
echo 'Results Saved To: ' . PTS_SAVE_RESULTS_PATH . $save_to . PHP_EOL . PHP_EOL;
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . dirname($save_to) . '/index.html');
}
}
?>

View File

@@ -1,138 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2011, Phoronix Media
Copyright (C) 2009 - 2011, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class analyze_image_delta implements pts_option_interface
{
const doc_section = 'Result Analytics';
const doc_description = 'This option will analyze a test result file if it contains any test results that produced an image quality comparison (IQC) and will render image deltas illustrating the difference between images from two test results.';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function run($args)
{
$result = $args[0];
$result_file = new pts_result_file($result);
$result_file_identifiers = $result_file->get_system_identifiers();
if(count($result_file_identifiers) < 2)
{
echo PHP_EOL . 'There are not multiple test runs in this result file.' . PHP_EOL;
return false;
}
$base_identifier = pts_user_io::prompt_text_menu('Select the base test run', $result_file_identifiers);
$base_select = new pts_result_merge_select($result, $base_identifier);
$compare_identifier = pts_user_io::prompt_text_menu('Select the test run to compare', $result_file_identifiers);
$compare_select = new pts_result_merge_select($result, $compare_identifier);
do
{
$extract_to = 'iqc-analyze-' . rand(100, 999);
}
while(is_dir(PTS_SAVE_RESULTS_PATH . $extract_to));
$extract_result = pts_merge::merge_test_results($base_select, $compare_select);
pts_client::save_test_result($extract_to . '/composite.xml', $extract_result);
$compare_file = new pts_result_file($extract_to);
$result_file_writer = new pts_result_file_writer('Image Delta');
foreach($compare_file->get_result_objects() as $result_object)
{
if($result_object->test_profile->get_display_format() != 'IMAGE_COMPARISON')
{
continue;
}
$base_result = null;
$compare_result = null;
foreach($result_object->test_result_buffer->get_buffer_items() as $buffer_item)
{
if($buffer_item->get_result_identifier() == $base_identifier && $base_result == null)
{
$base_result = $buffer_item->get_result_value();
}
else if($buffer_item->get_result_identifier() == $compare_identifier && $compare_result == null)
{
$compare_result = $buffer_item->get_result_value();
}
if($compare_result != null && $base_result != null)
{
break;
}
}
if($compare_result == null || $base_result == null)
{
continue;
}
$base_img = imagecreatefromstring(base64_decode($base_result));
$compare_img = imagecreatefromstring(base64_decode($compare_result));
$delta_img = imagecreatefromstring(base64_decode($compare_result));
$img_width = imagesx($base_img);
$img_height = imagesy($base_img);
$img_changed = false;
for($x = 0; $x < $img_width; $x++)
{
for($y = 0; $y < $img_height; $y++)
{
$base_image_color = pts_image::rgb_gd_color_at($base_img, $x, $y);
$compare_image_color = pts_image::rgb_gd_color_at($compare_img, $x, $y);
if($base_image_color == $compare_image_color || pts_image::rgb_int_diff($base_image_color, $compare_image_color) < 9)
{
if(($cords = pts_image::color_pixel_delta($base_img, $compare_img, $x, $y)))
{
$pixel_rgb = pts_image::rgb_gd_color_at($delta_img, $cords[0], $cords[1]);
$color_invert = imagecolorresolve($delta_img, 255 - $pixel_rgb[0], 255 - $pixel_rgb[1], 255 - $pixel_rgb[2]);
imagesetpixel($delta_img, $x, $y, $color_invert);
$img_changed = true;
}
}
}
}
if($img_changed)
{
imagepng($delta_img, PTS_SAVE_RESULTS_PATH . $extract_to . '/scratch.png');
$result_value = base64_encode(file_get_contents(PTS_SAVE_RESULTS_PATH . $extract_to . '/scratch.png', FILE_BINARY));
pts_file_io::unlink(PTS_SAVE_RESULTS_PATH . $extract_to . '/scratch.png');
$result_file_writer->add_result_from_result_object_with_value_string($result_object, $result_value);
}
}
pts_client::save_result_file($result_file_writer, $extract_to);
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $extract_to . '/composite.xml');
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2012, Phoronix Media
Copyright (C) 2012, Michael Larabel
Copyright (C) 2012 - 2016, Phoronix Media
Copyright (C) 2012 - 2016, Michael Larabel
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
@@ -39,7 +39,7 @@ class auto_compare implements pts_option_interface
if($test_object instanceof pts_test_profile)
{
array_push($compare_tests, $test_object->get_identifier(false));
$compare_tests[] = $test_object->get_identifier(false);
if(!isset($compare_subsystems[$test_object->get_test_hardware_type()]))
{
@@ -113,11 +113,10 @@ class auto_compare implements pts_option_interface
foreach($json['auto_compare']['public_ids'] as $public_id)
{
$result_xml = pts_openbenchmarking::clone_openbenchmarking_result($public_id, true);
if($result_xml)
$ret = pts_openbenchmarking::clone_openbenchmarking_result($public_id);
if($ret)
{
$result_file = new pts_result_file($result_xml);
$result_file = new pts_result_file($public_id);
$result_objects = $result_file->get_result_objects();
foreach($result_objects as $i => &$result_object)
@@ -140,54 +139,49 @@ class auto_compare implements pts_option_interface
continue;
}
$result_file->override_result_objects($result_objects);
array_push($compare_results, $result_file);
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
$compare_results[] = $public_id;
}
}
if(count($compare_results) > 0)
{
$result_xml = pts_merge::merge_test_results_array($compare_results);
$result_file = new pts_result_file(null, true);
$result_file->merge($compare_results);
$result_objects = $result_file->get_result_objects();
$system_count = $result_file->get_system_count();
$result_count = count($result_objects);
$result_match_count = array();
if(count($compare_results) > 2)
if($result_count > 3)
{
$result_file = new pts_result_file($result_xml);
$result_objects = $result_file->get_result_objects();
$system_count = $result_file->get_system_count();
$result_count = count($result_objects);
$result_match_count = array();
if($result_count > 3)
foreach($result_objects as $i => &$result_object)
{
foreach($result_objects as $i => &$result_object)
{
$result_match_count[$i] = $result_object->test_result_buffer->get_count();
}
$result_match_count[$i] = $result_object->test_result_buffer->get_count();
}
arsort($result_match_count);
$biggest_size = pts_arrays::first_element($result_match_count);
if($biggest_size == $system_count || $biggest_size > 3)
arsort($result_match_count);
$biggest_size = pts_arrays::first_element($result_match_count);
if($biggest_size == $system_count || $biggest_size > 3)
{
foreach($result_match_count as $key => $value)
{
foreach($result_match_count as $key => $value)
if($value < 2)
{
if($value < 2)
{
unset($result_objects[$key]);
}
unset($result_objects[$key]);
}
}
$result_file->override_result_objects($result_objects);
$result_xml = pts_merge::merge_test_results_array(array($result_file));
}
$result_file->override_result_objects($result_objects);
}
pts_client::save_test_result('auto-comparison/composite.xml', $result_xml);
pts_client::save_test_result('auto-comparison/composite.xml', $result_file->get_xml());
}
}
pts_test_installer::standard_install(array('auto-comparison'));
pts_test_run_manager::standard_run(array('auto-comparison'));
$test_run_manager = new pts_test_run_manager();
$test_run_manager->standard_run(array('auto-comparison'));
}
protected static function system_component_to_format(&$system_info, &$to_array, $component_types, $allow_trim_extra = false)
{
@@ -203,10 +197,10 @@ class auto_compare implements pts_option_interface
{
$value_r = explode(' ', str_replace('-', ' ', $value));
array_pop($value_r);
array_push($to_array, $component_type . ':' . implode(' ', $value_r));
$to_array[] = $component_type . ':' . implode(' ', $value_r);
}
array_push($to_array, $component_type . ':' . $value);
$to_array[] = $component_type . ':' . $value;
}
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014, Phoronix Media
Copyright (C) 2014, Michael Larabel
Copyright (C) 2014 - 2015, Phoronix Media
Copyright (C) 2014 - 2015, Michael Larabel
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
@@ -33,9 +33,7 @@ class auto_sort_result_file implements pts_option_interface
}
public static function run($args)
{
$result = $args[0];
$result_file = new pts_result_file($result);
$result_file = new pts_result_file($args[0]);
$result_file_identifiers = $result_file->get_system_identifiers();
if(count($result_file_identifiers) < 2)
@@ -48,14 +46,8 @@ class auto_sort_result_file implements pts_option_interface
echo PHP_EOL . 'Automatically sorting the results...' . PHP_EOL;
sort($result_file_identifiers);
foreach($result_file_identifiers as $identifier)
{
array_push($extract_selects, new pts_result_merge_select($result, $identifier));
}
$ordered_result = pts_merge::merge_test_results_array($extract_selects);
pts_client::save_test_result($args[0] . '/composite.xml', $ordered_result);
$result_file->reorder_runs($result_file_identifiers);
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $args[0] . '/index.html');
}
public static function invalid_command($passed_args = null)

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009, Phoronix Media
Copyright (C) 2009, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -33,8 +33,9 @@ class batch_benchmark implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::batch_mode);
pts_test_run_manager::standard_run($r, pts_c::batch_mode);
pts_test_installer::standard_install($r, false, true);
$test_run_manager = new pts_test_run_manager(true);
$test_run_manager->standard_run($r);
}
}

View File

@@ -33,7 +33,7 @@ class batch_install implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::batch_mode);
pts_test_installer::standard_install($r, false, true);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2012, Phoronix Media
Copyright (C) 2009 - 2012, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -33,7 +33,8 @@ class batch_run implements pts_option_interface
}
public static function run($r)
{
pts_test_run_manager::standard_run($r, pts_c::batch_mode);
$test_run_manager = new pts_test_run_manager(true);
$test_run_manager->standard_run($r);
}
public static function invalid_command($passed_args = null)
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -42,7 +42,8 @@ class benchmark implements pts_option_interface
public static function run($r)
{
pts_test_installer::standard_install($r);
pts_test_run_manager::standard_run($r);
$run_manager = new pts_test_run_manager();
$run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -87,7 +87,7 @@ class build_suite implements pts_option_interface
}
while($input_option != 'Save & Exit');
$suite_identifier = pts_test_run_manager::clean_save_name($suite_name);
$suite_identifier = $suite_writer->clean_save_name_string($suite_name);
$save_to = PTS_TEST_SUITE_PATH . 'local/' . $suite_identifier . '/suite-definition.xml';
mkdir(dirname($save_to));

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2010, Phoronix Media
Copyright (C) 2008 - 2010, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -24,7 +24,7 @@ class clone_openbenchmarking_result implements pts_option_interface
{
const doc_section = 'OpenBenchmarking.org';
const doc_use_alias = 'clone-result';
const doc_description = 'This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied. More than one ID can be specified and the results will then be merged.';
const doc_description = 'This option will download a local copy of a file that was saved to OpenBenchmarking.org, as long as a valid public ID is supplied.';
public static function command_aliases()
{
@@ -42,14 +42,13 @@ class clone_openbenchmarking_result implements pts_option_interface
foreach($args as $id)
{
$xml = pts_openbenchmarking::clone_openbenchmarking_result($id, true);
array_push($result_files, new pts_result_file($xml));
if($xml)
{
$result_file = new pts_result_file($xml);
pts_client::save_test_result($id . '/composite.xml', $result_file->get_xml(), true);
echo PHP_EOL . 'Result Saved To: ' . PTS_SAVE_RESULTS_PATH . $id . '/composite.xml' . PHP_EOL;
}
}
$writer = new pts_result_file_writer(null);
pts_merge::merge_test_results_process($writer, $result_files);
pts_client::save_test_result($args[0] . '/composite.xml', $writer->get_xml(), true);
echo PHP_EOL . 'Result Saved To: ' . PTS_SAVE_RESULTS_PATH . $args[0] . '/composite.xml' . PHP_EOL;
}
}

View File

@@ -1,64 +0,0 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010 - 2013, Phoronix Media
Copyright (C) 2010 - 2013, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class copy_run_in_result_file implements pts_option_interface
{
const doc_section = 'Result Management';
const doc_description = 'This option is used if you wish to change an existing test run within a saved results file.';
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_result_file'), null)
);
}
public static function run($r)
{
$result = $r[0];
$result_file = new pts_result_file($result);
$result_file_identifiers = $result_file->get_system_identifiers();
$copy_identifier = pts_user_io::prompt_text_menu('Select the test run to copy', $result_file_identifiers);
$copy_identifier_new = pts_user_io::prompt_user_input('Enter the new identifier of the copied run');
$merge_selects = array();
foreach($result_file_identifiers as $identifier)
{
$this_merge_select = new pts_result_merge_select($result, $identifier);
array_push($merge_selects, $this_merge_select);
if($identifier == $copy_identifier)
{
$this_merge_select = new pts_result_merge_select($result, $identifier);
$this_merge_select->rename_identifier($copy_identifier_new);
array_push($merge_selects, $this_merge_select);
}
}
$extract_result = pts_merge::merge_test_results_array($merge_selects);
pts_client::save_test_result($r[0] . '/composite.xml', $extract_result);
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $r[0] . '/index.html');
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -20,7 +20,7 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
class debug_run implements pts_option_interface
class debug_benchmark implements pts_option_interface
{
const doc_section = 'Asset Creation';
const doc_description = 'This option is intended for use by test profile writers and is identical to the <em>run</em> option but will yield more information during the run process that can be used to debug issues with a test profile or to verify the test profile is functioning correctly.';
@@ -31,9 +31,20 @@ class debug_run implements pts_option_interface
new pts_argument_check('VARIABLE_LENGTH', array('pts_types', 'identifier_to_object'), null)
);
}
public static function command_aliases()
{
return array('debug_run');
}
public static function run($r)
{
pts_test_run_manager::standard_run($r, pts_c::debug_mode);
// Make sure you're debugging the latest test script...
pts_test_installer::standard_install($r);
// For debugging, usually running just once is sufficient, unless FORCE_TIMES_TO_RUN is preset
pts_client::pts_set_environment_variable('FORCE_TIMES_TO_RUN', 1);
// Run the test(s) in debug mode
pts_client::set_debug_mode(true);
$test_run_manager = new pts_test_run_manager();
$test_run_manager->standard_run($r);
}
}

View File

@@ -0,0 +1,45 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2015, Phoronix Media
Copyright (C) 2015, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class debug_dependency_handler implements pts_option_interface
{
const doc_section = 'Other';
const doc_description = 'This option is used for testing the distribution-specific dependency handler for external dependencies.';
public static function run($r)
{
$exdep_parser = new pts_exdep_generic_parser();
foreach($exdep_parser->get_available_packages() as $pkg)
{
$pkg_data = $exdep_parser->get_package_data($pkg);
$files = explode(' ', str_replace(array(' OR ', ', '), ' ', $pkg_data['file_check']));
foreach($files as $file)
{
echo (is_array($file) ? implode(' ', $file) : $file) . ': ';
$deps = pts_external_dependencies::packages_that_provide($file);
echo (is_array($deps) ? implode(' ', $deps) : null) . PHP_EOL;
}
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -33,7 +33,8 @@ class debug_install implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::debug_mode | pts_c::force_install);
pts_client::set_debug_mode(true);
pts_test_installer::standard_install($r, true);
}
}

View File

@@ -0,0 +1,108 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2015 - 2016, Phoronix Media
Copyright (C) 2015 - 2016, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class debug_render_test implements pts_option_interface
{
const doc_section = 'Other';
const doc_description = 'This option is used during the development of the Phoronix Test Suite software for testing of the result and graph rendering code-paths This option will download a large number of reference test results from LinuxBenchmarking.com.';
public static function run($r)
{
$render_dir = pts_client::temporary_directory() . '/pts-render-test-310815/';
if(!is_file($render_dir . 'mega-render-test.tar.bz2'))
{
pts_file_io::mkdir($render_dir);
pts_network::download_file('http://linuxbenchmarking.com/misc/mega-render-test-310815.tar.bz2', $render_dir . 'mega-render-test.tar.bz2');
pts_compression::archive_extract($render_dir . 'mega-render-test.tar.bz2');
}
define('PATH_TO_EXPORTED_PHOROMATIC_DATA', $render_dir . 'mega-render-test-310815/');
error_reporting(E_ALL);
ini_set('memory_limit','2048M');
$export_index_json = file_get_contents(PATH_TO_EXPORTED_PHOROMATIC_DATA . 'export-index.json');
$export_index_json = json_decode($export_index_json, true);
$dump_size = 0;
$start = microtime(true);
foreach(array_keys($export_index_json['phoromatic']) as $REQUESTED)
{
$this_render_test = time();
$tracker = &$export_index_json['phoromatic'][$REQUESTED];
$triggers = $tracker['triggers'];
echo PHP_EOL . 'STARTING RENDER TEST ON: ' . $REQUESTED . ' (' . count($triggers) . ' Triggers)' . PHP_EOL;
$length = count($tracker['triggers']);
$result_files = array();
foreach($triggers as $trigger)
{
$results_for_trigger = glob(PATH_TO_EXPORTED_PHOROMATIC_DATA . '/' . $REQUESTED . '/' . $trigger . '/*/composite.xml');
echo '.';
if($results_for_trigger == false)
continue;
foreach($results_for_trigger as $composite_xml)
{
// Add to result file
$system_name = basename(dirname($composite_xml)) . ': ' . $trigger;
$result_files[] = new pts_result_merge_select($composite_xml, null, $system_name);
}
}
echo 'STARTING MERGE; ';
$result_file = new pts_result_file(null, true);
$result_file->merge($result_files);
echo 'MAKING NEW RESULT FILE; ';
$extra_attributes = array('reverse_result_buffer' => true, 'force_simple_keys' => true, 'force_line_graph_compact' => true, 'force_tracking_line_graph' => true);
//$extra_attributes['normalize_result_buffer'] = true;
$intent = null;
//$table = new pts_ResultFileTable($result_file, $intent);
//echo '<p style="text-align: center; overflow: auto;" class="result_object">' . pts_render::render_graph_inline_embed($table, $result_file, $extra_attributes) . '</p>';
echo 'STARTING RESULT LOOP; ';
$html_dump = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>';
foreach($result_file->get_result_objects((isset($_POST['show_only_changed_results']) ? 'ONLY_CHANGED_RESULTS' : -1)) as $i => $result_object)
{
echo $result_object->test_profile->get_title() . ' ';
$html_dump .= '<h3>' . $result_object->get_arguments_description() . '</h3>';
$html_dump .= pts_render::render_graph_inline_embed($result_object, $result_file, $extra_attributes);
unset($result_object);
}
$table = new pts_ResultFileSystemsTable($result_file);
$html_dump .= pts_render::render_graph_inline_embed($table, $result_file, $extra_attributes);
echo PHP_EOL . PHP_EOL . 'RENDER TEST ON: ' . $REQUESTED . ' TOOK ' . (time() - $this_render_test) . PHP_EOL;
$dump_size += strlen($html_dump);
file_put_contents(PATH_TO_EXPORTED_PHOROMATIC_DATA . $REQUESTED . '.html', $html_dump . '</body></html>');
}
echo PHP_EOL . 'RENDER TEST TOOK: ' . (time() - $start) . PHP_EOL . PHP_EOL;
echo PHP_EOL . 'PEAK MEMORY USAGE: ' . round(memory_get_peak_usage(true) / 1048576, 3) . ' MB';
echo PHP_EOL . 'PEAK MEMORY USAGE (emalloc): ' . round(memory_get_peak_usage() / 1048576, 3) . ' MB';
echo PHP_EOL . 'TOTAL FILE SIZE: ' . ceil($dump_size / 1000) . ' KB';
echo PHP_EOL;
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2013, Phoronix Media
Copyright (C) 2013, Michael Larabel
Copyright (C) 2013 - 2016, Phoronix Media
Copyright (C) 2013 - 2016, Michael Larabel
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
@@ -27,16 +27,19 @@ class debug_self_test implements pts_option_interface
public static function run($r)
{
define('PHOROMATIC_PROCESS', true);
$commands = array(
'detailed_system_info' => null,
'list_available_tests' => null,
'list_available_suites' => null,
'info' => array('xonotic'),
'clone_openbenchmarking_result' => array('1107247-LI-MESACOMMI48'),
// 'refresh_graphs' => array('1107247-LI-MESACOMMI48'),
'info' => array('pts/all'),
'clone_openbenchmarking_result' => array('1107247-LI-MESACOMMI48', '1509040-HA-GCCINTELS17', '1508201-HA-GTX95073337', '1508233-HA-INTELSKYL16'),
'refresh_graphs' => array('1107247-LI-MESACOMMI48'),
'result_file_to_text' => array('1107247-LI-MESACOMMI48'),
'merge_results' => array('1107247-LI-MESACOMMI48', '1509040-HA-GCCINTELS17', '1508201-HA-GTX95073337', '1508233-HA-INTELSKYL16'),
'diagnostics' => null,
'dump_possible_options' => null,
'debug_render_test' => null,
);
$individual_times = array();
@@ -54,7 +57,7 @@ class debug_self_test implements pts_option_interface
$c_start = microtime(true);
pts_client::execute_command($command, $args);
$c_finish = microtime(true);
array_push($individual_times[$command], ($c_finish - $c_start));
$individual_times[$command][] = ($c_finish - $c_start);
}
}
$finish = microtime(true);
@@ -68,9 +71,9 @@ class debug_self_test implements pts_option_interface
echo strtoupper($component) . ': ' . (str_repeat(' ', $longest_c - strlen($component))) . pts_math::set_precision(round(array_sum($times) / count($times), 3), 3) . ' seconds' . PHP_EOL;
}
echo PHP_EOL . 'ELAPSED TIME: ' . (str_repeat(' ', $longest_c - strlen('ELAPSED TIME'))) . round($finish - $start, 3) . ' seconds';
echo PHP_EOL . 'TOTAL ELAPSED TIME: ' . (str_repeat(' ', $longest_c - strlen('ELAPSED TIME'))) . round($finish - $start, 3) . ' seconds';
echo PHP_EOL . 'PEAK MEMORY USAGE: ' . (str_repeat(' ', $longest_c - strlen('PEAK MEMORY USAGE'))) . round(memory_get_peak_usage(true) / 1048576, 3) . ' MB';
echo PHP_EOL . 'PEAK MEMORY USAGE (emalloc): ' . (str_repeat(' ', $longest_c - strlen('PEAK MEMORY USAGE (emalloc)'))) . round(memory_get_peak_usage() / 1048576, 3) . ' MB';
echo PHP_EOL . 'PEAK MEMORY USAGE EMALLOC: ' . (str_repeat(' ', $longest_c - strlen('PEAK MEMORY USAGE (emalloc)'))) . round(memory_get_peak_usage() / 1048576, 3) . ' MB';
echo PHP_EOL;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010, Phoronix Media
Copyright (C) 2010, Michael Larabel
Copyright (C) 2010 - 2015, Phoronix Media
Copyright (C) 2010 - 2015, Michael Larabel
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
@@ -28,7 +28,7 @@ class debug_test_download_links implements pts_option_interface
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'is_test_or_suite'), null)
new pts_argument_check(0, array('pts_types', 'identifier_to_object'), null)
);
}
public static function run($r)
@@ -48,7 +48,7 @@ class debug_test_download_links implements pts_option_interface
if($file_pointer == false)
{
echo PHP_EOL . 'DOWNLOAD: ' . $test_file_download->get_filename() . ' / ' . $url . PHP_EOL;
echo PHP_EOL . 'BAD URL: ' . $test_file_download->get_filename() . ' / ' . $url . PHP_EOL;
}
else
{

View File

@@ -42,22 +42,22 @@ class debug_websocket_client implements pts_option_interface
pts_web_socket_client::$debug_mode = true;
$ws_client = new pts_web_socket_client($web_socket_address, $web_socket_port);
$ws_client->send_message('TEST 123');
$ws_client->send_message('BIG TEST SENDDDDDDDDDDDDDDDDDDDDDDDDDDDDD MESSSSSSSSSSSSSSSSSSSSSSSSSAGE');
$ws_client->send_message('1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE END END END 321');
$ws_client->send_message('TEST MESSAGE');
$ws_client->send('TEST 123');
$ws_client->send('BIG TEST SENDDDDDDDDDDDDDDDDDDDDDDDDDDDDD MESSSSSSSSSSSSSSSSSSSSSSSSSAGE');
$ws_client->send('1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE 1234678910 VERY LONG MESSAGE END END END 321');
$ws_client->send('TEST MESSAGE');
while(1)
{
$msg = $ws_client->receive_message();
$msg = $ws_client->receive();
if($msg != null)
{
echo PHP_EOL . 'RECEIVED: ' . $ws_client->receive_message() . PHP_EOL;
echo PHP_EOL . 'RECEIVED: ' . $ws_client->receive() . PHP_EOL;
}
//if(date('s') % 5 == 0)
//{
// $ws_client->send_message(rand(1, getrandmax()));
// $ws_client->send(rand(1, getrandmax()));
//}
}
$ws_client->disconnect();

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -34,7 +34,8 @@ class default_benchmark implements pts_option_interface
public static function run($r)
{
pts_test_installer::standard_install($r);
pts_test_run_manager::standard_run($r, pts_c::defaults_mode);
$test_run_manager = new pts_test_run_manager(false, 2);
$test_run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -33,7 +33,8 @@ class default_run implements pts_option_interface
}
public static function run($r)
{
pts_test_run_manager::standard_run($r, pts_c::defaults_mode);
$test_run_manager = new pts_test_run_manager(false, 2);
$test_run_manager->standard_run($r);
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2011 - 2012, Phoronix Media
Copyright (C) 2011 - 2012, Michael Larabel
Copyright (C) 2011 - 2015, Phoronix Media
Copyright (C) 2011 - 2015, Michael Larabel
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
@@ -47,7 +47,7 @@ class detailed_system_info implements pts_option_interface
echo 'Virtualization: ' . (phodevi_cpu::virtualization_technology() ? phodevi_cpu::virtualization_technology() : 'NO') . PHP_EOL;
// Other info
foreach(pts_test_run_manager::pull_test_notes(true) as $test_note_head => $test_note)
foreach(pts_arrays::to_array(pts_test_run_manager::pull_test_notes(true)) as $test_note_head => $test_note)
{
echo ucwords(str_replace('-', ' ', $test_note_head)) . ': ' . $test_note . PHP_EOL;
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2014, Phoronix Media
Copyright (C) 2008 - 2014, Michael Larabel
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
@@ -29,6 +29,11 @@ class diagnostics implements pts_option_interface
{
foreach(pts_define(-1) as $constant => $constant_value)
{
if(strpos($constant, 'GSID') !== false || strpos($constant, '_ID') !== false)
{
continue;
}
echo $constant . ' = ' . $constant_value . PHP_EOL;
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2011 - 2013, Phoronix Media
Copyright (C) 2011 - 2013, Michael Larabel
Copyright (C) 2011 - 2014, Phoronix Media
Copyright (C) 2011 - 2014, Michael Larabel
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

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009, Phoronix Media
Copyright (C) 2009, Michael Larabel
Copyright (C) 2009 - 2014, Phoronix Media
Copyright (C) 2009 - 2014, Michael Larabel
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
@@ -29,28 +29,31 @@ class dump_core_storage implements pts_option_interface
foreach($pso->get_objects() as $pso_index => $pso_object)
{
if($pso_index != 'phodevi_smart_cache')
if(!in_array($pso_index, array('global_reported_hw', 'global_reported_sw', 'global_reported_usb', 'global_reported_pci', 'phodevi_smart_cache')))
{
echo $pso_index . ': ';
if(is_array($pso_object))
{
foreach($pso_object as $key => $element)
{
echo PHP_EOL . "\t" . $key . ': ' . $element;
}
}
else
{
echo $pso_object;
}
echo PHP_EOL;
self::print_element($pso_index, $pso_object, 0);
}
}
echo PHP_EOL;
}
private static function print_element($in, $el, $depth)
{
//echo $in . ': ';
if(is_array($el))
{
foreach($el as $key => $element)
{
echo PHP_EOL . str_repeat("\t", $depth) . $in . ': ';
self::print_element($key, $element, ($depth + 1));
}
}
else
{
echo PHP_EOL . str_repeat("\t", $depth) . $in . ': ' . $el;
}
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010 - 2014, Phoronix Media
Copyright (C) 2010 - 2014, Michael Larabel
Copyright (C) 2010 - 2015, Phoronix Media
Copyright (C) 2010 - 2015, Michael Larabel
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
@@ -24,25 +24,15 @@ class dump_documentation implements pts_option_interface
{
public static function run($r)
{
if(is_file('/usr/share/php/fpdf/fpdf.php'))
{
include_once('/usr/share/php/fpdf/fpdf.php');
}
else
{
echo PHP_EOL . 'The FPDF library must be installed.' . PHP_EOL . PHP_EOL;
return;
}
$pdf = new pts_pdf_template(pts_title(false), 'Test Client Documentation');
$html_doc = new pts_html_template(pts_title(false), 'Test Client Documentation');
$pdf = new pts_pdf_template(pts_core::program_title(false), 'Test Client Documentation');
$html_doc = new pts_html_template(pts_core::program_title(false), 'Test Client Documentation');
$pdf->AddPage();
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/pts-308x160.png', 69, 85, 73, 38, 'PNG', 'http://www.phoronix-test-suite.com/');
$pdf->Ln(120);
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'http://www.phoronix-test-suite.com/');
$pdf->Ln(15);
$pdf->WriteBigHeaderCenter(pts_title(true));
$pdf->WriteBigHeaderCenter(pts_core::program_title(true));
$pdf->WriteHeaderCenter('User Manual');
//$pdf->WriteText($result_file->get_description());
@@ -263,11 +253,30 @@ class dump_documentation implements pts_option_interface
// simple README
$readme = 'Phoronix Test Suite ' . PTS_VERSION . PHP_EOL . 'http://www.phoronix-test-suite.com/' . PHP_EOL . '#####################################' . PHP_EOL . PHP_EOL;
$readme = '# Phoronix Test Suite ' . PTS_VERSION . PHP_EOL . 'http://www.phoronix-test-suite.com/' . PHP_EOL . PHP_EOL;
$readme .= pts_documentation::basic_description() . PHP_EOL . PHP_EOL;
$readme .= pts_file_io::file_get_contents(PTS_PATH . 'documentation/stubs/readme-basics.txt') . PHP_EOL . PHP_EOL;
$readme = wordwrap($readme, 80, PHP_EOL);
file_put_contents(PTS_PATH . 'README', $readme);
file_put_contents(PTS_PATH . 'README.md', $readme);
// Phoromatic Documentation
$pdf = new pts_pdf_template(pts_core::program_title(false), 'Phoromatic Documentation');
$html_doc = new pts_html_template(pts_core::program_title(false), 'Phoromatic Documentation');
$pdf->AddPage();
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/pts-308x160.png', 69, 85, 73, 38, 'PNG', 'http://www.phoronix-test-suite.com/');
$pdf->Ln(120);
$pdf->WriteStatement('www.phoronix-test-suite.com', 'C', 'http://www.phoronix-test-suite.com/');
$pdf->Ln(15);
$pdf->Image(PTS_CORE_STATIC_PATH . 'images/phoromatic-390x56.png', 55, 250, 0, 0, 'PNG', 'http://www.phoronix-test-suite.com/');
//$pdf->Image(PTS_CORE_STATIC_PATH . 'images/phoromatic-390x56.png', 69, 85, 73, 38, 'PNG', 'http://www.phoromatic.com/');
$pdf->WriteBigHeaderCenter(pts_core::program_title(true));
$pdf->WriteHeaderCenter('Phoromatic User Manual');
$pdf->html_to_pdf(PTS_PATH . 'documentation/phoromatic.html');
$pdf_file = PTS_PATH . 'documentation/phoromatic.pdf';
$pdf->Output($pdf_file);
echo PHP_EOL . 'Saved To: ' . $pdf_file . PHP_EOL . PHP_EOL;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2010, Phoronix Media
Copyright (C) 2009 - 2010, Michael Larabel
Copyright (C) 2009 - 2016, Phoronix Media
Copyright (C) 2009 - 2016, Michael Larabel
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
@@ -32,7 +32,7 @@ class dump_possible_options implements pts_option_interface
if(!in_array(pts_strings::first_in_string($name, '-'), array('dump', 'debug', 'task')))
{
array_push($options, $name);
$options[] = $name;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014, Phoronix Media
Copyright (C) 2014, Michael Larabel
Copyright (C) 2014 - 2015, Phoronix Media
Copyright (C) 2014 - 2015, Michael Larabel
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
@@ -38,30 +38,21 @@ class edit_result_file implements pts_option_interface
public static function run($r)
{
$result_file = new pts_result_file($r[0]);
$result_title = $result_file->get_title();
echo PHP_EOL . 'Current Result Title: ' . $result_title . PHP_EOL;
$new_title = pts_user_io::prompt_user_input('Enter New Title');
if(!empty($new_title))
{
$result_title = $new_title;
$result_file->set_title($new_title);
}
$result_description = $result_file->get_description();
echo PHP_EOL . 'Current Result Description: ' . $result_description . PHP_EOL;
$new_description = pts_user_io::prompt_user_input('Enter New Description');
if(!empty($new_description))
{
$result_description = $new_description;
$result_file->set_description($new_description);
}
$result_file_writer = new pts_result_file_writer();
$result_file_writer->add_result_file_meta_data($result_file, null, $new_title, $new_description);
$result_file_writer->add_system_information_from_result_file($result_file);
$result_file_writer->add_results_from_result_file($result_file);
pts_client::save_test_result($r[0] . '/composite.xml', $result_file_writer->get_xml());
pts_client::save_test_result($result_file->get_file_location(), $result_file->get_xml());
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $r[0] . '/index.html');
}
}

View File

@@ -0,0 +1,49 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014 - 2015, Phoronix Media
Copyright (C) 2014 - 2015, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class enterprise_setup implements pts_option_interface
{
const doc_section = 'Other';
const doc_description = 'This option can be run by enterprise users immediately after package installation or as part of an in-house setup script. Running this command will ensure the phoronix-test-suite program is never interrupted on new runs to accept user agreement changes and defaults the anonymous usage reporting to being disabled and other conservative defaults.';
public static function run($r)
{
$force_options = array(
'PhoronixTestSuite/Options/OpenBenchmarking/AnonymousUsageReporting' => 'FALSE'
);
if(pts_network::internet_support_available() == false)
{
$force_options['PhoronixTestSuite/Options/Networking/NoInternetCommunication'] = 'TRUE';
}
pts_config::user_config_generate($force_options);
$pso = pts_storage_object::recover_from_file(PTS_CORE_STORAGE);
$pso->add_object('user_agreement_cs', 'enterprise-agree');
$pso->save_to_file(PTS_CORE_STORAGE);
echo PHP_EOL . 'Enterprise setup tasks executed.' . PHP_EOL . PHP_EOL;
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2013, Phoronix Media
Copyright (C) 2009 - 2013, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -33,9 +33,7 @@ class extract_from_result_file implements pts_option_interface
}
public static function run($args)
{
$result = $args[0];
$result_file = new pts_result_file($result);
$result_file = new pts_result_file($args[0]);
$result_file_identifiers = $result_file->get_system_identifiers();
if(count($result_file_identifiers) < 2)
@@ -45,12 +43,8 @@ class extract_from_result_file implements pts_option_interface
}
$extract_identifiers = pts_strings::comma_explode(pts_user_io::prompt_text_menu('Select the test run(s) to extract', $result_file_identifiers, true));
$extract_selects = array();
foreach($extract_identifiers as $extract_identifier)
{
array_push($extract_selects, new pts_result_merge_select($result, $extract_identifier));
}
$remove_identifiers = array_diff($result_file_identifiers, $extract_identifiers);
$result_file->remove_run($remove_identifiers);
do
{
@@ -58,10 +52,9 @@ class extract_from_result_file implements pts_option_interface
$extract_to = pts_user_io::read_user_input();
$extract_to = pts_test_run_manager::clean_save_name($extract_to);
}
while(empty($extract_to) || pts_result_file::is_test_result_file($extract_to));
while(empty($extract_to));
$extract_result = call_user_func_array(array('pts_merge', 'merge_test_results'), $extract_selects);
pts_client::save_test_result($extract_to . '/composite.xml', $extract_result);
pts_client::save_test_result($extract_to . '/composite.xml', $result_file->get_xml());
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $extract_to . '/index.html');
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2011, Phoronix Media
Copyright (C) 2009 - 2011, Michael Larabel
Copyright (C) 2009 - 2016, Phoronix Media
Copyright (C) 2009 - 2016, Michael Larabel
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
@@ -31,6 +31,10 @@ class finish_run implements pts_option_interface
new pts_argument_check(0, array('pts_result_file', 'is_test_result_file'), null)
);
}
public static function invalid_command($passed_args = null)
{
pts_tests::invalid_command_helper($passed_args);
}
public static function run($args)
{
$save_name = $args[0];
@@ -39,8 +43,7 @@ class finish_run implements pts_option_interface
$system_identifiers = $result_file->get_system_identifiers();
$test_positions = array();
$pos = 0;
foreach($result_file->get_result_objects() as $result_object)
foreach($result_file->get_result_objects() as $pos => $result_object)
{
$this_result_object_identifiers = $result_object->test_result_buffer->get_identifiers();
@@ -53,13 +56,10 @@ class finish_run implements pts_option_interface
$test_positions[$system_identifier] = array();
}
array_push($test_positions[$system_identifier], $pos);
$test_positions[$system_identifier][] = $pos;
}
}
$pos++;
}
$incomplete_identifiers = array_keys($test_positions);
if(count($incomplete_identifiers) == 0)
@@ -69,15 +69,14 @@ class finish_run implements pts_option_interface
}
$selected = pts_user_io::prompt_text_menu('Select which incomplete test run you would like to finish', $incomplete_identifiers);
$test_run_manager = new pts_test_run_manager();
// Now run it
if(pts_test_run_manager::initial_checks($args[0]) == false)
if($test_run_manager->initial_checks($args[0]) == false)
{
return false;
}
$test_run_manager = new pts_test_run_manager(pts_c::is_recovering);
// Load the tests to run
if($test_run_manager->load_result_file_to_run($save_name, $selected, $result_file, $test_positions[$selected]) == false)
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2014, Phoronix Media
Copyright (C) 2009 - 2014, Michael Larabel
Copyright (C) 2009 - 2015, Phoronix Media
Copyright (C) 2009 - 2015, Michael Larabel
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
@@ -33,7 +33,7 @@ class force_install implements pts_option_interface
}
public static function run($r)
{
pts_test_installer::standard_install($r, pts_c::force_install);
pts_test_installer::standard_install($r, true);
}
public static function invalid_command($passed_args = null)
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2012 - 2014, Phoronix Media
Copyright (C) 2012 - 2014, Michael Larabel
Copyright (C) 2012 - 2015, Phoronix Media
Copyright (C) 2012 - 2015, Michael Larabel
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
@@ -104,14 +104,15 @@ class gui implements pts_option_interface
// Shutdown / Kill Servers (Might want to find a cleaner way)
$server_launcher .= PHP_EOL . 'taskkill /f /im php.exe';
// For now lets clean this up.
$server_launcher .= PHP_EOL . 'del /f ' . PTS_USER_PATH . 'run*' . PHP_EOL;
$server_launcher .= PHP_EOL . 'del /f ' . getenv('PTS_EXT_LAUNCH_SCRIPT_DIR') . 'run*' . PHP_EOL;
$server_launcher .= 'exit /B' . PHP_EOL . PHP_EOL;
// HTTP Server Setup
$server_launcher .= ':run_local_server' . PHP_EOL;
if(strpos(getenv('PHP_BIN'), 'hhvm'))
{
$server_launcher .= 'cd ' . PTS_CORE_PATH . 'web-interface\\ && ' . getenv('PHP_BIN') . ' --config ' . PTS_CORE_PATH . 'static\\hhvm-server.hdf -m server -vServer.Port=' . $web_port . ' -vServer.IP=' . $server_ip . ' -vServer.SourceRoot=' . PTS_CORE_PATH . 'web-interface\\' . ' &' . PHP_EOL;
echo PHP_EOL . 'Unfortunately, the HHVM built-in web server has abandoned upstream. Users will need to use the PHP binary or other alternatives.' . PHP_EOL . PHP_EOL;
return false;
}
else
{
@@ -131,20 +132,22 @@ class gui implements pts_option_interface
}
else
{
$script_path = PTS_USER_PATH . 'web-server-launcher';
$script_path = getenv('PTS_EXT_LAUNCH_SCRIPT_DIR') . '/web-server-launcher';
pts_file_io::unlink($script_path);
$server_launcher = '#!/bin/sh' . PHP_EOL;
// WebSocket Server Setup
$server_launcher .= 'export PTS_WEBSOCKET_PORT=' . $web_socket_port . PHP_EOL;
$server_launcher .= 'export PTS_WEBSOCKET_SERVER=GUI' . PHP_EOL;
$server_launcher .= 'cd ' . getenv('PTS_DIR') . ' && PTS_MODE="CLIENT" ' . getenv('PHP_BIN') . ' pts-core/phoronix-test-suite.php start-ws-server &' . PHP_EOL;
$server_launcher .= 'websocket_server_pid=$!'. PHP_EOL;
// HTTP Server Setup
if(strpos(getenv('PHP_BIN'), 'hhvm'))
{
$server_launcher .= 'cd ' . PTS_CORE_PATH . 'web-interface/ && ' . getenv('PHP_BIN') . ' --config ' . PTS_CORE_PATH . 'static/hhvm-server.hdf -m server -vServer.Port=' . $web_port . ' -vServer.IP=' . $server_ip . ' -vServer.SourceRoot=' . PTS_CORE_PATH . 'web-interface/' . ' &' . PHP_EOL;
echo PHP_EOL . 'Unfortunately, the HHVM built-in web server has abandoned upstream. Users will need to use the PHP binary or other alternatives.' . PHP_EOL . PHP_EOL;
return false;
}
else
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2010 - 2011, Phoronix Media
Copyright (C) 2010 - 2011, Michael Larabel
Copyright (C) 2010 - 2015, Phoronix Media
Copyright (C) 2010 - 2015, Michael Larabel
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
@@ -27,7 +27,7 @@ class help implements pts_option_interface
public static function run($r)
{
echo PHP_EOL . pts_title(true) . PHP_EOL . PHP_EOL;
echo PHP_EOL . pts_core::program_title(true) . PHP_EOL . PHP_EOL;
echo pts_documentation::basic_description() . PHP_EOL . PHP_EOL . 'View the included PDF / HTML documentation or visit http://www.phoronix-test-suite.com/ for full details.' . PHP_EOL;
$options = pts_documentation::client_commands_array();

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2012, Phoronix Media
Copyright (C) 2008 - 2012, Michael Larabel
Copyright (C) 2008 - 2016, Phoronix Media
Copyright (C) 2008 - 2016, Michael Larabel
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
@@ -28,123 +28,142 @@ class info implements pts_option_interface
public static function argument_checks()
{
return array(
new pts_argument_check(0, array('pts_types', 'identifier_to_object'), 'object')
new pts_argument_check(0, array('pts_types', 'identifier_to_object'))
);
}
public static function run($args)
{
echo PHP_EOL;
if($args['object'] instanceof pts_test_suite)
if($args[0] == 'pts/all')
{
pts_client::$display->generic_heading($args['object']->get_title());
echo 'Run Identifier: ' . $args['object']->get_identifier() . PHP_EOL;
echo 'Suite Version: ' . $args['object']->get_version() . PHP_EOL;
echo 'Maintainer: ' . $args['object']->get_maintainer() . PHP_EOL;
echo 'Suite Type: ' . $args['object']->get_suite_type() . PHP_EOL;
echo 'Unique Tests: ' . $args['object']->get_unique_test_count() . PHP_EOL;
echo 'Suite Description: ' . $args['object']->get_description() . PHP_EOL;
echo PHP_EOL;
echo $args['object']->pts_format_contained_tests_string();
echo PHP_EOL;
$args = pts_openbenchmarking::available_tests(false);
}
else if($args['object'] instanceof pts_test_profile)
foreach($args as $arg)
{
$test_title = $args['object']->get_title();
$test_version = $args['object']->get_app_version();
if(!empty($test_version))
$o = pts_types::identifier_to_object($arg);
if($o instanceof pts_test_suite)
{
$test_title .= ' ' . $test_version;
pts_client::$display->generic_heading($o->get_title());
echo 'Run Identifier: ' . $o->get_identifier() . PHP_EOL;
echo 'Suite Version: ' . $o->get_version() . PHP_EOL;
echo 'Maintainer: ' . $o->get_maintainer() . PHP_EOL;
echo 'Suite Type: ' . $o->get_suite_type() . PHP_EOL;
echo 'Unique Tests: ' . $o->get_unique_test_count() . PHP_EOL;
echo 'Suite Description: ' . $o->get_description() . PHP_EOL;
echo PHP_EOL;
echo $o->pts_format_contained_tests_string();
echo PHP_EOL;
}
pts_client::$display->generic_heading($test_title);
echo 'Run Identifier: ' . $args['object']->get_identifier() . PHP_EOL;
echo 'Profile Version: ' . $args['object']->get_test_profile_version() . PHP_EOL;
echo 'Maintainer: ' . $args['object']->get_maintainer() . PHP_EOL;
echo 'Test Type: ' . $args['object']->get_test_hardware_type() . PHP_EOL;
echo 'Software Type: ' . $args['object']->get_test_software_type() . PHP_EOL;
echo 'License Type: ' . $args['object']->get_license() . PHP_EOL;
echo 'Test Status: ' . $args['object']->get_status() . PHP_EOL;
echo 'Project Web-Site: ' . $args['object']->get_project_url() . PHP_EOL;
if($args['object']->get_estimated_run_time() > 1)
else if($o instanceof pts_test_profile)
{
echo 'Estimated Run-Time: ' . $args['object']->get_estimated_run_time() . ' Seconds' . PHP_EOL;
}
$download_size = $args['object']->get_download_size();
if(!empty($download_size))
{
echo 'Download Size: ' . $download_size . ' MB' . PHP_EOL;
}
$environment_size = $args['object']->get_environment_size();
if(!empty($environment_size))
{
echo 'Environment Size: ' . $environment_size . ' MB' . PHP_EOL;
}
echo PHP_EOL . 'Description: ' . $args['object']->get_description() . PHP_EOL;
if($args['object']->test_installation != false)
{
$last_run = $args['object']->test_installation->get_last_run_date();
$last_run = $last_run == '0000-00-00' ? 'Never' : $last_run;
$avg_time = $args['object']->test_installation->get_average_run_time();
$avg_time = !empty($avg_time) ? pts_strings::format_time($avg_time, 'SECONDS') : 'N/A';
$latest_time = $args['object']->test_installation->get_latest_run_time();
$latest_time = !empty($latest_time) ? pts_strings::format_time($latest_time, 'SECONDS') : 'N/A';
echo PHP_EOL . 'Test Installed: Yes' . PHP_EOL;
echo 'Last Run: ' . $last_run . PHP_EOL;
if($last_run != 'Never')
$test_title = $o->get_title();
$test_version = $o->get_app_version();
if(!empty($test_version))
{
if($args['object']->test_installation->get_run_count() > 1)
{
echo 'Average Run-Time: ' . $avg_time . PHP_EOL;
}
echo 'Latest Run-Time: ' . $latest_time . PHP_EOL;
echo 'Times Run: ' . $args['object']->test_installation->get_run_count() . PHP_EOL;
$test_title .= ' ' . $test_version;
}
}
else
{
echo PHP_EOL . 'Test Installed: No' . PHP_EOL;
}
$dependencies = $args['object']->get_dependencies();
if(!empty($dependencies) && !empty($dependencies[0]))
{
echo PHP_EOL . 'Software Dependencies:' . PHP_EOL;
echo pts_user_io::display_text_list($args['object']->get_dependency_names());
}
echo PHP_EOL;
}
else if($args['object'] instanceof pts_result_file)
{
echo 'Title: ' . $args['object']->get_title() . PHP_EOL . 'Identifier: ' . $args['object']->get_identifier() . PHP_EOL;
echo PHP_EOL . 'Test Result Identifiers:' . PHP_EOL;
echo pts_user_io::display_text_list($args['object']->get_system_identifiers());
pts_client::$display->generic_heading($test_title);
echo 'Run Identifier: ' . $o->get_identifier() . PHP_EOL;
echo 'Profile Version: ' . $o->get_test_profile_version() . PHP_EOL;
echo 'Maintainer: ' . $o->get_maintainer() . PHP_EOL;
echo 'Test Type: ' . $o->get_test_hardware_type() . PHP_EOL;
echo 'Software Type: ' . $o->get_test_software_type() . PHP_EOL;
echo 'License Type: ' . $o->get_license() . PHP_EOL;
echo 'Test Status: ' . $o->get_status() . PHP_EOL;
echo 'Project Web-Site: ' . $o->get_project_url() . PHP_EOL;
if($o->get_estimated_run_time() > 1)
{
echo 'Estimated Run-Time: ' . $o->get_estimated_run_time() . ' Seconds' . PHP_EOL;
}
if(count(($tests = $args['object']->get_unique_test_titles())) > 0)
{
echo PHP_EOL . 'Contained Tests:' . PHP_EOL;
echo pts_user_io::display_text_list($tests);
}
echo PHP_EOL;
}
else if($args['object'] instanceof pts_virtual_test_suite)
{
pts_client::$display->generic_heading($args['object']->get_title());
echo 'Virtual Suite Description: ' . $args['object']->get_description() . PHP_EOL . PHP_EOL;
$download_size = $o->get_download_size();
if(!empty($download_size))
{
echo 'Download Size: ' . $download_size . ' MB' . PHP_EOL;
}
foreach($args['object']->get_contained_test_profiles() as $test_profile)
{
echo '- ' . $test_profile . PHP_EOL;
$environment_size = $o->get_environment_size();
if(!empty($environment_size))
{
echo 'Environment Size: ' . $environment_size . ' MB' . PHP_EOL;
}
echo PHP_EOL . 'Description: ' . $o->get_description() . PHP_EOL;
if($o->test_installation != false)
{
$last_run = $o->test_installation->get_last_run_date();
$last_run = $last_run == '0000-00-00' ? 'Never' : $last_run;
$avg_time = $o->test_installation->get_average_run_time();
$avg_time = !empty($avg_time) ? pts_strings::format_time($avg_time, 'SECONDS') : 'N/A';
$latest_time = $o->test_installation->get_latest_run_time();
$latest_time = !empty($latest_time) ? pts_strings::format_time($latest_time, 'SECONDS') : 'N/A';
echo PHP_EOL . 'Test Installed: Yes' . PHP_EOL;
echo 'Last Run: ' . $last_run . PHP_EOL;
if($last_run != 'Never')
{
if($o->test_installation->get_run_count() > 1)
{
echo 'Average Run-Time: ' . $avg_time . PHP_EOL;
}
echo 'Latest Run-Time: ' . $latest_time . PHP_EOL;
echo 'Times Run: ' . $o->test_installation->get_run_count() . PHP_EOL;
}
}
else
{
echo PHP_EOL . 'Test Installed: No' . PHP_EOL;
}
$dependencies = $o->get_external_dependencies();
if(!empty($dependencies) && !empty($dependencies[0]))
{
echo PHP_EOL . 'Software Dependencies:' . PHP_EOL;
echo pts_user_io::display_text_list($o->get_dependency_names());
}
echo PHP_EOL;
}
else if($o instanceof pts_result_file)
{
echo 'Title: ' . $o->get_title() . PHP_EOL . 'Identifier: ' . $o->get_identifier() . PHP_EOL;
echo PHP_EOL . 'Test Result Identifiers:' . PHP_EOL;
echo pts_user_io::display_text_list($o->get_system_identifiers());
$test_titles = array();
foreach($o->get_result_objects() as $result_object)
{
if($result_object->test_profile->get_display_format() == 'BAR_GRAPH')
{
$test_titles[] = $result_object->test_profile->get_title();
}
}
if(count($test_titles) > 0)
{
echo PHP_EOL . 'Contained Tests:' . PHP_EOL;
echo pts_user_io::display_text_list(array_unique($test_titles));
}
echo PHP_EOL;
}
else if($o instanceof pts_virtual_test_suite)
{
pts_client::$display->generic_heading($o->get_title());
echo 'Virtual Suite Description: ' . $o->get_description() . PHP_EOL . PHP_EOL;
foreach($o->get_contained_test_profiles() as $test_profile)
{
echo '- ' . $test_profile . PHP_EOL;
}
echo PHP_EOL;
}
echo PHP_EOL;
}
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2010, Phoronix Media
Copyright (C) 2008 - 2010, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -34,7 +34,6 @@ class install_dependencies implements pts_option_interface
public static function run($r)
{
$test_profiles = pts_types::identifiers_to_test_profile_objects($r, true, true);
//pts_client::set_test_flags(pts_c::auto_mode);
pts_external_dependencies::install_dependencies($test_profiles);
}
}

View File

@@ -24,7 +24,7 @@ class install_test implements pts_option_interface
{
const doc_section = 'Test Installation';
const doc_use_alias = 'install';
const doc_description = 'This option will install the selected test(s) inside the testing environment directory). The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.';
const doc_description = 'This option will install the selected test(s) inside the testing environment directory. The install process from downloading of the test files to the installation is fully automated. The install option needs to be supplied with the test name or suite as an argument. Optionally, a OpenBenchmarking.org ID or the name of a saved results file can be supplied as well and the test(s) to install will automatically be extracted from that information. If the test is already installed and was run by the latest version of the installation process, no action will be taken. Multiple arguments can be supplied to install additional tests at the same time.';
public static function command_aliases()
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2011 - 2013, Phoronix Media
Copyright (C) 2011 - 2013, Michael Larabel
Copyright (C) 2011 - 2016, Phoronix Media
Copyright (C) 2011 - 2016, Michael Larabel
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
@@ -27,45 +27,10 @@ class interactive implements pts_option_interface
public static function run($r)
{
$is_moscow = pts_flags::os_identifier_hash() == 'b28d6a7148b34595c5b397dfcf5b12ac7932b3dc';
if($is_moscow)
{
// Auto mount?
$drives = pts_file_io::glob('/dev/sda*');
sort($drives);
if(false && count($drives) > 0 && !is_dir('/media/pts-auto-mount') && is_writable('/media/'))
{
$last_drive = array_pop($drives);
echo PHP_EOL . 'Attempting to auto-mount drive: ' . $last_drive . PHP_EOL;
mkdir('/media/pts-auto-mount');
exec('mount ' . $last_drive . ' /media/pts-auto-mount');
putenv('PTS_TEST_INSTALL_ROOT_PATH=/media/pts-auto-mount/');
}
// Auto save results
$test_results_name = phodevi::read_property('motherboard', 'serial-number');
if($test_results_name == null)
{
$test_results_name = phodevi::read_name('motherboard');
}
if($test_results_name == null)
{
$test_results_name = phodevi::read_property('system', 'vendor-identifier');
}
putenv('TEST_RESULTS_NAME=' . str_replace(' ', null, $test_results_name));
putenv('TEST_RESULTS_IDENTIFIER=' . $test_results_name);
putenv('TEST_RESULTS_DESCRIPTION=Tests using ' . phodevi::read_property('system', 'operating-system') . ' on ' . date('d F Y') . ' of ' . $test_results_name . '.');
self::select_drive_mount();
}
pts_openbenchmarking::refresh_repository_lists();
pts_client::$display->generic_heading('Interactive Benchmarking');
echo 'System Hardware:' . PHP_EOL . phodevi::system_hardware(true) . (phodevi::read_property('motherboard', 'serial-number') != null ? PHP_EOL . 'System Serial Number: ' . phodevi::read_property('motherboard', 'serial-number') : null) . PHP_EOL . PHP_EOL . PHP_EOL;
$reboot_on_exit = pts_flags::is_live_cd() && pts_client::user_home_directory() == '/root/';
$reboot_on_exit = false;
do
{
@@ -78,12 +43,6 @@ class interactive implements pts_option_interface
'SET_RUN_COUNT' => 'Set Test Run Repetition'
);
if($is_moscow)
{
unset($options['RUN_SUITE']);
// $options['SELECT_DRIVE_MOUNT'] = 'Select Disk Drive To Use For Testing';
}
if(count(pts_client::saved_test_results()) > 0)
{
$options['BACKUP_RESULTS_TO_USB'] = 'Backup Results To Media Storage';
@@ -101,17 +60,11 @@ class interactive implements pts_option_interface
foreach($supported_tests as $i => &$test_profile)
{
if($test_profile->get_title() == null || pts_test_run_manager::test_profile_system_compatibility_check($test_profile) == false)
if($test_profile->get_title() == null)
{
unset($supported_tests[$i]);
continue;
}
if($is_moscow && pts_test_install_request::test_files_available_locally($test_profile) == false)
{
// Don't show tests where files need to be downloaded
unset($supported_tests[$i]);
continue;
}
$longest_title_length = max($longest_title_length, strlen($test_profile->get_title()));
}
@@ -130,7 +83,8 @@ class interactive implements pts_option_interface
$tests_to_run = pts_user_io::prompt_text_menu('Select Test', $supported_tests, true, true);
$tests_to_run = explode(',', $tests_to_run);
pts_test_installer::standard_install($tests_to_run);
$run_manager = pts_test_run_manager::standard_run($tests_to_run, (pts_c::defaults_mode | pts_c::auto_mode));
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($tests_to_run);
if($run_manager != false)
{
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $run_manager->get_file_name() . '/index.html', null, true, true);
@@ -141,14 +95,15 @@ class interactive implements pts_option_interface
foreach(array_map('strtolower', pts_types::subsystem_targets()) as $subsystem)
{
array_push($possible_suites, 'pts/' . $subsystem);
$possible_suites[] = 'pts/' . $subsystem;
}
$suites_to_run = pts_user_io::prompt_text_menu('Select Suite', $possible_suites, true);
foreach(explode(',', $suites_to_run) as $suite_to_run)
{
pts_test_installer::standard_install($suite_to_run);
pts_test_run_manager::standard_run($suite_to_run, (pts_c::defaults_mode | pts_c::auto_mode));
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($suite_to_run);
}
break;
case 'SELECT_DRIVE_MOUNT':
@@ -158,7 +113,8 @@ class interactive implements pts_option_interface
pts_client::$display->generic_heading('System Test');
$system_tests = array('apache', 'c-ray', 'ramspeed', 'postmark');
pts_test_installer::standard_install($system_tests);
$run_manager = pts_test_run_manager::standard_run($system_tests, (pts_c::defaults_mode | pts_c::auto_mode));
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($system_tests);
if($run_manager != false)
{
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . $run_manager->get_file_name() . '/index.html', null, true, true);
@@ -170,11 +126,7 @@ class interactive implements pts_option_interface
echo 'Software:' . PHP_EOL . phodevi::system_software(true) . PHP_EOL . PHP_EOL;
break;
case 'SHOW_SENSORS':
pts_client::$display->generic_heading('Detected System Sensors');
foreach(phodevi::supported_sensors() as $sensor)
{
echo phodevi::sensor_name($sensor) . ': ' . phodevi::read_sensor($sensor) . ' ' . phodevi::read_sensor_unit($sensor) . PHP_EOL;
}
pts_client::execute_command('system_sensors');
break;
case 'SET_RUN_COUNT':
$run_count = pts_user_io::prompt_user_input('Set the minimum number of times each test should repeat', false);
@@ -183,20 +135,6 @@ class interactive implements pts_option_interface
case 'BACKUP_RESULTS_TO_USB':
pts_client::$display->generic_heading('Backing Up Test Results');
if($is_moscow)
{
$drives = pts_file_io::glob('/dev/sd*');
sort($drives);
if(count($drives) > 0 && is_writable('/media/'))
{
$select_drive = pts_user_io::prompt_text_menu('Select Drive / Partition To Save Results', $drives);
echo PHP_EOL . 'Attempting to mount: ' . $select_drive . PHP_EOL;
mkdir('/media/00-results-backup');
exec('mount ' . $select_drive . ' /media/00-results-backup');
}
}
foreach(pts_file_io::glob('/media/*') as $media_dir)
{
if(!is_writable($media_dir))
@@ -209,12 +147,6 @@ class interactive implements pts_option_interface
pts_file_io::copy(PTS_SAVE_RESULTS_PATH, $media_dir . '/');
break;
}
if($is_moscow && is_dir('/media/00-results-backup'))
{
exec('umount /media/00-results-backup');
rmdir('/media/00-results-backup');
}
break;
}
echo PHP_EOL . PHP_EOL;
@@ -242,7 +174,7 @@ class interactive implements pts_option_interface
}
else
{
array_push($drives, 'No HDD');
$drives[] = 'No HDD';
$to_mount = pts_user_io::prompt_text_menu('Select Drive / Partition To Mount', $drives);
if($to_mount != 'No HDD')

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2013, Phoronix Media
Copyright (C) 2013, Michael Larabel
Copyright (C) 2013 - 2015, Phoronix Media
Copyright (C) 2013 - 2015, Michael Larabel
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
@@ -33,7 +33,7 @@ class internal_run implements pts_option_interface
}
public static function run($r)
{
pts_test_run_manager::set_batch_mode(array(
$test_run_manager = new pts_test_run_manager(array(
'UploadResults' => false,
'SaveResults' => true,
'PromptForTestDescription' => true,
@@ -43,7 +43,7 @@ class internal_run implements pts_option_interface
'OpenBrowser' => true
));
pts_test_run_manager::standard_run($r, pts_c::batch_mode);
$test_run_manager->standard_run($r);
}
public static function invalid_command($passed_args = null)
{

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2013, Phoronix Media
Copyright (C) 2008 - 2013, Michael Larabel
Copyright (C) 2008 - 2016, Phoronix Media
Copyright (C) 2008 - 2016, Michael Larabel
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
@@ -39,7 +39,7 @@ class list_available_tests implements pts_option_interface
$id = substr($identifier, strlen($repo) + 1);
$repo_index = pts_openbenchmarking::read_repository_index($repo);
if(!in_array(phodevi::operating_system(), $repo_index['tests'][$id]['supported_platforms']) || empty($repo_index['tests'][$id]['title']))
if((!empty($repo_index['tests'][$id]['supported_platforms']) && !in_array(phodevi::operating_system(), $repo_index['tests'][$id]['supported_platforms'])) || empty($repo_index['tests'][$id]['title']))
{
// Don't show unsupported tests
continue;

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2009 - 2013, Phoronix Media
Copyright (C) 2009 - 2013, Michael Larabel
Copyright (C) 2009 - 2016, Phoronix Media
Copyright (C) 2009 - 2016, Michael Larabel
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
@@ -34,7 +34,7 @@ class list_installed_suites implements pts_option_interface
$suite = new pts_test_suite($suite);
if($suite->needs_updated_install() == false)
{
array_push($installed_suites, $suite);
$installed_suites[] = $suite;
}
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
Copyright (C) 2008 - 2016, Phoronix Media
Copyright (C) 2008 - 2016, Michael Larabel
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

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2011, Phoronix Media
Copyright (C) 2008 - 2011, Michael Larabel
Copyright (C) 2008 - 2016, Phoronix Media
Copyright (C) 2008 - 2016, Michael Larabel
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
@@ -23,14 +23,16 @@
class make_download_cache implements pts_option_interface
{
const doc_section = 'Test Installation';
const doc_description = 'This option will create a download cache for use by the Phoronix Test Suite.';
const doc_description = 'This option will create a download cache for use by the Phoronix Test Suite. The download cache is created of test files already downloaded to the local system. If passing any test/suite names to make-download-cache, the needed files for those test profiles will first be automatically downloaded before creating the cache.';
public static function run($r)
{
// Generates a PTS Download Cache
$dc_write_directory = null;
// Force refresh of OB repository to ensure the latest profiles
pts_openbenchmarking::refresh_repository_lists(null, true);
$dc_write_directory = pts_strings::add_trailing_slash(pts_client::parse_home_directory(pts_config::read_user_config('PhoronixTestSuite/Options/Installation/CacheDirectory', PTS_DOWNLOAD_CACHE_PATH)));
// Determine cache location
$dc_write_directory = pts_strings::add_trailing_slash(pts_strings::parse_for_home_directory(pts_config::read_user_config('PhoronixTestSuite/Options/Installation/CacheDirectory', PTS_DOWNLOAD_CACHE_PATH)));
echo PHP_EOL . 'Download Cache Directory: ' . $dc_write_directory . PHP_EOL;
if($dc_write_directory == null || !is_writable($dc_write_directory))
{
@@ -38,50 +40,95 @@ class make_download_cache implements pts_option_interface
return false;
}
echo PHP_EOL . 'Download Cache Directory: ' . $dc_write_directory . PHP_EOL;
if(!empty($r))
{
$test_profiles = pts_types::identifiers_to_test_profile_objects($r, true, true);
$xml_writer = new nye_XmlWriter();
if(count($test_profiles) > 0)
{
echo PHP_EOL . 'Downloading Test Files For: ' . implode(' ', $test_profiles);
pts_test_installer::only_download_test_files($test_profiles, $dc_write_directory);
}
}
foreach(pts_tests::installed_tests() as $test)
$json_download_cache = array('phoronix-test-suite' => array(
'main' => array('generated' => time()),
'download-cache' => array()
));
foreach(pts_tests::partially_installed_tests() as $test)
{
$test_profile = new pts_test_profile($test);
$cached = false;
echo PHP_EOL . 'Checking Downloads For: ' . $test . PHP_EOL;
foreach(pts_test_install_request::read_download_object_list($test_profile, false) as $file)
{
$cached_valid = false;
if(is_file($dc_write_directory . $file->get_filename()) && $file->check_file_hash($dc_write_directory . $file->get_filename()))
{
echo ' Previously Cached: ' . $file->get_filename() . PHP_EOL;
$cached = true;
$cached_valid = true;
}
else
else if(is_dir($test_profile->get_install_dir()))
{
if(is_dir($test_profile->get_install_dir()))
if(is_file($test_profile->get_install_dir() . $file->get_filename()) && $file->check_file_hash($test_profile->get_install_dir() . $file->get_filename()))
{
if(is_file($test_profile->get_install_dir() . $file->get_filename()) && $file->check_file_hash($test_profile->get_install_dir() . $file->get_filename()))
echo ' Caching: ' . $file->get_filename() . PHP_EOL;
if(copy($test_profile->get_install_dir() . $file->get_filename(), $dc_write_directory . $file->get_filename()))
{
echo ' Caching: ' . $file->get_filename() . PHP_EOL;
if(copy($test_profile->get_install_dir() . $file->get_filename(), $dc_write_directory . $file->get_filename()))
{
$cached = true;
}
$cached_valid = true;
}
}
}
if($cached)
if($cached_valid)
{
$xml_writer->addXmlNode('PhoronixTestSuite/DownloadCache/Package/FileName', $file->get_filename());
$xml_writer->addXmlNode('PhoronixTestSuite/DownloadCache/Package/MD5', $file->get_md5());
$xml_writer->addXmlNode('PhoronixTestSuite/DownloadCache/Package/SHA256', $file->get_sha256());
if(!isset($json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]))
{
$json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()] = array(
'file_name' => $file->get_filename(),
'file_size' => $file->get_filesize(),
'associated_tests' => array($test_profile->get_identifier()),
'md5' => $file->get_md5(),
'sha256' => $file->get_sha256(),
);
}
else if($file->get_md5() == $json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['md5'] && $file->get_sha256() == $json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['sha256'])
{
$json_download_cache['phoronix-test-suite']['download-cache'][$file->get_filename()]['associated_tests'][] = $test_profile->get_identifier();
}
}
}
}
$cache_xml = $xml_writer->getXML();
file_put_contents($dc_write_directory . 'pts-download-cache.xml', $cache_xml);
// Find files in download-cache/ that weren't part of an installed test (but could have just been tossed in there) to cache
foreach(glob($dc_write_directory . '/*') as $cached_file)
{
$file_name = basename($cached_file);
if(!isset($json_download_cache['phoronix-test-suite']['download-cache'][$file_name]) && $file_name != 'pts-download-cache.json')
{
$json_download_cache['phoronix-test-suite']['download-cache'][$file_name] = array(
'file_name' => $file_name,
'file_size' => filesize($cached_file),
'associated_tests' => array(),
'md5' => md5_file($cached_file),
'sha256' => hash_file('sha256', $cached_file),
);
}
}
$cached_tests = array();
foreach(pts_openbenchmarking::available_tests(true, true) as $test)
{
if(pts_test_install_request::test_files_in_cache($test, true, true) == false)
{
continue;
}
$cached_tests[] = $test;
}
$json_download_cache['phoronix-test-suite']['cached-tests'] = $cached_tests;
file_put_contents($dc_write_directory . 'pts-download-cache.json', json_encode($json_download_cache, (defined('JSON_PRETTY_PRINT') ? JSON_PRETTY_PRINT : 0)));
echo PHP_EOL;
}
}

View File

@@ -0,0 +1,108 @@
<?php
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2014 - 2015, Phoronix Media
Copyright (C) 2014 - 2015, Michael Larabel
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 <http://www.gnu.org/licenses/>.
*/
class make_openbenchmarking_cache implements pts_option_interface
{
const doc_section = 'OpenBenchmarking.org';
const doc_description = 'This option will attempt to cache the test profile/suite meta-data from OpenBenchmarking.org for all linked repositories. This is useful if you\'re going to be running the Phoronix Test Suite / Phoromatic behind a firewall or without any Internet connection. Those with unrestricted Internet access or not utilizing a large local deployment of the Phoronix Test Suite / Phoromatic shouldn\'t need to run this command.';
public static function run($r)
{
pts_client::$display->generic_heading('Available Tests');
$available_tests = pts_openbenchmarking::available_tests(false);
$available_suites = pts_openbenchmarking::available_suites(false);
$test_count = count($available_tests);
$suite_count = count($available_suites);
$total_count = $test_count + $suite_count;
$total_cache_count = 0;
$total_cache_size = 0;
if($test_count == 0 || !pts_network::internet_support_available())
{
echo PHP_EOL . 'No tests found. Please check that you have Internet connectivity to download test profile data from OpenBenchmarking.org. The Phoronix Test Suite has documentation on configuring the network setup, proxy settings, and PHP network options. Please contact Phoronix Media if you continuing to experience problems.' . PHP_EOL . PHP_EOL;
return false;
}
$terminal_width = pts_client::terminal_width();
// Cache test profiles
foreach($available_tests as $i => $identifier)
{
$repo = substr($identifier, 0, strpos($identifier, '/'));
$test = substr($identifier, strlen($repo) + 1);
$repo_index = pts_openbenchmarking::read_repository_index($repo);
echo $i . '/' . $total_count . ': ' . ($repo_index['tests'][$test]['title'] != null ? $repo_index['tests'][$test]['title'] . ' [' . $repo_index['tests'][$test]['test_type'] . ']' : null) . PHP_EOL;
foreach($repo_index['tests'][$test]['versions'] as $version)
{
$qualified_identifier = $repo . '/' . $test . '-' . $version;
echo $qualified_identifier;
$success = pts_openbenchmarking::download_test_profile($repo . '/' . $test . '-' . $version);
if($success && is_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip'))
{
$file_size = round(filesize(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip') / 1024, 2);
$info = $file_size . 'KB - ' . sha1_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip');
$r_size = $terminal_width - strlen($qualified_identifier) - 3 - strlen($info);
if($r_size > 0)
{
echo ' ' . str_repeat('.', $terminal_width - strlen($qualified_identifier) - 3 - strlen($info)) . ' ' . $info . PHP_EOL;
}
$total_cache_count++;
$total_cache_size += $file_size;
}
}
echo PHP_EOL;
}
// Cache test suites
foreach($available_suites as $i => $identifier)
{
$repo = substr($identifier, 0, strpos($identifier, '/'));
$test = substr($identifier, strlen($repo) + 1);
$repo_index = pts_openbenchmarking::read_repository_index($repo);
echo ($i + $test_count) . '/' . $total_count . ': ' . $repo_index['suites'][$test]['title'] . PHP_EOL;
foreach($repo_index['suites'][$test]['versions'] as $version)
{
$qualified_identifier = $repo . '/' . $test . '-' . $version;
echo $qualified_identifier;
$success = pts_openbenchmarking::download_test_suite($repo . '/' . $test . '-' . $version);
if($success && is_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip'))
{
$file_size = round(filesize(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip') / 1024, 2);
$info = $file_size . 'KB - ' . sha1_file(PTS_OPENBENCHMARKING_SCRATCH_PATH . $qualified_identifier . '.zip');
$dot_size = $terminal_width - strlen($qualified_identifier) - 3 - strlen($info);
echo ' ' . str_repeat('.', ($dot_size >= 0 ? $dot_size : 0)) . ' ' . $info . PHP_EOL;
$total_cache_count++;
$total_cache_size += $file_size;
}
}
echo PHP_EOL;
}
echo PHP_EOL . $total_cache_count . ' Files Cached' . PHP_EOL . $test_count . ' Test Profiles' . PHP_EOL . $suite_count . ' Test Suites' . PHP_EOL . $total_cache_size . 'KB Total Cache Size' . PHP_EOL . PHP_EOL;
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2010, Phoronix Media
Copyright (C) 2008 - 2010, Michael Larabel
Copyright (C) 2008 - 2016, Phoronix Media
Copyright (C) 2008 - 2016, Michael Larabel
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
@@ -39,7 +39,7 @@ class merge_results implements pts_option_interface
{
if(pts_types::is_result_file($result_file))
{
array_push($result_files_to_merge, $result_file);
$result_files_to_merge[] = PTS_SAVE_RESULTS_PATH . $result_file . '/composite.xml';
}
}
@@ -58,12 +58,16 @@ class merge_results implements pts_option_interface
$merge_to_file .= 'composite.xml';
// Merge Results
$merged_results = call_user_func(array('pts_merge', 'merge_test_results_array'), $result_files_to_merge);
pts_client::save_test_result($merge_to_file, $merged_results);
$result_file = new pts_result_file(array_shift($result_files_to_merge), true);
$result_file->merge($result_files_to_merge);
pts_client::save_test_result($merge_to_file, $result_file->get_xml());
echo 'Merged Results Saved To: ' . PTS_SAVE_RESULTS_PATH . $merge_to_file . PHP_EOL . PHP_EOL;
pts_client::display_web_page(PTS_SAVE_RESULTS_PATH . dirname($merge_to_file) . '/index.html');
}
public static function invalid_command($passed_args = null)
{
pts_tests::recently_saved_results();
}
}
?>

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2012, Phoronix Media
Copyright (C) 2012, Michael Larabel
Copyright (C) 2012 - 2016, Phoronix Media
Copyright (C) 2012 - 2016, Michael Larabel
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
@@ -85,8 +85,9 @@ class ob_test_profile_analyze implements pts_option_interface
// So for any compiling tasks they will try to use the most aggressive instructions possible
putenv('CFLAGS=-march=native -O3');
putenv('CXXFLAGS=-march=native -O3');
pts_test_installer::standard_install($qualified_identifier, pts_c::force_install);
pts_test_run_manager::standard_run($qualified_identifier, (pts_c::defaults_mode | pts_c::auto_mode));
pts_test_installer::standard_install($qualified_identifier, true);
$run_manager = new pts_test_run_manager(false, 2);
$run_manager->standard_run($qualified_identifier);
if($apitrace)
{
@@ -194,7 +195,7 @@ var_dump($screenshots);
if(count($line) == 2)
{
array_push($shared_library_dependencies, trim(basename($line[0])));
$shared_library_dependencies[] = trim(basename($line[0]));
}
}
@@ -206,7 +207,7 @@ var_dump($screenshots);
// So for any compiling tasks they will try to use the most aggressive instructions possible
putenv('CFLAGS=-march=' . $march . ' -O3');
putenv('CXXFLAGS=-march=' . $march . ' -O3');
pts_test_installer::standard_install($qualified_identifier, pts_c::force_install);
pts_test_installer::standard_install($qualified_identifier, true);
$instruction_usage[$march] = self::analyze_binary_instruction_usage($test_binary);
if($instruction_usage[$march] == null)

View File

@@ -48,7 +48,8 @@ class openbenchmarking_launcher implements pts_option_interface
case 'benchmark':
$to_benchmark = explode(' ', $payload);
pts_test_installer::standard_install($to_benchmark);
pts_test_run_manager::standard_run($to_benchmark);
$run_manager = new pts_test_run_manager();
$run_manager->standard_run($to_benchmark);
break;
}

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2012, Phoronix Media
Copyright (C) 2008 - 2012, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -46,7 +46,7 @@ class openbenchmarking_login implements pts_option_interface
$login_state = pts_openbenchmarking::make_openbenchmarking_request('account_login', $login_payload);
$json = json_decode($login_state, true);
if(isset($json['openbenchmarking']['response']['error']))
if(!isset($json['openbenchmarking']) || isset($json['openbenchmarking']['response']['error']))
{
trigger_error($json['openbenchmarking']['response']['error'], E_USER_ERROR);
pts_storage_object::remove_in_file(PTS_CORE_STORAGE, 'openbenchmarking');

View File

@@ -3,8 +3,8 @@
/*
Phoronix Test Suite
URLs: http://www.phoronix.com, http://www.phoronix-test-suite.com/
Copyright (C) 2008 - 2009, Phoronix Media
Copyright (C) 2008 - 2009, Michael Larabel
Copyright (C) 2008 - 2015, Phoronix Media
Copyright (C) 2008 - 2015, Michael Larabel
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
@@ -32,7 +32,7 @@ class pts_version implements pts_option_interface
}
public static function run($r)
{
echo PHP_EOL . pts_title(true) . PHP_EOL;
echo PHP_EOL . pts_core::program_title(true) . PHP_EOL;
}
}

Some files were not shown because too many files have changed in this diff Show More