On Wed, Sep 5, 2018 at 6:46 AM Antonio Terceiro <[email protected]> wrote: > > On Tue, Sep 04, 2018 at 08:59:12PM +0200, Paul Gevers wrote: > > Control: reassign -1 debci > > > > Dear Paul > > > > You're looking at this file: > > https://salsa.debian.org/ci-team/debci/blob/master/docs/TUTORIAL.md > > > > It would be awesome if you could propose changes to that file instead of > > the generated html file. However, I already have some comments. > > Moreover: as is said in the beginning of that tutorial, it is a > transcription of a talk I gave at Debconf15. What is not said, however, > is that transcription is incomplete: it stops at example ("tip") 1, and > the talk goes up to tip 9. Finishing that transcription would be a nice > contribuition, if anyone out there is listening (hint, hint). > > > On 03-09-18 06:42, Paul Hardy wrote: > > > Please consider adding "The test environment" section (or something > > > like it) that I added to the autopkgtest tutorial page... > > > > Although I appreciate what you try to do here, it rather feels weird, as > > you are just describing a very standard Debian setup. I really think > > this is not the place to describe how Debian works and where packages > > install their files. Policy already does that. So your first paragraph > > could be "The test environment is a minimalistic standard Debian > > installation." > > > > Your second sentence basically repeats stuff that is in the autopkgtest > > spec. Maybe we should more clearly link that? > > https://salsa.debian.org/ci-team/autopkgtest/raw/master/doc/README.package-tests.rst > > > > $PATH will just contain the default Debian $PATH, again, I think this is > > described in Debian policy. The location of the scripts is described in > > the spec again. > > I think one point that maybe still didn't get across here is that > autopkgtest is intended to test packages in their *installed* form. So, > it should be obvious where stuff is: programs are in $PATH, libraries > are in the expected locations, services are supposed to be running, etc.
It was obvious to me from the documentation that the CI environment tested installed packages. What was not obvious, because I do not know all of the possible virtual environment setups, is that the packages are not installed in some sub-tree, for example using $DESTDIR. It seemed that one CI system possibly could have different sub-trees for sid, testing, etc. Now, from what Martin Pitt said, it sounds like $DESTDIR will always be null. That is why I did not know that ordinary executables could just be referenced in /usr/bin. > > i.e. the environment in which tests run is a standard Debian system, > with nothing special, and with -- and only with -- the stuff you said > needed to be installed for the tests. > > [...] > > Thanks for trying to improve our documentation. > > Yes, thanks a lot. > > I realize that CI/autopkgtest is a somewhat daunting subject as there > are several moving parts, and it can be confusing in the beginning. At > some point it would be very useful to be able to "follow along" people > who are learning it, capture all the issues that come up and try to > produce a guide that could make it easier for people doing the same at > the future. > > In fact I think that would make for a cool project for our outreach > programs. My life would have been easier if all I attempted was to write tests that only worked on Debian. I am trying to expand the envelope with tests that should work on any system where Autotools works. I have test scripts that work when run from my package "test" directory, and also with Autotools "check", "distcheck", and "installcheck" targets from the top-level source directory, except I am not yet at the point where my test scripts will work with "make installcheck" in the CI environment on Debian. That is the last piece of the puzzle I need to solve. At that point, my scripts could be used as examples of how to write such multi-system test scripts that play nice with Debian if there is interest in that. I will do more on this during the weekend but just wanted to give this initial response. Thank you for what documentation does exist--there is a lot of it. It was just the beginning description of what environment someone can expect with the CI environment that wasn't completely clear to me. Paul Hardy

