commit
28b9c3f17d
BIN
1.18.1.tar.gz
Normal file
BIN
1.18.1.tar.gz
Normal file
Binary file not shown.
36
Count-CPUs-optimization.patch
Normal file
36
Count-CPUs-optimization.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
From 4c95895113d549b5b3b84fe1282fb13d9f5823a0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Florian Weimer <fweimer@redhat.com>
|
||||||
|
Date: Fri, 29 May 2020 17:22:35 +0200
|
||||||
|
Subject: [PATCH 1/2] journal.sh: Count CPUs optimization
|
||||||
|
|
||||||
|
---
|
||||||
|
src/journal.sh | 13 ++++---------
|
||||||
|
1 file changed, 4 insertions(+), 9 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/journal.sh b/src/journal.sh
|
||||||
|
index f7f2fbd..74dc525 100644
|
||||||
|
--- a/src/journal.sh
|
||||||
|
+++ b/src/journal.sh
|
||||||
|
@@ -872,15 +872,10 @@ __INTERNAL_CreateHeader(){
|
||||||
|
local line size
|
||||||
|
# CPU info
|
||||||
|
if [ -f "/proc/cpuinfo" ]; then
|
||||||
|
- local count=0
|
||||||
|
- local type="unknown"
|
||||||
|
- local cpu_regex="^model\sname.*: (.*)$"
|
||||||
|
- while read -r line; do
|
||||||
|
- if [[ "$line" =~ $cpu_regex ]]; then
|
||||||
|
- type="${BASH_REMATCH[1]}"
|
||||||
|
- let count++
|
||||||
|
- fi
|
||||||
|
- done < "/proc/cpuinfo"
|
||||||
|
+ local cpu_regex count type
|
||||||
|
+ cpu_regex="^model\sname.*: (.*)$"
|
||||||
|
+ count=$(grep -cE "$cpu_regex" /proc/cpuinfo)
|
||||||
|
+ type="$(grep -E -m 1 "$cpu_regex" /proc/cpuinfo | sed -r "s/$cpu_regex/\1/")"
|
||||||
|
__INTERNAL_WriteToMetafile hw_cpu -- "$count x $type"
|
||||||
|
__INTERNAL_LogText " CPUs : $count x $type" 2> /dev/null
|
||||||
|
fi
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
||||||
1
beakerlib-tmpfiles.conf
Normal file
1
beakerlib-tmpfiles.conf
Normal file
@ -0,0 +1 @@
|
|||||||
|
x /var/tmp/beakerlib-*
|
||||||
83
beakerlib.spec
Normal file
83
beakerlib.spec
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
Name: beakerlib
|
||||||
|
Summary: A shell-level integration testing library
|
||||||
|
Version: 1.18.1
|
||||||
|
Release: 1
|
||||||
|
License: GPLv2
|
||||||
|
BuildArch: noarch
|
||||||
|
URL: https://github.com/%{name}/%{name}
|
||||||
|
Autoreq: 0
|
||||||
|
Requires: nfs-utils
|
||||||
|
Requires: /bin/bash
|
||||||
|
Requires: /bin/sh
|
||||||
|
Recommends: /usr/bin/python3
|
||||||
|
Recommends: /usr/bin/perl
|
||||||
|
Requires: grep sed iproute coreutils tar gzip
|
||||||
|
Requires: util-linux which dnf-utils
|
||||||
|
Requires: /usr/bin/bc /usr/bin/time
|
||||||
|
Requires: (wget or curl)
|
||||||
|
Suggests: wget
|
||||||
|
Recommends: python3-lxml
|
||||||
|
Recommends: /usr/bin/xmllint
|
||||||
|
Conflicts: beakerlib-redhat < 1-30
|
||||||
|
|
||||||
|
BuildRequires: /usr/bin/pod2man perl-generators util-linux
|
||||||
|
|
||||||
|
Source0: https://github.com/beakerlib/beakerlib/archive/%{version}.tar.gz
|
||||||
|
Source1: %{name}-tmpfiles.conf
|
||||||
|
|
||||||
|
Patch0: bugzilla-links.patch
|
||||||
|
Patch1: python3.patch
|
||||||
|
Patch2: Count-CPUs-optimization.patch
|
||||||
|
Patch3: enahanced-library-search.patch
|
||||||
|
|
||||||
|
%package_help
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n %{name}-%{version}
|
||||||
|
|
||||||
|
%build
|
||||||
|
make build
|
||||||
|
|
||||||
|
%install
|
||||||
|
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}}
|
||||||
|
%{!?_tmpfilesdir: %global _tmpfilesdir %{_prefix}/lib/tmpfiles.d/}
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
make PKGDOCDIR=%{_pkgdocdir} DESTDIR=$RPM_BUILD_ROOT install
|
||||||
|
mkdir -p $RPM_BUILD_ROOT/%{_tmpfilesdir}
|
||||||
|
install -m 0644 %{SOURCE1} $RPM_BUILD_ROOT/%{_tmpfilesdir}/%{name}.conf
|
||||||
|
|
||||||
|
%description
|
||||||
|
The BeakerLib project means to provide a library of various helpers, which
|
||||||
|
could be used when writing operating system level integration tests.
|
||||||
|
|
||||||
|
%files
|
||||||
|
%dir %{_datadir}/%{name}
|
||||||
|
%dir %{_datadir}/%{name}/xslt-templates
|
||||||
|
%{_datadir}/%{name}/dictionary.vim
|
||||||
|
%{_datadir}/%{name}/*.sh
|
||||||
|
%{_datadir}/%{name}/xslt-templates/*
|
||||||
|
%{_bindir}/%{name}-*
|
||||||
|
%config %{_tmpfilesdir}/%{name}.conf
|
||||||
|
|
||||||
|
%package vim-syntax
|
||||||
|
Summary: Files for syntax highlighting BeakerLib tests in VIM editor
|
||||||
|
Requires: vim-common
|
||||||
|
BuildRequires: vim-common
|
||||||
|
|
||||||
|
%description vim-syntax
|
||||||
|
Files for syntax highlighting BeakerLib tests in VIM editor
|
||||||
|
|
||||||
|
%files vim-syntax
|
||||||
|
%{_datadir}/vim/vimfiles/after/ftdetect/beakerlib.vim
|
||||||
|
%{_datadir}/vim/vimfiles/after/syntax/beakerlib.vim
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%{_mandir}/man1/%{name}*1*
|
||||||
|
%dir %{_pkgdocdir}
|
||||||
|
%dir %{_pkgdocdir}/examples
|
||||||
|
%dir %{_pkgdocdir}/examples/*
|
||||||
|
%doc %{_pkgdocdir}/*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Sat Aug 1 2020 zhangxingliang <zhangxingliang3@huawei.com> - 1.18.1-1
|
||||||
|
- Package init
|
||||||
4
beakerlib.yaml
Normal file
4
beakerlib.yaml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
version_control: github
|
||||||
|
src_repo: beakerlib/beakerlib
|
||||||
|
tag_prefix: ^
|
||||||
|
seperator: .
|
||||||
19
bugzilla-links.patch
Normal file
19
bugzilla-links.patch
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
diff --git a/src/beakerlib.sh b/src/beakerlib.sh
|
||||||
|
index 3355fa4..ceafc44 100644
|
||||||
|
--- a/src/beakerlib.sh
|
||||||
|
+++ b/src/beakerlib.sh
|
||||||
|
@@ -274,10 +274,14 @@ https://github.com/beakerlib/beakerlib/wiki/man
|
||||||
|
|
||||||
|
=item Issues list
|
||||||
|
|
||||||
|
+https://bugzilla.redhat.com/buglist.cgi?component=beakerlib&&order=bug_status%2Cassigned_to%2Cpriority
|
||||||
|
+
|
||||||
|
https://github.com/beakerlib/beakerlib/issues
|
||||||
|
|
||||||
|
=item Reporting issues
|
||||||
|
|
||||||
|
+https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&component=beakerlib
|
||||||
|
+
|
||||||
|
https://github.com/beakerlib/beakerlib/issues/new
|
||||||
|
|
||||||
|
=back
|
||||||
122
enahanced-library-search.patch
Normal file
122
enahanced-library-search.patch
Normal file
@ -0,0 +1,122 @@
|
|||||||
|
From 6caca72e63add35ef066cca1dbeae6857ec34b2b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dalibor Pospisil <dapospis@redhat.com>
|
||||||
|
Date: Mon, 8 Jun 2020 17:11:51 +0200
|
||||||
|
Subject: [PATCH 2/2] enahanced library search
|
||||||
|
|
||||||
|
---
|
||||||
|
src/libraries.sh | 71 ++++++++++++++++++++++++++++++++++++++----------
|
||||||
|
1 file changed, 56 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/libraries.sh b/src/libraries.sh
|
||||||
|
index 2ccc02e..b40b513 100644
|
||||||
|
--- a/src/libraries.sh
|
||||||
|
+++ b/src/libraries.sh
|
||||||
|
@@ -98,7 +98,7 @@ __INTERNAL_rlLibraryTraverseUpwards() {
|
||||||
|
while [ "$DIRECTORY" != "/" ]
|
||||||
|
do
|
||||||
|
DIRECTORY="$( dirname $DIRECTORY )"
|
||||||
|
- if [ -d "$DIRECTORY/$COMPONENT" ]
|
||||||
|
+ if [[ -d "$DIRECTORY/$COMPONENT" || -d "$DIRECTORY/libs/$COMPONENT/$LIBRARY" ]]
|
||||||
|
then
|
||||||
|
|
||||||
|
local CANDIDATE="$DIRECTORY/$COMPONENT/Library/$LIBRARY/lib.sh"
|
||||||
|
@@ -114,6 +114,14 @@ __INTERNAL_rlLibraryTraverseUpwards() {
|
||||||
|
LIBFILE="$CANDIDATE"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
+
|
||||||
|
+ local CANDIDATE="$DIRECTORY/libs/$COMPONENT/$LIBRARY/lib.sh"
|
||||||
|
+ if [ -f "$CANDIDATE" ]
|
||||||
|
+ then
|
||||||
|
+ LIBFILE="$CANDIDATE"
|
||||||
|
+ break
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
@@ -139,6 +147,20 @@ __INTERNAL_rlLibrarySearchInRoot(){
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
+ local CANDIDATE="$BEAKERLIB_LIBRARY_PATH/$COMPONENT/$LIBRARY/lib.sh"
|
||||||
|
+ if [ -f "$CANDIDATE" ]
|
||||||
|
+ then
|
||||||
|
+ LIBFILE="$CANDIDATE"
|
||||||
|
+ return
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ local CANDIDATE="$BEAKERLIB_LIBRARY_PATH/libs/$COMPONENT/$LIBRARY/lib.sh"
|
||||||
|
+ if [ -f "$CANDIDATE" ]
|
||||||
|
+ then
|
||||||
|
+ LIBFILE="$CANDIDATE"
|
||||||
|
+ return
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
rlLogDebug "rlImport: Library not found in $BEAKERLIB_LIBRARY_PATH"
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -151,16 +173,20 @@ __INTERNAL_rlLibrarySearch() {
|
||||||
|
|
||||||
|
if [ -n "$BEAKERLIB_LIBRARY_PATH" ]
|
||||||
|
then
|
||||||
|
- rlLogDebug "rlImport: BEAKERLIB_LIBRARY_PATH is set: trying to search in it"
|
||||||
|
-
|
||||||
|
- __INTERNAL_rlLibrarySearchInRoot "$COMPONENT" "$LIBRARY" "$BEAKERLIB_LIBRARY_PATH"
|
||||||
|
- if [ -n "$LIBFILE" ]
|
||||||
|
- then
|
||||||
|
- local VERSION="$(__INTERNAL_extractLibraryVersion "$LIBFILE" "$COMPONENT/$LIBRARY")"
|
||||||
|
- VERSION=${VERSION:+", version '$VERSION'"}
|
||||||
|
- rlLogInfo "rlImport: Found '$COMPONENT/$LIBRARY'$VERSION in BEAKERLIB_LIBRARY_PATH"
|
||||||
|
- return
|
||||||
|
- fi
|
||||||
|
+ rlLogDebug "rlImport: BEAKERLIB_LIBRARY_PATH='$BEAKERLIB_LIBRARY_PATH'"
|
||||||
|
+ local paths=( ${BEAKERLIB_LIBRARY_PATH//:/ } )
|
||||||
|
+ while [[ -n "$paths" ]]; do
|
||||||
|
+ rlLogDebug "$FUNCNAME(): trying $paths component of BEAKERLIB_LIBRARY_PATH"
|
||||||
|
+ __INTERNAL_rlLibrarySearchInRoot "$COMPONENT" "$LIBRARY" "$paths"
|
||||||
|
+ if [ -n "$LIBFILE" ]
|
||||||
|
+ then
|
||||||
|
+ local VERSION="$(__INTERNAL_extractLibraryVersion "$LIBFILE" "$COMPONENT/$LIBRARY")"
|
||||||
|
+ VERSION=${VERSION:+", version '$VERSION'"}
|
||||||
|
+ rlLogInfo "rlImport: Found '$COMPONENT/$LIBRARY'$VERSION in BEAKERLIB_LIBRARY_PATH"
|
||||||
|
+ return
|
||||||
|
+ fi
|
||||||
|
+ paths=( "${paths[@]:1}" )
|
||||||
|
+ done
|
||||||
|
else
|
||||||
|
rlLogDebug "rlImport: No BEAKERLIB_LIBRARY_PATH set: trying default"
|
||||||
|
fi
|
||||||
|
@@ -213,10 +239,25 @@ The library search mechanism is based on Beaker test hierarchy system, i.e.:
|
||||||
|
|
||||||
|
/component/type/test-name/test-file
|
||||||
|
|
||||||
|
-When test-file calls rlImport with 'foo/bar' parameter, the directory path
|
||||||
|
-is traversed upwards, and a check for presence of the test /foo/Library/bar/
|
||||||
|
-will be performed. This means this function needs to be called from
|
||||||
|
-the test hierarchy, not e.g. the /tmp directory.
|
||||||
|
+When test-file calls rlImport with 'foo/bar' parameter, the libraries are searched
|
||||||
|
+in following locations:
|
||||||
|
+these are the possible path prefixes
|
||||||
|
+
|
||||||
|
+ - colon-separated paths from $BEAKERLIB_LIBRARY_PATH
|
||||||
|
+ - /mnt/tests
|
||||||
|
+ - /usr/share/beakerlib-libraries
|
||||||
|
+
|
||||||
|
+the next component of the path is one of the following:
|
||||||
|
+
|
||||||
|
+ - /foo/Library/bar
|
||||||
|
+ - /*/foo/Library/bar
|
||||||
|
+ - /libs/foo/bar
|
||||||
|
+
|
||||||
|
+the directory path is then constructed as prefix/path/lib.sh
|
||||||
|
+If the library is still not found an upwards directory traversal is used, and a
|
||||||
|
+check for presence of the library in /foo/Library/bar/ or libs/foo/bar/ is to be
|
||||||
|
+performed. This means this function needs to be called from the test hierarchy,
|
||||||
|
+not e.g. the /tmp directory.
|
||||||
|
|
||||||
|
Once library is found, it is sourced and a verifier function is called.
|
||||||
|
The verifier function is cunstructed by composing the library prefix and
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
||||||
57
python3.patch
Normal file
57
python3.patch
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
diff -ur beakerlib-1.18.old/src/python/journal-compare.py beakerlib-1.18.new/src/python/journal-compare.py
|
||||||
|
--- beakerlib-1.18.old/src/python/journal-compare.py 2019-04-04 11:20:55.000000000 +0200
|
||||||
|
+++ beakerlib-1.18.new/src/python/journal-compare.py 2019-04-04 11:20:23.000000000 +0200
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-#!/usr/bin/env python
|
||||||
|
+#!/usr/bin/env python3
|
||||||
|
|
||||||
|
# Copyright (c) 2006 Red Hat, Inc. All rights reserved. This copyrighted material
|
||||||
|
# is made available to anyone wishing to use, modify, copy, or
|
||||||
|
diff -ur beakerlib-1.18.old/src/python/journalling.py beakerlib-1.18.new/src/python/journalling.py
|
||||||
|
--- beakerlib-1.18.old/src/python/journalling.py 2019-04-04 11:20:55.000000000 +0200
|
||||||
|
+++ beakerlib-1.18.new/src/python/journalling.py 2019-04-04 11:20:27.000000000 +0200
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-#!/usr/bin/env python
|
||||||
|
+#!/usr/bin/env python3
|
||||||
|
|
||||||
|
# Authors: Jakub Heger <jheger@redhat.com>
|
||||||
|
# Dalibor Pospisil <dapospis@redhat.com>
|
||||||
|
diff -ur beakerlib-1.18.old/src/python/rlMemAvg.py beakerlib-1.18.new/src/python/rlMemAvg.py
|
||||||
|
--- beakerlib-1.18.old/src/python/rlMemAvg.py 2019-04-04 11:20:55.000000000 +0200
|
||||||
|
+++ beakerlib-1.18.new/src/python/rlMemAvg.py 2019-04-04 11:20:30.000000000 +0200
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-#!/usr/bin/env python
|
||||||
|
+#!/usr/bin/env python3
|
||||||
|
|
||||||
|
# Authors: Petr Muller <pmuller@redhat.com>
|
||||||
|
#
|
||||||
|
diff -ur beakerlib-1.18.old/src/python/rlMemPeak.py beakerlib-1.18.new/src/python/rlMemPeak.py
|
||||||
|
--- beakerlib-1.18.old/src/python/rlMemPeak.py 2019-04-04 11:20:55.000000000 +0200
|
||||||
|
+++ beakerlib-1.18.new/src/python/rlMemPeak.py 2019-04-04 11:20:33.000000000 +0200
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-#!/usr/bin/env python
|
||||||
|
+#!/usr/bin/env python3
|
||||||
|
|
||||||
|
# Authors: Petr Muller <pmuller@redhat.com>
|
||||||
|
#
|
||||||
|
diff -ur beakerlib-1.18.old/src/python/testwatcher.py beakerlib-1.18.new/src/python/testwatcher.py
|
||||||
|
--- beakerlib-1.18.old/src/python/testwatcher.py 2019-04-04 11:20:55.000000000 +0200
|
||||||
|
+++ beakerlib-1.18.new/src/python/testwatcher.py 2019-04-04 11:20:36.000000000 +0200
|
||||||
|
@@ -1,4 +1,4 @@
|
||||||
|
-#!/usr/bin/env python
|
||||||
|
+#!/usr/bin/env python3
|
||||||
|
#
|
||||||
|
# Authors: Jiri Jaburek <jjaburek@redhat.com>
|
||||||
|
#
|
||||||
|
diff -ur beakerlib-1.18.old/src/journal.sh beakerlib-1.18.new/src/journal.sh
|
||||||
|
--- beakerlib-1.18.old/src/journal.sh
|
||||||
|
+++ beakerlib-1.18.new/src/journal.sh
|
||||||
|
@@ -299,7 +299,7 @@ rlJournalEnd(){
|
||||||
|
__INTERNAL_JournalXMLCreate() {
|
||||||
|
local res=0
|
||||||
|
[[ "$BEAKERLIB_JOURNAL" == "0" ]] || {
|
||||||
|
- if which python &> /dev/null; then
|
||||||
|
+ if which python3 &> /dev/null; then
|
||||||
|
$__INTERNAL_JOURNALIST $__INTERNAL_XSLT --metafile \
|
||||||
|
"$__INTERNAL_BEAKERLIB_METAFILE" --journal "$__INTERNAL_BEAKERLIB_JOURNAL"
|
||||||
|
res=$?
|
||||||
Loading…
x
Reference in New Issue
Block a user