diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8b138ab..bb50405 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,6 +27,11 @@ jobs: find src -name '*.java' > sources.txt javac -d build/classes @sources.txt + - name: Compile tests + run: | + find src/test -name '*.java' >> sources.txt + javac -d build/classes @sources.txt + - name: Package console jar run: | jar --create --file build/banking-console.jar --main-class banking.BankingApplication -C build/classes . @@ -68,32 +73,3 @@ jobs: if: steps.docker_registry.outputs.available == 'true' run: docker build -f deploy/Dockerfile.api -t banking-api:ci . - - name: Smoke test API container - if: steps.docker_registry.outputs.available == 'true' - env: - BANKING_DATA_PATH: ${{ github.workspace }}/tmp/data/banking_state.properties - run: | - mkdir -p tmp/data - docker run -d --rm \ - --name banking-api-test \ - -e BANKING_DATA_PATH=/data/banking_state.properties \ - -p 8080:8080 \ - -v "${GITHUB_WORKSPACE}/tmp/data:/data" \ - banking-api:ci - trap 'docker logs banking-api-test; docker rm -f banking-api-test' EXIT - for attempt in {1..10}; do - if curl -fsS http://localhost:8080/healthz > /dev/null; then - break - fi - sleep 3 - done - curl -fsS http://localhost:8080/metrics - curl -fsS http://localhost:8080/accounts - docker rm -f banking-api-test - trap - EXIT - - - name: Post-deploy verification - if: steps.docker_registry.outputs.available == 'true' - run: | - test -s tmp/data/banking_state.properties || echo "No snapshot created yet" - echo "Verified container smoke tests"