Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.maint.java > #11950 > unrolled thread

Re: Java packages and autopkgtest

Started byRoger Shimizu <rosh@debian.org>
First post2020-12-05 18:50 +0100
Last post2020-12-05 20:00 +0100
Articles 12 — 5 participants

Back to article view | Back to linux.debian.maint.java


Contents

  Re: Java packages and autopkgtest Roger Shimizu <rosh@debian.org> - 2020-12-05 18:50 +0100
    Re: Java packages and autopkgtest Thorsten Glaser <t.glaser@tarent.de> - 2020-12-05 19:00 +0100
      Re: Java packages and autopkgtest Thorsten Glaser <t.glaser@tarent.de> - 2020-12-05 19:30 +0100
      Re: Java packages and autopkgtest Pirate Praveen <praveen@onenetbeyond.org> - 2020-12-05 19:30 +0100
      Re: Java packages and autopkgtest Thorsten Glaser <t.glaser@tarent.de> - 2020-12-05 19:50 +0100
        Re: Java packages and autopkgtest Roger Shimizu <rosh@debian.org> - 2020-12-05 20:20 +0100
          Re: Java packages and autopkgtest Thorsten Glaser <t.glaser@tarent.de> - 2020-12-05 20:40 +0100
            Re: Java packages and autopkgtest Roger Shimizu <rosh@debian.org> - 2020-12-07 17:40 +0100
              Re: Java packages and autopkgtest Thorsten Glaser <t.glaser@tarent.de> - 2020-12-07 18:00 +0100
                Re: Java packages and autopkgtest Andrius Merkys <merkys@debian.org> - 2020-12-07 19:00 +0100
        Re: Java packages and autopkgtest Paul Wise <pabs@debian.org> - 2020-12-06 04:20 +0100
      Re: Java packages and autopkgtest Roger Shimizu <rosh@debian.org> - 2020-12-05 20:00 +0100

#11950 — Re: Java packages and autopkgtest

FromRoger Shimizu <rosh@debian.org>
Date2020-12-05 18:50 +0100
SubjectRe: Java packages and autopkgtest
Message-ID<BiJR0-7hU-27@gated-at.bofh.it>
Replying to the email from 2019...

> Java Team's page [1] states that some help/information is needed
> regarding the autopkgtest. I haven't seen much Java packages having
> autopkgtests, but to me it seems possible at least for packages using
> maven-debian-helper. Maybe there are gotchas that I am not aware of?

I find java packages with maven-debian-helper can be tested by:

====
Test-Command: dh_auto_configure; dh_auto_test
Depends: @, @builddeps@, debhelper
Restrictions: rw-build-tree, allow-stderr
====

You can check my code [1] and result [2].

[1] https://salsa.debian.org/java-team/apk-parser/-/blob/debian/sid/debian/tests/control
[2] http://debomatic-amd64.debian.net/distribution#experimental/apk-parser/2.6.10+ds-3~exp1/autopkgtest

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 4096R/6C6ACD6417B3ACB1

[toc] | [next] | [standalone]


#11951

FromThorsten Glaser <t.glaser@tarent.de>
Date2020-12-05 19:00 +0100
Message-ID<BiK0F-7lA-3@gated-at.bofh.it>
In reply to#11950
On Sun, 6 Dec 2020, Roger Shimizu wrote:

> I find java packages with maven-debian-helper can be tested by:
> 
> ====
> Test-Command: dh_auto_configure; dh_auto_test
				   ^^^^^^^^^^^^

Doesn’t this just call mvn test ?

If so, that’s not as-installed testing and as such very much
*not* an autopkgtest.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

*************************************************

Mit unserem Consulting bieten wir Unternehmen maßgeschneiderte Angebote in
Form von Beratung, Trainings sowie Workshops in den Bereichen
Softwaretechnologie, IT Strategie und Architektur, Innovation und Umsetzung
sowie Agile Organisation.

Besuchen Sie uns auf https://www.tarent.de/consulting .
Wir freuen uns auf Ihren Kontakt.

*************************************************

[toc] | [prev] | [next] | [standalone]


#11954

FromThorsten Glaser <t.glaser@tarent.de>
Date2020-12-05 19:30 +0100
Message-ID<BiKtI-7KN-15@gated-at.bofh.it>
In reply to#11951
On Sat, 5 Dec 2020, Pirate Praveen wrote:

> Though it can still be useful when dependencies change (that is another use

Yes, but this completely does not fit the autopkgtests definition.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

*************************************************

Mit unserem Consulting bieten wir Unternehmen maßgeschneiderte Angebote in
Form von Beratung, Trainings sowie Workshops in den Bereichen
Softwaretechnologie, IT Strategie und Architektur, Innovation und Umsetzung
sowie Agile Organisation.

Besuchen Sie uns auf https://www.tarent.de/consulting .
Wir freuen uns auf Ihren Kontakt.

*************************************************

[toc] | [prev] | [next] | [standalone]


#11955

FromPirate Praveen <praveen@onenetbeyond.org>
Date2020-12-05 19:30 +0100
Message-ID<BiKtI-7KN-11@gated-at.bofh.it>
In reply to#11951

On Sat, Dec 5, 2020 at 18:56, Thorsten Glaser <t.glaser@tarent.de> 
wrote:
> On Sun, 6 Dec 2020, Roger Shimizu wrote:
> 
>>  I find java packages with maven-debian-helper can be tested by:
>> 
>>  ====
>>  Test-Command: dh_auto_configure; dh_auto_test
> 				   ^^^^^^^^^^^^
> 
> Doesn’t this just call mvn test ?
> 
> If so, that’s not as-installed testing and as such very much
> *not* an autopkgtest.

Though it can still be useful when dependencies change (that is another 
use case for autopkgtests). autopkgtest regression will block migration 
to testing.

[toc] | [prev] | [next] | [standalone]


#11956

FromThorsten Glaser <t.glaser@tarent.de>
Date2020-12-05 19:50 +0100
Message-ID<BiKN3-7Rc-5@gated-at.bofh.it>
In reply to#11951
On Sun, 6 Dec 2020, Roger Shimizu wrote:

> I think dh_auto_configure prepares the environment, and real test is
> performed by dh_auto_test.

I think so, you think so, ok, let’s check.

	sub test {
		my $this=shift;
		if (!@_) {
			push(@_, "test");
		}
		$this->doit_in_builddir(@{$this->{maven_cmd}}, @_);
	}

Yes, it does “mvn test”.

> If the package is java library, the test is sufficient for autopkgtest.

This “test” is *absolutely n̲o̲t̲* qualifying as autopkgtest
because autopkgtests are all about *as-installed* package
testing, and “mvn test” will locally rebuild then test that.

Packages using this are buggy. Unsure about the severity,
probably not rc.

We probably should let maven-debian-helper’s dh module
abort any building (dh_auto_{build,test}) if run under
autopkgtests to enforce this.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

*************************************************

Mit unserem Consulting bieten wir Unternehmen maßgeschneiderte Angebote in
Form von Beratung, Trainings sowie Workshops in den Bereichen
Softwaretechnologie, IT Strategie und Architektur, Innovation und Umsetzung
sowie Agile Organisation.

Besuchen Sie uns auf https://www.tarent.de/consulting .
Wir freuen uns auf Ihren Kontakt.

*************************************************

[toc] | [prev] | [next] | [standalone]


#11958

FromRoger Shimizu <rosh@debian.org>
Date2020-12-05 20:20 +0100
Message-ID<BiLg5-8gl-3@gated-at.bofh.it>
In reply to#11956
On Sun, Dec 6, 2020 at 3:45 AM Thorsten Glaser <t.glaser@tarent.de> wrote:
>
> On Sun, 6 Dec 2020, Roger Shimizu wrote:
>
> > I think dh_auto_configure prepares the environment, and real test is
> > performed by dh_auto_test.
>
> I think so, you think so, ok, let’s check.
>
>         sub test {
>                 my $this=shift;
>                 if (!@_) {
>                         push(@_, "test");
>                 }
>                 $this->doit_in_builddir(@{$this->{maven_cmd}}, @_);
>         }
>
> Yes, it does “mvn test”.
>
> > If the package is java library, the test is sufficient for autopkgtest.
>
> This “test” is *absolutely n̲o̲t̲* qualifying as autopkgtest
> because autopkgtests are all about *as-installed* package
> testing, and “mvn test” will locally rebuild then test that.

Yes, so my script doesn't include "dh_auto_build".
It only tests the installed package built by buildd, so it depends on "@".
Anyway, the test code needs to be built.

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 4096R/6C6ACD6417B3ACB1

[toc] | [prev] | [next] | [standalone]


#11959

FromThorsten Glaser <t.glaser@tarent.de>
Date2020-12-05 20:40 +0100
Message-ID<BiLzr-8mz-7@gated-at.bofh.it>
In reply to#11958
On Sun, 6 Dec 2020, Roger Shimizu wrote:

> Yes, so my script doesn't include "dh_auto_build".

But that’s not the only thing that builds. “mvn test” builds first.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

*************************************************

Mit unserem Consulting bieten wir Unternehmen maßgeschneiderte Angebote in
Form von Beratung, Trainings sowie Workshops in den Bereichen
Softwaretechnologie, IT Strategie und Architektur, Innovation und Umsetzung
sowie Agile Organisation.

Besuchen Sie uns auf https://www.tarent.de/consulting .
Wir freuen uns auf Ihren Kontakt.

*************************************************

[toc] | [prev] | [next] | [standalone]


#11971

FromRoger Shimizu <rosh@debian.org>
Date2020-12-07 17:40 +0100
Message-ID<BjrIl-20C-5@gated-at.bofh.it>
In reply to#11959
On Sun, Dec 6, 2020 at 4:39 AM Thorsten Glaser <t.glaser@tarent.de> wrote:
>
> On Sun, 6 Dec 2020, Roger Shimizu wrote:
>
> > Yes, so my script doesn't include "dh_auto_build".
>
> But that’s not the only thing that builds. “mvn test” builds first.

now understood the point you meant.
do you have any suggestion on such case, the autopkgtest for java or
just maven library pkg?

cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 4096R/6C6ACD6417B3ACB1

[toc] | [prev] | [next] | [standalone]


#11972

FromThorsten Glaser <t.glaser@tarent.de>
Date2020-12-07 18:00 +0100
Message-ID<Bjs1I-27P-13@gated-at.bofh.it>
In reply to#11971
On Tue, 8 Dec 2020, Roger Shimizu wrote:

> do you have any suggestion on such case, the autopkgtest for java or
> just maven library pkg?

Sorry but really none. Those packages I’ve seen so far only worked
because they disabled the tests anyway (mostly because the tests
would have required tons more dependencies).

You’ll probably have to get maven to prepare the test resources and
compile the tests, but to not compile the rest, and to add the in‐
stalled library instead to the classpath. But this probably involves
some advanced hackery or writing a Maven extension…

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

*************************************************

Mit unserem Consulting bieten wir Unternehmen maßgeschneiderte Angebote in
Form von Beratung, Trainings sowie Workshops in den Bereichen
Softwaretechnologie, IT Strategie und Architektur, Innovation und Umsetzung
sowie Agile Organisation.

Besuchen Sie uns auf https://www.tarent.de/consulting .
Wir freuen uns auf Ihren Kontakt.

*************************************************

[toc] | [prev] | [next] | [standalone]


#11978

FromAndrius Merkys <merkys@debian.org>
Date2020-12-07 19:00 +0100
Message-ID<BjsXM-2Ko-21@gated-at.bofh.it>
In reply to#11972
Hello,

On 2020-12-07 18:52, Thorsten Glaser wrote:
> On Tue, 8 Dec 2020, Roger Shimizu wrote:
> 
>> do you have any suggestion on such case, the autopkgtest for java or
>> just maven library pkg?
> 
> Sorry but really none. Those packages I’ve seen so far only worked
> because they disabled the tests anyway (mostly because the tests
> would have required tons more dependencies).
> 
> You’ll probably have to get maven to prepare the test resources and
> compile the tests, but to not compile the rest, and to add the in‐
> stalled library instead to the classpath. But this probably involves
> some advanced hackery or writing a Maven extension…

Some time ago I embarked on the primitive hackery of Maven in order to
develop a generic tool to support autopkgtests for Maven [1]. I managed
to hack together a proof-of-concept implementation [2], which actually
worked with some of Maven projects I tried.

My idea was to disable the build of "all", remove the sources, patch the
pom.xml to use system-provided JARs and run 'mvn' as debhelper would do.
However, the more Maven projects I tested, the more complicated the
autopkgtest runner grew, to the point I abandoned it.

However, looking back it seems worth revisiting, and I would be very
happy if someone would pick it up and turn it into something usable in
Debian. At least for very simple Maven packages. Please see [1] for very
valuable comments from Emmanuel Bourg.

[1]
https://salsa.debian.org/java-team/maven-debian-helper/-/merge_requests/2
[2]
https://salsa.debian.org/merkys/maven-debian-helper/-/blob/autopkgtest-pkg-maven/share/maven-debian-helper/autopkgtest-runner

Hope this helps,
Andrius

[toc] | [prev] | [next] | [standalone]


#11964

FromPaul Wise <pabs@debian.org>
Date2020-12-06 04:20 +0100
Message-ID<BiSKC-53D-3@gated-at.bofh.it>
In reply to#11956
On Sat, Dec 5, 2020 at 6:45 PM Thorsten Glaser wrote:

> We probably should let maven-debian-helper’s dh module
> abort any building (dh_auto_{build,test}) if run under
> autopkgtests to enforce this.

I'd suggest to start with a lintian warning about this and maybe when
there are fewer packages using it, then change the dh module.

-- 
bye,
pabs

https://wiki.debian.org/PaulWise

[toc] | [prev] | [next] | [standalone]


#11957

FromRoger Shimizu <rosh@debian.org>
Date2020-12-05 20:00 +0100
Message-ID<BiKN3-7Rc-7@gated-at.bofh.it>
In reply to#11951
On Sun, Dec 6, 2020 at 3:03 AM Thorsten Glaser <t.glaser@tarent.de> wrote:
>
> On Sun, 6 Dec 2020, Roger Shimizu wrote:
>
> > I find java packages with maven-debian-helper can be tested by:
> >
> > ====
> > Test-Command: dh_auto_configure; dh_auto_test
>                                    ^^^^^^^^^^^^
>
> Doesn’t this just call mvn test ?
>
> If so, that’s not as-installed testing and as such very much
> *not* an autopkgtest.

I think dh_auto_configure prepares the environment, and real test is
performed by dh_auto_test.
If the package is java library, the test is sufficient for autopkgtest.

Cheers,
-- 
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 4096R/6C6ACD6417B3ACB1

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.maint.java


csiph-web