Skip to content

Latest commit

 

History

History
126 lines (89 loc) · 3.55 KB

GETTING_STARTED.adoc

File metadata and controls

126 lines (89 loc) · 3.55 KB

Getting started

Prerequisites

  • Java JDK version 11.x or later, Maven 3.x;

  • Relational database for consent-management-system. PostgreSQL, Oracle and MariaDB are supported out of the box, the list can be extended. We recommend to use PostgreSQL 9.5 or later.

  • Docker (Optional).

Clone git repository and build a project

$ git clone https://github.com/adorsys/xs2a.git
$ cd xs2a
$ mvn clean install

Use docker-compose

There is docker-compose.yml in root folder which will help to run containers in docker. Some images will be build from sources, some fetched prebuild from docker hub. All liquibase DB settings will be applied automatically and you can skip the step Run a Consent-Management-System server.

Docker-compose runs containers:

  • aspsp-xs2a_aspsp-profile (aspsp-profile-server);

  • aspsp-xs2a_consent-management (cms-standalone-service);

  • aspsp-xs2a_consent-management-postgres (Postgres DB);

  • aspsp-xs2a_xs2a-standalone-starter (xs2a-standalone-starter).

Start docker compose:

$ docker-compose up

Run an ASPSP-Profile:

Windows

> cd aspsp-profile\aspsp-profile-server
> mvn spring-boot:run

UNIX (BSD, Linux or MacOS)

$ cd aspsp-profile/aspsp-profile-server
$ mvn spring-boot:run

First of all you need to setup a relational database for it. We recommend to use PostgreSQL. Default parameters for that DB one can find in the liquibase.example.properties:

Parameter Value

DB Host

localhost

DB Port

5432

DB Name

consent

DB Schema

consent

DB User

cms

DB Password

cms

Setup a database and db schema.

Then create tables using liquibase:

Windows

> cd .\consent-management\cms-db-schema\
> copy liquibase.example.properties liquibase.properties

UNIX (BSD, Linux or MacOS)

$ cd consent-management/cms-db-schema
$ cp liquibase.example.properties liquibase.properties
$ mvn liquibase:update

Now, once PostgreSQL-server is running on port 5432 you may run consent-management-system server:

$ cd consent-management/cms-standalone-service
$ mvn spring-boot:run -Dspring-boot.run.arguments=--server_key=12345678

Run a XS2A-Server

By default XS2A-library shall be packed with the ASPSP-Connector, that connects the library to the corresponding ASPSP-systems.

To start the XS2A do:

Open a browser on page http://localhost:8080/swagger-ui.html

Now you may try to put some data using the xs2a-interface. See some test scripts [for Postman](../scripts/tests/postman) or [Insomnia](../scripts/tests/insomnia) as a starting point.

  • CPU 2Cores;

  • Memory 2GB;

  • Free disk space 6GB*.

Note
for all components that need to build install and run application
Cpu and memory load
Figure 1. CPU load
Cpu and memory load
Figure 2. Memory usage

Deployment

Dockerfiles provided in the project allow to put the build artifacts into a docker images. Those images are to be configured through your environment (documentation follows) to interact properly. We provide you also with public images on Docker hub.

Since most of our services are written in pure Java, you can also choose another ways to deploy the applications in your environment. Please refer to the documentation pages of each service to perform its configuration.