From 63dc5e3a48d8affbe2e6f177301b374f3d86ec28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 10:57:13 +0200 Subject: [PATCH 01/31] Bump dependency versions + publish docker image on Quay.io --- ..._ch_qos_logback_logback_classic_1_1_11.xml | 13 ------ ...en__ch_qos_logback_logback_core_1_1_11.xml | 13 ------ .idea/libraries/Maven__junit_junit_4_12.xml | 13 ------ .../Maven__org_hamcrest_hamcrest_core_1_3.xml | 13 ------ ...Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml | 13 ------ .../Maven__org_slf4j_jul_to_slf4j_1_7_25.xml | 13 ------ .../Maven__org_slf4j_slf4j_api_1_7_25.xml | 13 ------ .travis.yml | 6 +++ .travis/pushimage.sh | 8 ++++ Dockerfile | 10 +---- README.md | 1 + ngx-distributed-shm.iml | 41 ------------------- pom.xml | 16 ++++---- .../hcshm/processor/IncrProcessor.java | 12 +----- .../hcshm/processor/TouchProcessor.java | 11 ----- .../hcshm/AbstractHCSHMGetTestCase.java | 2 +- 16 files changed, 28 insertions(+), 170 deletions(-) delete mode 100644 .idea/libraries/Maven__ch_qos_logback_logback_classic_1_1_11.xml delete mode 100644 .idea/libraries/Maven__ch_qos_logback_logback_core_1_1_11.xml delete mode 100644 .idea/libraries/Maven__junit_junit_4_12.xml delete mode 100644 .idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml delete mode 100644 .idea/libraries/Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml delete mode 100644 .idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_25.xml delete mode 100644 .idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml create mode 100644 .travis/pushimage.sh delete mode 100644 ngx-distributed-shm.iml diff --git a/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_1_11.xml b/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_1_11.xml deleted file mode 100644 index c6ea67e..0000000 --- a/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_1_11.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/Maven__ch_qos_logback_logback_core_1_1_11.xml b/.idea/libraries/Maven__ch_qos_logback_logback_core_1_1_11.xml deleted file mode 100644 index f538e36..0000000 --- a/.idea/libraries/Maven__ch_qos_logback_logback_core_1_1_11.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/Maven__junit_junit_4_12.xml b/.idea/libraries/Maven__junit_junit_4_12.xml deleted file mode 100644 index d411041..0000000 --- a/.idea/libraries/Maven__junit_junit_4_12.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml deleted file mode 100644 index f58bbc1..0000000 --- a/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml b/.idea/libraries/Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml deleted file mode 100644 index bae9949..0000000 --- a/.idea/libraries/Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_25.xml b/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_25.xml deleted file mode 100644 index 6073e53..0000000 --- a/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_25.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml b/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml deleted file mode 100644 index 20e8163..0000000 --- a/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 981b519..15d6289 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,9 @@ git: jdk: - openjdk8 +services: + - docker + addons: sonarcloud: organization: grrolland-github @@ -47,6 +50,9 @@ deploy: on: tags: false +after_success: + - bash ../.travis/pushimage.sh + cache: directories: - '$HOME/.m2/repository' diff --git a/.travis/pushimage.sh b/.travis/pushimage.sh new file mode 100644 index 0000000..9a18783 --- /dev/null +++ b/.travis/pushimage.sh @@ -0,0 +1,8 @@ +#!/bin/bash +docker login -u="$QUAY_USER" -p="$QUAY_TOKEN" quay.io +export TAG=$(if [ "$TRAVIS_BRANCH" == "master" ]; then echo "latest"; else echo $TRAVIS_BRANCH ; fi) +export IMAGE_NAME=grrolland/ngx-distibuted-shm +docker build -f Dockerfile -t $IMAGE_NAME:$TAG . +docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:$TAG +docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:travis-$TRAVIS_BUILD_NUMBER +docker push $IMAGE_NAME \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 9643807..7e3d926 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,11 @@ -FROM maven:3.6.3-jdk-11 AS build - -RUN git clone https://github.com/revomatico/ngx-distributed-shm -RUN cd ngx-distributed-shm \ - && mvn clean package - FROM openjdk:11-jre-slim -LABEL maintainer="Cristian Chiru " +LABEL maintainer="Grégoire Rolland " ENV NGX_DISTRIBUTED_SHM_PORT=4321 \ NGX_DISTRIBUTED_SHM_ADDRESS=0.0.0.0 -COPY --from=build /ngx-distributed-shm/target/ngx-distributed-shm.jar / +COPY target/ngx-distributed-shm.jar / STOPSIGNAL SIGRTMIN+3 diff --git a/README.md b/README.md index 3d54f0a..2adacaf 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,7 @@ [![Technical debt ratio](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=sqale_index)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=coverage)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Maven Central](https://img.shields.io/maven-central/v/io.github.grrolland/ngx-distributed-shm.svg)](https://search.maven.org/search?q=g:io.github.grrolland%20AND%20a:ngx-distributed-shm&core=gav) +[![Docker Repository on Quay](https://quay.io/repository/grrolland/ngx-distributed-shm/status "Docker Repository on Quay")](https://quay.io/repository/grrolland/ngx-distributed-shm) # ngx-distributed-shm diff --git a/ngx-distributed-shm.iml b/ngx-distributed-shm.iml deleted file mode 100644 index c22b37c..0000000 --- a/ngx-distributed-shm.iml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/pom.xml b/pom.xml index 1e531cb..4406d4c 100644 --- a/pom.xml +++ b/pom.xml @@ -51,7 +51,9 @@ 3.6.3 4.0.2 2.0.1 - + 1.7.25 + 1.2.0 + 4.13.1 src/main target/surefire-reports @@ -84,32 +86,32 @@ org.slf4j slf4j-api - 1.7.25 + ${slf4j.version} org.slf4j jul-to-slf4j - 1.7.25 + ${slf4j.version} org.slf4j jcl-over-slf4j - 1.7.25 + ${slf4j.version} ch.qos.logback logback-core - 1.1.11 + ${logback.version} ch.qos.logback logback-classic - 1.1.11 + ${logback.version} junit junit - 4.12 + ${junit.version} test diff --git a/src/main/java/io/github/grrolland/hcshm/processor/IncrProcessor.java b/src/main/java/io/github/grrolland/hcshm/processor/IncrProcessor.java index be3e1e4..7dc3fcb 100644 --- a/src/main/java/io/github/grrolland/hcshm/processor/IncrProcessor.java +++ b/src/main/java/io/github/grrolland/hcshm/processor/IncrProcessor.java @@ -21,7 +21,6 @@ import io.github.grrolland.hcshm.ShmRegionLocator; import io.github.grrolland.hcshm.ShmValue; import com.hazelcast.map.IMap; -//import com.hazelcast.map.EntryBackupProcessor; import com.hazelcast.map.EntryProcessor; import java.io.Serializable; @@ -78,7 +77,7 @@ public Object process(Map.Entry entry) { } else { - newval = Long.toString(value + (long) init); + newval = Long.toString(value + init); } IMap map = regionLocator.getMap(HazelcastInstanceHandler.getInstance(), entry.getKey()); if (expire >= 0) { @@ -90,13 +89,4 @@ public Object process(Map.Entry entry) { } return newval; } - - /** - * The backup processor - * @return null, because set or remove is called in the main process - */ - // @Override - // public EntryBackupProcessor getBackupProcessor() { - // return null; - // } } diff --git a/src/main/java/io/github/grrolland/hcshm/processor/TouchProcessor.java b/src/main/java/io/github/grrolland/hcshm/processor/TouchProcessor.java index e1b99f1..bce26b4 100644 --- a/src/main/java/io/github/grrolland/hcshm/processor/TouchProcessor.java +++ b/src/main/java/io/github/grrolland/hcshm/processor/TouchProcessor.java @@ -20,7 +20,6 @@ import io.github.grrolland.hcshm.HazelcastInstanceHandler; import io.github.grrolland.hcshm.ShmRegionLocator; import io.github.grrolland.hcshm.ShmValue; -//import com.hazelcast.map.EntryBackupProcessor; import com.hazelcast.map.EntryProcessor; import java.io.Serializable; @@ -64,14 +63,4 @@ public Object process(Map.Entry entry) { } return null; } - - - /** - * The backup processor - * @return null, because set is called in the main process - */ - // @Override - // public EntryBackupProcessor getBackupProcessor() { - // return null; - // } } diff --git a/src/test/java/io/github/grrolland/hcshm/AbstractHCSHMGetTestCase.java b/src/test/java/io/github/grrolland/hcshm/AbstractHCSHMGetTestCase.java index 7d90c5f..3d28745 100644 --- a/src/test/java/io/github/grrolland/hcshm/AbstractHCSHMGetTestCase.java +++ b/src/test/java/io/github/grrolland/hcshm/AbstractHCSHMGetTestCase.java @@ -30,7 +30,7 @@ /** * Global Protocol Test Case */ -public class AbstractHCSHMGetTestCase { +public abstract class AbstractHCSHMGetTestCase { /** * Test Socket From 32b392ca0dd877c17dc7a5d61fd41b40d1279f9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 11:10:42 +0200 Subject: [PATCH 02/31] Bump dependency versions + publish docker image on Quay.io --- .travis.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 15d6289..229c562 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,6 @@ language: java -sudo: required +os: linux +dist: xenial git: depth: false @@ -15,7 +16,7 @@ addons: organization: grrolland-github script: - - mvn clean package -DskipTests + - mvn clean package - sh ./runSonarQubeAnalysis.sh before_deploy: @@ -24,10 +25,9 @@ before_deploy: deploy: - provider: releases - api_key: $GITHUB_OAUTH_TOKEN + token: $GITHUB_OAUTH_TOKEN file: - target/ngx-distributed-shm.jar - skip_cleanup: true overwrite: true on: tags: true From 1b09bbce5a234f3c645ab983aae44756584ebe25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 12:13:48 +0200 Subject: [PATCH 03/31] Bump dependency versions + publish docker image on Quay.io --- pom.xml | 8 ++++---- .../io/github/grrolland/hcshm/Configuration.java | 2 +- .../java/io/github/grrolland/hcshm/ShmTcpServer.java | 1 - .../io/github/grrolland/hcshm/HCSHMTestSuite.java | 12 ++++++++++-- .../java/io/github/grrolland/hcshm/QuitTestCase.java | 2 +- 5 files changed, 16 insertions(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index 4406d4c..fa63b4c 100644 --- a/pom.xml +++ b/pom.xml @@ -48,10 +48,10 @@ - 3.6.3 - 4.0.2 - 2.0.1 - 1.7.25 + 4.1.5 + 5.0 + 2.2.3 + 1.7.32 1.2.0 4.13.1 src/main diff --git a/src/main/java/io/github/grrolland/hcshm/Configuration.java b/src/main/java/io/github/grrolland/hcshm/Configuration.java index 334cbe0..2e3a1a8 100644 --- a/src/main/java/io/github/grrolland/hcshm/Configuration.java +++ b/src/main/java/io/github/grrolland/hcshm/Configuration.java @@ -36,7 +36,7 @@ public class Configuration { /** * Default workers */ - public static final int DEFAULT_WORKERS = 4; + public static final int DEFAULT_WORKERS = 1; /** * Private default constructor diff --git a/src/main/java/io/github/grrolland/hcshm/ShmTcpServer.java b/src/main/java/io/github/grrolland/hcshm/ShmTcpServer.java index c04094f..30cf353 100644 --- a/src/main/java/io/github/grrolland/hcshm/ShmTcpServer.java +++ b/src/main/java/io/github/grrolland/hcshm/ShmTcpServer.java @@ -47,7 +47,6 @@ public ShmTcpServer() { */ @Override public void start() throws Exception { - NetServerOptions options = new NetServerOptions().setPort(Configuration.getPort()).setHost(Configuration.getBindAddress()); NetServer server = vertx.createNetServer(options); server.connectHandler(sock -> ShmProtocolHandler.create(sock, service)); diff --git a/src/test/java/io/github/grrolland/hcshm/HCSHMTestSuite.java b/src/test/java/io/github/grrolland/hcshm/HCSHMTestSuite.java index 4eeb7fc..d90332a 100644 --- a/src/test/java/io/github/grrolland/hcshm/HCSHMTestSuite.java +++ b/src/test/java/io/github/grrolland/hcshm/HCSHMTestSuite.java @@ -19,6 +19,7 @@ import ch.qos.logback.classic.Level; import ch.qos.logback.classic.Logger; +import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.runner.RunWith; import org.junit.runners.Suite; @@ -40,6 +41,8 @@ }) public class HCSHMTestSuite { + private static final Thread SHM_THREAD = new Thread(() -> Main.main(new String[] {}));; + /** * Init the test case : launch the distributed memory */ @@ -52,10 +55,15 @@ public static void init() throws InterruptedException { Logger root = (Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME); root.setLevel(Level.INFO); - - Main.main(new String[] {}); + SHM_THREAD.start(); Thread.sleep(10000); // NOSONAR } + @AfterClass + public static void shutdown() throws InterruptedException { + SHM_THREAD.interrupt(); + SHM_THREAD.join(); + } + } diff --git a/src/test/java/io/github/grrolland/hcshm/QuitTestCase.java b/src/test/java/io/github/grrolland/hcshm/QuitTestCase.java index 927dda4..0ff1870 100644 --- a/src/test/java/io/github/grrolland/hcshm/QuitTestCase.java +++ b/src/test/java/io/github/grrolland/hcshm/QuitTestCase.java @@ -38,7 +38,7 @@ public void testQuit() { getWriter().write("QUIT\r\n"); getWriter().flush(); String res = getReader().readLine(); - Assert.assertNull(res); + Assert.assertEquals("DONE", res); } catch (IOException e) From f5d7774ae07dedaab5db684fa84aa1a8e11868d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 12:16:09 +0200 Subject: [PATCH 04/31] Bump dependency versions + publish docker image on Quay.io --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 229c562..d28ca9c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -51,7 +51,7 @@ deploy: tags: false after_success: - - bash ../.travis/pushimage.sh + - bash .travis/pushimage.sh cache: directories: From b910104b6b419a9f4e2fac88ea65befd86a5411f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 12:19:04 +0200 Subject: [PATCH 05/31] Bump dependency versions + publish docker image on Quay.io --- .travis/pushimage.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis/pushimage.sh b/.travis/pushimage.sh index 9a18783..e722468 100644 --- a/.travis/pushimage.sh +++ b/.travis/pushimage.sh @@ -5,4 +5,4 @@ export IMAGE_NAME=grrolland/ngx-distibuted-shm docker build -f Dockerfile -t $IMAGE_NAME:$TAG . docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:$TAG docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:travis-$TRAVIS_BUILD_NUMBER -docker push $IMAGE_NAME \ No newline at end of file +docker push quay.io/$IMAGE_NAME \ No newline at end of file From f1bd2980c298adf1afb60a109e69797a2eb36c93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 12:21:47 +0200 Subject: [PATCH 06/31] Bump dependency versions + publish docker image on Quay.io --- .travis/pushimage.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis/pushimage.sh b/.travis/pushimage.sh index e722468..d0090ad 100644 --- a/.travis/pushimage.sh +++ b/.travis/pushimage.sh @@ -1,8 +1,8 @@ #!/bin/bash docker login -u="$QUAY_USER" -p="$QUAY_TOKEN" quay.io export TAG=$(if [ "$TRAVIS_BRANCH" == "master" ]; then echo "latest"; else echo $TRAVIS_BRANCH ; fi) -export IMAGE_NAME=grrolland/ngx-distibuted-shm +export IMAGE_NAME=quay.io/grrolland/ngx-distibuted-shm docker build -f Dockerfile -t $IMAGE_NAME:$TAG . docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:$TAG docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:travis-$TRAVIS_BUILD_NUMBER -docker push quay.io/$IMAGE_NAME \ No newline at end of file +docker push $IMAGE_NAME \ No newline at end of file From 906e577f3e98a31da76bbfdcb680ede860db25de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 12:26:28 +0200 Subject: [PATCH 07/31] Bump dependency versions + publish docker image on Quay.io --- .travis/pushimage.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/.travis/pushimage.sh b/.travis/pushimage.sh index d0090ad..270d287 100644 --- a/.travis/pushimage.sh +++ b/.travis/pushimage.sh @@ -3,6 +3,4 @@ docker login -u="$QUAY_USER" -p="$QUAY_TOKEN" quay.io export TAG=$(if [ "$TRAVIS_BRANCH" == "master" ]; then echo "latest"; else echo $TRAVIS_BRANCH ; fi) export IMAGE_NAME=quay.io/grrolland/ngx-distibuted-shm docker build -f Dockerfile -t $IMAGE_NAME:$TAG . -docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:$TAG -docker tag $IMAGE_NAME:$COMMIT $IMAGE_NAME:travis-$TRAVIS_BUILD_NUMBER docker push $IMAGE_NAME \ No newline at end of file From 0a8a10c2b85b4a1f89f68b0955595f8a96c486f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 12:33:26 +0200 Subject: [PATCH 08/31] Bump dependency versions + publish docker image on Quay.io --- .travis/pushimage.sh | 2 +- pom.xml | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/.travis/pushimage.sh b/.travis/pushimage.sh index 270d287..75fa994 100644 --- a/.travis/pushimage.sh +++ b/.travis/pushimage.sh @@ -1,6 +1,6 @@ #!/bin/bash docker login -u="$QUAY_USER" -p="$QUAY_TOKEN" quay.io export TAG=$(if [ "$TRAVIS_BRANCH" == "master" ]; then echo "latest"; else echo $TRAVIS_BRANCH ; fi) -export IMAGE_NAME=quay.io/grrolland/ngx-distibuted-shm +export IMAGE_NAME=quay.io/grrolland/ngx-distributed-shm docker build -f Dockerfile -t $IMAGE_NAME:$TAG . docker push $IMAGE_NAME \ No newline at end of file diff --git a/pom.xml b/pom.xml index fa63b4c..72acfc5 100644 --- a/pom.xml +++ b/pom.xml @@ -78,11 +78,6 @@ hazelcast ${hazelcast.version} - - com.hazelcast - hazelcast-kubernetes - ${hazelcast-kubernetes-version} - org.slf4j slf4j-api From 021854967b73f5436af2d9c606174b999efe9f3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 14:24:14 +0200 Subject: [PATCH 09/31] Bump dependency versions + publish docker image on Quay.io --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index d28ca9c..6bccd6e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,7 +6,7 @@ git: depth: false jdk: - - openjdk8 + - openjdk11 services: - docker From e10444260f57f88d5a7c306d5cd32403d8ce339f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 14:43:38 +0200 Subject: [PATCH 10/31] Bump dependency versions + publish docker image on Quay.io --- .../io/github/grrolland/hcshm/ShmRegionLocator.java | 2 ++ .../io/github/grrolland/hcshm/commands/Command.java | 12 +++--------- .../grrolland/hcshm/commands/DeleteCommand.java | 1 - .../grrolland/hcshm/commands/FlushAllCommand.java | 1 - .../github/grrolland/hcshm/commands/GetCommand.java | 1 - .../github/grrolland/hcshm/commands/IncrCommand.java | 1 - .../github/grrolland/hcshm/commands/QuitCommand.java | 1 - .../github/grrolland/hcshm/commands/SetCommand.java | 1 - .../grrolland/hcshm/commands/TouchCommand.java | 1 - .../grrolland/hcshm/commands/UnknownCommand.java | 2 -- 10 files changed, 5 insertions(+), 18 deletions(-) diff --git a/src/main/java/io/github/grrolland/hcshm/ShmRegionLocator.java b/src/main/java/io/github/grrolland/hcshm/ShmRegionLocator.java index aadc203..9716c9e 100644 --- a/src/main/java/io/github/grrolland/hcshm/ShmRegionLocator.java +++ b/src/main/java/io/github/grrolland/hcshm/ShmRegionLocator.java @@ -29,6 +29,7 @@ public class ShmRegionLocator implements Serializable { /** * Get the map form the key name * @param key the key + * @param hazelcast hazelcast instance * @return return the named IMap, if no region in the key return the default IMap */ public IMap getMap(final HazelcastInstance hazelcast, final String key) { @@ -38,6 +39,7 @@ public IMap getMap(final HazelcastInstance hazelcast, final St /** * Get the map form the region name * @param region the key + * @param hazelcast hazelcast instance * @return return the named IMap, if no region return the default IMap */ public IMap getMapRegion(final HazelcastInstance hazelcast, final String region) { diff --git a/src/main/java/io/github/grrolland/hcshm/commands/Command.java b/src/main/java/io/github/grrolland/hcshm/commands/Command.java index a2303f1..e24ee32 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/Command.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/Command.java @@ -80,7 +80,6 @@ protected ShmService getService() { * Execute the command * @param comandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public abstract String execute(String[] comandTokens); @@ -88,13 +87,9 @@ protected ShmService getService() { * Execute the command * @param buffer the data buffer * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String executeDataPart(String buffer) { - final StringBuilder response = new StringBuilder(); - response.append(ERROR_UNEXPECTED_DATA); - response.append(RESPONSE_LINE_DELIMITER); - return response.toString(); + return ERROR_UNEXPECTED_DATA + RESPONSE_LINE_DELIMITER; } /** @@ -150,7 +145,6 @@ protected void assertTokens(String[] commandTokens, int minToken, int maxToken) * Get the key from command token * @param commandToken the command token * @return the key - * @throws ProtocolException if unable to get the key from command token */ protected String getKey(String commandToken) { return commandToken; @@ -186,7 +180,7 @@ protected int getExpire(String commandToken) throws ProtocolException { protected int getIncrValue(String commandToken) throws ProtocolException { try { - return Integer.valueOf(commandToken); + return Integer.parseInt(commandToken); } catch(NumberFormatException e) { @@ -222,7 +216,7 @@ protected int getSize(String commandToken) throws ProtocolException { */ protected void writeLen(StringBuilder response, String value) { response.append(LEN); - response.append(Integer.toString(value.length())); + response.append(value.length()); response.append(RESPONSE_LINE_DELIMITER); } /** diff --git a/src/main/java/io/github/grrolland/hcshm/commands/DeleteCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/DeleteCommand.java index e347836..c40cdc4 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/DeleteCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/DeleteCommand.java @@ -37,7 +37,6 @@ public class DeleteCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/FlushAllCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/FlushAllCommand.java index b8ac273..c185a91 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/FlushAllCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/FlushAllCommand.java @@ -37,7 +37,6 @@ public class FlushAllCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/GetCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/GetCommand.java index d30eb96..ebbaccf 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/GetCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/GetCommand.java @@ -37,7 +37,6 @@ public class GetCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/IncrCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/IncrCommand.java index 9603ffc..cd37637 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/IncrCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/IncrCommand.java @@ -37,7 +37,6 @@ public class IncrCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/QuitCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/QuitCommand.java index d084f0e..be7d06c 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/QuitCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/QuitCommand.java @@ -42,7 +42,6 @@ public class QuitCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java index f070034..88a19ae 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java @@ -72,7 +72,6 @@ public int getDataPartSize() { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/TouchCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/TouchCommand.java index 94a2c31..a87d8b5 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/TouchCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/TouchCommand.java @@ -37,7 +37,6 @@ public class TouchCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); diff --git a/src/main/java/io/github/grrolland/hcshm/commands/UnknownCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/UnknownCommand.java index c8218f6..61c12a4 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/UnknownCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/UnknownCommand.java @@ -17,7 +17,6 @@ */ package io.github.grrolland.hcshm.commands; -import io.github.grrolland.hcshm.ProtocolException; import io.github.grrolland.hcshm.ShmService; /** @@ -37,7 +36,6 @@ public class UnknownCommand extends Command { * Execute the command * @param commandTokens the protocol tokens argument of the command * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ public String execute(String[] commandTokens) { final StringBuilder response = new StringBuilder(); From 62859c5c0f5d12ac51e5926f22469ed2e8a90564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 14:59:54 +0200 Subject: [PATCH 11/31] Bump dependency versions + publish docker image on Quay.io --- .../java/io/github/grrolland/hcshm/commands/SetCommand.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java b/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java index 88a19ae..680ca4b 100644 --- a/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java +++ b/src/main/java/io/github/grrolland/hcshm/commands/SetCommand.java @@ -94,7 +94,6 @@ public String execute(String[] commandTokens) { * Execute the command * @param buffer the data buffer * @return the result of the command 'protocol encoded' - * @throws ProtocolException protocol exception */ @Override public String executeDataPart(String buffer) { @@ -102,7 +101,7 @@ public String executeDataPart(String buffer) { String value; try { - value = getService().set(key, Long.valueOf(buffer), expire); + value = getService().set(key, Long.parseLong(buffer), expire); } catch (NumberFormatException e) { From 2836738f5c300b266c2d38982afdf4dd3b081570 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 15:17:25 +0200 Subject: [PATCH 12/31] Bump dependency versions + publish docker image on Quay.io --- pom.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pom.xml b/pom.xml index 72acfc5..bf34507 100644 --- a/pom.xml +++ b/pom.xml @@ -197,6 +197,9 @@ org.apache.maven.plugins maven-javadoc-plugin 3.1.1 + + 8 + attach-javadocs From 70db49d82acbe7ec9222e5e78a492027a47084e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 15:59:56 +0200 Subject: [PATCH 13/31] v1.3.0 --- README.md | 3 +-- pom.xml | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 2adacaf..e80337b 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,8 @@ -[![Build Status](https://travis-ci.org/grrolland/ngx-distributed-shm.svg?branch=master)](https://travis-ci.org/grrolland/ngx-distributed-shm) +[![Build Status](https://travis-ci.com/grrolland/ngx-distributed-shm.svg?branch=master)](https://travis-ci.org/grrolland/ngx-distributed-shm) [![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=alert_status)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Technical debt ratio](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=sqale_index)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=coverage)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Maven Central](https://img.shields.io/maven-central/v/io.github.grrolland/ngx-distributed-shm.svg)](https://search.maven.org/search?q=g:io.github.grrolland%20AND%20a:ngx-distributed-shm&core=gav) -[![Docker Repository on Quay](https://quay.io/repository/grrolland/ngx-distributed-shm/status "Docker Repository on Quay")](https://quay.io/repository/grrolland/ngx-distributed-shm) # ngx-distributed-shm diff --git a/pom.xml b/pom.xml index bf34507..5b2a0cb 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ io.github.grrolland ngx-distributed-shm - 1.0.3-SNAPSHOT + 1.0.3 ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. From 409dd988a52cc0f77703b37c33e6be6b5f83224a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 16:01:49 +0200 Subject: [PATCH 14/31] v1.3.0 --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index e80337b..ff1bfcb 100644 --- a/README.md +++ b/README.md @@ -438,6 +438,11 @@ The session_storage parameter control the storage module to be used. 'local/docker-ngx-distributed-shm' ``` +- An official docker image build is available at quay.io : + + ```shell + docker pull quay.io/grrolland/ngx-distributed-shm + ``` ## Kubernetes 1. See [kubernetes](./kubernetes) directory for sample artefacts. From eb862c8daafdf0723b1dd93bff826f2b5777ce3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 16:28:40 +0200 Subject: [PATCH 15/31] v1.3.0 --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 6bccd6e..65a48f2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,7 +25,7 @@ before_deploy: deploy: - provider: releases - token: $GITHUB_OAUTH_TOKEN + api_key: $GITHUB_OAUTH_TOKEN file: - target/ngx-distributed-shm.jar overwrite: true From e02dd476f33e8085d131042b7df73b944b840cf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 16:37:56 +0200 Subject: [PATCH 16/31] v1.3.0 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ff1bfcb..3b2a204 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Build Status](https://travis-ci.com/grrolland/ngx-distributed-shm.svg?branch=master)](https://travis-ci.org/grrolland/ngx-distributed-shm) +[![Build Status](https://travis-ci.com/grrolland/ngx-distributed-shm.svg?branch=master)](https://travis-ci.com/grrolland/ngx-distributed-shm) [![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=alert_status)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Technical debt ratio](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=sqale_index)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=coverage)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) From 4a66d1b9d14f6cbeae5fe61f8f1f9432866e09d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 16:45:48 +0200 Subject: [PATCH 17/31] 1.0.4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 5b2a0cb..9ff54f4 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ io.github.grrolland ngx-distributed-shm - 1.0.3 + 1.0.4 ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. From 2d2593b76ca32dd322120ffa8a3a11d7ca9de457 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Tue, 12 Oct 2021 16:57:44 +0200 Subject: [PATCH 18/31] 1.0.5-SNAPSHOT --- README.md | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3b2a204..dcb9113 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Build Status](https://travis-ci.com/grrolland/ngx-distributed-shm.svg?branch=master)](https://travis-ci.com/grrolland/ngx-distributed-shm) +[![Build Status](https://app.travis-ci.com/grrolland/ngx-distributed-shm.svg?branch=master)](https://app.travis-ci.com/grrolland/ngx-distributed-shm) [![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=alert_status)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Technical debt ratio](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=sqale_index)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=coverage)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) diff --git a/pom.xml b/pom.xml index 9ff54f4..cdda4b7 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ io.github.grrolland ngx-distributed-shm - 1.0.4 + 1.0.5-SNAPSHOT ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. From 41de4397009287228d4356ac2ec8c438392f35e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Thu, 14 Oct 2021 16:17:41 +0200 Subject: [PATCH 19/31] Create release.yml --- .github/workflows/release.yml | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..18dd937 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,34 @@ +# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created +# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path + +name: Maven Package + +on: + release: + types: [created] + +jobs: + build: + + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'adopt' + server-id: github # Value of the distributionManagement/repository/id field of the pom.xml + settings-path: ${{ github.workspace }} # location for the settings.xml file + + - name: Build with Maven + run: mvn -B package --file pom.xml + + - name: Publish to GitHub Packages Apache Maven + run: mvn deploy -s $GITHUB_WORKSPACE/settings.xml + env: + GITHUB_TOKEN: ${{ github.token }} From 3d94f8c138050fc30082ea8abd56ab506cf933ae Mon Sep 17 00:00:00 2001 From: grrolland Date: Thu, 21 Oct 2021 16:23:05 +0200 Subject: [PATCH 20/31] Release Action --- .github/workflows/release.yml | 152 +++++++++++++++++++++++++++------- pom.xml | 18 ++-- 2 files changed, 129 insertions(+), 41 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 18dd937..99a0a49 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,34 +1,130 @@ -# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created -# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#apache-maven-with-a-settings-path - -name: Maven Package +name: Create Release on: - release: - types: [created] + push: + branches: + - 'release-*' -jobs: - build: +env: + REGISTRY: ghcr.io + ALTERNATE_REGISTRY: ${{ secrets.DOCKER_REGISTRY }} + IMAGE_NAME: ${{ github.repository }} + SONAR_URL: https://sonarcloud.io + SONAR_ORG: grrolland-github +jobs: + release: runs-on: ubuntu-latest - permissions: - contents: read - packages: write - steps: - - uses: actions/checkout@v2 - - name: Set up JDK 11 - uses: actions/setup-java@v2 - with: - java-version: '11' - distribution: 'adopt' - server-id: github # Value of the distributionManagement/repository/id field of the pom.xml - settings-path: ${{ github.workspace }} # location for the settings.xml file - - - name: Build with Maven - run: mvn -B package --file pom.xml - - - name: Publish to GitHub Packages Apache Maven - run: mvn deploy -s $GITHUB_WORKSPACE/settings.xml - env: - GITHUB_TOKEN: ${{ github.token }} + - name: Get tag name + id: get_tag_name + run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/heads\/release-/} + + ## + # Perform Maven Release + # + - uses: actions/checkout@v2 + with: + ref: master + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'adopt' + cache: maven + - name: Configure Git user + run: | + git config user.email "actions@github.com" + git config user.name "GitHub Actions" + - name: Perform Release + run: mvn -B -Dtag=${GITHUB_REF##*release-} release:prepare release:perform + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + ## + # Checkout and Build the Tag + # + - uses: actions/checkout@v2 + with: + ref: ${{ steps.get_tag_name.outputs.VERSION }} + + - name: Build Tag + run: | + mvn clean \ + org.jacoco:jacoco-maven-plugin:prepare-agent \ + package \ + org.jacoco:jacoco-maven-plugin:report \ + sonar:sonar \ + -B -e -V \ + -Dsonar.host.url=$SONAR_URL \ + -Dsonar.login=$SONAR_TOKEN \ + -Dsonar.organization=$SONAR_ORG \ + -Dsonar.sources=src/main \ + -Dsonar.junit.reportPaths=target/surefire-reports \ + -Dsonar.coverage.jacoco.xmlReportPaths=target/site/jacoco/jacoco.xml + env: + SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + ## + # Publish to Github Docker Registry + # + - name: Log in to the Container registry + uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + ${{ steps.get_tag_name.outputs.VERSION }} + latest + + - name: Build and push Docker image + uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + + ## + # Publish to Alternate Docker Registry + # + - name: Log in to the Container registry + uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 + with: + registry: ${{ env.ALTERNATE_REGISTRY }} + username: ${{ secrets.DOCKER_REGISTRY_USERNAME }} + password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }} + + - name: Extract metadata (tags, labels) for Docker + id: meta_alt + uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 + with: + images: ${{ env.ALTERNATE_REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + ${{ steps.get_tag_name.outputs.VERSION }} + latest + + - name: Build and push Docker image + uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc + with: + context: . + push: true + tags: ${{ steps.meta_alt.outputs.tags }} + labels: ${{ steps.meta_alt.outputs.labels }} + + ## + # Create a Github Release + # + - uses: ncipollo/release-action@v1 + with: + body: Release version ${{ steps.get_tag_name.outputs.VERSION }} + tag: ${{ steps.get_tag_name.outputs.VERSION }} + token: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file diff --git a/pom.xml b/pom.xml index cdda4b7..c9c2351 100644 --- a/pom.xml +++ b/pom.xml @@ -29,13 +29,10 @@ - - ossrh - https://oss.sonatype.org/content/repositories/snapshots - - ossrh - https://oss.sonatype.org/service/local/staging/deploy/maven2/ + github + GitHub Apache Maven Packages + https://maven.pkg.github.com/grrolland/ngx-distributed-shm @@ -52,13 +49,8 @@ 5.0 2.2.3 1.7.32 - 1.2.0 - 4.13.1 - src/main - - target/surefire-reports - target/site/jacoco/jacoco.xml - + 1.2.6 + 4.13.2 From 7b0d3ab630e541e36f40c5dabfaea1df5f0a617f Mon Sep 17 00:00:00 2001 From: grrolland Date: Thu, 21 Oct 2021 16:30:41 +0200 Subject: [PATCH 21/31] Release Action --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c9c2351..3e088a6 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ scm:git:git@github.com:grrolland/ngx-distributed-shm.git - scm:git:git@github.com:grrolland/ngx-distributed-shm.git + scm:git:https://github.com/grrolland/ngx-distributed-shm.git https://github.com/grrolland/ngx-distributed-shm From 46f92d9e08cb74f716593681ec5a4af271bc1cb2 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 21 Oct 2021 14:32:06 +0000 Subject: [PATCH 22/31] [maven-release-plugin] prepare release 1.0.5 --- pom.xml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 3e088a6..b48dd73 100644 --- a/pom.xml +++ b/pom.xml @@ -1,13 +1,10 @@ - + 4.0.0 io.github.grrolland ngx-distributed-shm - 1.0.5-SNAPSHOT + 1.0.5 ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. @@ -26,7 +23,8 @@ scm:git:git@github.com:grrolland/ngx-distributed-shm.git scm:git:https://github.com/grrolland/ngx-distributed-shm.git https://github.com/grrolland/ngx-distributed-shm - + 1.0.5 + @@ -142,7 +140,7 @@ io.github.grrolland.hcshm.Main - + From b057ca6e56dca20532f573d2782d47b02daf266c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Thu, 21 Oct 2021 14:32:08 +0000 Subject: [PATCH 23/31] [maven-release-plugin] prepare for next development iteration --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index b48dd73..af4e428 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ io.github.grrolland ngx-distributed-shm - 1.0.5 + 1.0.6-SNAPSHOT ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. @@ -23,7 +23,7 @@ scm:git:git@github.com:grrolland/ngx-distributed-shm.git scm:git:https://github.com/grrolland/ngx-distributed-shm.git https://github.com/grrolland/ngx-distributed-shm - 1.0.5 + HEAD From a6a12966d45eded18ff589d574b7ed371d1bb4fc Mon Sep 17 00:00:00 2001 From: grrolland Date: Thu, 21 Oct 2021 16:52:50 +0200 Subject: [PATCH 24/31] Release Action --- .github/workflows/build.yml | 20 ++++++++++++++++++++ Dockerfile | 9 +++++++-- README.md | 5 ++++- 3 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..ccdec15 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,20 @@ +name: Create Release + +on: + push: + branches-ignore: + - 'release-*' + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'adopt' + cache: maven + - name: Build + run: mvn clean package diff --git a/Dockerfile b/Dockerfile index 7e3d926..847dbb8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,8 @@ FROM openjdk:11-jre-slim LABEL maintainer="Grégoire Rolland " ENV NGX_DISTRIBUTED_SHM_PORT=4321 \ - NGX_DISTRIBUTED_SHM_ADDRESS=0.0.0.0 + NGX_DISTRIBUTED_SHM_ADDRESS=0.0.0.0 \ + JDK_JAVA_OPTIONS="--add-modules java.se --add-exports java.base/jdk.internal.ref=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.nio=ALL-UNNAMED --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.management/sun.management=ALL-UNNAMED --add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED" COPY target/ngx-distributed-shm.jar / @@ -11,4 +12,8 @@ STOPSIGNAL SIGRTMIN+3 EXPOSE 4321 -ENTRYPOINT java -Dngx-distributed-shm.port=${NGX_DISTRIBUTED_SHM_PORT} -Dngx-distributed-shm.bind_address=${NGX_DISTRIBUTED_SHM_ADDRESS} -jar ngx-distributed-shm.jar +ENTRYPOINT java -Dhazelcast.shutdownhook.policy=GRACEFUL \ + -Dhazelcast.graceful.shutdown.max.wait=20 \ + -Dngx-distributed-shm.port=${NGX_DISTRIBUTED_SHM_PORT} \ + -Dngx-distributed-shm.bind_address=${NGX_DISTRIBUTED_SHM_ADDRESS} \ + -jar ngx-distributed-shm.jar diff --git a/README.md b/README.md index dcb9113..f4bf72a 100644 --- a/README.md +++ b/README.md @@ -438,11 +438,14 @@ The session_storage parameter control the storage module to be used. 'local/docker-ngx-distributed-shm' ``` -- An official docker image build is available at quay.io : +- An official docker image build is available at quay.io or directly in the github registry : ```shell docker pull quay.io/grrolland/ngx-distributed-shm ``` + ```shell + docker pull ghcr.io/grrolland/ngx-distributed-shm + ``` ## Kubernetes 1. See [kubernetes](./kubernetes) directory for sample artefacts. From cafdc319830e1b0fdcbdb7a7dfe00912d08a34f1 Mon Sep 17 00:00:00 2001 From: grrolland Date: Thu, 21 Oct 2021 17:09:36 +0200 Subject: [PATCH 25/31] Release Action --- .github/workflows/build.yml | 2 +- .maven.xml | 24 -------------- .travis.yml | 62 ------------------------------------- README.md | 5 +-- 4 files changed, 4 insertions(+), 89 deletions(-) delete mode 100644 .maven.xml delete mode 100644 .travis.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ccdec15..8509f07 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,4 @@ -name: Create Release +name: Build Snapshot on: push: diff --git a/.maven.xml b/.maven.xml deleted file mode 100644 index 53fc494..0000000 --- a/.maven.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - ossrh - ${env.SONATYPE_USERNAME} - ${env.SONATYPE_PASSWORD} - - - - - - ossrh - - true - - - ${env.GPG_EXECUTABLE} - ${env.GPG_PASSPHRASE} - - - - - diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 65a48f2..0000000 --- a/.travis.yml +++ /dev/null @@ -1,62 +0,0 @@ -language: java -os: linux -dist: xenial - -git: - depth: false - -jdk: - - openjdk11 - -services: - - docker - -addons: - sonarcloud: - organization: grrolland-github - -script: - - mvn clean package - - sh ./runSonarQubeAnalysis.sh - -before_deploy: - - mvn help:evaluate -N -Dexpression=project.version|grep -v '\[' - - export project_version=$(mvn help:evaluate -N -Dexpression=project.version|grep -v '\[') - -deploy: - - provider: releases - api_key: $GITHUB_OAUTH_TOKEN - file: - - target/ngx-distributed-shm.jar - overwrite: true - on: - tags: true - repo: grrolland/ngx-distributed-shm - name: $project_version - - provider: script - script: echo $GPG_SECRET_KEYS | base64 --decode | $GPG_EXECUTABLE --import - on: - tags: false - - provider: script - script: echo $GPG_OWNERTRUST | base64 --decode | $GPG_EXECUTABLE --import-ownertrust - on: - tags: false - - provider: script - script: mvn --settings .maven.xml install -DskipTests=true -Dgpg.skip -Dmaven.javadoc.skip=true -B -V - on: - tags: false - - provider: script - script: mvn clean deploy --settings .maven.xml -DskipTests=true -B -U -Prelease - on: - tags: false - -after_success: - - bash .travis/pushimage.sh - -cache: - directories: - - '$HOME/.m2/repository' - - '$HOME/.sonar/cache' - -notifications: - email: false diff --git a/README.md b/README.md index f4bf72a..6655b3a 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ -[![Build Status](https://app.travis-ci.com/grrolland/ngx-distributed-shm.svg?branch=master)](https://app.travis-ci.com/grrolland/ngx-distributed-shm) +[![Build](https://github.com/grrolland/ngx-distributed-shm/actions/workflows/build.yml/badge.svg?branch=master)](https://github.com/grrolland/ngx-distributed-shm/actions/workflows/build.yml) [![Quality Gate](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=alert_status)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Technical debt ratio](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=sqale_index)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=io.github.grrolland%3Angx-distributed-shm&metric=coverage)](https://sonarcloud.io/dashboard/index/io.github.grrolland:ngx-distributed-shm) -[![Maven Central](https://img.shields.io/maven-central/v/io.github.grrolland/ngx-distributed-shm.svg)](https://search.maven.org/search?q=g:io.github.grrolland%20AND%20a:ngx-distributed-shm&core=gav) +[![Release](https://img.shields.io/github/release/grrolland/ngx-distributed-shm)](https://github.com/grrolland/ngx-distributed-shm/tags/) + # ngx-distributed-shm From 041fad64d1b17ef1965b5e6d52a7a89fdfa466b0 Mon Sep 17 00:00:00 2001 From: grrolland Date: Thu, 21 Oct 2021 17:16:48 +0200 Subject: [PATCH 26/31] Release Action --- README.md | 34 +++++++++++++++++----------------- runSonarQubeAnalysis.sh | 36 ------------------------------------ 2 files changed, 17 insertions(+), 53 deletions(-) delete mode 100644 runSonarQubeAnalysis.sh diff --git a/README.md b/README.md index 6655b3a..4bdca81 100644 --- a/README.md +++ b/README.md @@ -17,9 +17,9 @@ Production Ready since 06/2018. ## Use cases -This project was succesfully used to store rate limiting counter across a cluster of an Nginx based API Gateway in a french banking company. +This project was successfully used to store rate limiting counter across a cluster of a Nginx based API Gateway in a French banking company. -This project was succesfully used to distribute OpenID Connect Replying Party (based on zmartzone/lua-resty-openidc +This project was successfully used to distribute OpenID Connect Replying Party (based on zmartzone/lua-resty-openidc ) web session with the library bungle/lua-resty-session in a french banking company. ## Principle Schema @@ -50,7 +50,7 @@ The dependencies above are automatically included in the distribution jar with m ## Download -You can download distribution jar directly from the github release. +You can download distribution jar directly from the GitHub release. Alternatively, you can download the distribution jar via maven : @@ -73,10 +73,10 @@ The protocol expose commands to interact with the distributed storage : - SET : set a value in the storage - GET : get a value from the storage - TOUCH : update the ttl of a key -- DELETE : delete a key from the sorage +- DELETE : delete a key from the storage - INCR : increment the value for a key -In a clustered deployement (2 or more instances), a client need to connect to only one instance to see all the storage. The goal is to provide a near storage associated with an nginx instance. +In a clustered deployment (2 or more instances), a client need to connect to only one instance to see all the storage. The goal is to provide a near storage associated with a nginx instance. ## Startup @@ -98,7 +98,7 @@ To startup with a configuration directory ./conf (with hazelcast.xml and logback java -cp ngx-distributed-shm.jar:./conf io.github.grrolland.hcshm.Main ``` -The dist/bin directroy contains startup and shutdown scripts. +The dist/bin directory contains startup and shutdown scripts. ## Startup Options @@ -170,11 +170,11 @@ This is an example of this file : The reference documentation for this configuration is here : -This configuration works well for a two menber cluster of the distributed shared memory. +This configuration works well for a two member cluster of the distributed shared memory. ## Logging -The dist/conf directory contains an exemple logback.xml which control logging. The example file is the following : +The dist/conf directory contains an example logback.xml which control logging. The example file is the following : ```xml @@ -226,7 +226,7 @@ The **_ARG1_** is alway the **_key_** ### Anatomy of a key : region cache support -The distributed shared memory support region partionning. The format of the key control the region where will be located the value. +The distributed shared memory support region partitioning. The format of the key control the region where will be located the value. This key **_key1_** will be located in the region **_region1_** : @@ -240,13 +240,13 @@ This key **_key1_** will be located in the default region : key1 ``` -This permit to control the hazelast map where will be stored the key/value. +This permit to control the hazelcast map where will be stored the key/value. ### Data part -The data part is a bytes stream wich the length is specified in the command part. +The data part is a bytes stream which the length is specified in the command part. -For exemple the second argument of the SET command set the length of the data to send : +For example the second argument of the SET command set the length of the data to send : ``` SET key 0 4\r\n @@ -257,7 +257,7 @@ This command set the key "key" at the value "1234" ### Response -The response protocol is fairly simple. When the the command is executed the response have the folowing format : +The response protocol is fairly simple. When the command is executed the response have the following format : ``` \r\nRESPONSE response_arg\r\n @@ -352,7 +352,7 @@ INCR key -1 0\r\n **with data:** _no_ -Remove all the key from the region. The region is optionnal. Without region parameter, the default region is flush. +Remove all the key from the region. The region is optional. Without region parameter, the default region is flush. This operation is atomic. @@ -378,7 +378,7 @@ QUIT\r\n ## LUA libraries support -The lua libraries (lua/dshm.lua) is used to pilot the shared memory. The librarie should be installed in the resty disrectory of the openresty distribution. +The lua libraries (lua/dshm.lua) is used to pilot the shared memory. The library should be installed in the resty directory of the openresty distribution. This is an exemple to use it : @@ -399,7 +399,7 @@ store:delete("key") This module could be used to activate session replication with the excellent lua library Resty Session () -To use it, copy the lua extention in your resty/session/storage directory and use this type of configuration in your nginx.conf : +To use it, copy the lua extension in your resty/session/storage directory and use this type of configuration in your nginx.conf : ```nginx set $session_storage dshm; @@ -439,7 +439,7 @@ The session_storage parameter control the storage module to be used. 'local/docker-ngx-distributed-shm' ``` -- An official docker image build is available at quay.io or directly in the github registry : +- An official docker image build is available at quay.io or directly in the GitHub registry : ```shell docker pull quay.io/grrolland/ngx-distributed-shm diff --git a/runSonarQubeAnalysis.sh b/runSonarQubeAnalysis.sh deleted file mode 100644 index 3258044..0000000 --- a/runSonarQubeAnalysis.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh -# Exit on failure -set -e - -# This assumes that the 2 following variables are defined: -# - SONAR_HOST_URL => should point to the public URL of the SQ server (e.g. for Nemo: https://nemo.sonarqube.org) -# - SONAR_TOKEN => token of a user who has the "Execute Analysis" permission on the SQ server - -# And run the analysis -# It assumes that the project uses Maven and has a POM at the root of the repo -if [ "$TRAVIS_BRANCH" = "master" ] && [ "$TRAVIS_PULL_REQUEST" = "false" ]; then - # => This will run a full analysis of the project and push results to the SonarQube server. - # - # Analysis is done only on master so that build of branches don't push analyses to the same project and therefore "pollute" the results - echo "Starting analysis by SonarQube..." - mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent package org.jacoco:jacoco-maven-plugin:report sonar:sonar -B -e -V \ - -Dsonar.host.url=$SONAR_HOST_URL \ - -Dsonar.login=$SONAR_TOKEN - -elif [ "$TRAVIS_PULL_REQUEST" != "false" ] && [ -n "${GITHUB_TOKEN-}" ]; then - # => This will analyse the PR and display found issues as comments in the PR, but it won't push results to the SonarQube server - # - # For security reasons environment variables are not available on the pull requests - # coming from outside repositories - # http://docs.travis-ci.com/user/pull-requests/#Security-Restrictions-when-testing-Pull-Requests - # That's why the analysis does not need to be executed if the variable GITHUB_TOKEN is not defined. - echo "Starting Pull Request analysis by SonarQube..." - mvn clean package sonar:sonar -B -e -V \ - -Dsonar.host.url=$SONAR_HOST_URL \ - -Dsonar.login=$SONAR_TOKEN \ - -Dsonar.analysis.mode=preview \ - -Dsonar.github.oauth=$GITHUB_TOKEN \ - -Dsonar.github.repository=$TRAVIS_REPO_SLUG \ - -Dsonar.github.pullRequest=$TRAVIS_PULL_REQUEST -fi -# When neither on master branch nor on a non-external pull request => nothing to do From f45b0612a732492757d546ee9692a7f0ce49f3e8 Mon Sep 17 00:00:00 2001 From: sgandon Date: Wed, 10 Nov 2021 10:00:23 +0100 Subject: [PATCH 27/31] fix(lua): the set method does not respect the dshm protocol --- lua/dshm.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/lua/dshm.lua b/lua/dshm.lua index 5dab8d2..b4bd35c 100644 --- a/lua/dshm.lua +++ b/lua/dshm.lua @@ -234,7 +234,6 @@ function _M.set(self, key, value, exptime) local req = "set " .. self.escape_key(key) .. " " .. exptime .. " " .. strlen(value) .. "\r\n" .. value - .. "\r\n" local bytes, err = sock:send(req) if not bytes then From de3c9868f4bd496e14a9e046cb1e73dae823fc6c Mon Sep 17 00:00:00 2001 From: sgandon Date: Wed, 10 Nov 2021 18:39:41 +0100 Subject: [PATCH 28/31] fix(docker): remove line preventing term signal on kubernetes Removed STOPSIGNAL SIGRTMIN+3 that prevents the sig_term signal to reach the java process and therefore prevent the hazelcast gracefull shutdown. --- Dockerfile | 2 -- 1 file changed, 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 847dbb8..3b8b2fb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,8 +8,6 @@ ENV NGX_DISTRIBUTED_SHM_PORT=4321 \ COPY target/ngx-distributed-shm.jar / -STOPSIGNAL SIGRTMIN+3 - EXPOSE 4321 ENTRYPOINT java -Dhazelcast.shutdownhook.policy=GRACEFUL \ From ab8babbb89e6bb62168769b82f38a2bc07f2a132 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 17 Nov 2021 19:35:12 +0000 Subject: [PATCH 29/31] [maven-release-plugin] prepare release 1.0.6 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index af4e428..1a3a21b 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ io.github.grrolland ngx-distributed-shm - 1.0.6-SNAPSHOT + 1.0.6 ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. @@ -23,7 +23,7 @@ scm:git:git@github.com:grrolland/ngx-distributed-shm.git scm:git:https://github.com/grrolland/ngx-distributed-shm.git https://github.com/grrolland/ngx-distributed-shm - HEAD + 1.0.6 From 033f0ef08e51022d70ffd76b8c7fc6ba18d12190 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Wed, 17 Nov 2021 19:35:14 +0000 Subject: [PATCH 30/31] [maven-release-plugin] prepare for next development iteration --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 1a3a21b..6bd9f9e 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ io.github.grrolland ngx-distributed-shm - 1.0.6 + 1.0.7-SNAPSHOT ngx-distributed-shm This projet is memcached like server based on Hazelcast and Vertx. The goals of the project is to build an easy-to-use distributed memory storage with the nginx shared memory semantic for use with lua nginx plugin. @@ -23,7 +23,7 @@ scm:git:git@github.com:grrolland/ngx-distributed-shm.git scm:git:https://github.com/grrolland/ngx-distributed-shm.git https://github.com/grrolland/ngx-distributed-shm - 1.0.6 + HEAD From 8e605e9a7192c0a122231c2df61d9d03c7ace0bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20Rolland?= Date: Wed, 17 Nov 2021 20:44:19 +0100 Subject: [PATCH 31/31] Update Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 3b8b2fb..d3ff503 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM openjdk:11-jre-slim +FROM eclipse-temurin:11-alpine LABEL maintainer="Grégoire Rolland "