test(infra): port-NAT opc-plc fixture for the NAT browse tests; wire OPCUA_NAT_ENDPOINT into CI (#813)
Docker/nat/docker-compose.yml (stack /opt/otopcua-opcuaclient-nat on 10.100.0.35, project: lmxopcua label): opc-plc 2.14.10 advertising --ph=otopcua-opc-plc-nat-private.invalid on internal 50000, published on 50010, so every advertised URL is unreachable on host AND port. Deployed; NatPublishedEndpointBrowseTests 3/3 against opc.tcp://10.100.0.35:50010 (and the secure case positive once, with the fixture cert temporarily trusted). CI: integration-fixtures.sh starts a throwaway otopcua-ci-opcplc-nat (50110->50000) and exports OPCUA_NAT_ENDPOINT; v2-e2e.yml points it at the shared stack. infra/README.md, scripts/ci/README.md and the fixture README document it.
This commit is contained in:
@@ -49,6 +49,9 @@ jobs:
|
||||
env:
|
||||
E2E_PROJECTS: >-
|
||||
Driver.Modbus Driver.S7 Driver.OpcUaClient Driver.OpcUaClient.Browser
|
||||
# #813: the port-NAT opc-plc stack (/opt/otopcua-opcuaclient-nat). Not in the probe's required ports —
|
||||
# NatPublishedEndpointBrowseTests TCP-probe it themselves and skip if it is down.
|
||||
OPCUA_NAT_ENDPOINT: opc.tcp://10.100.0.35:50010
|
||||
run: |
|
||||
set -euo pipefail
|
||||
for p in $E2E_PROJECTS; do
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
# it gets no slower or flakier. This workflow builds ONLY the five fixture-backed *.IntegrationTests
|
||||
# projects and runs them against THROWAWAY containers that the job itself creates and removes
|
||||
# (scripts/ci/integration-fixtures.sh): SQL Server 2022, PostgreSQL 17 (seeded), QuestDB and the public
|
||||
# opc-plc image. Nothing here touches the shared 10.100.0.35 host, so CI does not depend on that box.
|
||||
# opc-plc image (twice: plain, and a port-NAT copy behind OPCUA_NAT_ENDPOINT for the #806/#813 NAT browse tests).
|
||||
# Nothing here touches the shared 10.100.0.35 host, so CI does not depend on that box.
|
||||
#
|
||||
# Explicit `docker run` steps rather than a `services:` block: whether the Gitea act_runner honours
|
||||
# `services:` (and makes service ports reachable from the job) is not documented in infra/README.md §10,
|
||||
@@ -79,7 +80,7 @@ jobs:
|
||||
if: failure()
|
||||
continue-on-error: true
|
||||
run: |
|
||||
for c in otopcua-ci-mssql otopcua-ci-pg otopcua-ci-questdb otopcua-ci-opcplc; do
|
||||
for c in otopcua-ci-mssql otopcua-ci-pg otopcua-ci-questdb otopcua-ci-opcplc otopcua-ci-opcplc-nat; do
|
||||
echo "=== $c ==="; docker logs --tail 40 "$c" 2>&1 || true
|
||||
done
|
||||
- name: stop fixtures
|
||||
|
||||
Reference in New Issue
Block a user