From 3b2b749ec47b3557fcefcf2f0c974cccad53ad90 Mon Sep 17 00:00:00 2001 From: zouzhimin Date: Sat, 2 Mar 2024 06:28:16 +0800 Subject: [PATCH 1/2] Fix pcsd ruby --- Fix-pcsd-ruby.patch | 251 ++++++++++++++++++++++++++++++++++++++++++++ pcs.spec | 6 +- 2 files changed, 256 insertions(+), 1 deletion(-) create mode 100644 Fix-pcsd-ruby.patch diff --git a/Fix-pcsd-ruby.patch b/Fix-pcsd-ruby.patch new file mode 100644 index 0000000..016991a --- /dev/null +++ b/Fix-pcsd-ruby.patch @@ -0,0 +1,251 @@ +From 19ce5ec842128637595ecbd5b8e1f9733d0999ce Mon Sep 17 00:00:00 2001 +From: Miroslav Lisik +Date: Mon, 5 Feb 2024 13:33:50 +0100 +Subject: [PATCH] Fix pcsd ruby + +--- + configure.ac | 19 ++++++++++++++ + m4/ac_ruby_gem.m4 | 4 +-- + pcs_test/smoke.sh.in | 42 +++++++++++++++++++++++++++++- + pcsd/pcsd.rb | 12 ++++++--- + pcsd/{rserver.rb => rserver.rb.in} | 3 ++- + 5 files changed, 72 insertions(+), 8 deletions(-) + rename pcsd/{rserver.rb => rserver.rb.in} (97%) + +diff --git a/configure.ac b/configure.ac +index 68de52c..86de294 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -399,9 +399,22 @@ AC_DEFUN([PCS_CHECK_GEM], [ + fi + ]) + ++# PCS_GEM_ACTION([curversion], [op], [cmpversion][, action-if-true] [, action-if-false]) ++AC_DEFUN([PCS_GEM_ACTION], [ ++ if test -n "$1"; then ++ AC_COMPARE_VERSIONS([$1], [$2], [$3], [$4], [$5]) ++ else ++ true ++ $5 ++ fi ++]) ++ + PCS_CHECK_GEM([power_assert]) + PCS_CHECK_GEM([test-unit]) + ++RACK_HANDLER="Rackup" ++REQUIRE_RACKUP="require 'rackup'" ++ + if test "x$tests_only" != "xyes"; then + PCS_CHECK_GEM([backports]) + PCS_CHECK_GEM([childprocess]) +@@ -411,14 +424,19 @@ if test "x$tests_only" != "xyes"; then + PCS_CHECK_GEM([ruby2_keywords]) + PCS_CHECK_GEM([mustermann]) + PCS_CHECK_GEM([rack]) ++ PCS_GEM_ACTION([$HAVE_RUBYGEM_RACK_VERSION], [<], [3.0], [RACK_HANDLER=Rack REQUIRE_RACKUP=""], [PCS_CHECK_GEM([rackup])]) + PCS_CHECK_GEM([rack-protection]) ++ PCS_GEM_ACTION([$HAVE_RUBYGEM_RACK_PROTECTION_VERSION], [<], [3.2.0], [], [PCS_CHECK_GEM([base64], [>= 0.1.0])]) + PCS_CHECK_GEM([rack-test]) + PCS_CHECK_GEM([sinatra]) ++ PCS_GEM_ACTION([$HAVE_RUBYGEM_SINATRA_VERSION], [<], [4.0.0], [], [PCS_CHECK_GEM([rack-session], [>= 2.0.0])]) + PCS_CHECK_GEM([tilt]) + PCS_CHECK_GEM([nio4r]) + PCS_CHECK_GEM([puma]) + PCS_CHECK_GEM([rexml]) + fi ++AC_SUBST([RACK_HANDLER]) ++AC_SUBST([REQUIRE_RACKUP]) + + if test "x$local_build" = "xyes" && test $(wc -l < Gemfile) -gt 2; then + GEM_HOME="$LIB_DIR/$PCSD_BUNDLED_DIR_ROOT_LOCAL" +@@ -603,6 +621,7 @@ AC_CONFIG_FILES([Makefile + pcsd/pcsd-cli.rb + pcsd/pcsd-ruby.service + pcsd/pcsd.service ++ pcsd/rserver.rb + pcsd/settings.rb + pcsd/logrotate/pcsd]) + +diff --git a/m4/ac_ruby_gem.m4 b/m4/ac_ruby_gem.m4 +index 6e202a3..465084c 100644 +--- a/m4/ac_ruby_gem.m4 ++++ b/m4/ac_ruby_gem.m4 +@@ -29,12 +29,12 @@ AC_DEFUN([AC_RUBY_GEM],[ + fi + AC_MSG_RESULT([yes (detected: $curversion)]) + eval AS_TR_CPP(HAVE_RUBYGEM_$module)=yes +- eval AS_TR_CPP(HAVE_RUBYGEM_$module_version)=$curversion ++ eval AS_TR_CPP(HAVE_RUBYGEM_${module}_version)=$curversion + $3 + else + AC_MSG_RESULT([no]) + eval AS_TR_CPP(HAVE_RUBYGEM_$module)=no +- eval AS_TR_CPP(HAVE_RUBYGEM_$module_version)="" ++ eval AS_TR_CPP(HAVE_RUBYGEM_${module}_version)="" + $4 + fi + ]) +diff --git a/pcs_test/smoke.sh.in b/pcs_test/smoke.sh.in +index e9466ef..a4b3ac7 100755 +--- a/pcs_test/smoke.sh.in ++++ b/pcs_test/smoke.sh.in +@@ -5,7 +5,9 @@ SCRIPT_DIR="$(dirname -- "$(realpath -- "$0")")" + + cluster_user=hacluster + cluster_user_password=qa57Jk27eP ++cluster_name="cluster-name" + pcsd_socket_path="@LOCALSTATEDIR@/run/pcsd.socket" ++pcsd_settings_conf_path="@LOCALSTATEDIR@/lib/pcsd/pcs_settings.conf" + + echo "${cluster_user_password}" | passwd --stdin "${cluster_user}"; + +@@ -14,11 +16,12 @@ pcs --version + pcs host auth localhost --debug -u ${cluster_user} -p ${cluster_user_password} + if pidof systemd | grep "\b1\b"; then + # this command requires full system with proper init process +- pcs cluster setup cluster-name localhost --debug ++ pcs cluster setup ${cluster_name} localhost --debug + fi + + output_file=$(mktemp) + token_file=$(mktemp) ++cookie_file=$(mktemp) + + # Sanity check of API V0 + token=$(python3 -c "import json; print(json.load(open('@LOCALSTATEDIR@/lib/pcsd/known-hosts'))['known_hosts']['localhost']['token']);") +@@ -33,6 +36,41 @@ pcs host auth "${custom_localhost_node_name}" addr=localhost --token "${token_fi + pcs pcsd accept_token "${token_file}" + pcs pcsd status "${custom_localhost_node_name}" | grep "${custom_localhost_node_name}: Online" + ++# Test passing request body (raw_data) in ruby daemon ++cat < ${pcsd_settings_conf_path} ++{ ++ "format_version": 2, ++ "data_version": 1, ++ "clusters": [ ++ { ++ "name": "${cluster_name}", ++ "nodes": [ ++ "localhost" ++ ] ++ } ++ ], ++ "permissions": { ++ "local_cluster": [ ++ { ++ "type": "group", ++ "name": "haclient", ++ "allow": [ ++ "grant", ++ "read", ++ "write" ++ ] ++ } ++ ] ++ } ++} ++EOF ++cat ${pcsd_settings_conf_path} ++pcs cluster start --all --wait ++curl --insecure --data "username=${cluster_user}&password=${cluster_user_password}" --cookie-jar ${cookie_file} https://localhost:2224/ui/login ++curl --insecure --cookie ${cookie_file} --header "X-Requested-With: XMLHttpRequest" --data "hidden[hidden_input]=&config[stonith-enabled]=false" https://localhost:2224/managec/${cluster_name}/update_cluster_settings > "${output_file}" ++cat "${output_file}"; echo "" ++[ "$(cat ${output_file})" = "Update Successful" ] ++ + # Sanity check of API V1 + curl -kb "token=${token}" https://localhost:2224/api/v1/resource-agent-get-agents-list/v1 --data '{}' > "${output_file}" + cat "${output_file}"; echo "" +@@ -57,6 +95,8 @@ su testuser -c '! curl --unix-socket '"${pcsd_socket_path}"' http:/something/api + # cleanup + rm "${token_file}" + rm "${output_file}" ++rm "${cookie_file}" ++rm "${pcsd_settings_conf_path}" + pcs cluster destroy --force + userdel -r testuser + exit 0 +diff --git a/pcsd/pcsd.rb b/pcsd/pcsd.rb +index 2e2baa2..5b8d0a1 100644 +--- a/pcsd/pcsd.rb ++++ b/pcsd/pcsd.rb +@@ -848,6 +848,7 @@ end + post '/managec/:cluster/api/v1/:command' do + auth_user = getAuthUser() + if params[:cluster] and params[:command] ++ request.body.rewind + return send_cluster_request_with_token( + auth_user, + params[:cluster], +@@ -855,7 +856,7 @@ post '/managec/:cluster/api/v1/:command' do + true, # post + {}, # data - useless when there are raw_data + false, # remote +- request.env['rack.input'].read # raw_data ++ request.body.read # raw_data + ) + end + end +@@ -863,6 +864,7 @@ end + get '/managec/:cluster/api/v1/:command' do + auth_user = getAuthUser() + if params[:cluster] and params[:command] ++ request.body.rewind + return send_cluster_request_with_token( + auth_user, + params[:cluster], +@@ -870,14 +872,15 @@ get '/managec/:cluster/api/v1/:command' do + false, # post + {}, # data - useless when there are raw_data + false, # remote +- request.env['rack.input'].read # raw_data ++ request.body.read # raw_data + ) + end + end + + post '/managec/:cluster/?*' do + auth_user = getAuthUser() +- raw_data = request.env["rack.input"].read ++ request.body.rewind ++ raw_data = request.body.read + if params[:cluster] + request = "/" + params[:splat].join("/") + +@@ -889,7 +892,8 @@ end + + get '/managec/:cluster/?*' do + auth_user = getAuthUser() +- raw_data = request.env["rack.input"].read ++ request.body.rewind ++ raw_data = request.body.read + if params[:cluster] + request = "/" + params[:splat].join("/") + code, out = send_cluster_request_with_token( +diff --git a/pcsd/rserver.rb b/pcsd/rserver.rb.in +similarity index 97% +rename from pcsd/rserver.rb +rename to pcsd/rserver.rb.in +index 400df28..02d1a34 100644 +--- a/pcsd/rserver.rb ++++ b/pcsd/rserver.rb.in +@@ -2,6 +2,7 @@ require "base64" + require "date" + require "json" + require 'rack' ++@REQUIRE_RACKUP@ + require 'sinatra' + + require 'settings.rb' +@@ -59,7 +60,7 @@ use TornadoCommunicationMiddleware + + require 'pcsd' + +-::Rack::Handler.get('puma').run( ++::@RACK_HANDLER@::Handler.get('puma').run( + Sinatra::Application, :Host => "#{PCSD_RUBY_SOCKET}?umask=0o077", :timeout => 0 + ) do |server| + puts server.class +-- +2.41.0 + diff --git a/pcs.spec b/pcs.spec index 416a9d4..2782983 100644 --- a/pcs.spec +++ b/pcs.spec @@ -1,6 +1,6 @@ Name: pcs Version: 0.11.7 -Release: 3 +Release: 4 License: GPL-2.0-only AND Apache-2.0 AND MIT AND BSD-3-Clause AND (BSD-2-Clause OR Ruby) AND (BSD-2-Clause OR GPL-2.0-or-later) URL: https://github.com/ClusterLabs/pcs Group: System Environment/Base @@ -40,6 +40,7 @@ Patch0: do-not-support-cluster-setup-with-udp-u-transport.patch Patch1: Support-for-openEuler.patch Patch2: fix-do-not-put-empty-uid-gid-options-to-an-uidgid-fi.patch Patch3: fix-stonith-level-validation.patch +Patch4: Fix-pcsd-ruby.patch # ui patches: >200 # Patch201: bzNUMBER-01-name.patch @@ -400,6 +401,9 @@ run_all_tests %license pyagentx_LICENSE.txt %changelog +* Tue Mar 12 2024 zouzhimin - 0.11.7-4 +- Fix pcsd ruby + * Mon Mar 04 2024 zouzhimin - 0.11.7-3 - fix stonith level validation From 2473a05933375bbf2b4d03d2c80297b65428a702 Mon Sep 17 00:00:00 2001 From: zouzhimin Date: Sat, 2 Mar 2024 07:05:57 +0800 Subject: [PATCH 2/2] update crm_mon schemas for tests --- pcs.spec | 6 +- update-crm_mon-schemas-for-tests.patch | 957 +++++++++++++++++++++++++ 2 files changed, 962 insertions(+), 1 deletion(-) create mode 100644 update-crm_mon-schemas-for-tests.patch diff --git a/pcs.spec b/pcs.spec index 2782983..23b23ad 100644 --- a/pcs.spec +++ b/pcs.spec @@ -1,6 +1,6 @@ Name: pcs Version: 0.11.7 -Release: 4 +Release: 5 License: GPL-2.0-only AND Apache-2.0 AND MIT AND BSD-3-Clause AND (BSD-2-Clause OR Ruby) AND (BSD-2-Clause OR GPL-2.0-or-later) URL: https://github.com/ClusterLabs/pcs Group: System Environment/Base @@ -41,6 +41,7 @@ Patch1: Support-for-openEuler.patch Patch2: fix-do-not-put-empty-uid-gid-options-to-an-uidgid-fi.patch Patch3: fix-stonith-level-validation.patch Patch4: Fix-pcsd-ruby.patch +Patch5: update-crm_mon-schemas-for-tests.patch # ui patches: >200 # Patch201: bzNUMBER-01-name.patch @@ -401,6 +402,9 @@ run_all_tests %license pyagentx_LICENSE.txt %changelog +* Thu Mar 14 2024 zouzhimin - 0.11.7-5 +- update crm_mon schemas for tests + * Tue Mar 12 2024 zouzhimin - 0.11.7-4 - Fix pcsd ruby diff --git a/update-crm_mon-schemas-for-tests.patch b/update-crm_mon-schemas-for-tests.patch new file mode 100644 index 0000000..92c937b --- /dev/null +++ b/update-crm_mon-schemas-for-tests.patch @@ -0,0 +1,957 @@ +From 2b7322113eec6a2d789d47d47049ae90c7a46625 Mon Sep 17 00:00:00 2001 +From: Peter Romancik +Date: Fri, 2 Feb 2024 10:50:11 +0100 +Subject: [PATCH] update crm_mon schemas for tests + +--- + pcs_test/Makefile.am | 11 +- + pcs_test/resources/crm_mon.minimal.xml | 4 +- + .../resources/pcmk_api_rng/api-result.rng | 2 +- + .../resources/pcmk_api_rng/crm_mon-2.29.rng | 213 ++++++++++++ + .../resources/pcmk_api_rng/crm_mon-2.4.rng | 311 ------------------ + .../resources/pcmk_api_rng/failure-2.8.rng | 33 ++ + ...nce-event-2.0.rng => fence-event-2.15.rng} | 3 + + .../resources/pcmk_api_rng/node-attrs-2.8.rng | 24 ++ + .../pcmk_api_rng/node-history-2.12.rng | 70 ++++ + .../resources/pcmk_api_rng/nodes-2.29.rng | 54 +++ + .../pcmk_api_rng/pacemakerd-health-2.25.rng | 20 ++ + .../{resources-2.4.rng => resources-2.29.rng} | 45 ++- + 12 files changed, 472 insertions(+), 318 deletions(-) + create mode 100644 pcs_test/resources/pcmk_api_rng/crm_mon-2.29.rng + delete mode 100644 pcs_test/resources/pcmk_api_rng/crm_mon-2.4.rng + create mode 100644 pcs_test/resources/pcmk_api_rng/failure-2.8.rng + rename pcs_test/resources/pcmk_api_rng/{fence-event-2.0.rng => fence-event-2.15.rng} (91%) + create mode 100644 pcs_test/resources/pcmk_api_rng/node-attrs-2.8.rng + create mode 100644 pcs_test/resources/pcmk_api_rng/node-history-2.12.rng + create mode 100644 pcs_test/resources/pcmk_api_rng/nodes-2.29.rng + create mode 100644 pcs_test/resources/pcmk_api_rng/pacemakerd-health-2.25.rng + rename pcs_test/resources/pcmk_api_rng/{resources-2.4.rng => resources-2.29.rng} (76%) + +diff --git a/pcs_test/Makefile.am b/pcs_test/Makefile.am +index 94e4c07a..32ac5eee 100644 +--- a/pcs_test/Makefile.am ++++ b/pcs_test/Makefile.am +@@ -35,10 +35,15 @@ EXTRA_DIST = \ + resources/fenced_metadata.xml \ + resources/schedulerd_metadata.xml \ + resources/pcmk_api_rng/api-result.rng \ +- resources/pcmk_api_rng/crm_mon-2.4.rng \ ++ resources/pcmk_api_rng/crm_mon-2.29.rng \ + resources/pcmk_api_rng/digests-2.9.rng \ +- resources/pcmk_api_rng/fence-event-2.0.rng \ +- resources/pcmk_api_rng/resources-2.4.rng \ ++ resources/pcmk_api_rng/failure-2.8.rng \ ++ resources/pcmk_api_rng/fence-event-2.15.rng \ ++ resources/pcmk_api_rng/node-attrs-2.8.rng \ ++ resources/pcmk_api_rng/node-history-2.12.rng \ ++ resources/pcmk_api_rng/nodes-2.29.rng \ ++ resources/pcmk_api_rng/pacemakerd-health-2.25.rng \ ++ resources/pcmk_api_rng/resources-2.29.rng \ + resources/pcmk_api_rng/status-2.0.rng \ + resources/resource_agent_ocf_heartbeat_dummy_insane_action.xml \ + resources/resource_agent_ocf_heartbeat_dummy_utf8.xml \ +diff --git a/pcs_test/resources/crm_mon.minimal.xml b/pcs_test/resources/crm_mon.minimal.xml +index 2c3473c0..df02fe3e 100644 +--- a/pcs_test/resources/crm_mon.minimal.xml ++++ b/pcs_test/resources/crm_mon.minimal.xml +@@ -1,4 +1,4 @@ +- ++ + + + +@@ -6,7 +6,7 @@ + + + +- ++ + + + +diff --git a/pcs_test/resources/pcmk_api_rng/api-result.rng b/pcs_test/resources/pcmk_api_rng/api-result.rng +index fcd812ac..e01cfdcd 100644 +--- a/pcs_test/resources/pcmk_api_rng/api-result.rng ++++ b/pcs_test/resources/pcmk_api_rng/api-result.rng +@@ -6,7 +6,7 @@ + + + +- ++ + + + +diff --git a/pcs_test/resources/pcmk_api_rng/crm_mon-2.29.rng b/pcs_test/resources/pcmk_api_rng/crm_mon-2.29.rng +new file mode 100644 +index 00000000..9cc554cf +--- /dev/null ++++ b/pcs_test/resources/pcmk_api_rng/crm_mon-2.29.rng +@@ -0,0 +1,213 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ granted ++ revoked ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/pcs_test/resources/pcmk_api_rng/crm_mon-2.4.rng b/pcs_test/resources/pcmk_api_rng/crm_mon-2.4.rng +deleted file mode 100644 +index 88973a4e..00000000 +--- a/pcs_test/resources/pcmk_api_rng/crm_mon-2.4.rng ++++ /dev/null +@@ -1,311 +0,0 @@ +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- unknown +- member +- remote +- ping +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- granted +- revoked +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +diff --git a/pcs_test/resources/pcmk_api_rng/failure-2.8.rng b/pcs_test/resources/pcmk_api_rng/failure-2.8.rng +new file mode 100644 +index 00000000..a36d2ea9 +--- /dev/null ++++ b/pcs_test/resources/pcmk_api_rng/failure-2.8.rng +@@ -0,0 +1,33 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/pcs_test/resources/pcmk_api_rng/fence-event-2.0.rng b/pcs_test/resources/pcmk_api_rng/fence-event-2.15.rng +similarity index 91% +rename from pcs_test/resources/pcmk_api_rng/fence-event-2.0.rng +rename to pcs_test/resources/pcmk_api_rng/fence-event-2.15.rng +index e54687cd..8e000caf 100644 +--- a/pcs_test/resources/pcmk_api_rng/fence-event-2.0.rng ++++ b/pcs_test/resources/pcmk_api_rng/fence-event-2.15.rng +@@ -18,6 +18,9 @@ + + + ++ ++ ++ + + + +diff --git a/pcs_test/resources/pcmk_api_rng/node-attrs-2.8.rng b/pcs_test/resources/pcmk_api_rng/node-attrs-2.8.rng +new file mode 100644 +index 00000000..754ddb9e +--- /dev/null ++++ b/pcs_test/resources/pcmk_api_rng/node-attrs-2.8.rng +@@ -0,0 +1,24 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/pcs_test/resources/pcmk_api_rng/node-history-2.12.rng b/pcs_test/resources/pcmk_api_rng/node-history-2.12.rng +new file mode 100644 +index 00000000..9628000e +--- /dev/null ++++ b/pcs_test/resources/pcmk_api_rng/node-history-2.12.rng +@@ -0,0 +1,70 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/pcs_test/resources/pcmk_api_rng/nodes-2.29.rng b/pcs_test/resources/pcmk_api_rng/nodes-2.29.rng +new file mode 100644 +index 00000000..7dd17989 +--- /dev/null ++++ b/pcs_test/resources/pcmk_api_rng/nodes-2.29.rng +@@ -0,0 +1,54 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ red ++ yellow ++ green ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ unknown ++ member ++ remote ++ ping ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/pcs_test/resources/pcmk_api_rng/pacemakerd-health-2.25.rng b/pcs_test/resources/pcmk_api_rng/pacemakerd-health-2.25.rng +new file mode 100644 +index 00000000..2089b25f +--- /dev/null ++++ b/pcs_test/resources/pcmk_api_rng/pacemakerd-health-2.25.rng +@@ -0,0 +1,20 @@ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +diff --git a/pcs_test/resources/pcmk_api_rng/resources-2.4.rng b/pcs_test/resources/pcmk_api_rng/resources-2.29.rng +similarity index 76% +rename from pcs_test/resources/pcmk_api_rng/resources-2.4.rng +rename to pcs_test/resources/pcmk_api_rng/resources-2.29.rng +index e2795836..f4214a7c 100644 +--- a/pcs_test/resources/pcmk_api_rng/resources-2.4.rng ++++ b/pcs_test/resources/pcmk_api_rng/resources-2.29.rng +@@ -35,6 +35,16 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -53,6 +63,16 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -68,6 +88,16 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -87,13 +117,26 @@ + + + +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + ++ + + + + + ++ ++ ++ + + + +-- +2.25.1 +