diff options
author | Pavel Raiskup <praiskup@redhat.com> | 2014-10-27 14:05:44 +0100 |
---|---|---|
committer | Pavel Raiskup <praiskup@redhat.com> | 2014-10-27 14:05:44 +0100 |
commit | 62fdcbeaa5db9c2413a61f5f9a82d36835cb70bb (patch) | |
tree | 585ffd9bfbac6945bd0475f73523a4666e051e09 /controller/libexec | |
parent | f0e3aae770431b243403d74cf4d90bd7b673f319 (diff) | |
download | postgresql-setup-tests-62fdcbeaa5db9c2413a61f5f9a82d36835cb70bb.tar.gz postgresql-setup-tests-62fdcbeaa5db9c2413a61f5f9a82d36835cb70bb.tar.xz postgresql-setup-tests-62fdcbeaa5db9c2413a61f5f9a82d36835cb70bb.zip |
controller: better connect with other utilities
* controller/bin/dtf-controller.in (subcommand): Generate
stdout and stderr files separately.
(child_task): Generate '*.err' and '*.out' logs for subcommands.
Call dtf-run-remote with --distro/--distro-version options. Call
the dtf-result-stats finally and save its output to results.html.
(main): Simple debugging info and comment adjusting.
* controller/libexec/dtf-commit-results.in: Tak three arguments
now.
* controller/libexec/dtf-result-stats.in: Better read the
'tester/run' output.
* controller/share/dtf-controller/ansible/playbooks/fedora.yml:
Run the 'run --force' instead of 'run' on remote host.
* controller/share/dtf-controller/results-stats-templates/html.tmpl
React on exit_status 2.
Diffstat (limited to 'controller/libexec')
-rw-r--r-- | controller/libexec/dtf-commit-results.in | 9 | ||||
-rw-r--r-- | controller/libexec/dtf-result-stats.in | 21 |
2 files changed, 20 insertions, 10 deletions
diff --git a/controller/libexec/dtf-commit-results.in b/controller/libexec/dtf-commit-results.in index 6b33022..b1d5bf2 100644 --- a/controller/libexec/dtf-commit-results.in +++ b/controller/libexec/dtf-commit-results.in @@ -1,12 +1,15 @@ #!/bin/bash +## $ dtf-commit-results RESULTS SUBDIR [ DB ] + . "@sysconfdir@/dtf.sh" || exit 1 # argparse resultdir="$1" +subresultdir="$2" db="$DTF_DATABASE_DEFAULT" -test -n "$2" && db="$2" +test -n "$3" && db="$3" if test -z "$db" \ || test -z "$resultdir" \ @@ -16,4 +19,6 @@ then exit 1 fi -( cd "$resultdir" && tar -xf dtf.tar.gz && cp -r . "$db" ) +mkdir -p "$db/$subresultdir" || exit 1 + +( cd "$resultdir" && tar -xf dtf.tar.gz && cp -r . "$db/$subresultdir" ) diff --git a/controller/libexec/dtf-result-stats.in b/controller/libexec/dtf-result-stats.in index d4db46f..92fd45f 100644 --- a/controller/libexec/dtf-result-stats.in +++ b/controller/libexec/dtf-result-stats.in @@ -44,17 +44,26 @@ my $task_ids = {}; # go through *each* result directory my $olddir = getcwd; -for (`find "$workdir" -maxdepth 1 -type d`) { +for (`find "$workdir" -mindepth 1 -maxdepth 1 -type d | sort`) { chomp; chdir $_; my $run_results = {}; $run_results->{dirname} = basename($_); $run_results->{tasks} = {}; - $run_results->{exit_status} = 0; + + my $glob_result; + my $fdg; + if (not open $fdg, '<', "dtf/result.yml") { + $run_results->{exit_status} = 2; + } + else { + $run_results->{glob} = YAML::Syck::LoadFile($fdg); + $run_results->{exit_status} = $run_results->{glob}->{exit_status}; + } # go through each task - for (`find -maxdepth 1 -type f -name '*.result'`) { + for (`find dtf/tasks -type f -name '*.result'`) { chomp; (my $task_id = $_) =~ s/\.result$//; @@ -65,11 +74,7 @@ for (`find "$workdir" -maxdepth 1 -type d`) { open my $fd, '<', $yaml_file or die "can't open yaml file '$yaml_file'"; - my $config = YAML::Syck::LoadFile($fd); - if ($config->{exit_status} != 0) { - $run_results->{exit_status} = 1; - } - $run_results->{tasks}->{$task_id} = $config; + $run_results->{tasks}->{$task_id} = YAML::Syck::LoadFile($fd); } push @{$data}, $run_results; |