# Runs the ACL integration tests (Category=Integration) from *inside* the compose # network, so they reach OpenZaak at http://openzaak:8000 by service name. On the # hosted CI runner a process on the runner can't reach the stack's published ports # (sibling containers โ€” gitea-actions-gotchas.md ยง5), so the test runs as a # container joined to that network instead. See ADR-0006 / #55. # # Build context is services/acl (like the service Dockerfile). dotnet lives in this # image, so the CI `integration` job needs only Docker โ€” no setup-dotnet step. FROM mcr.microsoft.com/dotnet/sdk:10.0 WORKDIR /src # Restore first (cached unless the .csproj files change). The integration test # project pulls in Acl.Application + Acl.Infrastructure via its ProjectReferences. COPY Acl.Application/Acl.Application.csproj Acl.Application/ COPY Acl.Infrastructure/Acl.Infrastructure.csproj Acl.Infrastructure/ COPY Acl.IntegrationTests/Acl.IntegrationTests.csproj Acl.IntegrationTests/ RUN dotnet restore Acl.IntegrationTests/Acl.IntegrationTests.csproj COPY Acl.Application/ Acl.Application/ COPY Acl.Infrastructure/ Acl.Infrastructure/ COPY Acl.IntegrationTests/ Acl.IntegrationTests/ # OZ_BASE is supplied at run time (the OpenZaak container IP โ€” see run-integration.sh, # which passes `-e OZ_BASE=http://:8000`; a single-label host is not URL-valid). ENTRYPOINT ["dotnet", "test", "Acl.IntegrationTests/Acl.IntegrationTests.csproj", \ "-c", "Release", "--filter", "Category=Integration"]