[buildd-tools-devel] Bug#633671: Bug#633671: Bug#633671: Bug#633671: schroot behaves differently depending on cwd

Thibaut VARENE varenet at debian.org
Mon Nov 28 10:13:55 UTC 2011


On Sun, Nov 27, 2011 at 9:46 PM, Roger Leigh <rleigh at codelibre.net> wrote:
> On Sun, Nov 27, 2011 at 07:43:08PM +0100, Thibaut VARENE wrote:
>> On Sun, Nov 27, 2011 at 4:54 PM, Roger Leigh <rleigh at codelibre.net> wrote:
>> > tags 63367 + fixed-upstream pending
>> > thanks
>> >
>> > On Tue, Jul 12, 2011 at 11:08:13PM +0200, Thibaut VARENE wrote:
>> >> On Tue, Jul 12, 2011 at 10:43 PM, Roger Leigh <rleigh at codelibre.net> wrote:
>>
>> >> >> The thing is that the error message isn't really explicit, when you're
>> >> >> unaware of this "design choice"... I don't how it could be improved
>> >> >> though.
>> >> >
>> >> > We could add an additional information message e.g.
>> >> >
>> >> > E: Failed to change to directory ‘/tmp/syscheck’: No such file or directory
>> >> > I: Does this directory exist inside the chroot?
>> >> > I: Use the --directory option to run the command in a different directory.
>> >>
>> >> Well, the problem is that when I first saw the error message, I didn't
>> >> realize it was talking about the chroot, but I quickly suspected it
>> >> (it wouldn't have made /any/ sense otherwise). This clarifies the
>> >> situation. What remains unclear to the average user unaware of the
>> >> implications of a fallback policy for commands is /why/ the directory
>> >> needs to be in the chroot. Put another way, at some point I started
>> >> believing schroot wouldn't work unless the whole /home/buildd was
>> >> loop-mounted into the chroot. I didn't realize it only need the
>> >> specific directory it was executed from. I suppose some extra
>> >> documentation in the manpages regarding the behaviour of schroot when
>> >> executing shells vs commands might be helpful to clarify this.
>> >
>> > I've written a new section into the manual page (Directory Fallbacks)
>> > to properly document this (attached).  Is this OK with you?
>>
>> Looks good to me, thanks!
>>
>> Did you also implement the more elaborate error message as quoted
>> above? The combination of both changes would certainly clear up any
>> possible misunderstanding :)
>
> That's now also done:
>
> % schroot -c sid -d /invalid
> E: Failed to change to directory ‘/invalid’: No such file or directory
> I: The directory does not exist inside the chroot.  Use the --directory option to run the command in a different directory.
>
> % mkdir /tmp/invalid
> % cd /tmp/invalid
> % schroot -c sid
> W: Failed to change to directory ‘/tmp/invalid’: No such file or directory
> I: The directory does not exist inside the chroot.  Use the --directory option to run the command in a different directory.
> W: Falling back to directory ‘/home/rleigh’
> W: Shell ‘/usr/bin/zsh’ not available: /usr/bin/zsh: Failed to stat file: No such file or directory
> W: Falling back to shell ‘/bin/sh’
> $
>
> Is this OK for you?

Looks great, many thanks!

-- 
Thibaut VARENE
http://www.parisc-linux.org/~varenet/





More information about the Buildd-tools-devel mailing list