Skip to content

Integration test: reconfig app org - #285

Open
gengur wants to merge 1 commit into
hyperledger:mainfrom
gengur:reconfig_app_org
Open

Integration test: reconfig app org#285
gengur wants to merge 1 commit into
hyperledger:mainfrom
gengur:reconfig_app_org

Conversation

@gengur

@gengur gengur commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Type of change

Integration test

Description

Submit a reconfig TX on the orderer+committer docker network.

Related issues

#280 (comment))

@gengur
gengur marked this pull request as draft August 25, 2026 10:07
@gengur gengur changed the title Integration test: reconfig app org #280 Integration test: reconfig app org Aug 25, 2026
@tock-ibm
tock-ibm requested a lite review from Copilot August 25, 2026 13:12

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Adds an end-to-end integration test that spins up the orderer+committer Docker Compose network and submits a channel reconfiguration transaction to add an application org, verifying the config update is committed and delivered.

Changes:

  • Added a new Go integration test covering reconfig (add peer-org-1) and post-reconfig block delivery verification.
  • Added a dedicated Armageddon network config (arma_config.yaml) for the integration test network topology.
  • Updated Docker Compose and Go module dependencies to support the new test setup (notably testcontainers compose usage).

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 6 comments.

File Description
integration/test/reconfig_app_org_test.go New integration test that sets up the network, submits config update, and verifies delivery/commit behavior.
integration/test/ordererconfig/arma_config.yaml New network configuration used by the integration test.
integration/test/docker-compose.yaml Adjusted committer/loadgen/explorer commands/formatting to align with the test’s compose flow.
go.mod / go.sum Dependency updates (incl. testcontainers-go upgrade) required by the new integration test dependencies.
Suppressed comments (1)

integration/test/reconfig_app_org_test.go:258

  • After removing the duplicate utils import, this call should use the remaining utils import name (ordererutils) so the code compiles.
	knownCertPaths, err := utils.PemFilesFromDir(knowncertsDir)

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread integration/test/reconfig_app_org_test.go Outdated
Comment thread integration/test/reconfig_app_org_test.go Outdated
Comment thread integration/test/reconfig_app_org_test.go
Comment thread integration/test/reconfig_app_org_test.go Outdated
Comment thread integration/test/reconfig_app_org_test.go
Comment thread integration/test/ordererconfig/arma_config.yaml
@gengur
gengur force-pushed the reconfig_app_org branch 12 times, most recently from c12d76e to 93aafe3 Compare August 26, 2026 15:11
Comment thread Makefile Outdated
@gengur
gengur force-pushed the reconfig_app_org branch 2 times, most recently from 1443901 to 7aa0096 Compare August 31, 2026 06:02
@gengur
gengur requested a review from tock-ibm August 31, 2026 06:03
@gengur
gengur force-pushed the reconfig_app_org branch 9 times, most recently from ab9cc19 to 67c9fdc Compare September 1, 2026 09:39
@gengur
gengur force-pushed the reconfig_app_org branch 2 times, most recently from 3359adf to 7c5e092 Compare September 2, 2026 05:28
Comment thread .github/workflows/e2e.yml Outdated
EXPLORER_IMAGE: ${{ steps.images.outputs.explorer_image }}
FABRIC_X_BIN: ${{ github.workspace }}/integration/test/.build/fabric-x/bin
SKIP_CLEANUP_PROMPT: "1"
ENABLE_EXPLORER: "false"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

why do we disable it? we need to ensure it's compatibility too.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I inserted it by mistake and have restored it

Comment thread integration/test/build-e2e.sh Outdated
Comment on lines +246 to +254
EXPLORER_DIR="${BUILD_DIR}/fabric-x-block-explorer/docker/images/release"
checkout_source "${EXPLORER_REPO}" "${EXPLORER_REF}" "${EXPLORER_DIR}" "${EXPLORER_LOCAL_PATH:-}" "fabric-x-block-explorer"

EXPLORER_IMAGE="localhost/${EXPLORER_IMAGE_NAME}:${EXPLORER_REF}"
echo "Building ${EXPLORER_IMAGE_NAME} image from ${EXPLORER_DIR}..."
docker build -t "${EXPLORER_IMAGE}" "${EXPLORER_DIR}"
docker build -t "${EXPLORER_IMAGE}" "${EXPLORER_DIR}" || {
echo "WARNING: ${EXPLORER_IMAGE_NAME} image build failed, continuing without it (setting ENABLE_EXPLORER=false)"
export ENABLE_EXPLORER=false
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

not sure why we are changing these?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The Docker build for the Explorer image fails because there is no Dockerfile in the project root. This is the workaround

Comment on lines +98 to +104
- "4001:4001" # Sidecar deliver (loadgen connects here)
- "7001:7001" # Coordinator gRPC
- "2114:2114" # Sidecar Prometheus metrics
- "2115:2115" # Verifier Prometheus metrics
- "2116:2116" # VC Prometheus metrics (verified in Step 9)
- "2117:2117" # Query Prometheus metrics
- "2119:2119" # Coordinator Prometheus metrics

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

are these intendation changes necessary?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

restored the original version

Comment thread .github/workflows/e2e.yml Outdated
EXPLORER_IMAGE: ${{ steps.images.outputs.explorer_image }}
FABRIC_X_BIN: ${{ github.workspace }}/integration/test/.build/fabric-x/bin
SKIP_CLEANUP_PROMPT: "1"
ENABLE_EXPLORER: "false"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This needs to be in the other workflow

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

fixed

ORDERER_IMAGE: ${{ steps.images.outputs.orderer_image }}
COMMITTER_IMAGE: ${{ steps.images.outputs.committer_image }}
SKIP_CLEANUP_PROMPT: "1"
run: ./integration/test/run-reconfig-test.sh

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Lets first run a no-op command, like print the arguments and a message, to verify all steps up to here are ok. Then, we merge only the manual flow, and after it is in main, we point it to the actual test.
IE first a no-op ./integration/test/run-reconfig-test.sh

tock-ibm pushed a commit that referenced this pull request Sep 3, 2026
…#293)

#### Type of change

Integration test

#### Description

Add the reconfiguration workflow

#### Related issues

issue #285

Signed-off-by: Gurevich.Genady <genadyg@il.ibm.com>
@gengur
gengur marked this pull request as ready for review September 3, 2026 12:59
@gengur
gengur requested a review from tock-ibm September 3, 2026 12:59
@gengur
gengur force-pushed the reconfig_app_org branch 4 times, most recently from f64bed5 to 0fc57ba Compare September 3, 2026 13:20
Signed-off-by: Gurevich.Genady <genadyg@il.ibm.com>
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.

4 participants