Project Number Date
test_Tails_ISO_feature-trixie 1 15 May 2025, 23:59

Feature Report

Steps Scenarios Features
Feature Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
Upgrading an old Tails USB installation 30 4 53 0 0 87 3 4 7 15:16.902 Failed
Tags: @product
Feature Upgrading an old Tails USB installation
As a Tails user If I have an old version of Tails installed on a USB device and the USB device has a Persistent Storage I want to upgrade Tails on it and keep my Persistent Storage in the process
Tags: @product
2:8.413
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.002
Given a computer 0.668
And I create a 7200 MiB disk named "old" 0.267
And I plug USB drive "old" 1.063
And I write an old version of the Tails USB image to disk "old" 35.272
When I start Tails from USB drive "old" with network unplugged 1:26.714
Then the boot device has safe access rights 3.074
And Tails is running from USB drive "old" 0.325
And there is no persistence partition on USB drive "old" 0.071
And process "udev-watchdog" is running 0.091
And udev-watchdog is monitoring the correct device 0.284
And I unplug USB drive "old" 0.578
After features/support/hooks.rb:330 3.736
After features/support/hooks.rb:100 0.006
Tags: @product
2:15.141
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.002
Given a computer 0.228
And I start Tails from USB drive "old" with network unplugged and I login 1:28.634
Then Tails is running from USB drive "old" 0.385
And I create a persistent partition 33.544
And I take note of which tps features are available 2.284
Then a Tails persistence partition exists on USB drive "old" 1.070
And I shutdown Tails and wait for the computer to power off 8.994
After features/support/hooks.rb:330 0.198
After features/support/hooks.rb:100 0.008
Tags: @product
3:4.134
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.003
Given a computer 0.296
And I start Tails from USB drive "old" with network unplugged and I login with persistence enabled 2:26.594
Then Tails is running from USB drive "old" 0.486
And all tps features are active 1.956
When I write some files expected to persist 1.755
# Verify that our baseline for the next scenarios is sane
And all persistent filesystems have safe access rights 0.252
And all persistence configuration files have safe access rights 0.509
And all persistent directories from the old Tails version have safe access rights 2.774
And I take note of which tps features are available 0.446
And I shutdown Tails and wait for the computer to power off 4.306
# XXX: how does guestfs work vs snapshots?
Then only the expected files are present on the persistence partition on USB drive "old" 24.756
After features/support/hooks.rb:330 0.162
After features/support/hooks.rb:100 0.007
Tags: @product
2:35.180
Scenario Upgrading an old Tails USB installation from another Tails USB drive
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.002
Steps
Given I have started Tails without network from a USB drive without a persistent partition and stopped at Tails Greeter's login screen 2:35.180
try_for() timeout expired
Last ignored exception was: RemoteShell::ServerFailure: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/gdm-env'
./features/support/helpers/remote_shell.rb:71:in `block (2 levels) in communicate'
./features/support/helpers/remote_shell.rb:42:in `loop'
./features/support/helpers/remote_shell.rb:42:in `block in communicate'
./features/support/helpers/remote_shell.rb:37:in `communicate'
./features/support/helpers/remote_shell.rb:174:in `execute'
./features/support/helpers/remote_shell.rb:185:in `initialize'
./features/support/helpers/dogtail.rb:80:in `new'
./features/support/helpers/dogtail.rb:80:in `run'
./features/support/helpers/dogtail.rb:70:in `initialize'
./features/step_definitions/usb.rb:108:in `new'
./features/step_definitions/usb.rb:108:in `greeter'
./features/step_definitions/common_steps.rb:453:in `block (2 levels) in <top (required)>'
./features/support/helpers/misc_helpers.rb:78:in `block (2 levels) in try_for'
./features/support/helpers/misc_helpers.rb:66:in `loop'
./features/support/helpers/misc_helpers.rb:66:in `block in try_for'
./features/support/helpers/misc_helpers.rb:65:in `try_for'
./features/step_definitions/common_steps.rb:452:in `block in <top (required)>'
./features/step_definitions/common_steps.rb:284:in `block in <top (required)>'
./features/step_definitions/snapshots.rb:153:in `block in reach_checkpoint'
./features/step_definitions/snapshots.rb:150:in `each'
./features/step_definitions/snapshots.rb:150:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:173:in `block (2 levels) in <top (required)>' (Timeout::Error)
./features/support/helpers/misc_helpers.rb:145:in `rescue in try_for'
./features/support/helpers/misc_helpers.rb:51:in `try_for'
./features/step_definitions/common_steps.rb:452:in `/^the computer (?:re)?boots Tails$/'
./features/step_definitions/common_steps.rb:284:in `/^I start Tails from (.+?) drive "(.+?)"( with network unplugged)?( and I login( with persistence enabled)?( with the changed persistence passphrase)?( (?:and|with) an administration password)?)?$/'
./features/step_definitions/snapshots.rb:153:in `block in reach_checkpoint'
./features/step_definitions/snapshots.rb:150:in `each'
./features/step_definitions/snapshots.rb:150:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:173:in `/^I\ have\ started\ Tails\ without\ network\ from\ a\ USB\ drive\ without\ a\ persistent\ partition\ and\ stopped\ at\ Tails\ Greeter's\ login\ screen$/'
features/usb_upgrade.feature:61:in `Given I have started Tails without network from a USB drive without a persistent partition and stopped at Tails Greeter's login screen'
And I log in to a new session 0.000
And I clone USB drive "old" to a new USB drive "to_upgrade" 0.000
And I plug USB drive "to_upgrade" 0.000
When I upgrade Tails to USB drive "to_upgrade" by cloning 0.000
Then the running Tails is installed on USB drive "to_upgrade" 0.000
And I unplug USB drive "to_upgrade" 0.000
And I unplug USB drive "__internal" 0.000
After features/support/hooks.rb:330 7.482

SCENARIO FAILED: 'Upgrading an old Tails USB installation from another Tails USB drive' (at time 01:55:34)

Boot log: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:55:34_Upgrading_an_old_Tails_USB_installation_from_another_Tails_USB_drive.file_content_var_log_boot.log

Screenshot: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:55:34_Upgrading_an_old_Tails_USB_installation_from_another_Tails_USB_drive.png

Video: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:55:34_Upgrading_an_old_Tails_USB_installation_from_another_Tails_USB_drive.mkv

Systemd journal: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:55:34_Upgrading_an_old_Tails_USB_installation_from_another_Tails_USB_drive.journal

After features/support/hooks.rb:100 0.011
Tags: @product
0.198
Scenario Booting Tails from a USB drive upgraded from USB with persistence enabled
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.003
Steps
Given a computer 0.170
And I start Tails from USB drive "to_upgrade" with network unplugged and I login with persistence enabled 0.028
Call to virStorageVolLookupByName failed: Storage volume not found: no storage vol with matching name 'to_upgrade' (Libvirt::RetrieveError)
./features/support/helpers/storage_helper.rb:151:in `lookup_volume_by_name'
./features/support/helpers/storage_helper.rb:151:in `disk_path'
./features/support/helpers/vm_helper.rb:337:in `plug_drive'
./features/support/helpers/vm_helper.rb:416:in `set_disk_boot'
./features/step_definitions/common_steps.rb:144:in `/^the computer is set to boot from (.+?) drive "(.+?)"$/'
./features/step_definitions/common_steps.rb:282:in `/^I start Tails from (.+?) drive "(.+?)"( with network unplugged)?( and I login( with persistence enabled)?( with the changed persistence passphrase)?( (?:and|with) an administration password)?)?$/'
features/usb_upgrade.feature:73:in `And I start Tails from USB drive "to_upgrade" with network unplugged and I login with persistence enabled'
Then all tps features from the old Tails version are active 0.000
And Tails is running from USB drive "to_upgrade" 0.000
And the boot device has safe access rights 0.000
And the expected persistent files created with the old Tails version are present in the filesystem 0.000
And all persistent directories from the old Tails version have safe access rights 0.000
Hooks
After features/support/hooks.rb:330 4.395
<false> is not true. (Test::Unit::AssertionFailedError)
./features/support/hooks.rb:455:in `block (2 levels) in <top (required)>'
./features/support/hooks.rb:450:in `each'
./features/support/hooks.rb:450:in `After'
Output 1

SCENARIO FAILED: 'Booting Tails from a USB drive upgraded from USB with persistence enabled' (at time 01:55:42)

Screenshot: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:55:42_Booting_Tails_from_a_USB_drive_upgraded_from_USB_with_persistence_enabled.png

Video: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:55:42_Booting_Tails_from_a_USB_drive_upgraded_from_USB_with_persistence_enabled.mkv

After features/support/hooks.rb:100 0.000
2:33.148
Scenario Upgrading an initial Tails installation with an incremental upgrade
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.003
Steps
Given I have started Tails without network from a USB drive with a persistent partition enabled and logged in 2:33.148
try_for() timeout expired
Last ignored exception was: RemoteShell::ServerFailure: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/gdm-env'
./features/support/helpers/remote_shell.rb:71:in `block (2 levels) in communicate'
./features/support/helpers/remote_shell.rb:42:in `loop'
./features/support/helpers/remote_shell.rb:42:in `block in communicate'
./features/support/helpers/remote_shell.rb:37:in `communicate'
./features/support/helpers/remote_shell.rb:174:in `execute'
./features/support/helpers/remote_shell.rb:185:in `initialize'
./features/support/helpers/dogtail.rb:80:in `new'
./features/support/helpers/dogtail.rb:80:in `run'
./features/support/helpers/dogtail.rb:70:in `initialize'
./features/step_definitions/usb.rb:108:in `new'
./features/step_definitions/usb.rb:108:in `greeter'
./features/step_definitions/common_steps.rb:453:in `block (2 levels) in <top (required)>'
./features/support/helpers/misc_helpers.rb:78:in `block (2 levels) in try_for'
./features/support/helpers/misc_helpers.rb:66:in `loop'
./features/support/helpers/misc_helpers.rb:66:in `block in try_for'
./features/support/helpers/misc_helpers.rb:65:in `try_for'
./features/step_definitions/common_steps.rb:452:in `block in <top (required)>'
./features/step_definitions/common_steps.rb:284:in `block in <top (required)>'
./features/step_definitions/snapshots.rb:153:in `block in reach_checkpoint'
./features/step_definitions/snapshots.rb:150:in `each'
./features/step_definitions/snapshots.rb:150:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:173:in `block (2 levels) in <top (required)>' (Timeout::Error)
./features/support/helpers/misc_helpers.rb:145:in `rescue in try_for'
./features/support/helpers/misc_helpers.rb:51:in `try_for'
./features/step_definitions/common_steps.rb:452:in `/^the computer (?:re)?boots Tails$/'
./features/step_definitions/common_steps.rb:284:in `/^I start Tails from (.+?) drive "(.+?)"( with network unplugged)?( and I login( with persistence enabled)?( with the changed persistence passphrase)?( (?:and|with) an administration password)?)?$/'
./features/step_definitions/snapshots.rb:153:in `block in reach_checkpoint'
./features/step_definitions/snapshots.rb:150:in `each'
./features/step_definitions/snapshots.rb:150:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:173:in `/^I\ have\ started\ Tails\ without\ network\ from\ a\ USB\ drive\ with\ a\ persistent\ partition\ enabled\ and\ logged\ in$/'
features/usb_upgrade.feature:82:in `Given I have started Tails without network from a USB drive with a persistent partition enabled and logged in'
And no SquashFS delta is installed 0.000
And Tails is fooled to think that version 6.0~testoverlayfs was initially installed 0.000
And Tails is fooled to think it is running version 6.0~testoverlayfs 0.000
And the file system changes introduced in version 6.2~testoverlayfs are not present 0.000
And the file system changes introduced in version 6.3~testoverlayfs are not present 0.000
When the network is plugged 0.000
And Tor is ready 0.000
Then I am proposed to install an incremental upgrade to version 6.2~testoverlayfs 0.000
And I can successfully install the incremental upgrade to version 6.2~testoverlayfs 0.000
Given I shutdown Tails and wait for the computer to power off 0.000
When I start Tails from USB drive "__internal" with network unplugged and I login with persistence enabled 0.000
Then Tails is running version 6.2~testoverlayfs 0.000
And all tps features are active 0.000
And the file system changes introduced in version 6.2~testoverlayfs are present 0.000
And only the 6.2~testoverlayfs SquashFS delta is installed 0.000
# Our IUK sets a release date that can make Tor bootstrapping impossible
Given Tails system time is magically synchronized 0.000
# We'll really install Tails_amd64_6.0~testoverlayfs_to_6.3~testoverlayfs.iuk
# but we need some way to force upgrading a second time in a row
# even if only the initially installed version is considered
And Tails is fooled to think that version 6.1~testoverlayfs was initially installed 0.000
When the network is plugged 0.000
And Tor is ready 0.000
Then I am proposed to install an incremental upgrade to version 6.3~testoverlayfs 0.000
And I can successfully install the incremental upgrade to version 6.3~testoverlayfs 0.000
Given I shutdown Tails and wait for the computer to power off 0.000
When I start Tails from USB drive "__internal" with network unplugged and I login with persistence enabled 0.000
Then Tails is running version 6.3~testoverlayfs 0.000
And all tps features are active 0.000
And the file system changes introduced in version 6.3~testoverlayfs are present 0.000
And only the 6.3~testoverlayfs SquashFS delta is installed 0.000
# Regression test for #17425 (i.e. the Upgrader would propose
# upgrading to the version that's already running)
Given Tails system time is magically synchronized 0.000
And Tails is fooled to think that version 6.1~testoverlayfs was initially installed 0.000
When the network is plugged 0.000
And Tor is ready 0.000
Then the Upgrader considers the system as up-to-date 0.000
# Regression test on #8158 (i.e. the IUK's filesystem is not part of the Unsafe Browser's chroot)
And I successfully start the Unsafe Browser 0.000
And the file system changes introduced in version 6.3~testoverlayfs are present in the Unsafe Browser's chroot 0.000
After features/support/hooks.rb:330 7.465

SCENARIO FAILED: 'Upgrading an initial Tails installation with an incremental upgrade' (at time 01:58:19)

Boot log: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:58:19_Upgrading_an_initial_Tails_installation_with_an_incremental_upgrade.file_content_var_log_boot.log

Screenshot: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:58:19_Upgrading_an_initial_Tails_installation_with_an_incremental_upgrade.png

Video: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:58:19_Upgrading_an_initial_Tails_installation_with_an_incremental_upgrade.mkv

Systemd journal: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/01:58:19_Upgrading_an_initial_Tails_installation_with_an_incremental_upgrade.journal

After features/support/hooks.rb:100 0.010
2:40.685
Scenario Upgrading a Tails whose signing key is outdated
Before features/support/hooks.rb:266 0.000
Before features/support/hooks.rb:273 0.003
Steps
Given I have started Tails without network from a USB drive with a persistent partition enabled and logged in 2:40.685
try_for() timeout expired
Last ignored exception was: RemoteShell::ServerFailure: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/gdm-env'
./features/support/helpers/remote_shell.rb:71:in `block (2 levels) in communicate'
./features/support/helpers/remote_shell.rb:42:in `loop'
./features/support/helpers/remote_shell.rb:42:in `block in communicate'
./features/support/helpers/remote_shell.rb:37:in `communicate'
./features/support/helpers/remote_shell.rb:174:in `execute'
./features/support/helpers/remote_shell.rb:185:in `initialize'
./features/support/helpers/dogtail.rb:80:in `new'
./features/support/helpers/dogtail.rb:80:in `run'
./features/support/helpers/dogtail.rb:70:in `initialize'
./features/step_definitions/usb.rb:108:in `new'
./features/step_definitions/usb.rb:108:in `greeter'
./features/step_definitions/common_steps.rb:453:in `block (2 levels) in <top (required)>'
./features/support/helpers/misc_helpers.rb:78:in `block (2 levels) in try_for'
./features/support/helpers/misc_helpers.rb:66:in `loop'
./features/support/helpers/misc_helpers.rb:66:in `block in try_for'
./features/support/helpers/misc_helpers.rb:65:in `try_for'
./features/step_definitions/common_steps.rb:452:in `block in <top (required)>'
./features/step_definitions/common_steps.rb:284:in `block in <top (required)>'
./features/step_definitions/snapshots.rb:153:in `block in reach_checkpoint'
./features/step_definitions/snapshots.rb:150:in `each'
./features/step_definitions/snapshots.rb:150:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:173:in `block (2 levels) in <top (required)>' (Timeout::Error)
./features/support/helpers/misc_helpers.rb:145:in `rescue in try_for'
./features/support/helpers/misc_helpers.rb:51:in `try_for'
./features/step_definitions/common_steps.rb:452:in `/^the computer (?:re)?boots Tails$/'
./features/step_definitions/common_steps.rb:284:in `/^I start Tails from (.+?) drive "(.+?)"( with network unplugged)?( and I login( with persistence enabled)?( with the changed persistence passphrase)?( (?:and|with) an administration password)?)?$/'
./features/step_definitions/snapshots.rb:153:in `block in reach_checkpoint'
./features/step_definitions/snapshots.rb:150:in `each'
./features/step_definitions/snapshots.rb:150:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:137:in `reach_checkpoint'
./features/step_definitions/snapshots.rb:173:in `/^I\ have\ started\ Tails\ without\ network\ from\ a\ USB\ drive\ with\ a\ persistent\ partition\ enabled\ and\ logged\ in$/'
features/usb_upgrade.feature:127:in `Given I have started Tails without network from a USB drive with a persistent partition enabled and logged in'
And Tails is fooled to think that version 6.0~testoverlayfs was initially installed 0.000
And Tails is fooled to think it is running version 6.0~testoverlayfs 0.000
And the signing key used by the Upgrader is outdated 0.000
But a current signing key is available on our website 0.000
When the network is plugged 0.000
And Tor is ready 0.000
Then I am proposed to install an incremental upgrade to version 6.2~testoverlayfs 0.000
After features/support/hooks.rb:330 7.560

SCENARIO FAILED: 'Upgrading a Tails whose signing key is outdated' (at time 02:01:07)

Boot log: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/02:01:07_Upgrading_a_Tails_whose_signing_key_is_outdated.file_content_var_log_boot.log

Screenshot: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/02:01:07_Upgrading_a_Tails_whose_signing_key_is_outdated.png

Video: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/02:01:07_Upgrading_a_Tails_whose_signing_key_is_outdated.mkv

Systemd journal: https://jenkins.tails.boum.org/job/test_Tails_ISO_feature-trixie/1/artifact/build-artifacts/02:01:07_Upgrading_a_Tails_whose_signing_key_is_outdated.journal

After features/support/hooks.rb:100 0.006