Skip to content

API Client dpc-api integration test#2933

Open
jdettmannnava wants to merge 30 commits intomainfrom
jd/api-integration-test
Open

API Client dpc-api integration test#2933
jdettmannnava wants to merge 30 commits intomainfrom
jd/api-integration-test

Conversation

@jdettmannnava
Copy link
Contributor

@jdettmannnava jdettmannnava commented Mar 5, 2026

🎫 Ticket

https://jira.cms.gov/browse/DPC-5249

🛠 Changes

  • Added integration test spec to api client
  • Updated api build/test infrastructure to use root Makefile and docker compose
  • Updated ci workflow to run integration test
  • Fixed miscellaneous docker compose variable assigning

ℹ️ Context

A recent integration issue between the portal and dpc-api shows the need to have an integration test run as part of CI. Tests are based on the unit tests we already run.

We needed to switch to docker-compose to make it easy for the api-client to attach to the network running dpc-api.

As part of this effort, I realized that we were forcing JACOCO reporting via docker compose by default, so I changed the docker compose file to allow for not forcing JACOCO. I did a drive-by fix on docker-compose.base.yml to remove a WARNING.

🧪 Validation

CI passes.

@jdettmannnava jdettmannnava changed the title Jd/api integration test API Client dpc-api integration test Mar 6, 2026
@jdettmannnava jdettmannnava marked this pull request as ready for review March 6, 2026 18:19
@jdettmannnava jdettmannnava requested a review from a team as a code owner March 6, 2026 18:19
run: |
make ci-api-client
mkdir -p /usr/local/lib/docker/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.32.4/docker-compose-linux-x86_64 -o /usr/local/lib/docker/cli-plugins/docker-compose
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is going to be a problem very shortly when the switch is made for CodeBuild to use arm64 runners (I believe happening this month due to annual pricing contracts). Either this should be updated to use arm64 or aarch64 here or in a ticket dedicated to making sure everything can build on arm64.

Copy link
Contributor

@MEspositoE14s MEspositoE14s left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All tests passing on my machine, LGTM!

Comment on lines -26 to -28
In the api_client directory
## Debugging and Development
To build an image, use the `make` command in the project root directory.
```bash
$ make build
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having this here and not in the root make file was a long standing pet peeve!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants