├── gateway ├── README.asciidoc ├── Dockerfile ├── src │ ├── test │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── gateway │ │ │ └── ApplicationTest.java │ └── main │ │ ├── resources │ │ └── application.yml │ │ └── java │ │ └── com │ │ └── chumbok │ │ └── gateway │ │ └── Application.java └── pom.xml ├── service-registry ├── README.asciidoc ├── Dockerfile ├── src │ ├── main │ │ ├── resources │ │ │ └── application.yml │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── serviceregistry │ │ │ └── Application.java │ └── test │ │ └── java │ │ └── com │ │ └── chumbok │ │ └── serviceregistry │ │ └── ApplicationTest.java └── pom.xml ├── .codecov.yml ├── k8s-deployment ├── dev-keys │ ├── private_key.der │ ├── public_key.der │ └── private_key.pem ├── common │ ├── local-storage.yml │ ├── persistent-volume-claim.yml │ ├── persistent-volume.yml │ └── gateway-ingress.yml ├── gateway │ ├── service.yml │ └── deployment.yml ├── contact-service │ ├── service.yml │ └── deployment.yml ├── service-registry │ ├── service.yml │ └── deployment.yml ├── mysql │ ├── secret.yml │ ├── persistent-volume-claim.yml │ ├── service.yml │ ├── persistent-volume.yml │ └── deployment.yml └── k8s-deployment.asciidoc ├── .whitesource ├── uaa ├── src │ ├── main │ │ ├── resources │ │ │ ├── dev-keys │ │ │ │ ├── private_key.der │ │ │ │ ├── public_key.der │ │ │ │ └── private_key.pem │ │ │ └── db │ │ │ │ └── changelog │ │ │ │ ├── init-data │ │ │ │ ├── create-chumbok-org.yml │ │ │ │ ├── create-chumbok-tenant.yml │ │ │ │ ├── create-chumbok-super-admin-user-roles.yml │ │ │ │ └── create-chumbok-super-admin-user.yml │ │ │ │ ├── db.changelog-master.yml │ │ │ │ └── create-table │ │ │ │ ├── create-table-org.yml │ │ │ │ ├── create-table-tenant.yml │ │ │ │ ├── create-table-user-roles.yml │ │ │ │ └── create-table-role.yml │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── uaa │ │ │ ├── conf │ │ │ ├── EurekaClientConfig.java │ │ │ ├── MappingConfig.java │ │ │ ├── ExceptionHandlerAdvice.java │ │ │ ├── CorsConfig.java │ │ │ ├── AppConfig.java │ │ │ └── JpaAuditConfig.java │ │ │ ├── dto │ │ │ ├── response │ │ │ │ ├── OrgResponse.java │ │ │ │ ├── TenantResponse.java │ │ │ │ ├── IdentityResponse.java │ │ │ │ ├── OrgsResponse.java │ │ │ │ ├── UsersResponse.java │ │ │ │ ├── TenantsResponse.java │ │ │ │ ├── LoggedInUserInfoResponse.java │ │ │ │ └── UserResponse.java │ │ │ └── request │ │ │ │ ├── OrgCreateUpdateRequest.java │ │ │ │ ├── TenantCreateUpdateRequest.java │ │ │ │ ├── UserCreateRequest.java │ │ │ │ ├── PublicUserCreateRequest.java │ │ │ │ ├── UserUpdateRequest.java │ │ │ │ └── LoginRequest.java │ │ │ ├── security │ │ │ ├── DefaultSecurityRoleConstants.java │ │ │ ├── AuthJwtProperties.java │ │ │ ├── ChumbokSecurityProperties.java │ │ │ ├── DefaultAuthenticationHandler.java │ │ │ └── AuthenticationHandler.java │ │ │ ├── domain │ │ │ ├── repository │ │ │ │ ├── OrgRepository.java │ │ │ │ ├── RoleRepository.java │ │ │ │ ├── TenantRepository.java │ │ │ │ └── UserRepository.java │ │ │ └── model │ │ │ │ ├── Org.java │ │ │ │ ├── Tenant.java │ │ │ │ ├── Role.java │ │ │ │ └── BaseEntity.java │ │ │ ├── controller │ │ │ ├── PingController.java │ │ │ ├── LoggedInUserInfoController.java │ │ │ ├── VersionController.java │ │ │ ├── PublicUserController.java │ │ │ ├── LogoutController.java │ │ │ └── RefreshTokenController.java │ │ │ ├── Application.java │ │ │ ├── util │ │ │ └── JwtUtil.java │ │ │ └── service │ │ │ └── UserPreferenceService.java │ ├── integration-test │ │ ├── resources │ │ │ └── dev-keys │ │ │ │ ├── private_key.der │ │ │ │ ├── public_key.der │ │ │ │ └── private_key.pem │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── uaa │ │ │ ├── ContextLoadIT.java │ │ │ ├── controller │ │ │ ├── PingControllerIT.java │ │ │ └── VersionControllerIT.java │ │ │ ├── IntegrationTestBase.java │ │ │ ├── conf │ │ │ └── ExceptionHandlingAdviceIT.java │ │ │ └── domain │ │ │ └── repository │ │ │ └── DataJpaAuditIT.java │ └── test │ │ └── java │ │ └── com │ │ └── chumbok │ │ └── uaa │ │ └── conf │ │ └── MappingConfigTest.java ├── Dockerfile └── README.asciidoc ├── blog-service ├── src │ ├── main │ │ ├── resources │ │ │ ├── dev-keys │ │ │ │ └── public_key.der │ │ │ └── db │ │ │ │ └── changelog │ │ │ │ └── db.changelog-master.yml │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── blog │ │ │ ├── config │ │ │ ├── EurekaClientConfig.java │ │ │ ├── AppConfig.java │ │ │ ├── ExceptionHandlerAdvice.java │ │ │ ├── MultiTenantJpaConfig.java │ │ │ ├── JpaAuditConfig.java │ │ │ └── ModelMappingConfig.java │ │ │ ├── dto │ │ │ ├── response │ │ │ │ ├── IdentityResponse.java │ │ │ │ ├── TagsResponse.java │ │ │ │ ├── PostsResponse.java │ │ │ │ ├── SitesResponse.java │ │ │ │ ├── CategoriesResponse.java │ │ │ │ ├── TagResponse.java │ │ │ │ ├── CategoryResponse.java │ │ │ │ ├── SiteResponse.java │ │ │ │ └── PostResponse.java │ │ │ └── request │ │ │ │ ├── TagCreateUpdateRequest.java │ │ │ │ ├── CategoryCreateUpdateRequest.java │ │ │ │ ├── PostCreateUpdateRequest.java │ │ │ │ └── SiteCreateUpdateRequest.java │ │ │ ├── domain │ │ │ ├── repository │ │ │ │ ├── DraftPostRepository.java │ │ │ │ ├── PublishedPostRepository.java │ │ │ │ ├── SiteRepository.java │ │ │ │ ├── TagRepository.java │ │ │ │ └── CategoryRepository.java │ │ │ └── model │ │ │ │ ├── PublishedPost.java │ │ │ │ ├── DraftPost.java │ │ │ │ ├── Post.java │ │ │ │ ├── Site.java │ │ │ │ ├── Tag.java │ │ │ │ ├── Category.java │ │ │ │ └── BaseEntity.java │ │ │ ├── service │ │ │ ├── SiteService.java │ │ │ ├── TagService.java │ │ │ ├── PostService.java │ │ │ └── CategoryService.java │ │ │ ├── controller │ │ │ ├── PingController.java │ │ │ └── SiteController.java │ │ │ └── Application.java │ └── integration-test │ │ └── java │ │ └── com │ │ └── chumbok │ │ └── blog │ │ └── ContextLoadIT.java ├── Dockerfile └── README.asciidoc ├── contact-service ├── src │ ├── main │ │ ├── resources │ │ │ ├── dev-keys │ │ │ │ └── public_key.der │ │ │ └── db │ │ │ │ └── changelog │ │ │ │ └── db.changelog-master.yml │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── contact │ │ │ ├── config │ │ │ ├── EurekaClientConfig.java │ │ │ ├── AppConfig.java │ │ │ ├── ExceptionHandlerAdvice.java │ │ │ ├── MultiTenantJpaConfig.java │ │ │ └── JpaAuditConfig.java │ │ │ ├── dto │ │ │ ├── response │ │ │ │ ├── IdentityResponse.java │ │ │ │ ├── ContactsResponse.java │ │ │ │ └── ContactResponse.java │ │ │ └── request │ │ │ │ └── ContactCreateUpdateRequest.java │ │ │ ├── domain │ │ │ ├── repository │ │ │ │ └── ContactRepository.java │ │ │ └── model │ │ │ │ ├── Contact.java │ │ │ │ └── BaseEntity.java │ │ │ ├── controller │ │ │ └── PingController.java │ │ │ └── Application.java │ └── integration-test │ │ └── java │ │ └── com │ │ └── chumbok │ │ └── contact │ │ └── ContextLoadIT.java ├── Dockerfile └── README.asciidoc ├── .travis.yml ├── file-storage-service ├── src │ ├── main │ │ ├── resources │ │ │ ├── dev-keys │ │ │ │ └── public_key.der │ │ │ └── db │ │ │ │ └── changelog │ │ │ │ └── db.changelog-master.yml │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── filestorage │ │ │ ├── config │ │ │ ├── EurekaClientConfig.java │ │ │ ├── ExceptionHandlerAdvice.java │ │ │ ├── AppConfig.java │ │ │ ├── MultiTenantJpaConfig.java │ │ │ ├── JpaAuditConfig.java │ │ │ └── StorageServiceConfig.java │ │ │ ├── dto │ │ │ ├── response │ │ │ │ ├── IdentityResponse.java │ │ │ │ ├── FilesResponse.java │ │ │ │ └── FileResponse.java │ │ │ └── request │ │ │ │ └── StoreFileCreateRequest.java │ │ │ ├── exception │ │ │ └── IORuntimeException.java │ │ │ ├── service │ │ │ └── StorageService.java │ │ │ ├── domain │ │ │ ├── repository │ │ │ │ └── FileRepository.java │ │ │ └── model │ │ │ │ ├── File.java │ │ │ │ └── BaseEntity.java │ │ │ ├── controller │ │ │ └── PingController.java │ │ │ └── Application.java │ └── integration-test │ │ └── java │ │ └── com.chumbok.filestorage │ │ └── ContextLoadIT.java ├── Dockerfile └── README.asciidoc ├── notification-service ├── src │ ├── main │ │ ├── resources │ │ │ ├── dev-keys │ │ │ │ └── public_key.der │ │ │ └── db │ │ │ │ └── changelog │ │ │ │ └── db.changelog-master.yml │ │ └── java │ │ │ └── com │ │ │ └── chumbok │ │ │ └── notification │ │ │ ├── domain │ │ │ ├── model │ │ │ │ ├── NotificationType.java │ │ │ │ ├── BaseEntity.java │ │ │ │ └── Notification.java │ │ │ └── repository │ │ │ │ └── NotificationRepository.java │ │ │ ├── config │ │ │ ├── EurekaClientConfig.java │ │ │ ├── AppConfig.java │ │ │ ├── ExceptionHandlerAdvice.java │ │ │ ├── MultiTenantJpaConfig.java │ │ │ └── JpaAuditConfig.java │ │ │ ├── dto │ │ │ ├── response │ │ │ │ ├── IdentityResponse.java │ │ │ │ ├── NotificationsResponse.java │ │ │ │ └── NotificationResponse.java │ │ │ └── request │ │ │ │ └── NotificationCreateRequest.java │ │ │ ├── controller │ │ │ ├── PingController.java │ │ │ └── NotificationController.java │ │ │ └── Application.java │ └── integration-test │ │ └── java │ │ └── com │ │ └── chumbok │ │ └── notification │ │ ├── ContextLoadIT.java │ │ ├── IntegrationTestBase.java │ │ └── domain │ │ └── repository │ │ └── NotificationRepositoryIT.java └── Dockerfile ├── documentation ├── versioning-strategy.asciidoc ├── how-to-run-docker.asciidoc ├── how-to-run-in-ide.asciidoc ├── how-to-run-local-machine.asciidoc ├── push-docker-image-dockerhub.asciidoc └── how-to-run-tests.asciidoc ├── appveyor.yml ├── .gitignore ├── Jenkinsfile ├── LICENSE └── init.sh /gateway/README.asciidoc: -------------------------------------------------------------------------------- 1 | # Gateway / Edge Service 2 | 3 | 4 | -------------------------------------------------------------------------------- /service-registry/README.asciidoc: -------------------------------------------------------------------------------- 1 | # Service Registry 2 | 3 | 4 | -------------------------------------------------------------------------------- /.codecov.yml: -------------------------------------------------------------------------------- 1 | codecov: 2 | branch: master 3 | 4 | coverage: 5 | precision: 2 6 | round: down 7 | range: "85...100" -------------------------------------------------------------------------------- /k8s-deployment/dev-keys/private_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/k8s-deployment/dev-keys/private_key.der -------------------------------------------------------------------------------- /k8s-deployment/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/k8s-deployment/dev-keys/public_key.der -------------------------------------------------------------------------------- /.whitesource: -------------------------------------------------------------------------------- 1 | { 2 | "checkRunSettings": { 3 | "vulnerableCheckRunConclusionLevel": "failure" 4 | }, 5 | "issueSettings": { 6 | "minSeverityLevel": "LOW" 7 | } 8 | } -------------------------------------------------------------------------------- /uaa/src/main/resources/dev-keys/private_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/uaa/src/main/resources/dev-keys/private_key.der -------------------------------------------------------------------------------- /uaa/src/main/resources/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/uaa/src/main/resources/dev-keys/public_key.der -------------------------------------------------------------------------------- /blog-service/src/main/resources/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/blog-service/src/main/resources/dev-keys/public_key.der -------------------------------------------------------------------------------- /contact-service/src/main/resources/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/contact-service/src/main/resources/dev-keys/public_key.der -------------------------------------------------------------------------------- /uaa/src/integration-test/resources/dev-keys/private_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/uaa/src/integration-test/resources/dev-keys/private_key.der -------------------------------------------------------------------------------- /uaa/src/integration-test/resources/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/uaa/src/integration-test/resources/dev-keys/public_key.der -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: java 2 | sudo: false 3 | script: mvn clean install 4 | after_success: 5 | - bash <(curl -s https://codecov.io/bash) 6 | addons: 7 | apt: 8 | packages: 9 | - openjdk-8-jre-headless -------------------------------------------------------------------------------- /file-storage-service/src/main/resources/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/file-storage-service/src/main/resources/dev-keys/public_key.der -------------------------------------------------------------------------------- /notification-service/src/main/resources/dev-keys/public_key.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mmahmoodictbd/production-ready-microservices-starter/HEAD/notification-service/src/main/resources/dev-keys/public_key.der -------------------------------------------------------------------------------- /k8s-deployment/common/local-storage.yml: -------------------------------------------------------------------------------- 1 | kind: StorageClass 2 | apiVersion: storage.k8s.io/v1 3 | metadata: 4 | name: local-storage 5 | provisioner: kubernetes.io/no-provisioner 6 | volumeBindingMode: WaitForFirstConsumer -------------------------------------------------------------------------------- /blog-service/src/main/resources/db/changelog/db.changelog-master.yml: -------------------------------------------------------------------------------- 1 | databaseChangeLog: 2 | 3 | # Initialize application tables 4 | 5 | - include: 6 | file: "classpath:/db/changelog/create-table/create-table-site.yml" 7 | -------------------------------------------------------------------------------- /contact-service/src/main/resources/db/changelog/db.changelog-master.yml: -------------------------------------------------------------------------------- 1 | databaseChangeLog: 2 | 3 | # Initialize application tables 4 | 5 | - include: 6 | file: "classpath:/db/changelog/create-table/create-table-contact.yml" 7 | -------------------------------------------------------------------------------- /k8s-deployment/gateway/service.yml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: gateway 5 | spec: 6 | ports: 7 | - port: 33001 8 | targetPort: 33001 9 | selector: 10 | app: gateway 11 | type: NodePort -------------------------------------------------------------------------------- /file-storage-service/src/main/resources/db/changelog/db.changelog-master.yml: -------------------------------------------------------------------------------- 1 | databaseChangeLog: 2 | 3 | # Initialize application tables 4 | 5 | - include: 6 | file: "classpath:/db/changelog/create-table/create-table-file.yml" 7 | 8 | 9 | -------------------------------------------------------------------------------- /notification-service/src/main/resources/db/changelog/db.changelog-master.yml: -------------------------------------------------------------------------------- 1 | databaseChangeLog: 2 | 3 | # Initialize application tables 4 | 5 | - include: 6 | file: "classpath:/db/changelog/create-table/create-table-notification.yml" 7 | 8 | -------------------------------------------------------------------------------- /k8s-deployment/contact-service/service.yml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: contact-service 5 | spec: 6 | ports: 7 | - port: 33003 8 | targetPort: 33003 9 | selector: 10 | app: contact-service 11 | type: ClusterIP -------------------------------------------------------------------------------- /k8s-deployment/service-registry/service.yml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: service-registry 5 | spec: 6 | ports: 7 | - port: 33000 8 | targetPort: 33000 9 | selector: 10 | app: service-registry 11 | type: NodePort -------------------------------------------------------------------------------- /notification-service/src/main/java/com/chumbok/notification/domain/model/NotificationType.java: -------------------------------------------------------------------------------- 1 | package com.chumbok.notification.domain.model; 2 | 3 | public enum NotificationType { 4 | 5 | SUCCESS, 6 | WARNING, 7 | ERROR, 8 | CRITICAL 9 | } 10 | -------------------------------------------------------------------------------- /uaa/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/uaa.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql,docker" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /k8s-deployment/mysql/secret.yml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Secret 3 | metadata: 4 | name: mysql-secret 5 | type: Opaque 6 | data: 7 | MYSQL_ROOT_PASSWORD: cm9vdA== #root 8 | MYSQL_DATABASE: Y2h1bWJvay1kYg== #chumbok-db 9 | MYSQL_USER: YXBw #app 10 | MYSQL_PASSWORD: YXBw #app -------------------------------------------------------------------------------- /gateway/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/gateway.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql,docker" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /k8s-deployment/mysql/persistent-volume-claim.yml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: PersistentVolumeClaim 3 | metadata: 4 | name: mysql-pv-claim 5 | spec: 6 | storageClassName: local-storage 7 | accessModes: 8 | - ReadWriteOnce 9 | resources: 10 | requests: 11 | storage: 1Gi -------------------------------------------------------------------------------- /k8s-deployment/mysql/service.yml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: Service 3 | metadata: 4 | name: chumbok-mysql 5 | spec: 6 | #type: NodePort 7 | ports: 8 | - port: 3306 9 | #targetPort: 3306 10 | #nodePort: 31000 11 | selector: 12 | app: chumbok-mysql 13 | clusterIP: None -------------------------------------------------------------------------------- /blog-service/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/blog-service.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql,docker" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /service-registry/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/service-registry.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /contact-service/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/contact-service.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql,docker" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /file-storage-service/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/file-storage-service.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql,docker" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /notification-service/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM anapsix/alpine-java 2 | 3 | MAINTAINER Mossaddeque Mahmood 4 | 5 | VOLUME /tmp 6 | ADD target/notification-service.jar app.jar 7 | ENV JAVA_OPTS="-Dspring.profiles.active=prod,mysql,docker" 8 | ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar 9 | -------------------------------------------------------------------------------- /documentation/versioning-strategy.asciidoc: -------------------------------------------------------------------------------- 1 | # Versioning Strategy 2 | 3 | This project follow http://semver.org[Semantic Versioning] to maintain an 4 | understandable backwards compatibility strategy. 5 | 6 | The version format is as follows: 7 | 8 | ``` 9 | ..-