← Back to issue list

FAIL: test_dump_symlinks (snapcraft.tests.test_plugin_dump.DumpPluginTestCase)

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1614913
Type
issue
State
closed
Author
~manciot-jeanchristophe
Labels
—
Created
Updated
Closed

Current evaluation

Fixed by merged PR snapcraft#767 (commit d14329836), which copied common.SNAPCRAFT_FILES before use, preventing leaked test state from breaking dump symlink tests.

Resolution: closed resolved

Reason: The failures were caused by test state leaking into common.SNAPCRAFT_FILES. PR #767 was merged to fix the shared-state handling in commit d14329836.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Ubuntu 16.04 4.4.0-34 snapcraft sources commit 2.15 from https://github.com/ubuntu-core/snapcraft Building with release_number=2.15: echo -------- echo Cleaning echo -------- cd git-snapcraft git reset --hard git clean -fxd :/ git checkout master git pull -v --progress --rebase return_code=$? if [[ $return_code != 0 ]]; then exit $return_code fi git checkout ${release_number} echo -------- echo Building echo -------- dpkg-buildpackage -b -m"Jean-Christophe Manciot <email address hidden>" ... Pulling pull0 ok test_pull_invalid_part (snapcraft.tests.test_commands_pull.PullCommandTestCase) ... The part named 'no-pull' is not defined in 'snapcraft.yaml' ok test_pull_one_part_only_from_3 (snapcraft.tests.test_commands_pull.PullCommandTestCase) ... Preparing to pull pull1 Pulling pull1 ok test_pull_stage_packages_with_geoip (snapcraft.tests.test_commands_pull.PullCommandTestCase) ... Preparing to pull pull1 Pulling pull1 ok test_pull_stage_packages_without_geoip (snapcraft.tests.test_commands_pull.PullCommandTestCase) ... Preparing to pull pull1 Pulling pull1 ok ====================================================================== FAIL: test_dump_symlinks (snapcraft.tests.test_plugin_dump.DumpPluginTestCase) [link: /tmp/tmpu40vm03k/parts/dump/install/subdir/relative2] ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/actionmystique/Program-Files/Ubuntu/Snap/git-snapcraft/snapcraft/tests/test_plugin_dump.py", line 105, in test_dump_symlinks 'Expected {!r} to be a symlink'.format(destination)) AssertionError: False is not true : Expected '/tmp/tmpu40vm03k/parts/dump/install/subdir/relative2' to be a symlink ====================================================================== FAIL: test_dump_symlinks (snapcraft.tests.test_plugin_dump.DumpPluginTestCase) [link: /tmp/tmpu40vm03k/parts/dump/install/subdir/relative3] ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/actionmystique/Program-Files/Ubuntu/Snap/git-snapcraft/snapcraft/tests/test_plugin_dump.py", line 105, in test_dump_symlinks 'Expected {!r} to be a symlink'.format(destination)) AssertionError: False is not true : Expected '/tmp/tmpu40vm03k/parts/dump/install/subdir/relative3' to be a symlink ---------------------------------------------------------------------- Ran 700 tests in 93.942s FAILED (failures=2) E: pybuild pybuild:274: test: plugin distutils failed with: exit code=1: python3.5 setup.py test dh_auto_test: pybuild --test -i python{version} -p 3.5 --dir . returned exit code 13 debian/rules:5: recipe for target 'build' failed make: *** [build] Error 25 dpkg-buildpackage: error: debian/rules build gave error exit status 2

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Fixed by merged PR snapcraft#767 (commit d14329836), which copied common.SNAPCRAFT_FILES before use, preventing leaked test state from breaking dump symlink tests.
stealth/space-bunny-alpha — closed resolved Fixed by merged PR #767 (commit d14329836), which copied common.SNAPCRAFT_FILES before use, preventing shared test state from breaking dump symlink tests.
stealth/space-bunny-alpha — closed resolved The Dump symlink test failure was addressed by merged PR #729 (commit 26ae9a507), which preserved the install directory instead of removing it.
qwen/qwen3.6-35b-a3b — — Reported a failing symlink test during snapcraft build. Closed without comments or resolution, likely abandoned or superseded by newer versions.
qwen/qwen3.6-35b-a3b — — Abandoned. Closed without resolution after reporting two symlink test failures during the snapcraft build process. No follow-up or fix was provided.
qwen/qwen3.6-35b-a3b — — Abandoned. The issue was closed without resolution due to age and zero comments. The dump plugin symlink test failure was never addressed.
qwen3.6-35b-a3b-mtp-q6 — — Build failed due to test_dump_symlinks assertion errors. The issue was closed without comments or resolution, indicating it was abandoned. No fix or merge was applied.

Update history

Date Change
created

Related work

  • Likely Fixed By: snapcraft#767 (confidence 100%)

    Merged fix for the SNAPCRAFT_FILES state leak, recorded as commit d14329836.

Related issues

Issue Project State Summary Similarity
#1658774 Symlinks to libc are followed by the dump and copy plugins snapcraft (launchpad) closed Merged snapcraft#1174 as commit 2b8bac953, changing copy and dump plugins to ignore staged-package symlinks to libc instead of following or removing them.
76%
#1754010 Dump follows symlink and fails snapcraft (launchpad) open Snapcraft 2.39.3's dump plugin dereferenced an in-tree directory symlink during staging and crashed. Later symlink-preservation fixes and current no-dereference behavior resolve the defect, but the tracker remains open.
75%
#1658155 file_utils.link_or_copy_tree doesn't maintain symlinks to directories snapcraft (launchpad) closed Fixed directory-symlink handling in file_utils.link_or_copy_tree by merging snapcore/snapcraft PR #1063 in commit 7768cd33b.
70%