4242 run : |
4343 docker build -t opensourcecobol/opensourcecobol4j:utf8-"$version_string_prefix" . \
4444 --build-arg opensource_COBOL_4J_version="$opensource_COBOL_4J_version" \
45- --build-arg Open_COBOL_ESQL_4J_version="$Open_COBOL_ESQL_4J_version"
45+ --build-arg Open_COBOL_ESQL_4J_version="$Open_COBOL_ESQL_4J_version"
46+
47+ integration-test :
48+ runs-on : ubuntu-latest
49+ needs : [build]
50+
51+ steps :
52+ - name : Checkout
53+ uses : actions/checkout@v5
54+
55+ - name : Load configuration
56+ run : |
57+ echo opensource_COBOL_4J_version="$(jq -r '.opensource_COBOL_4J_version' build-config.json)" >> $GITHUB_ENV
58+ echo Open_COBOL_ESQL_4J_version="$(jq -r '.Open_COBOL_ESQL_4J_version' build-config.json)" >> $GITHUB_ENV
59+ echo version_string_prefix="$(jq -r '.version_string_prefix' build-config.json)" >> $GITHUB_ENV
60+
61+ - name : Build Docker image for testing
62+ run : |
63+ docker build -t opensourcecobol/opensourcecobol4j:"$version_string_prefix" . \
64+ --build-arg opensource_COBOL_4J_version="$opensource_COBOL_4J_version" \
65+ --build-arg Open_COBOL_ESQL_4J_version="$Open_COBOL_ESQL_4J_version"
66+
67+ - name : Start Docker Compose services
68+ working-directory : ./docker-compose
69+ run : |
70+ export opensource_COBOL_4J_version="$opensource_COBOL_4J_version"
71+ export Open_COBOL_ESQL_4J_version="$Open_COBOL_ESQL_4J_version"
72+ echo "Starting Docker Compose with the following environment:"
73+ echo "opensource_COBOL_4J_version: $opensource_COBOL_4J_version"
74+ echo "Open_COBOL_ESQL_4J_version: $Open_COBOL_ESQL_4J_version"
75+ docker compose up -d
76+
77+ - name : Wait for services to be ready
78+ run : |
79+ echo "Waiting for services to start..."
80+ sleep 15
81+ echo "Checking service status:"
82+ docker compose -f docker-compose/docker-compose.yml ps
83+ echo "Checking if oc4j_client container is running:"
84+ docker ps --filter "name=oc4j_client" --format "table {{.Names}}\t{{.Status}}"
85+
86+ - name : Copy test files to container
87+ run : |
88+ docker cp ocesql4j_sample oc4j_client:/tmp/ocesql4j_sample
89+
90+ - name : Run OCESQL tests
91+ run : |
92+ docker compose -f docker-compose/docker-compose.yml exec -T oc4j_client bash -c "cd /tmp/ocesql4j_sample && make"
93+
94+ - name : Cleanup
95+ if : always()
96+ run : |
97+ docker compose -f docker-compose/docker-compose.yml down -v
0 commit comments