Skip to content

neo4j-field/cuenca-upgrade-workshop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cuenca-upgrade-workshop

During this exercise, you'll need to migrate a solution from Neo4j 4 to Neo4j 5.

This solution is composed of:

  • a Neo4j database deployed on a cluster (3 primaries + 1 secondary)
  • data loading scripts
  • a Neo4j custom plugin
  • a Spring boot based application

Preparation work / pre-requisites

  1. Install required software:
  • Java 11 AND Java 17
  • Maven
  • A decent IDE
  • Docker environment such as docker desktop (ask IT) or colima
  1. Download the maven & docker dependencies of the solution, as this can take a while:
./scripts/download-dependencies.sh
  1. Deploy the Neo4j cluster as described below, to download the docker images

Setup

Deploy the whole solution (database + app):

docker compose -f deployment.yml --profile "*" up

ARM cpu users : change docker image in /app/Dockerfile from eclipse-temurin:17-jre-alpine to eclipse-temurin:17-jre-alpine

Deploy only the Neo4j cluster

docker compose -f deployment.yml --profile db up

Load initial data

./scripts/load_data.sh

Run the example app

Different options here:

  • Build and run with maven (recommended)
cd app && mvn spring-boot:run
  • Build and run in a docker container
docker compose -f deployment.yml --profile app  up

You can now access the application using these 2 endpoints:

curl http://localhost:8080/
curl http://localhost:8080/bus/route/43/stops?direction=outbound

Goals

  1. Upgrade
  • upgrade the neo4j cluster to v5 (preserving its existing data)
  • upgrade the application
  • upgrade the scripts
  1. move to Aura
  • replace the local cluster by AuraDB, preserving the existing data
  • point the application to Aura
  • fix the data loading script

Use the PS tenant: Neo4j PS Team EMEA (GCP) [f18e9993-71ac-528b-82dc-2cdc2c76087b] (login with [email protected])

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published