import CS pcp-6.2.0-1.el9

This commit is contained in:
eabdullin 2024-03-28 11:22:38 +00:00
parent 796d42e9ea
commit aa2814d937
6 changed files with 316 additions and 319 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/pcp-6.0.5.src.tar.gz
SOURCES/pcp-6.2.0.src.tar.gz

View File

@ -1 +1 @@
b6fccadd38606aa79ef36fdad30947fb3aadee55 SOURCES/pcp-6.0.5.src.tar.gz
617d0e505af5f253080effb6701e089fc02e7379 SOURCES/pcp-6.2.0.src.tar.gz

View File

@ -1,69 +0,0 @@
commit e97d64cfab956e3542a0f25442086ee2fd74d9a5
Author: Nathan Scott <nathans@redhat.com>
Date: Tue Jul 18 16:22:30 2023 +1000
pmieconf: move test_action from primary into a separate group
Problem with using primary is that it is automatically enabled
as part of the primary pmie startup and thats not whats needed
for this diagnostic rule.
Resolves Red Hat BZ #2223348
diff --git a/src/pmieconf/.gitignore b/src/pmieconf/.gitignore
index 3c0b7b51ef..0670d80057 100644
--- a/src/pmieconf/.gitignore
+++ b/src/pmieconf/.gitignore
@@ -9,6 +9,7 @@ perdisk/GNUmakefile
pernetif/GNUmakefile
power/GNUmakefile
primary/GNUmakefile
+testing/GNUmakefile
zeroconf/GNUmakefile
pmieconf
pmieconf.static
diff --git a/src/pmieconf/GNUmakefile b/src/pmieconf/GNUmakefile
index 567d94dce1..7a82e45a28 100644
--- a/src/pmieconf/GNUmakefile
+++ b/src/pmieconf/GNUmakefile
@@ -18,7 +18,7 @@ include $(TOPDIR)/src/include/builddefs
include $(TOPDIR)/src/libpcp/src/GNUlibrarydefs
MKFILE_SUBDIRS = cpu entropy filesys memory network percpu perdisk pernetif \
- power global primary zeroconf
+ power global primary testing zeroconf
SUBDIRS = $(MKFILE_SUBDIRS)
CMDTARGET = pmieconf$(EXECSUFFIX)
diff --git a/src/pmieconf/primary/localdefs b/src/pmieconf/primary/localdefs
index 3d51dd69d9..ca21fca8b5 100644
--- a/src/pmieconf/primary/localdefs
+++ b/src/pmieconf/primary/localdefs
@@ -1,2 +1,2 @@
-ALL_RULES = pmda_status test_actions
+ALL_RULES = pmda_status
LOCAL_RULES = $(ALL_RULES)
diff --git a/src/pmieconf/testing/localdefs b/src/pmieconf/testing/localdefs
new file mode 100644
index 0000000000..a2af94f1c0
--- /dev/null
+++ b/src/pmieconf/testing/localdefs
@@ -0,0 +1,2 @@
+ALL_RULES = test_actions
+LOCAL_RULES = $(ALL_RULES)
diff --git a/src/pmieconf/primary/test_actions b/src/pmieconf/testing/test_actions
similarity index 97%
rename from src/pmieconf/primary/test_actions
rename to src/pmieconf/testing/test_actions
index cc0ee1f7cb..56c89787a0 100644
--- a/src/pmieconf/primary/test_actions
+++ b/src/pmieconf/testing/test_actions
@@ -2,7 +2,7 @@
# --- DO NOT MODIFY THIS FILE --- see pmieconf(5)
#
-rule primary.test_actions
+rule testing.test_actions
default = "$rule$"
predicate = "hinv.ncpu > 0"
enabled = no

View File

@ -1,94 +0,0 @@
commit b4869520fd98f8b2ad09d39fb4466100d508b926
Author: Nathan Scott <nathans@redhat.com>
Date: Mon Aug 7 13:04:38 2023 +1000
pmieconf: update webhook action for better EDA integration
The pmieconf webhook action was initially created for Event
Driven Ansible (EDA); two issues have been resolved related
- using the JSON key "values" conflicts with something deep
down in EDA that also interprets this JSON. Use "message",
which is more descriptive of the content anyway.
- there is no easily accessible hostname JSON key - add one
via the usual %h pmie action string expansion.
Related to Red Hat BZ #2185803
diff --git a/qa/1567 b/qa/1567
index ba90aa9cc8..10c1756ca4 100755
--- a/qa/1567
+++ b/qa/1567
@@ -53,7 +53,7 @@ sleep 2 # let nc start up
( sleep 2; $signal $pid1 ) >>$seq.full 2>&1 &
echo "pmie webhook invocation" | tee -a $here/$seq.full
-pmie_webhook "http://localhost:$port/webhook|Busy CPU|100%hosta|100%@hostb" 2> $tmp.webhook.err
+pmie_webhook "http://localhost:$port/webhook|Busy CPU|www.abc.com|100%@www.abc.com" 2> $tmp.webhook.err
cat $tmp.webhook.err >> $here/$seq.full
echo
diff --git a/qa/1567.out b/qa/1567.out
index e3fce64bb3..153aec9581 100644
--- a/qa/1567.out
+++ b/qa/1567.out
@@ -9,5 +9,5 @@ Content-Type: application/json
Host: localhost:PORT
POST /webhook HTTP/1.1
User-Agent: curl VERSION
-{"pcp":{"pmie":{"rule":"Busy CPU","values":"100%hosta 100%@hostb"}}}
+{"pcp":{"pmie":{"rule":"Busy CPU","hostname":"www.abc.com","message":"100%@www.abc.com"}}}
diff --git a/src/pmieconf/global/pcp_actions b/src/pmieconf/global/pcp_actions
index 476bef0553..61e787f21e 100644
--- a/src/pmieconf/global/pcp_actions
+++ b/src/pmieconf/global/pcp_actions
@@ -95,7 +95,7 @@ the rule condition is true.";
shell global.webhook_action
enabled = no
- default = "pmie_webhook '$webhook_endpoint$|$rule$^|$action_expand$^'"
+ default = "pmie_webhook '$webhook_endpoint$|$rule$^|%h|$action_expand$^'"
help =
"HTTP POST message will be sent to \"webhook_endpoint\" when a
rule condition is true. The message will be in JSON format.";
diff --git a/src/pmieconf/pmie_webhook b/src/pmieconf/pmie_webhook
index 87193fca60..8d386f1ae6 100755
--- a/src/pmieconf/pmie_webhook
+++ b/src/pmieconf/pmie_webhook
@@ -19,7 +19,8 @@
#
# "line" 1 - HTTP/HTTPS endpoint, as passed to a http client
# "line" 2 - pmie rule name
-# "line" 3,4,.. - values from predicate evaluation [optional]
+# "line" 3 - rule evaluated for hostname
+# "line" 4,5,.. - values from predicate evaluation [optional]
# source the PCP configuration environment variables
. /etc/pcp.env
@@ -28,7 +29,7 @@ prog=`basename $0`
if [ $# -ne 1 ]
then
- echo "Usage: $prog url|rule|message"
+ echo "Usage: $prog url|rule|hostname|message"
exit 1
fi
@@ -46,14 +47,14 @@ if [ -z "$CURL" ] ; then
fi
cat <<End-of-File | ${PCP_AWK_PROG} -F\| '
-NF < 2 { print "echo '"'$prog"': needs \"endpoint|rule|values\" argument'"'"'"
+NF < 3 { print "echo '"'$prog"': needs \"endpoint|rule|hostname|message\" argument'"'"'"
exit 1
}
{ printf "%s ", "'$CURL'"
printf "-s -X POST -H \"Content-Type: application/json\" -d@- "
printf "%s <<End-of-File\n", $1
- printf "{\"pcp\":{\"pmie\":{\"rule\":\"%s\",\"values\":\"%s", $2, $3
- for (i = 4; i <= NF; i++)
+ printf "{\"pcp\":{\"pmie\":{\"rule\":\"%s\",\"hostname\":\"%s\",\"message\":\"%s", $2, $3, $4
+ for (i = 5; i <= NF; i++)
printf " %s", $i
printf "\"}}}\nEnd-of-File\n"
}' | /bin/sh

View File

@ -0,0 +1,12 @@
diff -Naurp pcp-6.2.0.orig/src/include/pcp.conf.in pcp-6.2.0/src/include/pcp.conf.in
--- pcp-6.2.0.orig/src/include/pcp.conf.in 2023-12-08 10:24:17.000000000 +1100
+++ pcp-6.2.0/src/include/pcp.conf.in 2024-02-12 04:10:10.649953498 +1100
@@ -140,7 +140,7 @@ PCP_ARCHIVE_DIR=@pcp_archive_dir@
# default version for generating PCP archives
# Possible versions: 2, 3 (3 requires PCP 6+)
-PCP_ARCHIVE_VERSION=3
+PCP_ARCHIVE_VERSION=2
# directory for daily PCP activity reports
# Standard path: /var/log/pcp/sa

File diff suppressed because it is too large Load Diff