170
Deploying JHipster Microservices

Deploying JHipster Microservices

Embed Size (px)

Citation preview

Deploying JHipster Microservices

Ephemeralization

Paul Graham

Ephemeralization“more and more with less and less until eventually you can do everything with nothing”

- Buckminster Fuller

Measuring Distance

Watching a Movie

yo jhipster

@codefingerJoe Kutner

git push heroku master

AGENDA

• What is JHipster?

• Create a JHipster microservices

• Run locally with Docker

• Deploy to Heroku

But first…

We need to get hip

Clip-on: Ephemeralization of the bowtie

What is JHipster?

$ yo jhipster├── asks a bunch of questions ├── creates app scaffolding ├── ready to build ├── ready to test└── ready to run

Yeoman $ yo jhipster:entity├── asks a bunch of questions ├── creates entity scaffolding └── creates tests for the entity

$ yo jhipster:heroku├── asks a bunch of questions ├── creates a Heroku app └── deploys to Heroku

What’s in a JHipster app?

Spring Boot

AngularJSBootstrap

Docker, Maven, PhantomJS, Cucumber, SonarQube, Jenkins

Netflix OSS

Spring Cloud

HikariCP

Let’s create a JHipster app!

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.1.0 Application files will be generated in folder: /Users/jkutner/workspace/ ? (1/16) Which *type* of application would you like to create? (Use arrow keys) ❯ Monolithic application (recommended for simple projects) Microservice application Microservice gateway [BETA] JHipster UAA server (for microservice OAuth2 authentication)

$ yo jhipster ██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? (Use arrow keys) ❯ Monolithic application (recommended for simple projects) Microservice application Microservice gateway [BETA] JHipster UAA server (for microservice OAuth2 authentication)

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? (Use arrow keys) Monolithic application (recommended for simple projects) ❯ Microservice application Microservice gateway [BETA] JHipster UAA server (for microservice OAuth2 authentication)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? (Use arrow keys) Monolithic application (recommended for simple projects) Microservice application ❯ Microservice gateway [BETA] JHipster UAA server (for microservice OAuth2 authentication)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? (jhipster)

$ yo jhipster

JavaOneDemo

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port would like your server to run? It should be unique to avoid port conflicts. (8080)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8080 ? (4/13) What is your default Java package name? (com.example)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? (Use arrow keys) ❯ JWT authentication (stateless, with a token) [BETA] Authentication with JHipster UAA server (the server must be generated separately)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? (Use arrow keys) ❯ SQL (H2, MySQL, PostgreSQL, Oracle) MongoDB Cassandra

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? MySQL ❯ MariaDB PostgreSQL Oracle - Warning! The Oracle JDBC driver (ojdbc) is not bundled because it is not ...

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? MySQL MariaDB ❯ PostgreSQL Oracle - Warning! The Oracle JDBC driver (ojdbc) is not bundled because it is not ...

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? ❯ H2 with disk-based persistence H2 with in-memory persistence PostgreSQL

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? H2 with disk-based persistence H2 with in-memory persistence ❯ PostgreSQL

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No Yes, with ehcache (local cache, for a single node) ❯ Yes, with HazelCast (distributed cache, for multiple nodes)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? ❯ No Yes, with ehcache (local cache, for a single node) Yes, with HazelCast (distributed cache, for multiple nodes)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? (Use arrow keys) ❯ Maven Gradle

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ❯◯ Search engine using ElasticSearch ◯ Clustered HTTP sessions using Hazelcast ◯ WebSockets using Spring Websocket

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ◯ Search engine using ElasticSearch ❯◯ Clustered HTTP sessions using Hazelcast ◯ WebSockets using Spring Websocket

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ◯ Search engine using ElasticSearch ◯ Clustered HTTP sessions using Hazelcast ❯◯ WebSockets using Spring Websocket

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ◯ Search engine using ElasticSearch ◯ Clustered HTTP sessions using Hazelcast ❯◉ WebSockets using Spring Websocket

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? WebSockets using Spring Websocket ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? (y/N)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? WebSockets using Spring Websocket ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? (Y/n)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? WebSockets using Spring Websocket ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? (Use arrow keys) Czech Danish Dutch ❯ English French Galician German (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install (Press <space> to select) ❯◯ Catalan ◯ Chinese (Simplified) ◯ Chinese (Traditional) ◯ Czech ◯ Danish ◯ Dutch ◯ French (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install (Press <space> to select) ❯◉ Catalan ◯ Chinese (Simplified) ◯ Chinese (Traditional) ◯ Czech ◯ Danish ◯ Dutch ◯ French (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install (Press <space> to select) ❯◯ Tamil ◉ Catalan ◯ Chinese (Simplified) ◯ Chinese (Traditional) ◯ Czech ◯ Danish ◯ Dutch (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install (Press <space> to select) ❯◯ Turkish ◯ Tamil ◉ Catalan ◯ Chinese (Simplified) ◯ Chinese (Traditional) ◯ Czech ◯ Danish (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install (Press <space> to select) ❯◯ Swedish ◯ Turkish ◯ Tamil ◉ Catalan ◯ Chinese (Simplified) ◯ Chinese (Traditional) ◯ Czech (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install (Press <space> to select) ❯◉ Swedish ◯ Turkish ◯ Tamil ◉ Catalan ◯ Chinese (Simplified) ◯ Chinese (Traditional) ◯ Czech (Move up and down to reveal more choices)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? JavaOneDemo ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install Catalan, Swedish ? (14/13) Which testing frameworks would you like to use? (Press <space> to select) ❯◉ Gatling ◯ Cucumber ◯ Protractor

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/16) Which *type* of application would you like to create? Microservice application ? (2/16) What is the base name of your application? JavaOneDemo ? (3/16) As you are running in a microservice architecture, on which port... 8081 ? (4/16) What is your default Java package name? com.example ? (5/16) Which *type* of authentication would you like to use? JWT authentication ... ? (6/16) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/16) Which *production* database would you like to use? PostgreSQL ? (8/16) Which *development* database would you like to use? PostgreSQL ? (9/16) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install Catalan, Swedish ? (14/13) Which testing frameworks would you like to use? (Press <space> to select) ❯◉ Gatling ◯ Cucumber ◯ Protractor

$ yo jhipster

Hold on to your butts!

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/gateway ? (1/16) Which *type* of application would you like to create? Microservice application ? (2/16) What is the base name of your application? JavaOneDemo ? (3/16) As you are running in a microservice architecture, on which port... 8081 ? (4/16) What is your default Java package name? com.example ? (5/16) Which *type* of authentication would you like to use? JWT authentication ... ? (6/16) Which *type* of database would you like to use? SQL (H2, MySQL, PostgreSQL... ? (7/16) Which *production* database would you like to use? PostgreSQL ? (8/16) Which *development* database would you like to use? PostgreSQL ? (9/16) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? Search engine using ElasticSearch ? (12/13) Would you like to use the LibSass stylesheet preprocessor for your CSS? No ? (13/13) Would you like to enable internationalization support? Yes ? Please choose the native language of the application? English ? Please choose additional languages to install Catalan, Swedish ? (14/13) Which testing frameworks would you like to use? (Press <space> to select)Gatling

Installing languages: en, ca, sv

$ yo jhipster

create bower.json create package.json create README.md create .gitignore create .gitattributes create .editorconfig create .travis.yml create src/main/docker/Dockerfile create src/main/docker/cassandra/scripts/autoMigrate.sh create src/main/docker/cassandra/scripts/execute-cql.sh create src/main/docker/central-server-config/application.yml create src/main/docker/jhipster-registry.yml create src/main/docker/sonar.yml create mvnw create mvnw.cmd create .mvn/wrapper/maven-wrapper.jar create .mvn/wrapper/maven-wrapper.properties create pom.xml create src/main/resources/banner.txt create src/main/resources/templates/error.html create src/main/resources/logback-spring.xml create src/main/resources/config/application.yml create src/main/resources/config/application-dev.yml create src/main/resources/config/application-prod.yml create src/main/resources/config/liquibase/changelog/00000000000000_initial_schema.xml create src/main/resources/config/liquibase/master.xml create src/main/resources/config/cql/create-keyspace-prod.cql create src/main/resources/config/cql/create-keyspace.cql create src/main/resources/config/cql/drop-keyspace.cql create src/main/resources/config/cql/changelog/README.md create src/main/resources/i18n/messages.properties create src/main/java/com/example/security/SpringSecurityAuditorAware.java create src/main/java/com/example/security/SecurityUtils.java create src/main/java/com/example/security/AuthoritiesConstants.java create src/main/java/com/example/security/jwt/TokenProvider.java create src/main/java/com/example/security/jwt/JWTConfigurer.java

create src/main/java/com/example/security/jwt/JWTFilter.java create src/main/java/com/example/config/SecurityConfiguration.java create src/main/java/com/example/security/Http401UnauthorizedEntryPoint.java create src/main/java/com/example/security/UserDetailsService.java create src/main/java/com/example/security/UserNotActivatedException.java create src/main/java/com/example/web/rest/UserJWTController.java create src/main/java/com/example/web/rest/JWTToken.java create src/main/java/com/example/security/package-info.java create src/main/java/com/example/config/GatewayConfiguration.java create src/main/java/com/example/config/apidoc/GatewaySwaggerResourcesProvider.java create src/main/java/com/example/gateway/ratelimiting/RateLimitingFilter.java create src/main/java/com/example/gateway/TokenRelayFilter.java create src/main/java/com/example/gateway/ratelimiting/RateLimitingRepository.java create src/main/java/com/example/gateway/accesscontrol/AccessControlFilter.java create src/main/java/com/example/gateway/responserewriting/SwaggerBasePathRewriting… create src/main/java/com/example/web/rest/dto/RouteDTO.java create src/main/java/com/example/web/rest/GatewayResource.java create src/main/resources/config/bootstrap-dev.yml create src/main/resources/config/bootstrap-prod.yml create src/main/java/com/example/config/metrics/SpectatorLogMetricWriter.java create src/main/java/com/example/JavaOneDemoApp.java create src/main/java/com/example/ApplicationWebXml.java create src/main/java/com/example/aop/logging/LoggingAspect.java create src/main/java/com/example/web/rest/dto/LoginDTO.java create src/main/java/com/example/config/DefaultProfileUtil.java create src/main/java/com/example/config/apidoc/package-info.java create src/main/java/com/example/config/apidoc/SwaggerConfiguration.java create src/main/java/com/example/config/apidoc/PageableParameterBuilderPlugin.java create src/main/java/com/example/async/package-info.java create src/main/java/com/example/async/ExceptionHandlingAsyncTaskExecutor.java create src/main/java/com/example/config/package-info.java create src/main/java/com/example/config/AsyncConfiguration.java create src/main/java/com/example/config/CacheConfiguration.java create src/main/java/com/example/config/Constants.java create src/main/java/com/example/config/LoggingConfiguration.java create src/main/java/com/example/config/CloudDatabaseConfiguration.java

create src/main/java/com/example/config/CloudDatabaseConfiguration.java create src/main/java/com/example/config/DatabaseConfiguration.java create src/main/java/com/example/config/audit/package-info.java create src/main/java/com/example/config/audit/AuditEventConverter.java create src/main/java/com/example/config/JacksonConfiguration.java create src/main/java/com/example/config/JHipsterProperties.java create src/main/java/com/example/config/LocaleConfiguration.java create src/main/java/com/example/config/LoggingAspectConfiguration.java create src/main/java/com/example/config/MetricsConfiguration.java create src/main/java/com/example/config/ThymeleafConfiguration.java create src/main/java/com/example/config/WebConfigurer.java create src/main/java/com/example/config/locale/package-info.java create src/main/java/com/example/config/locale/AngularCookieLocaleResolver.java create src/main/java/com/example/config/cassandra/CassandraConfiguration.java create src/main/java/com/example/config/cassandra/CustomZonedDateTimeCodec.java create src/main/java/com/example/config/cassandra/package-info.java create src/main/java/com/example/config/liquibase/AsyncSpringLiquibase.java create src/main/java/com/example/config/liquibase/package-info.java create src/main/java/com/example/domain/package-info.java create src/main/java/com/example/domain/util/JSR310DateConverters.java create src/main/java/com/example/domain/util/JSR310PersistenceConverters.java create src/main/java/com/example/domain/util/FixedH2Dialect.java create src/main/java/com/example/domain/util/FixedPostgreSQL82Dialect.java create src/main/java/com/example/domain/AbstractAuditingEntity.java create src/main/java/com/example/domain/PersistentAuditEvent.java create src/main/java/com/example/repository/package-info.java create src/main/java/com/example/service/package-info.java create src/main/java/com/example/service/util/RandomUtil.java create src/main/java/com/example/web/rest/errors/ErrorConstants.java create src/main/java/com/example/web/rest/errors/CustomParameterizedException.java create src/main/java/com/example/web/rest/errors/ErrorDTO.java create src/main/java/com/example/web/rest/errors/ExceptionTranslator.java create src/main/java/com/example/web/rest/errors/FieldErrorDTO.java create src/main/java/com/example/web/rest/errors/ParameterizedErrorDTO.java create src/main/java/com/example/web/filter/package-info.java create src/main/java/com/example/web/filter/CachingHttpHeadersFilter.java

create src/main/java/com/example/web/rest/dto/package-info.java create src/main/java/com/example/web/rest/dto/LoggerDTO.java create src/main/java/com/example/web/rest/util/HeaderUtil.java create src/main/java/com/example/web/rest/util/PaginationUtil.java create src/main/java/com/example/web/rest/package-info.java create src/main/java/com/example/web/rest/LogsResource.java create src/main/java/com/example/web/rest/ProfileInfoResource.java create src/test/java/com/example/web/rest/TestUtil.java create src/test/resources/config/application.yml create src/main/webapp/app/services/auth/register.service.js create src/main/webapp/app/services/user/user.service.js create src/main/webapp/app/services/profiles/profile.service.js create src/main/webapp/app/services/profiles/page-ribbon.directive.js create src/main/webapp/content/images/hipster.png create src/main/webapp/content/images/hipster2x.png create src/main/webapp/content/images/logo-jhipster.png create src/test/javascript/karma.conf.js create src/test/javascript/spec/helpers/module.js create src/test/javascript/spec/helpers/httpBackend.js create src/test/javascript/spec/app/admin/health/health.controller.spec.js create src/test/javascript/spec/app/account/password/password.controller.spec.js create src/test/javascript/spec/app/account/password/password-strength-bar.directive… create src/test/javascript/spec/app/account/settings/settings.controller.spec.js create src/test/javascript/spec/app/account/activate/activate.controller.spec.js create src/test/javascript/spec/app/account/register/register.controller.spec.js create src/test/javascript/spec/app/account/reset/finish/reset.finish.controller.spec.js create src/test/javascript/spec/app/account/reset/request/reset.request.controller.spec.js create src/test/javascript/spec/app/services/auth/auth.services.spec.js create src/test/javascript/spec/app/components/login/login.controller.spec.js create src/main/webapp/i18n/en/activate.json create src/main/webapp/i18n/en/audits.json create src/main/webapp/i18n/en/configuration.json create src/main/webapp/i18n/ca/login.json create src/main/webapp/i18n/ca/logs.json create src/main/webapp/i18n/ca/home.json create src/main/webapp/i18n/ca/metrics.json

create src/main/webapp/app/components/language/language.service.js create src/main/webapp/app/components/login/login.html create src/main/webapp/app/components/login/login.service.js create src/main/webapp/app/components/login/login.controller.js create src/main/webapp/app/components/util/base64.service.js create src/main/webapp/app/components/util/capitalize.filter.js create src/main/webapp/app/components/util/parse-links.service.js create src/main/webapp/app/components/util/truncate-characters.filter.js create src/main/webapp/app/components/util/truncate-words.filter.js create src/main/webapp/app/components/util/date-util.service.js create src/main/webapp/app/components/util/data-util.service.js create src/main/webapp/app/components/util/pagination-util.service.js create src/main/webapp/app/components/util/sort.directive.js create src/main/webapp/app/components/util/sort-by.directive.js create src/main/webapp/app/components/util/jhi-item-count.directive.js create src/main/webapp/app/blocks/interceptor/auth.interceptor.js create src/main/webapp/app/blocks/interceptor/auth-expired.interceptor.js create src/main/webapp/app/blocks/interceptor/errorhandler.interceptor.js create src/main/webapp/app/blocks/interceptor/notification.interceptor.js create src/main/webapp/app/components/alert/alert.service.js create src/main/webapp/app/components/alert/alert.directive.js create src/main/webapp/app/components/alert/alert-error.directive.js create src/main/webapp/app/entities/entity.state.js create src/main/webapp/app/home/home.html create src/main/webapp/app/home/home.state.js create src/main/webapp/app/home/home.controller.js create src/main/webapp/app/layouts/navbar/active-link.directive.js create src/main/webapp/app/layouts/navbar/active-menu.directive.js create src/main/webapp/app/layouts/navbar/navbar.html create src/main/webapp/app/layouts/navbar/navbar.controller.js create src/main/webapp/app/layouts/error/error.html create src/main/webapp/app/layouts/error/accessdenied.html create src/main/webapp/app/layouts/error/error.state.js create src/main/webapp/app/services/auth/auth.service.js create src/main/webapp/app/services/auth/principal.service.js create src/main/webapp/app/services/auth/has-authority.directive.js

create src/main/java/com/example/security/jwt/JWTFilter.java create src/main/java/com/example/config/SecurityConfiguration.java create src/main/java/com/example/security/Http401UnauthorizedEntryPoint.java create src/main/java/com/example/security/UserDetailsService.java create src/main/java/com/example/security/UserNotActivatedException.java create src/main/java/com/example/web/rest/UserJWTController.java create src/main/java/com/example/web/rest/JWTToken.java create src/main/java/com/example/security/package-info.java create src/main/java/com/example/config/GatewayConfiguration.java create src/main/java/com/example/config/apidoc/GatewaySwaggerResourcesProvider.java create src/main/java/com/example/gateway/ratelimiting/RateLimitingFilter.java create src/main/java/com/example/gateway/TokenRelayFilter.java create src/main/java/com/example/gateway/ratelimiting/RateLimitingRepository.java create src/main/java/com/example/gateway/accesscontrol/AccessControlFilter.java create src/main/java/com/example/gateway/responserewriting/SwaggerBasePathRewriting… create src/main/java/com/example/web/rest/dto/RouteDTO.java create src/main/java/com/example/web/rest/GatewayResource.java create src/main/resources/config/bootstrap-dev.yml create src/main/resources/config/bootstrap-prod.yml create src/main/java/com/example/config/metrics/SpectatorLogMetricWriter.java create src/main/java/com/example/JavaOneDemoApp.java create src/main/java/com/example/ApplicationWebXml.java create src/main/java/com/example/aop/logging/LoggingAspect.java create src/main/java/com/example/web/rest/dto/LoginDTO.java create src/main/java/com/example/config/DefaultProfileUtil.java create src/main/java/com/example/config/apidoc/package-info.java create src/main/java/com/example/config/apidoc/SwaggerConfiguration.java create src/main/java/com/example/config/apidoc/PageableParameterBuilderPlugin.java create src/main/java/com/example/async/package-info.java create src/main/java/com/example/async/ExceptionHandlingAsyncTaskExecutor.java create src/main/java/com/example/config/package-info.java create src/main/java/com/example/config/AsyncConfiguration.java create src/main/java/com/example/config/CacheConfiguration.java create src/main/java/com/example/config/Constants.java create src/main/java/com/example/config/LoggingConfiguration.java create src/main/java/com/example/config/CloudDatabaseConfiguration.java

create src/main/java/com/example/config/CloudDatabaseConfiguration.java create src/main/java/com/example/config/DatabaseConfiguration.java create src/main/java/com/example/config/audit/package-info.java create src/main/java/com/example/config/audit/AuditEventConverter.java create src/main/java/com/example/config/JacksonConfiguration.java create src/main/java/com/example/config/JHipsterProperties.java create src/main/java/com/example/config/LocaleConfiguration.java create src/main/java/com/example/config/LoggingAspectConfiguration.java create src/main/java/com/example/config/MetricsConfiguration.java create src/main/java/com/example/config/ThymeleafConfiguration.java create src/main/java/com/example/config/WebConfigurer.java create src/main/java/com/example/config/locale/package-info.java create src/main/java/com/example/config/locale/AngularCookieLocaleResolver.java create src/main/java/com/example/config/cassandra/CassandraConfiguration.java create src/main/java/com/example/config/cassandra/CustomZonedDateTimeCodec.java create src/main/java/com/example/config/cassandra/package-info.java create src/main/java/com/example/config/liquibase/AsyncSpringLiquibase.java create src/main/java/com/example/config/liquibase/package-info.java create src/main/java/com/example/domain/package-info.java create src/main/java/com/example/domain/util/JSR310DateConverters.java create src/main/java/com/example/domain/util/JSR310PersistenceConverters.java create src/main/java/com/example/domain/util/FixedH2Dialect.java create src/main/java/com/example/domain/util/FixedPostgreSQL82Dialect.java create src/main/java/com/example/domain/AbstractAuditingEntity.java create src/main/java/com/example/domain/PersistentAuditEvent.java create src/main/java/com/example/repository/package-info.java create src/main/java/com/example/service/package-info.java create src/main/java/com/example/service/util/RandomUtil.java create src/main/java/com/example/web/rest/errors/ErrorConstants.java create src/main/java/com/example/web/rest/errors/CustomParameterizedException.java create src/main/java/com/example/web/rest/errors/ErrorDTO.java create src/main/java/com/example/web/rest/errors/ExceptionTranslator.java create src/main/java/com/example/web/rest/errors/FieldErrorDTO.java create src/main/java/com/example/web/rest/errors/ParameterizedErrorDTO.java create src/main/java/com/example/web/filter/package-info.java create src/main/java/com/example/web/filter/CachingHttpHeadersFilter.java

create src/main/webapp/i18n/ca/password.json create src/main/webapp/i18n/ca/register.json create src/main/webapp/i18n/ca/sessions.json create src/main/webapp/i18n/ca/settings.json create src/main/webapp/i18n/ca/reset.json create src/main/webapp/i18n/ca/user-management.json create src/main/webapp/i18n/ca/global.json create src/main/webapp/i18n/ca/health.json create src/main/resources/i18n/messages_ca.properties

I'm all done. Running npm install & bower install for you to install the required dependencies. If this fails, try running the command yourself.

create src/main/webapp/i18n/ca/password.json create src/main/webapp/i18n/ca/register.json create src/main/webapp/i18n/ca/sessions.json create src/main/webapp/i18n/ca/settings.json create src/main/webapp/i18n/ca/reset.json create src/main/webapp/i18n/ca/user-management.json create src/main/webapp/i18n/ca/global.json create src/main/webapp/i18n/ca/health.json create src/main/resources/i18n/messages_ca.properties

I'm all done. Running npm install & bower install for you to install the required dependencies. If this fails, try running the command yourself.

⸨ ░░░░░░░░░░░░░░░⸩ ⠦ cloneCurrentTree: sill cloneCurrentTree Finish

usually the worst part of my day

create src/main/webapp/i18n/ca/password.json create src/main/webapp/i18n/ca/register.json create src/main/webapp/i18n/ca/sessions.json create src/main/webapp/i18n/ca/settings.json create src/main/webapp/i18n/ca/reset.json create src/main/webapp/i18n/ca/user-management.json create src/main/webapp/i18n/ca/global.json create src/main/webapp/i18n/ca/health.json create src/main/resources/i18n/messages_ca.properties

I'm all done. Running npm install & bower install for you to install the required dependencies. If this fails, try running the command yourself.

Server app generated successfully.

Client app generated successfully.

[09:10:45] Using gulpfile ~/workspace/gateway/gulpfile.js [09:10:45] Starting 'install'... ... [09:10:45] gulp-inject 1 files into index.html. [09:10:45] Finished 'inject:troubleshoot' after 4.89 ms

Microservices

- browser code, assets- proxy microservices- client-side load balancing- fault tolerance

- service registry- service metadata- service health- phonebook for microservices

- RESTful services- JPA Entities- Business logic

+

compose

docker-compose

./mvnw package docker:build$... [INFO] --- docker-maven-plugin:0.4.10:build (default-cli) @ java-one-demo — ... Removing intermediate container 391b5792ee80 Successfully built daa78f2d9534 [INFO] Built javaonedemo [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:13 min [INFO] Finished at: 2016-08-08T08:02:30-05:00 [INFO] Final Memory: 76M/592M [INFO] ------------------------------------------------------------------------

docker-compose -f src/main/docker/app.yml up$Creating jhipster-registry Creating docker_javaonedemo-app_1 Creating javaonedemo-postgresql Attaching to jhipster-registry, docker_javaonedemo-app_1, javaonedemo-postgresql javaonedemo-app_1 | The application will start in 30s... javaonedemo-postgresql | ... javaonedemo-postgresql | selecting default max_connections ... 100 javaonedemo-postgresql | selecting default shared_buffers ... 128MB javaonedemo-postgresql | selecting dynamic shared memory implementation ... posix jhipster-registry | 13:07:54.871 [main] DEBUG org.springframework.beans.factory... jhipster-registry | ... javaonedemo-app_1 | ... javaonedemo-app_1 | ---------------------------------------------------------- javaonedemo-app_1 | Application 'JavaOneDemo' is running! Access URLs: javaonedemo-app_1 | Local: http://127.0.0.1:8080 javaonedemo-app_1 | External: http://172.22.0.3:8080 javaonedemo-app_1 | ---------------------------------------------------------- javaonedemo-app_1 | ... javaonedemo-app_1 | ---------------------------------------------------------- javaonedemo-app_1 | Config Server: Connected to the JHipster Registry ... javaonedemo-app_1 | ----------------------------------------------------------

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

admin

*****

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

Think about all the things you didn’t have to do!

cd ..$

mkdir book-service$

cd book-service$

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? (Use arrow keys) ❯ Monolithic application (recommended for simple projects) Microservice application Microservice gateway [BETA] JHipster UAA server (for microservice OAuth2 authentication)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? (Use arrow keys) Monolithic application (recommended for simple projects) ❯ Microservice application Microservice gateway [BETA] JHipster UAA server (for microservice OAuth2 authentication)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? (jhipster)

$ yo jhipster

BookService

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port would like your server to run? It should be unique to avoid port conflicts. (8081)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? (com.example)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? (Use arrow keys) ❯ JWT authentication (stateless, with a token) [BETA] Authentication with JHipster UAA server (the server must be generated separately)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? (Use arrow keys) No database ❯ SQL (H2, MySQL, PostgreSQL, Oracle) MongoDB Cassandra

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? MySQL ❯ MariaDB PostgreSQL Oracle - Warning! The Oracle JDBC driver (ojdbc)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? MySQL MariaDB ❯ PostgreSQL Oracle - Warning! The Oracle JDBC driver (ojdbc)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? ❯ H2 with disk-based persistence H2 with in-memory persistence PostgreSQL

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? H2 with disk-based persistence H2 with in-memory persistence ❯ PostgreSQL

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? (Use arrow keys) No Yes, with ehcache (local cache, for a single node) ❯ Yes, with HazelCast (distributed cache, for multiple nodes)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? (Use arrow keys) ❯ No Yes, with ehcache (local cache, for a single node) Yes, with HazelCast (distributed cache, for multiple nodes)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? (Use arrow keys) ❯ Maven Gradle

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ❯◯ Search engine using ElasticSearch

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ? (12/13) Would you like to enable internationalization support? (Y/n)

$ yo jhipster

██ ██ ██ ████████ ███████ ██████ ████████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ████████ ██ ███████ █████ ██ ██████ ███████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ████████ ██ ██████ ██ ████████ ██ ██

http://jhipster.github.io

Welcome to the JHipster Generator v3.7.0 Application files will be generated in folder: /Users/jkutner/workspace/book-service ? (1/13) Which *type* of application would you like to create? Microservice application ? (2/13) What is the base name of your application? BookService ? (3/13) As you are running in a microservice architecture, on which port... 8081 ? (4/13) What is your default Java package name? com.example ? (5/13) Which *type* of authentication would you like to use? JWT authentication ... ? (6/13) Which *type* of database would you like to use? SQL (H2, MySQL, MariaDB, ... ? (7/13) Which *production* database would you like to use? PostgreSQL ? (8/13) Which *development* database would you like to use? PostgreSQL ? (9/13) Do you want to use Hibernate 2nd level cache? No ? (10/13) Would you like to use Maven or Gradle for building the backend? Maven ? (11/13) Which other technologies would you like to use? (Press <space> to select) ? (12/13) Would you like to enable internationalization support? No ? (13/13) Which testing frameworks would you like to use? (Press <space> to select) ❯◉ Gatling ◯ Cucumber

$ yo jhipster

create README.md create .gitignore create .gitattributes create .editorconfig create .travis.yml create Jenkinsfile create src/main/docker/Dockerfile create src/main/docker/app.yml create src/main/docker/central-server-config/application.yml create src/main/docker/jhipster-registry.yml create src/main/docker/sonar.yml create mvnw create mvnw.cmd create .mvn/wrapper/maven-wrapper.jar create .mvn/wrapper/maven-wrapper.properties create pom.xml create src/main/resources/banner.txt create src/main/resources/templates/error.html create src/main/resources/logback-spring.xml create src/main/resources/config/application.yml create src/main/resources/config/application-dev.yml create src/main/resources/config/application-prod.yml create src/main/resources/i18n/messages.properties create src/main/java/com/example/security/SecurityUtils.java create src/main/java/com/example/security/AuthoritiesConstants.java create src/main/java/com/example/security/jwt/TokenProvider.java create src/main/java/com/example/security/jwt/JWTConfigurer.java create src/main/java/com/example/security/jwt/JWTFilter.java create src/main/java/com/example/config/MicroserviceSecurityConfiguration.java create src/main/resources/config/bootstrap-dev.yml create src/main/resources/config/bootstrap-prod.yml create src/main/java/com/example/config/metrics/SpectatorLogMetricWriter.java create src/main/java/com/example/Application.java create src/main/java/com/example/ApplicationWebXml.java create src/main/java/com/example/aop/logging/LoggingAspect.java create src/main/java/com/example/config/DefaultProfileUtil.java

create src/main/java/com/example/config/apidoc/package-info.java create src/main/java/com/example/config/apidoc/SwaggerConfiguration.java create src/main/java/com/example/config/apidoc/PageableParameterBuilderPlugin.java create src/main/java/com/example/async/package-info.java create src/main/java/com/example/async/ExceptionHandlingAsyncTaskExecutor.java create src/main/java/com/example/config/package-info.java create src/main/java/com/example/config/AsyncConfiguration.java create src/main/java/com/example/config/CacheConfiguration.java create src/main/java/com/example/config/Constants.java create src/main/java/com/example/config/LoggingConfiguration.java create src/main/java/com/example/config/JacksonConfiguration.java create src/main/java/com/example/config/JHipsterProperties.java create src/main/java/com/example/config/LocaleConfiguration.java create src/main/java/com/example/config/LoggingAspectConfiguration.java create src/main/java/com/example/config/MetricsConfiguration.java create src/main/java/com/example/config/ThymeleafConfiguration.java create src/main/java/com/example/config/WebConfigurer.java create src/main/java/com/example/config/locale/package-info.java create src/main/java/com/example/config/locale/AngularCookieLocaleResolver.java create src/main/java/com/example/domain/package-info.java create src/main/java/com/example/domain/util/JSR310DateConverters.java create src/main/java/com/example/repository/package-info.java create src/main/java/com/example/service/package-info.java create src/main/java/com/example/web/rest/errors/ErrorConstants.java create src/main/java/com/example/web/rest/errors/CustomParameterizedException.java create src/main/java/com/example/web/rest/errors/ErrorVM.java create src/main/java/com/example/web/rest/errors/ExceptionTranslator.java create src/main/java/com/example/web/rest/errors/FieldErrorVM.java create src/main/java/com/example/web/rest/errors/ParameterizedErrorVM.java create src/main/java/com/example/web/filter/package-info.java create src/main/java/com/example/web/filter/CachingHttpHeadersFilter.java create src/main/java/com/example/web/rest/vm/package-info.java create src/main/java/com/example/web/rest/vm/LoggerVM.java create src/main/java/com/example/web/rest/util/HeaderUtil.java create src/main/java/com/example/web/rest/util/PaginationUtil.java create src/main/java/com/example/web/rest/package-info.java

create src/main/java/com/example/web/rest/LogsResource.java create src/main/java/com/example/web/rest/ProfileInfoResource.java create src/test/java/com/example/web/rest/TestUtil.java create src/test/resources/config/application.yml create src/test/resources/logback-test.xml create src/test/gatling/conf/gatling.conf

Server app generated successfully.

[INFO] Scanning for projects... ... Removing intermediate container ebaad5314c62 Successfully built 62e562845b4d [INFO] Built bookservice[INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1:00.217s [INFO] Finished at: Thu Jul 28 20:18:02 CDT 2016 [INFO] Final Memory: 72M/515M [INFO] ------------------------------------------------------------------------

./mvnw package docker:build$

Gateway BookService

We only want one guy spinning plates

cd ..$

mkdir docker-compose$

cd docker-compose$

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/docker-compose ? Enter the root directory where your gateway(s) and microservices are located (../)

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/ ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ... ❯◯ book-service ◯ gateway

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/ ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ❯◉ book-service ◯ gateway

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/ ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ◉ book-service ❯◯ gateway

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/ ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ◉ book-service ❯◉ gateway

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/ ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ? Do you want the JHipster Console (based on ELK) to monitor your applications? (Y/n)

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/docker-compose ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ? Do you want the JHipster Console (based on ELK) to monitor your applications? No ? Enter the admin password used to secure the JHipster Registry (admin)

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/docker-compose ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ? Do you want the JHipster Console (based on ELK) to monitor your applications? No ? Enter the admin password used to secure the JHipster Registry admin

Checking Docker images in applications' directories... create docker-compose.yml create jhipster-registry.yml create central-server-config/application.yml

Docker Compose configuration successfully generated! You can launch all your infrastructure by running : docker-compose up -d

$

yo jhipster:docker-compose$Welcome to the JHipster Docker Compose Sub-Generator Files will be generated in folder: /Users/jkutner/workspace/docker-compose ? Enter the root directory where your gateway(s) and microservices are located ../ 2 applications found at /Users/jkutner/workspace/

? Which applications do you want to include in your Docker Compose configuration? ? Do you want the JHipster Console (based on ELK) to monitor your applications? No ? Enter the admin password used to secure the JHipster Registry admin

Checking Docker images in applications' directories... create docker-compose.yml create jhipster-registry.yml create central-server-config/application.yml

Docker Compose configuration successfully generated! You can launch all your infrastructure by running : docker-compose up -d

$ docker-compose up -dCreating jhipster-registry Creating dockercompose_javaonedemo-app_1 Creating dockercompose_bookservice-app_1 Creating javaonedemo-postgresql Creating bookservice-postgresql

open http://admin:admin@${DOCKER_IP}:8761$

open http://admin:admin@${DOCKER_IP}:8761$

JHipster-UML

Book - id: Long - isbn: String

yo jhipster:entity book$

The entity book is being created.

Generating field #1

? Do you want to add a field to your entity? (Y/n)

cd ../book-service$

yo jhipster:entity book$

The entity book is being created.

Generating field #1

? Do you want to add a field to your entity? Yes ? What is the name of your field?

cd ../book-service$

isbn

yo jhipster:entity book$

The entity book is being created.

Generating field #1

? Do you want to add a field to your entity? Yes ? What is the name of your field? isbn ? What is the type of your field? (Use arrow keys) ❯ String Integer Long Float Double BigDecimal LocalDate (Move up and down to reveal more choices)

cd ../book-service$

yo jhipster:entity book$

The entity book is being created.

Generating field #1

? Do you want to add a field to your entity? Yes ? What is the name of your field? isbn ? What is the type of your field? String ? Do you want to add validation rules to your field? (y/N)

cd ../book-service$

yo jhipster:entity book$

The entity book is being created.

Generating field #1

? Do you want to add a field to your entity? Yes ? What is the name of your field? isbn ? What is the type of your field? String ? Do you want to add validation rules to your field? No

================= Book ================= Fields isbn (String)

Generating field #2

? Do you want to add a field to your entity? (Y/n)

cd ../book-service$

The entity book is being created.

Generating field #1

? Do you want to add a field to your entity? Yes ? What is the name of your field? isbn ? What is the type of your field? String ? Do you want to add validation rules to your field? No

================= Book ================= Fields isbn (String)

Generating field #2

? Do you want to add a field to your entity? No

================= Book ================= Fields isbn (String)

Generating relationships to other entities

? Do you want to add a relationship to another entity? (Y/n)

yo jhipster:entity book$

cd ../book-service$

Generating field #1

? Do you want to add a field to your entity? Yes ? What is the name of your field? isbn ? What is the type of your field? String ? Do you want to add validation rules to your field? No

================= Book ================= Fields isbn (String)

Generating field #2

? Do you want to add a field to your entity? No

================= Book ================= Fields isbn (String)

Generating relationships to other entities

? Do you want to add a relationship to another entity? No

================= Book ================= Fields isbn (String)

? Do you want to use a Data Transfer Object (DTO)? (Use arrow keys) ❯ No, use the entity directly [BETA] Yes, generate a DTO with MapStruct

? Do you want to add a field to your entity? Yes ? What is the name of your field? isbn ? What is the type of your field? String ? Do you want to add validation rules to your field? No

================= Book ================= Fields isbn (String)

Generating field #2

? Do you want to add a field to your entity? No

================= Book ================= Fields isbn (String)

Generating relationships to other entities

? Do you want to add a relationship to another entity? No

================= Book ================= Fields isbn (String)

? Do you want to use a Data Transfer Object (DTO)? No, use the entity directly ? Do you want to use separate service class for your business logic? (Use arrow keys) ❯ No, the REST controller should use the repository directly Yes, generate a separate service class Yes, generate a separate service interface and implementation

? What is the name of your field? isbn ? What is the type of your field? String ? Do you want to add validation rules to your field? No

================= Book ================= Fields isbn (String)

Generating field #2

? Do you want to add a field to your entity? No

================= Book ================= Fields isbn (String)

Generating relationships to other entities

? Do you want to add a relationship to another entity? No

================= Book ================= Fields isbn (String)

? Do you want to use a Data Transfer Object (DTO)? No, use the entity directly ? Do you want to use separate service class for your business logic? No, the REST control... ? Do you want pagination on your entity? (Use arrow keys) ❯ No Yes, with a simple pager Yes, with pagination links Yes, with infinite scroll

Generating field #2

? Do you want to add a field to your entity? No

================= Book ================= Fields isbn (String)

Generating relationships to other entities

? Do you want to add a relationship to another entity? No

================= Book ================= Fields isbn (String)

? Do you want to use a Data Transfer Object (DTO)? No, use the entity directly ? Do you want to use separate service class for your business logic? No, the REST control... ? Do you want pagination on your entity? No

Everything is configured, generating the entity...

create .jhipster/Book.json create src/main/java/com/example/domain/Book.java create src/main/java/com/example/repository/BookRepository.java create src/main/java/com/example/web/rest/BookResource.java create src/main/resources/config/liquibase/changelog/20160808183153_added_entity_Book.xml conflict src/main/resources/config/liquibase/master.xml ? Overwrite src/main/resources/config/liquibase/master.xml? overwrite force src/main/resources/config/liquibase/master.xml create src/test/java/com/example/web/rest/BookResourceIntTest.java create src/test/gatling/simulations/BookGatlingTest.scala

TO THE GATEWAY!

yo jhipster:entity book$

The entity book is being created.

? Do you want to generate this entity from an existing microservice? (Y/n)

cd ../gateway$

yo jhipster:entity book$

The entity book is being created.

? Do you want to generate this entity from an existing microservice? Yes ? Enter the path to the microservice root directory: (../book-service/)

cd ../gateway$

yo jhipster:entity book$

The entity book is being created.

? Do you want to generate this entity from an existing microservice? Yes ? Enter the path to the microservice root directory: ../book-service

Found the .jhipster/Book.json configuration file, entity can be automatically generated!

? Do you want to update the entity? This will replace the existing files for this entity, all your custom code will be overwritten (Use arrow keys) ❯ Yes, re generate the entity [BETA] Yes, add more fields and relationships [BETA] Yes, remove fields and relationships No, exit

cd ../gateway$

? Overwrite src/main/webapp/i18n/ca/global.json? overwrite force src/main/webapp/i18n/ca/global.json create src/test/javascript/spec/app/entities/book/book-detail.controller.spec.js

Running gulp Inject to add javascript to index

[14:04:34] Using gulpfile ~/workspace/heroku/kissaten/tmp/gateway/gulpfile.js [14:04:34] Starting 'inject:app'... [14:04:34] gulp-inject 109 files into index.html. [14:04:34] Finished 'inject:app' after 311 ms

Found the .jhipster/Book.json configuration file, entity can be automatically generated!

? Do you want to update the entity? This will replace the existing files for this entity, all your custom code will be overwritten Yes, re generate the entity create .jhipster/Book.json create src/main/webapp/app/entities/book/books.html create src/main/webapp/app/entities/book/book-detail.html create src/main/webapp/app/entities/book/book-dialog.html create src/main/webapp/app/entities/book/book-delete-dialog.html conflict src/main/webapp/app/layouts/navbar/navbar.html ? Overwrite src/main/webapp/app/layouts/navbar/navbar.html? overwrite force src/main/webapp/app/layouts/navbar/navbar.html create src/main/webapp/app/entities/book/book.state.js create src/main/webapp/app/entities/book/book.controller.js create src/main/webapp/app/entities/book/book-dialog.controller.js create src/main/webapp/app/entities/book/book-delete-dialog.controller.js create src/main/webapp/app/entities/book/book-detail.controller.js create src/main/webapp/app/entities/book/book.service.js create src/main/webapp/i18n/en/book.json conflict src/main/webapp/i18n/en/global.json ? Overwrite src/main/webapp/i18n/en/global.json? overwrite force src/main/webapp/i18n/en/global.json create src/main/webapp/i18n/ca/book.json conflict src/main/webapp/i18n/ca/global.json

REBUILD & RESTART

./mvnw package docker:build$

cd ../book-service$

./mvnw package docker:build$

cd ../docker-compose$

docker-compose restart -d$Restarting bookservice-postgresql ... Restarting javaonedemo-postgresql ... Restarting dockercompose_bookservice-app_1 ... Restarting dockercompose_javaonedemo-app_1 ... Restarting jhipster-registry ...

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

open http://${DOCKER_IP}:8080$

1937785319

open http://${DOCKER_IP}:8080$

Think about all the code you didn’t have to write!

Deployment

1. Deploy the Registry

2. Deploy the Microservice

3. Deploy the Gateway

yo jhipster:heroku

yo jhipster:heroku

https://github.com/jhipster/jhipster-registry

Demo

yo jhipster:heroku$Heroku configuration is starting ? Name to deploy as: (BookService)

cd ../book-service$

yo jhipster:heroku$Heroku configuration is starting ? Name to deploy as: BookService ? On which region do you want to deploy ? (Use arrow keys) ❯ us eu

cd ../book-service$

yo jhipster:heroku$Heroku configuration is starting ? Name to deploy as: BookService ? On which region do you want to deploy ? us

Initializing Git repository Initialized empty Git repository in /Users/jkutner/workspace/book-service/.git/

Installing Heroku CLI deployment plugin

cd ../book-service$

yo jhipster:heroku$Heroku configuration is starting ? Name to deploy as: BookService ? On which region do you want to deploy ? us

Initializing Git repository Initialized empty Git repository in /Users/jkutner/workspace/book-service/.git/

Installing Heroku CLI deployment plugin

Creating Heroku application and add-ons heroku create book-service --addons heroku-postgresql https://book-service.herokuapp.com/ | https://git.heroku.com/book-service.git

cd ../book-service$

yo jhipster:heroku$Heroku configuration is starting ? Name to deploy as: BookService ? On which region do you want to deploy ? us

Initializing Git repository Initialized empty Git repository in /Users/jkutner/workspace/book-service/.git/

Installing Heroku CLI deployment plugin

Creating Heroku application and add-ons heroku create book-service --addons heroku-postgresql https://book-service.herokuapp.com/ | https://git.heroku.com/book-service.git

? What is the URL of your JHipster Registry?

cd ../book-service$

https://admin:[email protected]

yo jhipster:heroku$Heroku configuration is starting ? Name to deploy as: BookService ? On which region do you want to deploy ? us

Initializing Git repository Initialized empty Git repository in /Users/jkutner/workspace/book-service/.git/

Installing Heroku CLI deployment plugin

Creating Heroku application and add-ons heroku create book-service --addons heroku-postgresql https://book-service.herokuapp.com/ | https://git.heroku.com/book-service.git

? What is the URL of your JHipster Registry? https://admin:foo@registry... JHIPSTER_REGISTRY_URL: https://admin:[email protected]

Creating Heroku deployment files create src/main/resources/config/bootstrap-heroku.yml create src/main/resources/config/application-heroku.yml create Procfile

Building application

cd ../book-service$

[INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Book Service 0.0.1-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ book-service --- [INFO] Deleting /Users/jkutner/workspace/heroku/kissaten/tmp/book-service/target [INFO] [INFO] --- maven-resources-plugin:3.0.1:copy-resources (default-resources) @ book-service --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 11 resources [INFO] Copying 3 resources [INFO] [INFO] --- maven-resources-plugin:3.0.1:resources (default-resources) @ book-service --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 11 resources [INFO] Copying 3 resources [INFO] [INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce-versions) @ book-service --- [INFO] [INFO] --- jacoco-maven-plugin:0.7.7.201606060606:prepare-agent (pre-unit-tests) @ book-service --- [INFO] surefireArgLine set to -javaagent:/Users/jkutner/.m2/repository/org/jacoco/org.jacoco.agent/0.7.7.201606060606/org.jacoco.agent-0.7.7.201606060606-runtime.jar=destfile=/Users/jkutner/workspace/heroku/kissaten/tmp/book-service/target/test-results/coverage/jacoco/jacoco.exec [INFO] [INFO] --- maven-processor-plugin:2.2.4:process (process) @ book-service --- [WARNING] diagnostic: warning: The following options were not recognized by any processor: '[mapstruct.defaultComponentModel, mapstruct.suppressGeneratorTimestamp]' [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ book-service --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 64 source files to /Users/jkutner/workspace/heroku/kissaten/tmp/book-service/target/classes

[INFO] --- maven-resources-plugin:3.0.1:testResources (default-testResources) @ book-service --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 2 resources [INFO] [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ book-service --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 2 source files to /Users/jkutner/workspace/heroku/kissaten/tmp/book-service/target/test-classes [INFO] [INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ book-service --- [INFO] Tests are skipped. [INFO] [INFO] --- jacoco-maven-plugin:0.7.7.201606060606:report (post-unit-test) @ book-service --- [INFO] Skipping JaCoCo execution due to missing execution data file. [INFO] [INFO] --- maven-war-plugin:2.6:war (default-war) @ book-service --- [INFO] Packaging webapp [INFO] Assembling webapp [book-service] in [/Users/jkutner/workspace/heroku/kissaten/tmp/book-service/target/book-service-0.0.1-SNAPSHOT] [INFO] Processing war project [INFO] Webapp assembled in [1417 msecs] [INFO] Building war: /Users/jkutner/workspace/heroku/kissaten/tmp/book-service/target/book-service-0.0.1-SNAPSHOT.war [INFO] [INFO] --- spring-boot-maven-plugin:1.4.0.RELEASE:repackage (default) @ book-service --- [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 16.222 s [INFO] Finished at: 2016-08-09T12:22:35-05:00 [INFO] Final Memory: 75M/508M [INFO] ------------------------------------------------------------------------

Uploading book-service-0.0.1-SNAPSHOT.war -----> Packaging application... - app: book-service - including: target/book-service-0.0.1-SNAPSHOT.war -----> Creating build... - file: slug.tgz - size: 55MB -----> Uploading build... - success -----> Deploying... remote: remote: -----> JVM Common app detected remote: -----> Installing OpenJDK 1.8... done remote: -----> Discovering process types remote: Procfile declares types -> web remote: remote: -----> Compressing... remote: Done: 103.8M remote: -----> Launching... remote: Released v5 remote: https://book-service.herokuapp.com/ deployed to Heroku remote: -----> Done

heroku ps$

heroku logs$

=== web (Free): java -jar target/*.war --spring.profiles.active=prod,heroku ... web.1: up 2016/08/12 13:33:39 -0500 (~ 7s ago)

2016-08-12T18:33:39.671749+00:00 app[web.1]: ---------------------------------------------- 2016-08-12T18:33:39.671749+00:00 app[web.1]: Application 'BookService' is running! ... 2016-08-12T18:33:39.671750+00:00 app[web.1]: Local: http://127.0.0.1:59101 2016-08-12T18:33:39.671751+00:00 app[web.1]: External: http://172.18.244.210:59101 2016-08-12T18:33:39.671751+00:00 app[web.1]: ---------------------------------------------- 2016-08-12T18:33:39.671957+00:00 app[web.1]: 2016-08-12 18:33:39.671 INFO 3 — ... 2016-08-12T18:33:39.671959+00:00 app[web.1]: ---------------------------------------------- 2016-08-12T18:33:39.671960+00:00 app[web.1]: Config Server: Connected to the JHipster... 2016-08-12T18:33:39.671961+00:00 app[web.1]: ----------------------------------------------

cd ../gateway$

yo jhipster:heroku$

heroku open$

heroku open$

heroku open$

heroku open$

1937785319

heroku open$

cd ../book-service$

heroku pg:psql$

select * from book;book-service::DATABASE=>

---> Connecting to DATABASE_URL ...

id | isbn ------+------------ 1000 | 1937785319 (1 row)

https://dataclips.heroku.com

Deploy, Scale, and Sleep Better with Docker and Dev-Prod Parity [CON4122]

Wednesday, Sep 21, 11:30 a.m.

Want to learn more about Docker?

Deepu K Sasidharan Project co-lead@deepu105

Julien Dubois Project lead@juliendubois

Thanks!

@codefingerJoe Kutner

Thank you!