Skip to content

Commit

Permalink
RA-87: Fix docker compose build
Browse files Browse the repository at this point in the history
  • Loading branch information
mlinnik committed May 8, 2024
1 parent 2c85165 commit d9923ea
Show file tree
Hide file tree
Showing 19 changed files with 180 additions and 174 deletions.
63 changes: 33 additions & 30 deletions .env.IntegrationTest
Original file line number Diff line number Diff line change
@@ -1,38 +1,40 @@
LOG=INFO
NETWORK="devkit" # devkit, mainnet, testnet, preprod
NETWORK=devkit
# mainnet, preprod, preview, sanchonet, devkit
PROTOCOL_MAGIC=42
# mainnet 764824073, preprod 1, preview 2, sanchonet 4, devkit 42
NETWORK_MAGIC=${PROTOCOL_MAGIC}

#common env
DB_ADMIN_USER_NAME="rosetta_db_admin"
DB_ADMIN_USER_SECRET="weakpwd#123_d"
## Postgres image
DB_IMAGE_NAME=postgres
DB_IMAGE_TAG=latest

# Postgres variables
DB_IMAGE_NAME="postgres"
DB_IMAGE_TAG="latest"
DB_NAME="rosetta-java"
DB_HOST="db" # Service name in docker-compose or local db
DB_PORT="5432"
## Postgres variables
DB_NAME=rosetta-java
DB_USER=rosetta_db_admin
DB_SECRET=weakpwd#123_d
DB_HOST=db # Service name in docker-compose or local db
DB_PORT=5432
DB_SCHEMA=${NETWORK}
DB_PATH="data"
DB_PATH=data
#DB_PATH=./h2
UPDATE_GENESIS_BLOCK_QUERY="UPDATE preprod.block SET number = 0 WHERE number = -1; UPDATE preprod.block SET prev_hash = 'Genesis' WHERE number = 1"

# Cardano Node variables
CARDANO_NODE_HOST="yaci-cli" # Service name in docker-compose or local cardano node
CARDANO_NODE_PORT="9999" # Uncomment if you are using local cardano node
CARDANO_NODE_VERSION="8.9.0"
CARDANO_NODE_SUBMIT_HOST="cardano-submit-api"
## Cardano Node variables
CARDANO_NODE_HOST=yaci-cli # Service name in docker-compose or local cardano node
CARDANO_NODE_PORT=9999 # Uncomment if you are using local cardano node
CARDANO_NODE_VERSION=8.9.0
CARDANO_NODE_SUBMIT_HOST=cardano-submit-api
NODE_SUBMIT_API_PORT=8090
CARDANO_NODE_SOCKET="./node-ipc"
CARDANO_NODE_DB="node/db"
CARDANO_CONFIG="./config/${NETWORK}"
CARDANO_NODE_SOCKET_PATH=./node-ipc
CARDANO_NODE_SOCKET=${CARDANO_NODE_SOCKET_PATH}/node.socket
CARDANO_NODE_DB=./node/db
CARDANO_CONFIG=./config/${NETWORK}

#api env
API_SPRING_PROFILES_ACTIVE_API="dev"
API_PORT="8081"
TRANSACTION_TTL=3000

DB_CONNECTION_PARAMS_PROVIDER_TYPE="ENVIRONMENT"
DB_DRIVER_CLASS_NAME="org.postgresql.Driver"
## Api env
API_SPRING_PROFILES_ACTIVE=dev
# staging, h2, test. Additional profiles: mempool (if mempool should be activated)
API_PORT=8081

ROSETTA_VERSION=1.4.13
TOPOLOGY_FILEPATH=/config/${NETWORK}/topology.json
Expand All @@ -43,12 +45,13 @@ GENESIS_CONWAY_PATH=/config/${NETWORK}/conway-genesis.json

PRINT_EXCEPTION=true

#yaci env
YACI_SPRING_PROFILES="postgres" # database profiles: h2, postgres
## Yaci Indexer env
YACI_SPRING_PROFILES=postgres
# database profiles: h2, h2-testData, postgres
INDEXER_NODE_PORT=3001
INITIAL_BALANCE_CALCULATION_BLOCK=0

#devkit env
## Devkit env
DEVKIT_ENABLED=true
DEVKIT_URL=yaci-cli

Expand Down Expand Up @@ -77,4 +80,4 @@ IS_DOCKER=true
# Format: <address1>:<ada_amount>,<address2>:<ada_amount>,...
#######################################################
# transaction payment
topup_addresses=addr_test1qz5t8wq55e09usmh07ymxry8atzwxwt2nwwzfngg6esffxvw2pfap6uqmkj3n6zmlrsgz397md2gt7yqs5p255uygaesx608y5:2
topup_addresses=addr_test1qz5t8wq55e09usmh07ymxry8atzwxwt2nwwzfngg6esffxvw2pfap6uqmkj3n6zmlrsgz397md2gt7yqs5p255uygaesx608y5:2
64 changes: 35 additions & 29 deletions .env.docker-compose
Original file line number Diff line number Diff line change
@@ -1,37 +1,41 @@
LOG=INFO
NETWORK="preprod" # mainnet, preprod, testnet, devkit
PROTOCOL_MAGIC=1 # mainnet 764824073, preprod 1, testnet 2, devkit 42
NETWORK=preprod
# mainnet, preprod, preview, sanchonet, devkit
PROTOCOL_MAGIC=1
# mainnet 764824073, preprod 1, preview 2, sanchonet 4, devkit 42
NETWORK_MAGIC=${PROTOCOL_MAGIC}

#common env
DB_ADMIN_USER_NAME="rosetta_db_admin"
DB_ADMIN_USER_SECRET="weakpwd#123_d"
## Postgres image
DB_IMAGE_NAME=postgres
DB_IMAGE_TAG=14.11-bullseye

# Postgres variables
DB_IMAGE_NAME="postgres"
DB_IMAGE_TAG="14.11-bullseye"
DB_NAME="rosetta-java-preprod"
DB_HOST="db" # Service name in docker-compose or local db
DB_PORT="5432"
## Postgres variables
DB_NAME=rosetta-java-preprod
DB_USER=rosetta_db_admin
DB_SECRET=weakpwd#123_d
DB_HOST=db
# Service name in docker-compose or local db
DB_PORT=5432
DB_SCHEMA=${NETWORK}
DB_PATH="data"
DB_PATH=data

# Cardano Node variables
CARDANO_NODE_HOST="cardano-node" # Service name in docker-compose or local cardano node
CARDANO_NODE_PORT="3001" # Uncomment if you are using local cardano node
CARDANO_NODE_VERSION="8.9.0"
CARDANO_NODE_SUBMIT_HOST="cardano-submit-api"
## Cardano Node variables
CARDANO_NODE_HOST=cardano-node
# Service name in docker-compose or local cardano node
CARDANO_NODE_PORT=3001
# Uncomment if you are using local cardano node
CARDANO_NODE_VERSION=8.9.0
CARDANO_NODE_SUBMIT_HOST=cardano-submit-api
NODE_SUBMIT_API_PORT=8090
CARDANO_NODE_SOCKET="./node-ipc"
CARDANO_NODE_DB="./node/db"
CARDANO_CONFIG="./config/${NETWORK}"
CARDANO_NODE_SOCKET_PATH=./node-ipc
CARDANO_NODE_SOCKET=${CARDANO_NODE_SOCKET_PATH}/node.socket
CARDANO_NODE_DB=./node/db
CARDANO_CONFIG=./config/${NETWORK}

#api env
API_SPRING_PROFILES_ACTIVE_API="dev" # staging. Additional profiles: mempool (if mempool should be activated)
## Api env
API_SPRING_PROFILES_ACTIVE=dev
# staging, h2, test. Additional profiles: mempool (if mempool should be activated)
API_PORT=8081
TRANSACTION_TTL=3000

DB_CONNECTION_PARAMS_PROVIDER_TYPE="ENVIRONMENT"
DB_DRIVER_CLASS_NAME="org.postgresql.Driver"

ROSETTA_VERSION=1.4.13
TOPOLOGY_FILEPATH=/config/${NETWORK}/topology.json
Expand All @@ -42,8 +46,10 @@ GENESIS_CONWAY_PATH=/config/${NETWORK}/conway-genesis.json
API_NODE_SOCKET_PATH=./node/node.socket
PRINT_EXCEPTION=true

#yaci env
YACI_SPRING_PROFILES="postgres" # database profiles: h2, postgres
## Yaci Indexer env
YACI_SPRING_PROFILES=postgres
# database profiles: h2, h2-testData, postgres
INDEXER_NODE_PORT=3001
MEMPOOL_ENABLED=false
INITIAL_BALANCE_CALCULATION_BLOCK=0
# Haven't implemented yet
INITIAL_BALANCE_CALCULATION_BLOCK=0
45 changes: 28 additions & 17 deletions .env.h2
Original file line number Diff line number Diff line change
@@ -1,36 +1,46 @@
LOG=INFO
NETWORK=devkit # devkit, mainnet, testnet, prepro
NETWORK=devkit
# mainnet, preprod, preview, sanchonet, devkit
PROTOCOL_MAGIC=42
# mainnet 764824073, preprod 1, preview 2, sanchonet 4, devkit 42
NETWORK_MAGIC=${PROTOCOL_MAGIC}

#common env
DB_ADMIN_USER_NAME=rosetta_db_admin
DB_ADMIN_USER_SECRET=weakpwd#123_d

## H2 image
DB_IMAGE_NAME=h2
DB_IMAGE_TAG=14.11-bullseye

## Postgres env
DB_NAME=rosetta-java-preprod
DB_HOST=db # Service name in docker-compose or local db
DB_USER=rosetta_db_admin
DB_SECRET=weakpwd#123_d
DB_HOST=db
# Service name in docker-compose or local db
DB_PORT=5432
DB_SCHEMA=${NETWORK}

## H2 settings
MAXIMUM_POOL_SIZE=80
JDBC_BATCH_SIZE=1000
SCHEMA=${NETWORK}
CARDANO_NODE_HOST=localhost # Service name in docker-compose or local cardano node
CARDANO_NODE_PORT=3001 # Uncomment if you are using local cardano node

## Cardano Node variables
CARDANO_NODE_HOST=localhost
# Service name in docker-compose or local cardano node
CARDANO_NODE_PORT=3001
# Uncomment if you are using local cardano node
CARDANO_NODE_VERSION=8.9.0
CARDANO_NODE_SUBMIT_HOST=cardano-submit-api
NODE_SUBMIT_API_PORT=8090
CARDANO_NODE_SOCKET=./node-ipc
CARDANO_NODE_SOCKET_PATH=./node-ipc
CARDANO_NODE_SOCKET=${CARDANO_NODE_SOCKET_PATH}/node.socket
CARDANO_NODE_DB=./node/db
CARDANO_CONFIG=./config/${NETWORK}

#api env
## Api env
API_SPRING_PROFILES_ACTIVE=h2
API_SPRING_PROFILES_ACTIVE_API=dev
# staging, h2, test. Additional profiles: mempool (if mempool should be activated)
API_EXPOSED_PORT=8081
API_BIND_PORT=8081
TRANSACTION_TTL=3000

DB_CONNECTION_PARAMS_PROVIDER_TYPE=ENVIRONMENT
DB_DRIVER_CLASS_NAME=org.h2.Driver

ROSETTA_VERSION=1.4.13
TOPOLOGY_FILEPATH=config/${NETWORK}/topology.json
Expand All @@ -41,7 +51,8 @@ GENESIS_CONWAY_PATH=config/${NETWORK}/conway-genesis.json

PRINT_EXCEPTION=true

#yaci env
API_SPRING_PROFILES_ACTIVE_YACI_INDEXER=postgres # database profiles: h2, postgres
## Yaci Indexer env
YACI_SPRING_PROFILES=h2
# database profiles: h2, h2-testData, postgres
INDEXER_NODE_PORT=3001
INITIAL_BALANCE_CALCULATION_BLOCK=0
2 changes: 1 addition & 1 deletion .github/workflows/docker-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
branches:
- feat/RA-60-Single-docker-container
jobs:
Explore-GitHub-Actions:
docker-build-single-containe:
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand Down
20 changes: 7 additions & 13 deletions api/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,24 +1,18 @@
FROM maven:3.9.6-sapmachine-21 AS build-common
FROM ubuntu:22.04 AS build-common
WORKDIR /app

COPY ./pom.xml /app/pom.xml
RUN apt-get update --fix-missing \
&& apt install -y --no-install-recommends openjdk-21-jdk maven

COPY ./api/pom.xml /app/api/pom.xml
COPY ./pom.xml /app/pom.xml
COPY ./api /app/api

COPY ./yaci-indexer/pom.xml /app/yaci-indexer/pom.xml
COPY ./yaci-indexer /app/yaci-indexer

COPY ./test-data-generator/pom.xml /app/test-data-generator/pom.xml
COPY ./test-data-generator /app/test-data-generator

RUN --mount=type=cache,target=/root/.m2 mvn clean package -DskipTests

FROM eclipse-temurin:latest
RUN apt-get update
WORKDIR /cf-rosetta-api
COPY --from=build-common /app/api/target/*.jar /cf-rosetta-api/app.jar
RUN cp /app/api/target/*.jar /app/api.jar

COPY ./api/run_backend.sh /cf-rosetta-api/run_backend.sh
ENTRYPOINT ["java", "-jar", "/app/api.jar"]

ENTRYPOINT ["/bin/sh", "/cf-rosetta-api/run_backend.sh"]
CMD ["/bin/sh", "-c", "bash"]
2 changes: 0 additions & 2 deletions api/run_backend.sh

This file was deleted.

4 changes: 2 additions & 2 deletions api/src/main/resources/config/application-h2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ spring:
max-request-size: 16MB
datasource:
driver-class-name: org.h2.Driver
username: ${DB_ADMIN_USER_NAME:rosetta_db_admin}
password: ${DB_ADMIN_USER_SECRET:weakpwd#123_d}
username: ${DB_USER:rosetta_db_admin}
password: ${DB_SECRET:weakpwd#123_d}
url: jdbc:h2:tcp://localhost:9090/mem:${DB_NAME:rosetta-java-preprod}
jpa:
properties:
Expand Down
8 changes: 4 additions & 4 deletions api/src/test/resources/application-test-integration.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ spring:
max-request-size: 16MB
datasource:
driver-class-name: org.h2.Driver
username: ${DB_ADMIN_USER_NAME:rosetta_db_admin}
password: ${DB_ADMIN_USER_SECRET:weakpwd#123_d}
username: ${DB_USER:rosetta_db_admin}
password: ${DB_SECRET:weakpwd#123_d}
url: jdbc:h2:file:../testData/devkit.db
# url: jdbc:h2:mem:${DB_NAME:rosetta-java};INIT=RUNSCRIPT FROM 'classpath:init.sql;DB_CLOSE_DELAY=-1;MODE=PostgreSQL;DATABASE_TO_LOWER=TRUE;DEFAULT_NULL_ORDERING=HIGH
sql:
Expand Down Expand Up @@ -50,10 +50,10 @@ cardano:
'1.0.0-SNAPSHOT'
TOPOLOGY_FILEPATH: ../config/devkit/topology.json
GENESIS_SHELLEY_PATH: ../config/devkit/shelley-genesis.json
CARDANO_NODE_VERSION: "8.9.0"
CARDANO_NODE_VERSION: ${CARDANO_NODE_VERSION}
CARDANO_NODE_SUBMIT_HOST: localhost
NODE_SUBMIT_API_PORT: 8090
CARDANO_NODE_SOCKET: ${CARDANO_NODE_SOCKET:""}
CARDANO_NODE_SOCKET: ${CARDANO_NODE_SOCKET}
# devkit variables
DEVKIT_ENABLED: ${DEVKIT_ENABLED:false}
DEVKIT_URL: ${DEVKIT_URL:yaci-cli}
Expand Down
2 changes: 1 addition & 1 deletion api/src/test/resources/application.properties
Original file line number Diff line number Diff line change
@@ -1 +1 @@
spring.profiles.active=${SPRING_PROFILES_ACTIVE:test-integration}
spring.profiles.active=test-integration

0 comments on commit d9923ea

Please sign in to comment.