summaryrefslogtreecommitdiff
diff options
-rw-r--r--.bumpversion.cfg2
-rwxr-xr-xbin/failed_service_check.sh11
-rwxr-xr-xmanage.py2
-rw-r--r--units/nvdimm/jobs.pxu4
-rw-r--r--units/nvdimm/test-plan.pxu2
-rw-r--r--units/power-management/jobs.pxu20
-rw-r--r--units/power-management/test-plan.pxu2
-rw-r--r--units/watchdog/jobs.pxu10
-rw-r--r--units/watchdog/test-plan.pxu1
9 files changed, 50 insertions, 4 deletions
diff --git a/.bumpversion.cfg b/.bumpversion.cfg
index 9567a8e..aa2778f 100644
--- a/.bumpversion.cfg
+++ b/.bumpversion.cfg
@@ -1,5 +1,5 @@
[bumpversion]
-current_version = 0.52.0.dev0
+current_version = 0.53.0.dev0
files = manage.py
parse = (?P<major>\d+)\.(?P<minor>\d+)(\.(?P<patch>\d+))?((?P<release>\.?[a-z]+)(?P<N>\d+))?
serialize =
diff --git a/bin/failed_service_check.sh b/bin/failed_service_check.sh
new file mode 100755
index 0000000..172f20a
--- /dev/null
+++ b/bin/failed_service_check.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+COUNT=$(systemctl --system --no-ask-password --no-pager --no-legend list-units --state=failed | wc -l)
+printf "Found %s failed units\n" "$COUNT"
+if [ "$COUNT" -eq 0 ]; then
+ exit 0
+else
+ printf "\nFailed units:\n"
+ systemctl --system --no-ask-password --no-pager list-units --state=failed
+fi
+exit 1
diff --git a/manage.py b/manage.py
index 040d24a..69b00be 100755
--- a/manage.py
+++ b/manage.py
@@ -5,7 +5,7 @@ from plainbox.provider_manager import N_
setup(
name='plainbox-provider-checkbox',
namespace='com.canonical.certification',
- version="0.52.0.dev0",
+ version="0.53.0.dev0",
description=N_("Checkbox provider"),
gettext_domain='plainbox-provider-checkbox',
strict=False, deprecated=False,
diff --git a/units/nvdimm/jobs.pxu b/units/nvdimm/jobs.pxu
index 6db1b66..b663e52 100644
--- a/units/nvdimm/jobs.pxu
+++ b/units/nvdimm/jobs.pxu
@@ -6,6 +6,7 @@ user: root
requires:
executable.name == "ipmctl"
lsb.release >= "18.04"
+ nvdimm_resource.detected == "true"
command: ipmctl show -dimm
_summary:
Verify that NVDIMMs are discovered
@@ -20,7 +21,8 @@ user: root
requires:
executable.name == "ipmctl"
lsb.release >= "18.04"
-command: ipmctl show -d CurrentValue,CurrentState -sensor Health
+ nvdimm_resource.detected == "true"
+command: ipmctl show -sensor Health
_summary:
Report health state of installed NVDIMM devices
_description:
diff --git a/units/nvdimm/test-plan.pxu b/units/nvdimm/test-plan.pxu
index 9951039..601a788 100644
--- a/units/nvdimm/test-plan.pxu
+++ b/units/nvdimm/test-plan.pxu
@@ -3,5 +3,5 @@ unit: test plan
_name: NVDIM Specific Tests
_description: NVDIMM related tests
include:
- nvidmm/info
+ nvdimm/info
nvdimm/health
diff --git a/units/power-management/jobs.pxu b/units/power-management/jobs.pxu
index 36e31c2..a84f004 100644
--- a/units/power-management/jobs.pxu
+++ b/units/power-management/jobs.pxu
@@ -290,6 +290,16 @@ user: root
flags: preserve-locale noreturn autorestart
estimated_duration: 180.0
+id: power-management/post-warm-reboot
+after: power-management/warm-reboot
+category_id: com.canonical.plainbox::power-management
+_summary: Post warm reboot service check
+_description: Check there are no failed services after the warm reboot
+unit: job
+plugin: shell
+command: failed_service_check.sh
+estimated_duration: 1.0
+
id: power-management/cold-reboot
category_id: com.canonical.plainbox::power-management
_summary: Cold reboot
@@ -307,6 +317,16 @@ user: root
flags: preserve-locale noreturn autorestart
estimated_duration: 300
+id: power-management/post-cold-reboot
+after: power-management/cold-reboot
+category_id: com.canonical.plainbox::power-management
+_summary: Post cold reboot service check
+_description: Check there are no failed services after the cold reboot
+unit: job
+plugin: shell
+command: failed_service_check.sh
+estimated_duration: 1.0
+
unit: template
template-resource: model_assertion
template-unit: job
diff --git a/units/power-management/test-plan.pxu b/units/power-management/test-plan.pxu
index bb782c1..8391bca 100644
--- a/units/power-management/test-plan.pxu
+++ b/units/power-management/test-plan.pxu
@@ -75,7 +75,9 @@ _name: Automated power tests
_description: Automated power tests for Snappy Ubuntu Core devices
include:
power-management/warm-reboot
+ power-management/post-warm-reboot
power-management/cold-reboot
+ power-management/post-cold-reboot
id: power-manual
unit: test plan
diff --git a/units/watchdog/jobs.pxu b/units/watchdog/jobs.pxu
index 2b5b236..3247941 100644
--- a/units/watchdog/jobs.pxu
+++ b/units/watchdog/jobs.pxu
@@ -65,3 +65,13 @@ user: root
plugin: shell
category_id: com.canonical.plainbox::power-management
estimated_duration: 60
+
+id: watchdog/post-trigger-system-reset-auto
+after: watchdog/trigger-system-reset-auto
+category_id: com.canonical.plainbox::power-management
+_summary: Post watchdog reset service check
+_description: Check there are no failed services after the watchdog triggered
+unit: job
+plugin: shell
+command: failed_service_check.sh
+estimated_duration: 1.0
diff --git a/units/watchdog/test-plan.pxu b/units/watchdog/test-plan.pxu
index 407a273..6de8e71 100644
--- a/units/watchdog/test-plan.pxu
+++ b/units/watchdog/test-plan.pxu
@@ -25,3 +25,4 @@ estimated_duration: 1s
include:
watchdog/systemd-config
watchdog/trigger-system-reset-auto
+ watchdog/post-trigger-system-reset-auto