Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Experimental Maven goal to check for Quarkus platform and extension updates #19926

Merged
merged 1 commit into from
Sep 6, 2021

Conversation

aloubyansky
Copy link
Member

This is an experimental goal, in a sense that I wouldn't guarantee any backward compatibility at all. But I would still like to get it in to be able to test update discovery from projects that aren't using the latest platform and/or quarkiverse extension versions.

E.g. with this goal for a project based on the quarkus-universe-bom 1.1.7.Final e.g.:

    <quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
    <quarkus.platform.version>1.11.7.Final</quarkus.platform.version>
    <surefire-plugin.version>3.0.0-M5</surefire-plugin.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>${quarkus.platform.group-id}</groupId>
        <artifactId>${quarkus.platform.artifact-id}</artifactId>
        <version>${quarkus.platform.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.quarkiverse.cxf</groupId>
      <artifactId>quarkus-cxf</artifactId>
      <version>0.7</version>
    </dependency>
    <dependency>
      <groupId>io.quarkiverse.prettytime</groupId>
      <artifactId>quarkus-prettytime</artifactId>
      <version>0.1.0</version>
    </dependency>
    <dependency>
      <groupId>org.kie.kogito</groupId>
      <artifactId>kogito-quarkus-rules</artifactId>
    </dependency>

This command mvn io.quarkus:quarkus-maven-plugin:999-SNAPSHOT:check-for-updates will currently report:

[INFO] --- quarkus-maven-plugin:999-SNAPSHOT:check-for-updates (default-cli) @ code-with-quarkus ---
[WARNING] This goal is experimental. Its name, parameters, output and implementation will be evolving without the promise of keeping backward compatibility
[INFO] Currently recommended updates for the application include:

 * BOM imports to be replaced:

      <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-universe-bom</artifactId>
        <version>1.11.7.Final</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

 * New recommended BOM imports:

      <dependency>
        <groupId>io.quarkus.platform</groupId>
        <artifactId>quarkus-bom</artifactId>
        <version>2.2.1.Final</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>io.quarkus.platform</groupId>
        <artifactId>quarkus-kogito-bom</artifactId>
        <version>2.2.1.Final</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

 * New recommended extension versions (not managed by the BOMs):

    <dependency>
      <groupId>io.quarkiverse.prettytime</groupId>
      <artifactId>quarkus-prettytime</artifactId>
      <version>0.1.1</version>
    </dependency>
    <dependency>
      <groupId>io.quarkiverse.cxf</groupId>
      <artifactId>quarkus-cxf</artifactId>
      <version>0.9</version>
    </dependency>

 * Recommended Quarkus Maven plugin:

      <plugin>
        <groupId>io.quarkus.platform</groupId>
        <artifactId>quarkus-maven-plugin</artifactId>
        <version>2.2.1.Final</version>
      </plugin>

ATM, it should be considered as a low-level update info. It's not really instructions to follow. Ideally it should later be suggesting to change the relevant properties in the POMs and be in general more project-specific than what's displayed above.

@quarkus-bot quarkus-bot bot added area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/maven area/platform Issues related to definition and interaction with Quarkus Platform labels Sep 6, 2021
@maxandersen
Copy link
Member

This is great - but Shouldn't we expose this as via the cli rather than adding mvn specific goal?

@aloubyansky
Copy link
Member Author

Of course, the cli is the tool. This pr however is a quick attempt and I thought we could squeeze it in tomorrow's release.
Maven is still easier to approach for quick experiments since it's self-contained and requires less command design analysis. The gradle and the cli support will follow.

@quarkus-bot
Copy link

quarkus-bot bot commented Sep 6, 2021

This workflow status is outdated as a new workflow run has been triggered.

Failing Jobs - Building e2cdad7

Status Name Step Failures Logs Raw logs
✔️ JVM Tests - JDK 11
JVM Tests - JDK 16 Build Failures Logs Raw logs

Full information is available in the Build summary check run.

Failures

⚙️ JVM Tests - JDK 16 #

- Failing: extensions/amazon-lambda/deployment 
! Skipped: docs extensions/amazon-lambda-http/deployment extensions/amazon-lambda-rest/deployment and 6 more

📦 extensions/amazon-lambda/deployment

io.quarkus.amazon.lambda.deployment.testing.LambdaDevServicesContinuousTestingTestCase.testLambda line 41 - More details - Source on GitHub

org.opentest4j.AssertionFailedError: expected: <0> but was: <1>
	at org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
	at org.junit.jupiter.api.AssertionUtils.failNotEqual(AssertionUtils.java:62)

…pdates

Co-authored-by: Guillaume Smet <guillaume.smet@gmail.com>
@quarkus-bot
Copy link

quarkus-bot bot commented Sep 6, 2021

Failing Jobs - Building 05b4d36

Status Name Step Failures Logs Raw logs
JVM Tests - JDK 11 Build Failures Logs Raw logs
JVM Tests - JDK 11 Windows Build Failures Logs Raw logs
JVM Tests - JDK 16 Build Failures Logs Raw logs
Native Tests - Data1 Build Failures Logs Raw logs

Full information is available in the Build summary check run.

Failures

⚙️ JVM Tests - JDK 11 #

- Failing: integration-tests/elytron-undertow integration-tests/hibernate-orm-tenancy/connection-resolver integration-tests/mongodb-panache 

📦 integration-tests/elytron-undertow

io.quarkus.it.undertow.elytron.BaseAuthTest.testPost line 27 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code <200> but was <500>.

📦 integration-tests/hibernate-orm-tenancy/connection-resolver

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityTest.testAddDeleteDefaultTenant line 53 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityTest.testPostFruitDefaultTenant line 92 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityTest.testUpdateFruitDefaultTenant line 127 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

📦 integration-tests/mongodb-panache

io.quarkus.it.mongodb.panache.transaction.MongodbPanacheTransactionTest.testTheEndpoint line 95 - More details - Source on GitHub

org.opentest4j.AssertionFailedError: expected: <2> but was: <3>
	at org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
	at org.junit.jupiter.api.AssertionUtils.failNotEqual(AssertionUtils.java:62)

⚙️ JVM Tests - JDK 11 Windows #

- Failing: extensions/amazon-lambda/deployment 
! Skipped: docs extensions/amazon-lambda-http/deployment extensions/amazon-lambda-rest/deployment and 6 more

📦 extensions/amazon-lambda/deployment

io.quarkus.amazon.lambda.deployment.testing.LambdaDevServicesContinuousTestingTestCase.testLambda line 45 - More details - Source on GitHub

org.opentest4j.AssertionFailedError: expected: <1> but was: <0>
	at org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
	at org.junit.jupiter.api.AssertionUtils.failNotEqual(AssertionUtils.java:62)

⚙️ JVM Tests - JDK 16 #

- Failing: integration-tests/hibernate-orm-tenancy/connection-resolver integration-tests/mongodb-panache 

📦 integration-tests/hibernate-orm-tenancy/connection-resolver

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityTest.testAddDeleteDefaultTenant line 53 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityTest.testPostFruitDefaultTenant line 92 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityTest.testUpdateFruitDefaultTenant line 127 - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

📦 integration-tests/mongodb-panache

io.quarkus.it.mongodb.panache.transaction.MongodbPanacheTransactionTest.testTheEndpoint line 95 - More details - Source on GitHub

org.opentest4j.AssertionFailedError: expected: <2> but was: <3>
	at org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55)
	at org.junit.jupiter.api.AssertionUtils.failNotEqual(AssertionUtils.java:62)

⚙️ Native Tests - Data1 #

- Failing: integration-tests/hibernate-orm-tenancy/connection-resolver 

📦 integration-tests/hibernate-orm-tenancy/connection-resolver

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityInGraalITCase.testAddDeleteDefaultTenant - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityInGraalITCase.testPostFruitDefaultTenant - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

io.quarkus.it.hibernate.multitenancy.fruit.HibernateTenancyFunctionalityInGraalITCase.testUpdateFruitDefaultTenant - More details - Source on GitHub

java.lang.AssertionError: 
1 expectation failed.
Expected status code is <201> but was <500>.

@gsmet gsmet merged commit fbe5fab into quarkusio:main Sep 6, 2021
@quarkus-bot quarkus-bot bot added this to the 2.3 - main milestone Sep 6, 2021
@gsmet gsmet modified the milestones: 2.3 - main, 2.2.2.Final Sep 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/devtools Issues/PR related to maven, gradle, platform and cli tooling/plugins area/maven area/platform Issues related to definition and interaction with Quarkus Platform
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants