From 1b0e0716b08c1ce0dde2a73f3326c02b8a6891b5 Mon Sep 17 00:00:00 2001 From: Juraj Veverka Date: Sat, 28 Aug 2021 00:40:15 +0200 Subject: [PATCH] creating release v2.5.10 --- README.md | 2 +- docker-compose.yml | 8 +++--- .../01a-standalone-server-config.md | 16 ++++++------ .../iam-service-deployment.yml | 2 +- iam-commons/iam-client-spring/README.md | 4 +-- iam-commons/iam-client-spring/build.gradle | 2 +- iam-commons/iam-client/README.md | 4 +-- iam-commons/iam-client/build.gradle | 2 +- iam-commons/iam-core/build.gradle | 2 +- .../iamservice/core/utils/ModelUtils.java | 2 +- iam-commons/iam-model/build.gradle | 2 +- iam-commons/iam-service-client/README.md | 4 +-- iam-commons/iam-service-client/build.gradle | 2 +- iam-examples/integration-tests/build.gradle | 2 +- iam-examples/performance-testing/build.gradle | 2 +- .../spring-method-security/Dockerfile | 2 +- iam-examples/spring-method-security/README.md | 8 +++--- .../spring-method-security/build.gradle | 2 +- .../spring-method-security/start-service.sh | 2 +- .../spring-resource-server/Dockerfile | 2 +- iam-examples/spring-resource-server/README.md | 8 +++--- .../spring-resource-server/build.gradle | 2 +- .../spring-resource-server/start-service.sh | 2 +- .../spring-webflux-secured/Dockerfile | 2 +- .../spring-webflux-secured/build.gradle | 2 +- .../spring-webflux-secured/start-service.sh | 2 +- iam-persistence/iam-caches-redis/build.gradle | 2 +- .../iam-persistence-file-system/build.gradle | 2 +- .../iam-persistence-mongo/build.gradle | 2 +- iam-service/Dockerfile | 6 ++++- iam-service/README.md | 26 +++++++++---------- iam-service/build.gradle | 2 +- iam-service/iam-service-start.sh | 16 +++++++++--- release/Dockerfile | 6 ++++- release/README-release.md | 10 +++---- release/RELEASE-CHECKLIST.md | 14 +++++----- release/RELEASE-NOTES.md | 8 +++--- release/create-release.sh | 2 +- release/docker-compose.yml | 9 +++---- release/docker-create-image.sh | 2 +- release/version-upgrade.sh | 4 +-- 41 files changed, 109 insertions(+), 92 deletions(-) diff --git a/README.md b/README.md index 5d083e81..4d51e331 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ and [OAuth2](https://tools.ietf.org/html/rfc6749) and [other](https://github.com * Please check [__User's Guide__](docs/IAM-user-manual/README.md) and [__Examples__](iam-examples) for more details. * Check [__Docker Hub releases__](https://hub.docker.com/r/jurajveverka/iam-service). ``` - docker run -d -p 8080:8080 jurajveverka/iam-service:2.5.9-RELEASE + docker run -d -p 8080:8080 jurajveverka/iam-service:2.5.10-RELEASE curl 'http://localhost:8080/services/discovery' curl 'http://localhost:8080/services/oauth2/iam-admins/iam-admins/.well-known/openid-configuration' ``` diff --git a/docker-compose.yml b/docker-compose.yml index 6663e89d..e17a4524 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: iam-service: - image: iam-service:2.5.9-RELEASE + image: iam-service:2.5.10-RELEASE build: context: iam-service dockerfile: Dockerfile @@ -9,7 +9,7 @@ services: #ports: # - "8080:8080" spring-method-security: - image: spring-method-security:2.5.9-RELEASE + image: spring-method-security:2.5.10-RELEASE build: context: iam-examples/spring-method-security dockerfile: Dockerfile @@ -19,7 +19,7 @@ services: depends_on: - iam-service spring-resource-server: - image: spring-resource-server:2.5.9-RELEASE + image: spring-resource-server:2.5.10-RELEASE build: context: iam-examples/spring-resource-server dockerfile: Dockerfile @@ -29,7 +29,7 @@ services: depends_on: - iam-service spring-webflux-secured: - image: spring-webflux-secured:2.5.9-RELEASE + image: spring-webflux-secured:2.5.10-RELEASE build: context: iam-examples/spring-webflux-secured dockerfile: Dockerfile diff --git a/docs/IAM-user-manual/01a-standalone-server-config.md b/docs/IAM-user-manual/01a-standalone-server-config.md index 162164ac..3c7e139b 100644 --- a/docs/IAM-user-manual/01a-standalone-server-config.md +++ b/docs/IAM-user-manual/01a-standalone-server-config.md @@ -13,7 +13,7 @@ ``` * Start __iam-service__ as standalone server. You can skip this step if you would like to use *iam-service* in docker container. ``` - java -Xms32m -Xmx128m -jar iam-service-2.5.9-RELEASE.jar \ + java -Xms32m -Xmx128m -jar iam-service-2.5.10-RELEASE.jar \ --spring.config.location=file:application.yml ``` * Build Docker Image locally and run, in case you prefer downloading image from dockerhub please skip this step. @@ -23,19 +23,19 @@ ``` * Use public docker dockerhub image [jurajveverka/iam-service](https://hub.docker.com/r/jurajveverka/iam-service) ``` - docker run -d --name iam-service-2.5.9-RELEASE \ + docker run -d --name iam-service-2.5.10-RELEASE \ --restart unless-stopped \ -e APP_CONFIG_PATH=/opt/data/application.yml \ -e XMX=128m \ -v '${IAM_DATA_DIR}':/opt/data \ - -p 8080:8080 jurajveverka/iam-service:2.5.9-RELEASE + -p 8080:8080 jurajveverka/iam-service:2.5.10-RELEASE ``` ``IAM_DATA_DIR`` points to directory where customized ``application.yml`` file is located. * Check docker status and logs ``` docker ps -a - docker exec -ti iam-service-2.5.9-RELEASE /bin/sh - docker logs --follow iam-service-2.5.9-RELEASE + docker exec -ti iam-service-2.5.10-RELEASE /bin/sh + docker logs --follow iam-service-2.5.10-RELEASE ``` * Verify Service state, check OpenAPI documentation. ``` @@ -48,9 +48,9 @@ ``` * Stop and cleanup Docker ``` - docker stop iam-service-2.5.9-RELEASE - docker rm iam-service-2.5.9-RELEASE - docker image rm -f iam-service:2.5.9-RELEASE + docker stop iam-service-2.5.10-RELEASE + docker rm iam-service-2.5.10-RELEASE + docker image rm -f iam-service:2.5.10-RELEASE ``` * [next step: Setup Persistence Layer](01b_setup-persitence-layer.md) diff --git a/docs/k8s-deployments/iam-service-deployment.yml b/docs/k8s-deployments/iam-service-deployment.yml index ed5f8973..9054e282 100644 --- a/docs/k8s-deployments/iam-service-deployment.yml +++ b/docs/k8s-deployments/iam-service-deployment.yml @@ -15,7 +15,7 @@ spec: spec: containers: - name: iam-service - image: jurajveverka/iam-service:2.5.9-RELEASE + image: jurajveverka/iam-service:2.5.10-RELEASE ports: - name: http containerPort: 8080 diff --git a/iam-commons/iam-client-spring/README.md b/iam-commons/iam-client-spring/README.md index 5c395042..b99bf553 100644 --- a/iam-commons/iam-client-spring/README.md +++ b/iam-commons/iam-client-spring/README.md @@ -8,12 +8,12 @@ This client library makes JWT verification easier for springboot micro-services one.microproject.iamservice iam-client-spring - 2.5.9-RELEASE + 2.5.10-RELEASE ``` * gradle dependency ``` - implementation 'one.microproject.iamservice:iam-client-spring:2.5.9-RELEASE' + implementation 'one.microproject.iamservice:iam-client-spring:2.5.10-RELEASE' ``` 2. See [this spring-method-security example](../../iam-examples/spring-method-security) * How to configure http security. diff --git a/iam-commons/iam-client-spring/build.gradle b/iam-commons/iam-client-spring/build.gradle index 8ca5f1c4..9770dfee 100644 --- a/iam-commons/iam-client-spring/build.gradle +++ b/iam-commons/iam-client-spring/build.gradle @@ -6,7 +6,7 @@ plugins { group = 'one.microproject.iamservice' archivesBaseName = "iam-client-spring" -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' diff --git a/iam-commons/iam-client/README.md b/iam-commons/iam-client/README.md index b1ea5322..d31e634c 100644 --- a/iam-commons/iam-client/README.md +++ b/iam-commons/iam-client/README.md @@ -8,12 +8,12 @@ This client library makes JWT verification easier for clients and micro-services one.microproject.iamservice iam-client - 2.5.9-RELEASE + 2.5.10-RELEASE ``` * gradle dependency ``` - implementation 'one.microproject.iamservice:iam-client:2.5.9-RELEASE' + implementation 'one.microproject.iamservice:iam-client:2.5.10-RELEASE' ``` 2. Create client instance programmatically. ``` diff --git a/iam-commons/iam-client/build.gradle b/iam-commons/iam-client/build.gradle index e8fc19ac..d0ac2d06 100644 --- a/iam-commons/iam-client/build.gradle +++ b/iam-commons/iam-client/build.gradle @@ -6,7 +6,7 @@ plugins { group = 'one.microproject.iamservice' archivesBaseName = "iam-client" -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' diff --git a/iam-commons/iam-core/build.gradle b/iam-commons/iam-core/build.gradle index e9cd4772..cdb0705f 100644 --- a/iam-commons/iam-core/build.gradle +++ b/iam-commons/iam-core/build.gradle @@ -6,7 +6,7 @@ plugins { group = 'one.microproject.iamservice' archivesBaseName = "iam-core" -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-commons/iam-core/src/main/java/one/microproject/iamservice/core/utils/ModelUtils.java b/iam-commons/iam-core/src/main/java/one/microproject/iamservice/core/utils/ModelUtils.java index 7f8fc61c..aef0e5eb 100644 --- a/iam-commons/iam-core/src/main/java/one/microproject/iamservice/core/utils/ModelUtils.java +++ b/iam-commons/iam-core/src/main/java/one/microproject/iamservice/core/utils/ModelUtils.java @@ -56,7 +56,7 @@ public final class ModelUtils { private static final Logger LOG = LoggerFactory.getLogger(ModelUtils.class); - public static final String MODEL_VERSION = "2.5.9-RELEASE"; + public static final String MODEL_VERSION = "2.5.10-RELEASE"; public static final Model DEFAULT_MODEL = new ModelImpl(ModelId.from("default-model-001"), "Default Model"); public static final String IAM_ADMINS_NAME = "iam-admins"; public static final OrganizationId IAM_ADMINS_ORG = OrganizationId.from(IAM_ADMINS_NAME); diff --git a/iam-commons/iam-model/build.gradle b/iam-commons/iam-model/build.gradle index e8f1c930..956964b8 100644 --- a/iam-commons/iam-model/build.gradle +++ b/iam-commons/iam-model/build.gradle @@ -6,7 +6,7 @@ plugins { group = 'one.microproject.iamservice' archivesBaseName = "iam-model" -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' diff --git a/iam-commons/iam-service-client/README.md b/iam-commons/iam-service-client/README.md index 06b9d280..ab7fac66 100644 --- a/iam-commons/iam-service-client/README.md +++ b/iam-commons/iam-service-client/README.md @@ -8,12 +8,12 @@ Java client library providing APIs for all iam-service management functions. one.microproject.iamservice iam-service-client - 2.5.9-RELEASE + 2.5.10-RELEASE ``` * gradle dependency ``` - implementation 'one.microproject.iamservice:iam-service-client:2.5.9-RELEASE' + implementation 'one.microproject.iamservice:iam-service-client:2.5.10-RELEASE' ``` 2. Create client instance programmatically. ``` diff --git a/iam-commons/iam-service-client/build.gradle b/iam-commons/iam-service-client/build.gradle index 70c82d87..afac5c34 100644 --- a/iam-commons/iam-service-client/build.gradle +++ b/iam-commons/iam-service-client/build.gradle @@ -6,7 +6,7 @@ plugins { group = 'one.microproject.iamservice' archivesBaseName = "iam-service-client" -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' diff --git a/iam-examples/integration-tests/build.gradle b/iam-examples/integration-tests/build.gradle index fc343c2f..dd15b21a 100644 --- a/iam-examples/integration-tests/build.gradle +++ b/iam-examples/integration-tests/build.gradle @@ -3,7 +3,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-examples/performance-testing/build.gradle b/iam-examples/performance-testing/build.gradle index fd055030..60aba950 100644 --- a/iam-examples/performance-testing/build.gradle +++ b/iam-examples/performance-testing/build.gradle @@ -3,7 +3,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-examples/spring-method-security/Dockerfile b/iam-examples/spring-method-security/Dockerfile index a794205f..e670ddb9 100644 --- a/iam-examples/spring-method-security/Dockerfile +++ b/iam-examples/spring-method-security/Dockerfile @@ -1,5 +1,5 @@ FROM adoptopenjdk/openjdk11:alpine-jre -COPY build/libs/spring-method-security-2.5.9-RELEASE.jar /spring-method-security-2.5.9-RELEASE.jar +COPY build/libs/spring-method-security-2.5.10-RELEASE.jar /spring-method-security-2.5.10-RELEASE.jar COPY start-service.sh /start-service.sh RUN chmod +x /start-service.sh RUN apk --no-cache add curl diff --git a/iam-examples/spring-method-security/README.md b/iam-examples/spring-method-security/README.md index 2485ae00..ade3c167 100644 --- a/iam-examples/spring-method-security/README.md +++ b/iam-examples/spring-method-security/README.md @@ -36,14 +36,14 @@ JWT tokens issued by __iam-service__ are used to get access to resources hosted ## Build and Run ``` gradle clean build -java -jar build/libs/spring-method-security-2.5.9-RELEASE.jar +java -jar build/libs/spring-method-security-2.5.10-RELEASE.jar ``` ### Build Docker image ``` -docker build . -t spring-method-security:2.5.9-RELEASE +docker build . -t spring-method-security:2.5.10-RELEASE docker image list -docker save --output="build/spring-method-security:2.5.9-RELEASE.tar" spring-method-security:2.5.9-RELEASE +docker save --output="build/spring-method-security:2.5.10-RELEASE.tar" spring-method-security:2.5.10-RELEASE docker image rm -f -docker run -p 8082:8082 spring-method-security:2.5.9-RELEASE +docker run -p 8082:8082 spring-method-security:2.5.10-RELEASE ``` diff --git a/iam-examples/spring-method-security/build.gradle b/iam-examples/spring-method-security/build.gradle index 1c31645b..f89769a6 100644 --- a/iam-examples/spring-method-security/build.gradle +++ b/iam-examples/spring-method-security/build.gradle @@ -5,7 +5,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-examples/spring-method-security/start-service.sh b/iam-examples/spring-method-security/start-service.sh index b8c4107c..3ec928e1 100755 --- a/iam-examples/spring-method-security/start-service.sh +++ b/iam-examples/spring-method-security/start-service.sh @@ -7,4 +7,4 @@ until $(curl --silent --output /dev/null -f http://127.0.0.1:8080/services/oauth sleep 1 done -java -Xms32m -Xmx128M -jar /spring-method-security-2.5.9-RELEASE.jar +java -Xms32m -Xmx128M -jar /spring-method-security-2.5.10-RELEASE.jar diff --git a/iam-examples/spring-resource-server/Dockerfile b/iam-examples/spring-resource-server/Dockerfile index 202e0617..7b748c7c 100644 --- a/iam-examples/spring-resource-server/Dockerfile +++ b/iam-examples/spring-resource-server/Dockerfile @@ -1,5 +1,5 @@ FROM adoptopenjdk/openjdk11:alpine-jre -COPY build/libs/spring-resource-server-2.5.9-RELEASE.jar /spring-resource-server-2.5.9-RELEASE.jar +COPY build/libs/spring-resource-server-2.5.10-RELEASE.jar /spring-resource-server-2.5.10-RELEASE.jar COPY start-service.sh /start-service.sh RUN chmod +x /start-service.sh RUN apk --no-cache add curl diff --git a/iam-examples/spring-resource-server/README.md b/iam-examples/spring-resource-server/README.md index 5e6d747a..2644710f 100644 --- a/iam-examples/spring-resource-server/README.md +++ b/iam-examples/spring-resource-server/README.md @@ -12,15 +12,15 @@ JWT tokens issues by __iam-service__ are used to get access to resources hosted ## Build and Run ``` gradle clean build -java -jar build/libs/spring-resource-server-2.5.9-RELEASE.jar +java -jar build/libs/spring-resource-server-2.5.10-RELEASE.jar ``` ### Build Docker image ``` -docker build . -t spring-resource-server:2.5.9-RELEASE +docker build . -t spring-resource-server:2.5.10-RELEASE docker image list -docker save --output="build/spring-resource-server:2.5.9-RELEASE.tar" spring-resource-server:2.5.9-RELEASE +docker save --output="build/spring-resource-server:2.5.10-RELEASE.tar" spring-resource-server:2.5.10-RELEASE docker image rm -f -docker run -p 8081:8081 spring-resource-server:2.5.9-RELEASE +docker run -p 8081:8081 spring-resource-server:2.5.10-RELEASE ``` ### Reference Documentation diff --git a/iam-examples/spring-resource-server/build.gradle b/iam-examples/spring-resource-server/build.gradle index 9c98163c..768e3504 100644 --- a/iam-examples/spring-resource-server/build.gradle +++ b/iam-examples/spring-resource-server/build.gradle @@ -5,7 +5,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-examples/spring-resource-server/start-service.sh b/iam-examples/spring-resource-server/start-service.sh index 23e1bbbc..9239bc2e 100755 --- a/iam-examples/spring-resource-server/start-service.sh +++ b/iam-examples/spring-resource-server/start-service.sh @@ -7,4 +7,4 @@ until $(curl --silent --output /dev/null -f http://127.0.0.1:8080/services/oauth sleep 1 done -java -Xms32m -Xmx128M -jar /spring-resource-server-2.5.9-RELEASE.jar +java -Xms32m -Xmx128M -jar /spring-resource-server-2.5.10-RELEASE.jar diff --git a/iam-examples/spring-webflux-secured/Dockerfile b/iam-examples/spring-webflux-secured/Dockerfile index a69b176c..05f3b9f6 100644 --- a/iam-examples/spring-webflux-secured/Dockerfile +++ b/iam-examples/spring-webflux-secured/Dockerfile @@ -1,5 +1,5 @@ FROM adoptopenjdk/openjdk11:alpine-jre -COPY build/libs/spring-webflux-secured-2.5.9-RELEASE.jar /spring-webflux-secured-2.5.9-RELEASE.jar +COPY build/libs/spring-webflux-secured-2.5.10-RELEASE.jar /spring-webflux-secured-2.5.10-RELEASE.jar COPY start-service.sh /start-service.sh RUN chmod +x /start-service.sh RUN apk --no-cache add curl diff --git a/iam-examples/spring-webflux-secured/build.gradle b/iam-examples/spring-webflux-secured/build.gradle index 3fb5ca8b..b5dbee96 100644 --- a/iam-examples/spring-webflux-secured/build.gradle +++ b/iam-examples/spring-webflux-secured/build.gradle @@ -5,7 +5,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-examples/spring-webflux-secured/start-service.sh b/iam-examples/spring-webflux-secured/start-service.sh index 9c500ddb..d502977e 100755 --- a/iam-examples/spring-webflux-secured/start-service.sh +++ b/iam-examples/spring-webflux-secured/start-service.sh @@ -7,4 +7,4 @@ until $(curl --silent --output /dev/null -f http://127.0.0.1:8080/services/oauth sleep 1 done -java -Xms32m -Xmx128M -jar /spring-webflux-secured-2.5.9-RELEASE.jar +java -Xms32m -Xmx128M -jar /spring-webflux-secured-2.5.10-RELEASE.jar diff --git a/iam-persistence/iam-caches-redis/build.gradle b/iam-persistence/iam-caches-redis/build.gradle index 25e7d620..2afb099f 100644 --- a/iam-persistence/iam-caches-redis/build.gradle +++ b/iam-persistence/iam-caches-redis/build.gradle @@ -3,7 +3,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-persistence/iam-persistence-file-system/build.gradle b/iam-persistence/iam-persistence-file-system/build.gradle index 25e7d620..2afb099f 100644 --- a/iam-persistence/iam-persistence-file-system/build.gradle +++ b/iam-persistence/iam-persistence-file-system/build.gradle @@ -3,7 +3,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-persistence/iam-persistence-mongo/build.gradle b/iam-persistence/iam-persistence-mongo/build.gradle index 25e7d620..2afb099f 100644 --- a/iam-persistence/iam-persistence-mongo/build.gradle +++ b/iam-persistence/iam-persistence-mongo/build.gradle @@ -3,7 +3,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-service/Dockerfile b/iam-service/Dockerfile index 9b25e42d..e3e23fa1 100644 --- a/iam-service/Dockerfile +++ b/iam-service/Dockerfile @@ -1,10 +1,14 @@ ARG ARCH="amd64" FROM ${ARCH}/adoptopenjdk:11-jre MAINTAINER Juraj Veverka -COPY build/libs/iam-service-2.5.9-RELEASE.jar /iam-service-2.5.9-RELEASE.jar +COPY build/libs/iam-service-2.5.10-RELEASE.jar /iam-service-2.5.10-RELEASE.jar COPY iam-service-start.sh /iam-service-start.sh COPY src/main/resources/application.yml /application.yml COPY src/main/resources/application-cloud.yml /application-cloud.yml + +RUN apt update +RUN apt install -y netcat + RUN chmod +x /iam-service-start.sh RUN mkdir -p /opt/data diff --git a/iam-service/README.md b/iam-service/README.md index 61239f68..dee71966 100644 --- a/iam-service/README.md +++ b/iam-service/README.md @@ -4,40 +4,40 @@ IAM as microservice. Standalone OAuth2/OpenID-connect authorization and authenti ## Build and Run ``` gradle clean build -java -jar build/libs/iam-service-2.5.9-RELEASE.jar +java -jar build/libs/iam-service-2.5.10-RELEASE.jar # run using customized configutation -java -jar build/libs/iam-service-2.5.9-RELEASE.jar --spring.config.location=file:/path/to/application.yml +java -jar build/libs/iam-service-2.5.10-RELEASE.jar --spring.config.location=file:/path/to/application.yml ``` ### Build Docker Image ``` -docker build -t iam-service:2.5.9-RELEASE . +docker build -t iam-service:2.5.10-RELEASE . docker image list -docker save --output="build/iam-service:2.5.9-RELEASE.tar" iam-service:2.5.9-RELEASE +docker save --output="build/iam-service:2.5.10-RELEASE.tar" iam-service:2.5.10-RELEASE ``` ### Run Docker Container ``` -docker run -d --name iam-service-2.5.9-RELEASE \ +docker run -d --name iam-service-2.5.10-RELEASE \ -e SERVER_PORT=8080 \ -e ADMIN_PASSWORD=secret \ -e ADMIN_SECRET=top-secret \ -e XMX=128m \ - -p 8080:8080 iam-service:2.5.9-RELEASE + -p 8080:8080 iam-service:2.5.10-RELEASE -docker run -d --name iam-service-2.5.9-RELEASE \ +docker run -d --name iam-service-2.5.10-RELEASE \ -e APP_CONFIG_PATH=/opt/data/application.yml \ -e XMX=128m \ -v /custom/data/dir:/opt/data \ - -p 8080:8080 iam-service:2.5.9-RELEASE + -p 8080:8080 iam-service:2.5.10-RELEASE -docker attach iam-service-2.5.9-RELEASE -docker logs iam-service-2.5.9-RELEASE +docker attach iam-service-2.5.10-RELEASE +docker logs iam-service-2.5.10-RELEASE ``` ### Docker Cleanup ``` -docker stop iam-service-2.5.9-RELEASE -docker rm iam-service-2.5.9-RELEASE -docker image rm -f iam-service:2.5.9-RELEASE +docker stop iam-service-2.5.10-RELEASE +docker rm iam-service-2.5.10-RELEASE +docker image rm -f iam-service:2.5.10-RELEASE ``` diff --git a/iam-service/build.gradle b/iam-service/build.gradle index 974ac790..59891f54 100644 --- a/iam-service/build.gradle +++ b/iam-service/build.gradle @@ -5,7 +5,7 @@ plugins { } group = 'one.microproject.iamservice' -version = '2.5.9-RELEASE' +version = '2.5.10-RELEASE' sourceCompatibility = '11' repositories { diff --git a/iam-service/iam-service-start.sh b/iam-service/iam-service-start.sh index d970b3cc..3e7f3144 100644 --- a/iam-service/iam-service-start.sh +++ b/iam-service/iam-service-start.sh @@ -1,13 +1,23 @@ -#!/bin/sh +#!/bin/bash echo "starting iam-service as ${USER} ..." echo "APP_CONFIG_PATH=${APP_CONFIG_PATH}" +if [ "${IAM_PERSISTENCE_TYPE}" == "mongo-db" ]; then + echo "Waiting for MongoDB to launch on ${IAM_MONGO_PERSISTENCE_HOST}:${IAM_MONGO_PERSISTENCE_PORT} ..." + while ! nc -z ${IAM_MONGO_PERSISTENCE_HOST} ${IAM_MONGO_PERSISTENCE_PORT}; do + sleep 0.5 # wait for 0.5s before check again + echo -n "." + done + echo "" + echo "MongoDB launched !" +fi + if [ "${APP_CONFIG_PATH}" = "false" ]; then echo "using default configuration" echo "SERVER_PORT=${SERVER_PORT}" echo "XMX=${XMX}" - java -Xms32m -Xmx${XMX} ${JVM_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /iam-service-2.5.9-RELEASE.jar \ + java -Xms32m -Xmx${XMX} ${JVM_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /iam-service-2.5.10-RELEASE.jar \ --server.port=${SERVER_PORT} \ --iam-service.data-model.default-admin-password=${ADMIN_PASSWORD} \ --iam-service.data-model.default-admin-secret=${ADMIN_SECRET} @@ -15,6 +25,6 @@ else echo "using custom configuration" echo "APP_CONFIG_PATH=${APP_CONFIG_PATH}" echo "XMX=${XMX}" - java -Xms32m -Xmx${XMX} ${JVM_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /iam-service-2.5.9-RELEASE.jar \ + java -Xms32m -Xmx${XMX} ${JVM_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /iam-service-2.5.10-RELEASE.jar \ --spring.config.location=file:${APP_CONFIG_PATH} fi diff --git a/release/Dockerfile b/release/Dockerfile index 2a0cc8f6..cc394aeb 100644 --- a/release/Dockerfile +++ b/release/Dockerfile @@ -1,10 +1,14 @@ ARG ARCH="amd64" FROM ${ARCH}/adoptopenjdk:11-jre MAINTAINER Juraj Veverka -COPY iam-service-2.5.9-RELEASE.jar /iam-service-2.5.9-RELEASE.jar +COPY iam-service-2.5.10-RELEASE.jar /iam-service-2.5.10-RELEASE.jar COPY iam-service-start.sh /iam-service-start.sh COPY application-filesystem.yml /application.yml COPY application-cloud.yml /application-cloud.yml + +RUN apt update +RUN apt install -y netcat + RUN chmod +x /iam-service-start.sh RUN mkdir -p /opt/data diff --git a/release/README-release.md b/release/README-release.md index 58e082a9..acfa816a 100644 --- a/release/README-release.md +++ b/release/README-release.md @@ -1,6 +1,6 @@ -# IAM Service 2.5.9-RELEASE +# IAM Service 2.5.10-RELEASE Really simple standalone OAuth2/OIDC -[*Identity Access Management* (IAM) service](https://github.com/jveverka/iam-service/tree/2.5.9-RELEASE), +[*Identity Access Management* (IAM) service](https://github.com/jveverka/iam-service/tree/2.5.10-RELEASE), authentication and authorization server. ## Quick startup guide @@ -12,12 +12,12 @@ authentication and authorization server. ``` * Start __iam-service__ (Requires JVM installed). ``` - java -Xms32m -Xmx128m -jar iam-service-2.5.9-RELEASE.jar --spring.config.location=file:application.yml + java -Xms32m -Xmx128m -jar iam-service-2.5.10-RELEASE.jar --spring.config.location=file:application.yml ``` * Start __iam-service__ as docker container. ``` - docker run -d --name iam-service-2.5.9-RELEASE \ - -p 8080:8080 jurajveverka/iam-service:2.5.9-RELEASE + docker run -d --name iam-service-2.5.10-RELEASE \ + -p 8080:8080 jurajveverka/iam-service:2.5.10-RELEASE ``` ### Next Steps diff --git a/release/RELEASE-CHECKLIST.md b/release/RELEASE-CHECKLIST.md index 9ef5ee4a..34c0e242 100644 --- a/release/RELEASE-CHECKLIST.md +++ b/release/RELEASE-CHECKLIST.md @@ -3,7 +3,7 @@ * Make sure all changes are committed and pushed. * Make sure the documentation is up-to date. * Make sure all tests are passing. -* ``NEW_RELEASE_VERSION=2.5.9-RELEASE`` +* ``NEW_RELEASE_VERSION=2.5.10-RELEASE`` * Upgrade component version in script below. ``` ./version-upgrade.sh @@ -44,8 +44,8 @@ ``` * Test created docker image. ``` - docker logs --follow iam-service-2.5.9-RELEASE - docker exec -it iam-service-2.5.9-RELEASE /bin/sh + docker logs --follow iam-service-2.5.10-RELEASE + docker exec -it iam-service-2.5.10-RELEASE /bin/sh ``` * Publish docker image to dockerhub. ``` @@ -54,9 +54,9 @@ * Publish docker manifest ``` docker manifest create \ - jurajveverka/iam-service:2.5.9-RELEASE \ - --amend jurajveverka/iam-service:2.5.9-RELEASE-amd64 \ - --amend jurajveverka/iam-service:2.5.9-RELEASE-arm64v8 + jurajveverka/iam-service:2.5.10-RELEASE \ + --amend jurajveverka/iam-service:2.5.10-RELEASE-amd64 \ + --amend jurajveverka/iam-service:2.5.10-RELEASE-arm64v8 - docker manifest push jurajveverka/iam-service:2.5.9-RELEASE + docker manifest push jurajveverka/iam-service:2.5.10-RELEASE ``` \ No newline at end of file diff --git a/release/RELEASE-NOTES.md b/release/RELEASE-NOTES.md index 2d001716..360751fd 100644 --- a/release/RELEASE-NOTES.md +++ b/release/RELEASE-NOTES.md @@ -1,12 +1,12 @@ # IAM service - OAuth2 server -Simple standalone OAuth2/OIDC [*Identity Access Management* (IAM) service](https://github.com/jveverka/iam-service/tree/v2.5.9-RELEASE), authentication and authorization server. +Simple standalone OAuth2/OIDC [*Identity Access Management* (IAM) service](https://github.com/jveverka/iam-service/tree/v2.5.10-RELEASE), authentication and authorization server. ## Quick startup guide 1. Start OAuth2 server in default configuration [dockerhub project](https://hub.docker.com/r/jurajveverka/iam-service). ``` - docker run --name iam-service-2.5.9-RELEASE \ + docker run --name iam-service-2.5.10-RELEASE \ --restart unless-stopped \ - -d -p 8080:8080 jurajveverka/iam-service:2.5.9-RELEASE + -d -p 8080:8080 jurajveverka/iam-service:2.5.10-RELEASE curl 'http://localhost:8080/services/discovery' | json_pp curl 'http://localhost:8080/services/oauth2/iam-admins/iam-admins/.well-known/openid-configuration' | json_pp ``` @@ -15,6 +15,6 @@ Simple standalone OAuth2/OIDC [*Identity Access Management* (IAM) service](http http://localhost:8080/swagger-ui/index.html?url=/v3/api-docs#/ ``` ## Advanced configurations -1. Download release file ``iam-service-release-2.5.9-RELEASE.zip`` +1. Download release file ``iam-service-release-2.5.10-RELEASE.zip`` 2. Please check [__User's Guide__](https://github.com/jveverka/iam-service/tree/2.x.x/docs/IAM-user-manual) and [__Examples__](https://github.com/jveverka/iam-service/tree/2.x.x/iam-examples) for more details. diff --git a/release/create-release.sh b/release/create-release.sh index 095e2a43..2bdb06fb 100755 --- a/release/create-release.sh +++ b/release/create-release.sh @@ -7,7 +7,7 @@ cd .. ./run-full-test-suite.sh eval_result_exit $? "Build ${GREEN}OK${NOCOLOR}" "${RED}ERROR: build failed !${NOCOLOR}" -VERSION=2.5.9-RELEASE +VERSION=2.5.10-RELEASE RELEASE_DIR=build/iam-service-${VERSION} cd ${HOME_DIR} diff --git a/release/docker-compose.yml b/release/docker-compose.yml index 1b96015c..340224f9 100644 --- a/release/docker-compose.yml +++ b/release/docker-compose.yml @@ -2,18 +2,17 @@ version: '3.7' services: mongodb_container: - image: mongo:4.2.9 - network_mode: host + image: mongo:4.4.4-bionic environment: - MONGO_INITDB_ROOT_USERNAME: iam-admin + MONGO_INITDB_DATABASE: admin + MONGO_INITDB_ROOT_USERNAME: admin MONGO_INITDB_ROOT_PASSWORD: secret ports: - 27017:27017 volumes: - mongodb_data_container:/data/db redis_container: - image: redis:6.0.9-alpine - network_mode: host + image: redis:6.2.5-alpine ports: - 6379:6379 diff --git a/release/docker-create-image.sh b/release/docker-create-image.sh index b2ba3f8c..555a84dd 100755 --- a/release/docker-create-image.sh +++ b/release/docker-create-image.sh @@ -4,7 +4,7 @@ NOCOLOR='\033[0m' RED='\033[0;31m' GREEN='\033[0;32m' -VERSION=2.5.9-RELEASE +VERSION=2.5.10-RELEASE DOCKER_IMAGE=jurajveverka/iam-service DOCKER_NAME=iam-service diff --git a/release/version-upgrade.sh b/release/version-upgrade.sh index f7593fe1..bf63d44c 100755 --- a/release/version-upgrade.sh +++ b/release/version-upgrade.sh @@ -1,7 +1,7 @@ #!/bin/bash -OLD_VERSION=2.5.8-RELEASE -NEW_VERSION=2.5.9-RELEASE +OLD_VERSION=2.5.9-RELEASE +NEW_VERSION=2.5.10-RELEASE cd ..