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

Fix build issues for MP starter #499

Merged
merged 26 commits into from
Oct 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
19b4806
Add MicroProfile Version 6
majidmostafavi Jan 15, 2024
731399c
Add MicroProfile Version 6
majidmostafavi Jan 15, 2024
3e31654
Add MicroProfile Version 6
majidmostafavi Jan 15, 2024
0f7893b
Add MicroProfile Version 6
majidmostafavi Jan 29, 2024
8e4e2d7
Add MicroProfile Version 6
majidmostafavi Jan 29, 2024
ecd7897
Add V7 Test
majidmostafavi Feb 12, 2024
246dba6
Add V7 Test
majidmostafavi Feb 12, 2024
d26404d
correct Address
majidmostafavi Feb 12, 2024
c7ad79f
correct Address
majidmostafavi Apr 2, 2024
ae62d40
Resolve Conflict
majidmostafavi Apr 10, 2024
6f5c2dd
Update src/main/java/org/eclipse/microprofile/starter/rest/APIEndpoin…
Emily-Jiang Apr 15, 2024
6f0e7c0
Update src/main/java/org/eclipse/microprofile/starter/rest/APIEndpoin…
Emily-Jiang Apr 15, 2024
532931e
MP50 and MP60 use Liveness
majidmostafavi Apr 15, 2024
6bbe116
Merge remote-tracking branch 'origin/main'
majidmostafavi Apr 15, 2024
5807fb2
MP60 for Payara Micro
majidmostafavi Apr 15, 2024
b96f0e8
remove MP60 for Payara Micro
majidmostafavi Apr 15, 2024
e17c5ac
MP50 and MP60 use Liveness
majidmostafavi Apr 22, 2024
570f761
MP50 and MP60 use Liveness
majidmostafavi Apr 22, 2024
fdc8e04
Comment Version V APITest
majidmostafavi Jul 15, 2024
2ea634d
unComment Version 7v APITest
majidmostafavi Jul 15, 2024
b39931a
Add LIBERTY
majidmostafavi Jul 15, 2024
0e82cda
Add LIBERTY
majidmostafavi Jul 15, 2024
a633bbc
Add LIBERTY
majidmostafavi Jul 15, 2024
7540474
Fix issues for line content validation
breakponchito Oct 8, 2024
1cb8029
upgrading upload-artifact to use v4
breakponchito Oct 10, 2024
123b86d
testing increment for connect timeout and read timeout to minutes
breakponchito Oct 14, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ jobs:
shell: bash
run: find . -type d -name '*-reports' -o -name "*.log" | tar -czf test-reports-apitest.tgz -T -
- name: Upload failure Archive (if maven failed)
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
if: failure()
with:
name: test-reports-apitest
Expand Down Expand Up @@ -126,7 +126,7 @@ jobs:
shell: bash
run: find . -type d -name '*-reports' -o -name "*.log" | tar -czf test-reports-${{ matrix.runtime }}.tgz -T -
- name: Upload failure Archive (if maven failed)
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
if: failure()
with:
name: test-reports-${{ matrix.runtime }}
Expand Down
6 changes: 6 additions & 0 deletions src/it/java/org/eclipse/microprofile/starter/APITest.java
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ public class APITest {
final Client client = ClientBuilder.newBuilder().build();

private WebTarget target;
private File v7Matrix;
private File v7MatrixServers;
private File v6Matrix;
private File v6MatrixServers;
private File v5Matrix;
Expand All @@ -63,6 +65,8 @@ public class APITest {
@Before
public void before() {
target = client.target(API_URL);
v7Matrix = new File(getClass().getClassLoader().getResource("json_examples/v7/supportMatrix.json.segments").getFile());
v7MatrixServers = new File(getClass().getClassLoader().getResource("json_examples/v7/supportMatrix_servers.json.segments").getFile());
v6Matrix = new File(getClass().getClassLoader().getResource("json_examples/v6/supportMatrix.json.segments").getFile());
v6MatrixServers = new File(getClass().getClassLoader().getResource("json_examples/v6/supportMatrix_servers.json.segments").getFile());
v5Matrix = new File(getClass().getClassLoader().getResource("json_examples/v5/supportMatrix.json.segments").getFile());
Expand All @@ -87,6 +91,8 @@ public void test(File segments, String uri) throws FileNotFoundException {
@Test
@RunAsClient
public void supportMatrix() throws FileNotFoundException {
test(v7Matrix, "/7/supportMatrix");
test(v7MatrixServers, "/7/supportMatrix/servers");
test(v6Matrix, "/6/supportMatrix");
test(v6MatrixServers, "/6/supportMatrix/servers");
test(v5Matrix, "/5/supportMatrix");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ public class TestMatrixTest {
public static final String TMP = getWorkspaceDir();

public static final String API_URL = "http://127.0.0.1:9090/api";
final Client client = ClientBuilder.newBuilder().build();
final Client client = ClientBuilder.newBuilder().connectTimeout(10, TimeUnit.MINUTES).readTimeout(10, TimeUnit.MINUTES).build();

WebTarget target;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,42 +35,42 @@ public enum MicroprofileSpec {
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
, FAULT_TOLERANCE("fault_tolerance", "Fault Tolerance",
"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices",
"https://github.com/eclipse/microprofile-fault-tolerance/releases/tag/%s",
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
, JWT_AUTH("JWT_auth", "JWT Auth",
"JWT Propagation - propagate security across your microservices",
"https://github.com/eclipse/microprofile-jwt-auth/releases/tag/%s",
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
, METRICS("metrics", "Metrics",
"Metrics - Gather and create operational and business measurements for your microservices",
"https://github.com/eclipse/microprofile-metrics/releases/tag/%s",
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
, HEALTH_CHECKS("health_checks", "Health",
"Health - Verify the health of your microservices with custom verifications",
"https://github.com/eclipse/microprofile-metrics/releases/tag/%s",
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
, OPEN_API("open_API", "OpenAPI",
"Open API - Generate OpenAPI-compliant API documentation for your microservices",
"https://github.com/eclipse/microprofile-open-api/releases/tag/%s",
Arrays.asList(MicroProfileVersion.MP13, MicroProfileVersion.MP14, MicroProfileVersion.MP20,
MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
, OPEN_TRACING("open_tracing", "OpenTracing",
"Open Tracing - trace the flow of requests as they traverse your microservices",
"https://github.com/eclipse/microprofile-opentracing/releases/tag/%s",
Expand All @@ -84,7 +84,10 @@ public enum MicroprofileSpec {
Arrays.asList(MicroProfileVersion.MP13, MicroProfileVersion.MP14, MicroProfileVersion.MP20,
MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50))
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60))
,TELEMETRY("telemetry","Telemetry"
,"Telemetry - pulls in OpenTelemetry Tracing and integrate with CDI and Jakarta RESTful Web Services",
"https://github.com/eclipse/microprofile-telemetry/releases/tag/%s", Arrays.asList( MicroProfileVersion.MP60));
;
// @formatter:on

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public enum SupportedServer {
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22,
MicroProfileVersion.MP30, MicroProfileVersion.MP32, MicroProfileVersion.MP33,
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50)
MicroProfileVersion.MP40, MicroProfileVersion.MP41, MicroProfileVersion.MP50, MicroProfileVersion.MP60)
, "%s.jar" //jarFileName
, "" //jarParameters // Hard coded in server.xml since no way of overriding a default.
, "9080" //portServiceA
Expand All @@ -88,7 +88,8 @@ public enum SupportedServer {
, PAYARA_MICRO("payara-micro", "Payara Micro",
Arrays.asList(MicroProfileVersion.MP12, MicroProfileVersion.MP13, MicroProfileVersion.MP14,
MicroProfileVersion.MP20, MicroProfileVersion.MP21, MicroProfileVersion.MP22
, MicroProfileVersion.MP32, MicroProfileVersion.MP33, MicroProfileVersion.MP40)
, MicroProfileVersion.MP32, MicroProfileVersion.MP33, MicroProfileVersion.MP40,
MicroProfileVersion.MP50)
, "%s-microbundle.jar" //jarFileName
, "--port 8180" //jarParameters
, "8080" //portServiceA
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,16 @@ private void init() {
.add(MicroprofileSpec.REST_CLIENT, "3.0.0")
.add(MicroprofileSpec.OPEN_TRACING, "3.0")
.add(MicroprofileSpec.METRICS, "4.0"));
data.put(MicroProfileVersion.MP60,
new EnumMapBuilder()
.add(MicroprofileSpec.CONFIG, "3.0")
.add(MicroprofileSpec.FAULT_TOLERANCE, "4.0")
.add(MicroprofileSpec.JWT_AUTH, "2.1")
.add(MicroprofileSpec.HEALTH_CHECKS, "4.0")
.add(MicroprofileSpec.OPEN_API, "3.1")
.add(MicroprofileSpec.REST_CLIENT, "3.0.0")
.add(MicroprofileSpec.METRICS, "5.0")
.add(MicroprofileSpec.TELEMETRY,"1.0"));
}

public Map<MicroprofileSpec, String> getSpecData(MicroProfileVersion version) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,9 @@ private void init() {
data.put(MicroProfileVersion.MP50,
new VersionStandaloneMatrix.EnumMapBuilder()
.add(StandaloneMPSpec.GRAPHQL, "2.0"));
data.put(MicroProfileVersion.MP60,
new VersionStandaloneMatrix.EnumMapBuilder()
.add(StandaloneMPSpec.GRAPHQL, "2.0"));
}

public Map<StandaloneMPSpec, String> getSpecData(MicroProfileVersion version) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,13 +64,20 @@ public Map<String, String> determineVariables(JessieModel model) {
result.put("se_version", seVersion.getCode());
}

if (model.getSpecification().getMicroProfileVersion() == MicroProfileVersion.MP50) {
if (model.getSpecification().getMicroProfileVersion() == MicroProfileVersion.MP50
|| model.getSpecification().getMicroProfileVersion() == MicroProfileVersion.MP60) {
result.put("jakarta_ee_package", "jakarta");

} else {
result.put("jakarta_ee_package", "javax");

}
if (model.getSpecification().getMicroProfileVersion() == MicroProfileVersion.MP50
|| model.getSpecification().getMicroProfileVersion() == MicroProfileVersion.MP60) {
result.put("microprofile_health", "Liveness");
} else {
result.put("microprofile_health", "Health");
}
return result;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ public enum MicroProfileVersion {
// Order is important as it determines the order in the Dropdown on the screen.
// @formatter:off
NONE(null, "")
, MP60("6.0", "MP 6.0", Collections.singletonList(Constants.MP6X_ALTERNATIVE))
, MP50("5.0", "MP 5.0", Collections.singletonList(Constants.MP5X_ALTERNATIVE))
, MP41("4.1", "MP 4.1", Collections.singletonList(Constants.MP41_ALTERNATIVE))
, MP40("4.0", "MP 4.0", "4.0.1", Collections.singletonList(Constants.MP3X_ALTERNATIVE))
Expand Down Expand Up @@ -101,5 +102,7 @@ public static class Constants {
public static final String MP3X_ALTERNATIVE = "mp3_x";
public static final String MP41_ALTERNATIVE = "mp4_1";
public static final String MP5X_ALTERNATIVE = "mp5_x";
public static final String MP6X_ALTERNATIVE = "mp6_x";
public static final String MP61_ALTERNATIVE = "mp6_1";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package org.eclipse.microprofile.starter.rest;

import javax.ws.rs.Path;

@Path("/7")
public class APIEndpointV7 extends APIEndpointLatest {
// The current latest version
}
6 changes: 4 additions & 2 deletions src/main/resources/files/ServiceHealthCheck.java.tpl
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
package [# th:text="${java_package}"/].health;

import org.eclipse.microprofile.health.Health;
import org.eclipse.microprofile.health.[# th:text="${microprofile_health}"/];
import org.eclipse.microprofile.health.HealthCheck;
import org.eclipse.microprofile.health.HealthCheckResponse;

import [# th:text="${jakarta_ee_package}"/].enterprise.context.ApplicationScoped;

@Health


@[# th:text="${microprofile_health}"/]
@ApplicationScoped
public class ServiceHealthCheck implements HealthCheck {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,8 @@
MP33":{"supportedServers":["
"]},"MP32":{"supportedServers":["
"]},"MP30":{"supportedServers":["
]}},"descriptions":{"CONFIG":"Configuration - externalize and manage your configuration parameters outside your microservices","OPEN_API":"Open API - Generate OpenAPI-compliant API documentation for your microservices","HEALTH_CHECKS":"Health - Verify the health of your microservices with custom verifications","REST_CLIENT":"Rest Client - Invoke RESTful services in a type-safe manner","FAULT_TOLERANCE":"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices","JWT_AUTH":"JWT Propagation - propagate security across your microservices","OPEN_TRACING":"Open Tracing - trace the flow of requests as they traverse your microservices","METRICS":"Metrics - Gather and create operational and business measurements for your microservices","GRAPHQL":"GraphQL - GraphQL is a query language for APIs and a library for fulfilling those queries with your existing data."}}
]}},"descriptions":{"CONFIG":"Configuration - externalize and manage your configuration parameters outside your microservices","OPEN_API":"Open API - Generate OpenAPI-compliant API documentation for your microservices","HEAL
TH_CHECKS":"Health - Verify the health of your microservices with custom verifications",
"REST_CLIENT":"Rest Client
- Invoke RESTful services in a type-safe manner","FAULT_TOLERANCE":"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices","JWT_AUTH":"JWT Propagation - propagate security across
your microservices","OPEN_TRACING":"Open Tracing - trace the flow of requests as they traverse your microservices","METRICS":"Metrics - Gather and create operational and business measurements for your microservices","GRAPHQL":"GraphQL - GraphQL is a query language for APIs and a library for fulfilling those queries with your existing data."}}
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,7 @@ MP12":["CONFIG","FAULT_TOLERANCE","JWT_AUTH","METRICS","HEALTH_CHECKS"],
MP12":["CONFIG","FAULT_TOLERANCE","JWT_AUTH","METRICS","HEALTH_CHECKS"]
"WILDFLY":{"
MP33":["CONFIG","FAULT_TOLERANCE","JWT_AUTH","METRICS","HEALTH_CHECKS","OPEN_API","OPEN_TRACING","REST_CLIENT"]
"descriptions":{"CONFIG":"Configuration - externalize and manage your configuration parameters outside your microservices","OPEN_API":"Open API - Generate OpenAPI-compliant API documentation for your microservices","HEALTH_CHECKS":"Health - Verify the health of your microservices with custom verifications","REST_CLIENT":"Rest Client - Invoke RESTful services in a type-safe manner","FAULT_TOLERANCE":"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices","JWT_AUTH":"JWT Propagation - propagate security across your microservices","OPEN_TRACING":"Open Tracing - trace the flow of requests as they traverse your microservices","METRICS":"Metrics - Gather and create operational and business measurements for your microservices","GRAPHQL":"GraphQL - GraphQL is a query language for APIs and a library for fulfilling those queries with your existing data."}}
"descriptions":{"CONFIG":"Configuration - externalize and manage your configuration parameters outside your microservices","OPEN_API":"Open API - Generate OpenAPI-compliant API document
ation for your microservices","HEALTH_CHECKS":"Health - Verify the health of your microservices with custom verifications",
"REST_CLIENT":"Rest Client - Invoke RESTful services in a type-safe manner","FAULT_TOLERANCE":"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices","JWT_AUTH":"JWT Prop
agation - propagate security across your microservices","OPEN_TRACING":"Open Tracing - trace the flow of requests as they traverse your microservices","METRICS":"Metrics - Gather and create operational and business measurements for your microservices","GRAPHQL":"GraphQL - GraphQL is a query language for APIs and a library for fulfilling those queries with your existing data."}}
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
{"configs":{"
MP33":{"supportedServers":["
]},"MP32":{"supportedServers":[
]}},"descriptions":{"CONFIG":"Configuration - externalize and manage your configuration parameters outside your microservices","OPEN_API":"Open API - Generate OpenAPI-compliant API documentation for your microservices","HEALTH_CHECKS":"Health - Verify the health of your microservices with custom verifications","REST_CLIENT":"Rest Client - Invoke RESTful services in a type-safe manner","FAULT_TOLERANCE":"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices","JWT_AUTH":"JWT Propagation - propagate security across your microservices","OPEN_TRACING":"Open Tracing - trace the flow of requests as they traverse your microservices","METRICS":"Metrics - Gather and create operational and business measurements for your microservices","GRAPHQL":"GraphQL - GraphQL is a query language for APIs and a library for fulfilling those queries with your existing data."}}
]}},"descriptions":{"CONFIG":"Configuration - externalize and manage your configuration parameters outside your microservices","OPEN_API":"Open API - Generate OpenAPI-compliant API documentation for your microservices","HEAL
TH_CHECKS":"Health - Verify the health of your microservices with custom verifications",
"REST_CLIENT":"Rest Client
- Invoke RESTful services in a type-safe manner","FAULT_TOLERANCE":"Fault Tolerance - all about bulkheads, timeouts, circuit breakers, retries, etc. for your microservices","JWT_AUTH":"JWT Propagation - propagate security across
your microservices","OPEN_TRACING":"Open Tracing - trace the flow of requests as they traverse your microservices","METRICS":"Metrics - Gather and create operational and business measurements for your microservices","GRAPHQL":"GraphQL - GraphQL is a query language for APIs and a library for fulfilling those queries with your existing data."}}
Loading
Loading