Repository navigation
Devops/integration testing - #34
Draft
adamkorynta wants to merge 16 commits into
Draft
adamkorynta wants to merge 16 commits into
adamkorynta wants to merge 16 commits into
Conversation
adamkorynta
force-pushed
the
devops/integration_testing
branch
from
September 11, 2026 23:21
4cb9b13 to
36ece6a
Compare
update to prefix "apikey" add debug capabilities for remote JVM debugging update gradle test harness to supply JDK and override testcontainers add support to pull out flow group timeseries in expander more updates to integration test harness add in more extensive data coverage add test plumbing, still need to finalize seeed data setup integration testing structure
adamkorynta
force-pushed
the
devops/integration_testing
branch
from
September 11, 2026 23:22
36ece6a to
887dc6c
Compare
Gate flow tests were passing vacuously: every computeFlowGroup call logged "Unable to compute flow group" because cda-etl published location groups before the project locations existed, and the output series were pre-seeded with the expected values. - run_regi_calculation now fails the test on any ERROR-level REGI log - gate flow cases clear their output window before running - pin cda-etl to 16219ad9b9a7 (publishes location groups after projects) - FLOW_GROUPS entries are project-aware; add FCOB Uncontrolled_Total (synthetic elevations above the 1354.8 ft crest, expected flows computed from the rating) and KEYS TainterGate_Total - register the new REGI-Test-Expected series in regi.yml/regi.generated.yml - update README coverage notes
…rating seeds - regi-tools 10.0.0 -> 10.0.1 (executor monitor thread no longer blocks JVM shutdown) and regi 99.local-SNAPSHOT -> 3.5.0-alpha003 - pin cda-etl to 60d50c155aceeaede945a36406a800c0581b9d7a (Feature/etl milestone 4, publishes location groups after projects) - add the FCOB conduit/low-flow gate and WEBB spillway gate rating files that regi.yml already references
Runs `./gradlew :integration-tests:integrationTest` on demand and on pull requests touching the integration tests, regi-headless, or the build files. The cda_stack fixture brings up docker and seeds the stack, so the job only frees disk, sets up Java/Gradle, and runs the task. A follow-up step fails the job if no test passed or if any test was skipped for an environment reason (docker/compose/package missing), since the fixture turns those into skips. JUnit XML, docker compose logs, and the REGI log are uploaded.
Resolve regi-headless/build.gradle: keep the versionless python-plugin id (version is managed in the catalog) and apply the 3.2.26 bump from main to gradle/libs.versions.toml.
…re logs The CI run failed seeding: every cda-etl property POST got Tomcat's HTML 404. The data-api healthcheck was `curl -I` without -f, which exits 0 for any HTTP response, so compose reported healthy before the cwms-data webapp had deployed. - healthcheck: curl -fsS so an HTTP error means unhealthy - pin data-api to 2026.10.20-testa (the build `latest` resolved to) instead of the moving `latest` tag - conftest dumps compose logs to $CDA_COMPOSE_LOG before teardown, since compose.stop() removes the containers; the workflow sets it and drops the post-run collection step that always came back empty
…ilable Integration tests only run when explicitly selected (-m integration), so a missing prerequisite or a failed docker bring-up is an error, not a skip. The previous CI run came back "green" at the Gradle step with every test skipped and no explanation. - conftest: docker/compose/daemon checks, the cda_stack bring-up, and the cwms/regi_python imports now fail; the bring-up error includes compose's stdout/stderr and dumps container logs to $CDA_COMPOSE_LOG first - workflow: drop the skip-guard step, which pytest's exit code now covers - README: document the failure behavior and CDA_COMPOSE_LOG
- remove the skipped EUFA Uncontrolled_Total case from test_gate_flow_calc.py (its CLOB has no output configured); FCOB's Uncontrolled_Total covers the group - README: link to the files and directories it mentions, drop the Keycloak/traefik wording (keeping the API-key note), remove exact version pins (docker-compose.yml/.env.example are the source of truth), and remove the coverage-status and "things verified" sections
…DME by audience CI failed because data-api started while Oracle's listener was up but the FREEPDB1 service wasn't registered yet (tnsping passes at that point), so its connection pool failed with ORA-12514 and never recovered; compose then reported data-api unhealthy and every test errored at setup. - db healthcheck now logs in through the listener to FREEPDB1 (sqlplus select 1) instead of tnsping, and polls every 10s - README split into "Writing and running tests" (for engineers adding coverage and seed data) and "How the harness works" (for developers), and documents why the db and data-api healthchecks must be strict
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.