Confusing error message for "organize" when source refers to multiples items and destination doesn't end up with /

Bug #1663233 reported by Didier Roche on 2017-02-09
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Snapcraft
Medium
Unassigned
snapcraft (Ubuntu)
Undecided
Unassigned

Bug Description

A simple parts stenza with:
    organize:
      '*': foo

will lead to this error message:
Trying to organize file '*' to 'foo', but 'foo' already exists

Which isn't the case (foo doesn't exists in stage/ nor prime/).

I guess triggering situation is that * is a directory content with multiple items and destination is what looks like a filename to snapcraft. My bet is that the first item copy happens, and when trying to copy the second file/directory, we thus already have a "foo" file or directory corresponding to the first item to copy. Then, the error makes sense :)

However, this is confusing to the user.
The fix is of course to tell snapcraft to copy to a directory by appending /:
    organize:
      '*': foo/

My feeling is that the final / shouldn't be needed though and we should, in case of having a blob regexp, treat the right parts of the expression as a directory if there is more than one item matched.

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: snapcraft 2.26
ProcVersionSignature: Ubuntu 4.4.0-62.83-generic 4.4.40
Uname: Linux 4.4.0-62-generic x86_64
NonfreeKernelModules: zfs zunicode zcommon znvpair zavl
ApportVersion: 2.20.1-0ubuntu2.5
Architecture: amd64
CurrentDesktop: Unity
Date: Thu Feb 9 14:09:30 2017
InstallationDate: Installed on 2012-05-28 (1717 days ago)
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120425)
PackageArchitecture: all
SourcePackage: snapcraft
UpgradeStatus: Upgraded to xenial on 2014-10-31 (832 days ago)

Didier Roche (didrocks) wrote :
Changed in snapcraft:
status: New → Triaged
importance: Undecided → Medium
tags: added: bitesize
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers