|
6 | 6 |
|
7 | 7 | <groupId>com.oracle.coherence</groupId> |
8 | 8 | <artifactId>coherence-demo</artifactId> |
9 | | - <version>3.0.1-SNAPSHOT</version> |
| 9 | + <version>4.0.0-SNAPSHOT</version> |
10 | 10 |
|
11 | 11 | <properties> |
| 12 | + <!-- The groupId of the Coherence product --> |
| 13 | + <coherence.group.id>com.oracle.coherence.ce</coherence.group.id> |
| 14 | + |
12 | 15 | <!-- dependency versions --> |
13 | 16 | <bedrock.version>5.0.11</bedrock.version> |
14 | | - <coherence.version>14.1.1-0-0</coherence.version> |
| 17 | + <coherence.version>14.1.1-0-1</coherence.version> |
15 | 18 | <com.sun.xml.bind.version>2.3.0</com.sun.xml.bind.version> |
| 19 | + <copy.rename.maven.plugin.version>1.0</copy.rename.maven.plugin.version> |
16 | 20 | <derby.version>10.14.2.0</derby.version> |
| 21 | + <docker.version>${project.version}</docker.version> |
17 | 22 | <eclipselink.version>2.7.5</eclipselink.version> |
18 | 23 | <jackson.version>2.10.1</jackson.version> |
19 | 24 | <jaeger.version>1.1.0</jaeger.version> |
20 | 25 | <jaxrs.version>2.1.6</jaxrs.version> |
21 | 26 | <jersey.version>2.29</jersey.version> |
22 | 27 | <javax.activation.version>1.2.0</javax.activation.version> |
23 | | - <netty.version>4.1.32.Final</netty.version> |
| 28 | + <jib.version>2.3.0</jib.version> |
| 29 | + <jib.goal>dockerBuild</jib.goal> |
| 30 | + <netty.version>4.1.42.Final</netty.version> |
24 | 31 | <opentracing.jdbc.version>0.2.10</opentracing.jdbc.version> |
25 | 32 |
|
26 | 33 | <!-- maven configuration --> |
27 | 34 | <java.version>1.8</java.version> |
28 | | - <maven.compiler.source>8</maven.compiler.source> |
| 35 | + <maven.assembly.plugin.version>3.0.0</maven.assembly.plugin.version> |
| 36 | + <maven.compiler.source>11</maven.compiler.source> |
29 | 37 | <maven.compiler.target>8</maven.compiler.target> |
30 | | - <maven.compiler.plugin.version>3.8.0</maven.compiler.plugin.version> |
| 38 | + <maven.compiler.release>8</maven.compiler.release> |
| 39 | + <maven.compiler.plugin.version>3.8.1</maven.compiler.plugin.version> |
31 | 40 | <maven.dependency.plugin.version>3.1.1</maven.dependency.plugin.version> |
32 | 41 | <maven.enforcer.plugin.version>1.3.1</maven.enforcer.plugin.version> |
33 | 42 | <maven.exec.plugin.version>1.6.0</maven.exec.plugin.version> |
34 | 43 | <maven.gmaven.plugin.version>1.5</maven.gmaven.plugin.version> |
35 | | - <maven.javadoc.plugin.version>3.1.0</maven.javadoc.plugin.version> |
| 44 | + <maven.javadoc.plugin.version>3.2.0</maven.javadoc.plugin.version> |
36 | 45 | <maven.resources.plugin.version>3.1.0</maven.resources.plugin.version> |
37 | 46 | <maven.shade.plugin.version>3.2.0</maven.shade.plugin.version> |
38 | 47 | <maven.replacer.plugin.version>1.5.3</maven.replacer.plugin.version> |
39 | 48 | <maven.source.plugin.version>2.1.2</maven.source.plugin.version> |
40 | | - <maven.version>3.5.4</maven.version> |
| 49 | + <maven.version>3.6.0</maven.version> |
41 | 50 | </properties> |
42 | 51 |
|
43 | 52 | <dependencies> |
44 | 53 | <!-- coherence --> |
45 | 54 | <dependency> |
46 | | - <groupId>com.oracle.coherence</groupId> |
| 55 | + <groupId>${coherence.group.id}</groupId> |
47 | 56 | <artifactId>coherence</artifactId> |
48 | 57 | <version>${coherence.version}</version> |
49 | 58 | </dependency> |
50 | 59 |
|
51 | 60 | <dependency> |
52 | | - <groupId>com.oracle.toplink</groupId> |
53 | | - <artifactId>coherence-jpa</artifactId> |
| 61 | + <groupId>${coherence.group.id}</groupId> |
| 62 | + <artifactId>coherence-management</artifactId> |
54 | 63 | <version>${coherence.version}</version> |
55 | 64 | </dependency> |
56 | | - |
| 65 | + |
57 | 66 | <dependency> |
58 | | - <groupId>com.oracle.coherence</groupId> |
59 | | - <artifactId>coherence-management</artifactId> |
| 67 | + <groupId>${coherence.group.id}</groupId> |
| 68 | + <artifactId>coherence-metrics</artifactId> |
60 | 69 | <version>${coherence.version}</version> |
61 | 70 | </dependency> |
62 | 71 |
|
63 | 72 | <dependency> |
64 | | - <groupId>com.oracle.coherence</groupId> |
| 73 | + <groupId>${coherence.group.id}</groupId> |
65 | 74 | <artifactId>coherence-rest</artifactId> |
66 | 75 | <version>${coherence.version}</version> |
67 | 76 | <exclusions> |
68 | 77 | <exclusion> |
69 | | - <groupId>com.oracle.coherence</groupId> |
| 78 | + <groupId>${coherence.group.id}</groupId> |
70 | 79 | <artifactId>coherence</artifactId> |
71 | 80 | </exclusion> |
72 | 81 | </exclusions> |
73 | 82 | </dependency> |
74 | 83 |
|
75 | 84 | <dependency> |
76 | | - <groupId>com.oracle.coherence</groupId> |
| 85 | + <groupId>${coherence.group.id}</groupId> |
77 | 86 | <artifactId>coherence-http-netty</artifactId> |
78 | 87 | <version>${coherence.version}</version> |
79 | 88 | <exclusions> |
80 | 89 | <exclusion> |
81 | | - <groupId>com.oracle.coherence</groupId> |
| 90 | + <groupId>${coherence.group.id}</groupId> |
82 | 91 | <artifactId>coherence</artifactId> |
83 | 92 | </exclusion> |
84 | 93 | </exclusions> |
|
369 | 378 | </build> |
370 | 379 | </profile> |
371 | 380 |
|
372 | | - <!-- JDK8 specifics --> |
373 | 381 | <profile> |
374 | | - <id>javadoc-jdk18</id> |
| 382 | + <id>grid-edition</id> |
375 | 383 | <activation> |
376 | | - <jdk>1.8</jdk> |
| 384 | + <property> |
| 385 | + <name>grid-edition</name> |
| 386 | + </property> |
377 | 387 | </activation> |
| 388 | + <properties> |
| 389 | + <coherence.group.id>com.oracle.coherence</coherence.group.id> |
| 390 | + </properties> |
378 | 391 | <build> |
379 | 392 | <plugins> |
380 | | - <!-- attach javadoc --> |
381 | 393 | <plugin> |
382 | | - <groupId>org.apache.maven.plugins</groupId> |
383 | | - <artifactId>maven-javadoc-plugin</artifactId> |
384 | | - <version>${maven.javadoc.plugin.version}</version> |
| 394 | + <groupId>com.coderplus.maven.plugins</groupId> |
| 395 | + <artifactId>copy-rename-maven-plugin</artifactId> |
| 396 | + <version>${copy.rename.maven.plugin.version}</version> |
385 | 397 | <executions> |
386 | 398 | <execution> |
387 | | - <id>attach-javadocs</id> |
| 399 | + <id>copy-and-rename-file</id> |
| 400 | + <phase>compile</phase> |
388 | 401 | <goals> |
389 | | - <goal>jar</goal> |
| 402 | + <goal>rename</goal> |
390 | 403 | </goals> |
| 404 | + <configuration> |
| 405 | + <fileSets> |
| 406 | + <fileSet> |
| 407 | + <sourceFile> |
| 408 | + ${project.build.directory}/classes/tangosol-coherence-override-grid-edition.xml |
| 409 | + </sourceFile> |
| 410 | + <destinationFile> |
| 411 | + ${project.build.directory}/classes/tangosol-coherence-override.xml |
| 412 | + </destinationFile> |
| 413 | + </fileSet> |
| 414 | + <fileSet> |
| 415 | + <sourceFile> |
| 416 | + ${project.build.directory}/classes/cache-config-grid-edition.xml |
| 417 | + </sourceFile> |
| 418 | + <destinationFile> |
| 419 | + ${project.build.directory}/classes/cache-config.xml |
| 420 | + </destinationFile> |
| 421 | + </fileSet> |
| 422 | + </fileSets> |
| 423 | + </configuration> |
391 | 424 | </execution> |
392 | 425 | </executions> |
393 | 426 | </plugin> |
|
482 | 515 | <activation> |
483 | 516 | <activeByDefault>false</activeByDefault> |
484 | 517 | <property> |
485 | | - <name>project.docker</name> |
| 518 | + <name>docker</name> |
486 | 519 | </property> |
487 | 520 | </activation> |
488 | 521 |
|
489 | 522 | <build> |
490 | 523 | <plugins> |
491 | | - <!-- make a jar with specific artifacts not found in Coherence docker image --> |
492 | | - <plugin> |
493 | | - <groupId>org.apache.maven.plugins</groupId> |
494 | | - <artifactId>maven-shade-plugin</artifactId> |
495 | | - <version>${maven.shade.plugin.version}</version> |
496 | | - <executions> |
497 | | - <execution> |
498 | | - <phase>package</phase> |
499 | | - <goals> |
500 | | - <goal>shade</goal> |
501 | | - </goals> |
502 | | - <configuration> |
503 | | - <artifactSet> |
504 | | - <excludes> |
505 | | - <exclude>com.oracle.coherence:coherence:*</exclude> |
506 | | - </excludes> |
507 | | - </artifactSet> |
508 | | - </configuration> |
509 | | - </execution> |
510 | | - </executions> |
511 | | - </plugin> |
512 | | - |
513 | | - <!-- create docker directory --> |
514 | 524 | <plugin> |
515 | | - <groupId>org.apache.maven.plugins</groupId> |
516 | | - <artifactId>maven-assembly-plugin</artifactId> |
517 | | - <executions> |
518 | | - <execution> |
519 | | - <id>docker</id> |
520 | | - <phase>package</phase> |
521 | | - <goals> |
522 | | - <goal>single</goal> |
523 | | - </goals> |
524 | | - <configuration> |
525 | | - <finalName>docker</finalName> |
526 | | - <appendAssemblyId>false</appendAssemblyId> |
527 | | - <descriptors> |
528 | | - <descriptor>src/assembly/image-assembly.xml</descriptor> |
529 | | - </descriptors> |
530 | | - </configuration> |
531 | | - </execution> |
532 | | - </executions> |
533 | | - </plugin> |
534 | | - |
535 | | - <!-- build docker image --> |
536 | | - <plugin> |
537 | | - <groupId>org.codehaus.mojo</groupId> |
538 | | - <artifactId>exec-maven-plugin</artifactId> |
539 | | - <version>${maven.exec.plugin.version}</version> |
| 525 | + <groupId>com.google.cloud.tools</groupId> |
| 526 | + <artifactId>jib-maven-plugin</artifactId> |
| 527 | + <version>${jib.version}</version> |
| 528 | + <configuration> |
| 529 | + <from> |
| 530 | + <image>gcr.io/distroless/java@sha256:f59b26c5ecc735514a38afbf845214383c4e2ba1fdd15a76225339b8ab7da8ef</image> |
| 531 | + </from> |
| 532 | + <to> |
| 533 | + <image>${project.artifactId}</image> |
| 534 | + <tags> |
| 535 | + <tag>${docker.version}</tag> |
| 536 | + </tags> |
| 537 | + </to> |
| 538 | + <container> |
| 539 | + <!-- good defaults intended for containers --> |
| 540 | + <jvmFlags> |
| 541 | + <jmxFlag>-server</jmxFlag> |
| 542 | + <jmxFlag>-Djava.awt.headless=true</jmxFlag> |
| 543 | + <jmxFlag>-XX:+UnlockExperimentalVMOptions</jmxFlag> |
| 544 | + <jmxFlag>-XX:+UseCGroupMemoryLimitForHeap</jmxFlag> |
| 545 | + <jmxFlag>-XX:InitialRAMFraction=2</jmxFlag> |
| 546 | + <jmxFlag>-XX:MinRAMFraction=2</jmxFlag> |
| 547 | + <jmxFlag>-XX:MaxRAMFraction=2</jmxFlag> |
| 548 | + <jmxFlag>-XX:+UseG1GC</jmxFlag> |
| 549 | + </jvmFlags> |
| 550 | + <mainClass>com.tangosol.net.DefaultCacheServer</mainClass> |
| 551 | + <ports> |
| 552 | + <port>8080</port> |
| 553 | + </ports> |
| 554 | + <creationTime>USE_CURRENT_TIMESTAMP</creationTime> |
| 555 | + </container> |
| 556 | + <containerizingMode>packaged</containerizingMode> |
| 557 | + </configuration> |
540 | 558 | <executions> |
541 | 559 | <execution> |
542 | | - <id>build-utils-docker-image</id> |
543 | | - <phase>package</phase> |
544 | | - <configuration> |
545 | | - <executable>docker</executable> |
546 | | - <workingDirectory>${project.build.directory}/docker |
547 | | - </workingDirectory> |
548 | | - <arguments> |
549 | | - <argument>build</argument> |
550 | | - <argument>-t</argument> |
551 | | - <argument>${project.artifactId}-sidecar:${project.version}</argument> |
552 | | - <argument>.</argument> |
553 | | - </arguments> |
554 | | - </configuration> |
555 | 560 | <goals> |
556 | | - <goal>exec</goal> |
| 561 | + <goal>${jib.goal}</goal> |
557 | 562 | </goals> |
558 | | - </execution> |
559 | | - <execution> |
560 | | - <id>docker-tag</id> |
561 | 563 | <phase>package</phase> |
562 | | - <configuration> |
563 | | - <executable>docker</executable> |
564 | | - <workingDirectory>${project.build.directory}/docker |
565 | | - </workingDirectory> |
566 | | - <arguments> |
567 | | - <argument>tag</argument> |
568 | | - <argument>${project.artifactId}-sidecar:${project.version}</argument> |
569 | | - <argument>${project.artifactId}-sidecar:latest</argument> |
570 | | - </arguments> |
571 | | - </configuration> |
572 | | - <goals> |
573 | | - <goal>exec</goal> |
574 | | - </goals> |
575 | 564 | </execution> |
576 | 565 | </executions> |
577 | 566 | </plugin> |
|
0 commit comments