Skip to content

ci: add api secondary restore test - #1155

Open
huanghaoyuanhhy wants to merge 1 commit into
zilliztech:mainfrom
huanghaoyuanhhy:secondary-api-ci
Open

ci: add api secondary restore test#1155
huanghaoyuanhhy wants to merge 1 commit into
zilliztech:mainfrom
huanghaoyuanhhy:secondary-api-ci

Conversation

@huanghaoyuanhhy

Copy link
Copy Markdown
Collaborator

Summary

Wire the SECONDARY-tagged pytest test_restore_secondary.py into CI so the HTTP-API
secondary-restore flow is actually exercised. The test had never run: the api-test matrix
only passes --tags {L0,L1,L2,RELEASE,RBAC} and pytest-tags deselects SECONDARY tests.
It was also broken in several ways that a real run exposes:

  • res["code"] == 200 raised KeyError on success (success code=0 is omitted by omitempty)
  • source_cluster_id/target_cluster_id never bound to sourceClusterID/targetClusterID
  • data was not indexed/loaded, so with_index_extra had nothing to capture and the load
    state was not replicated downstream

Changes

  • tests/testcases/test_restore_secondary.py: fix the success assertion and the
    restore_secondary field names; add with_index_extra + format: binlog to the create
    payload; prepare indexed/loaded data; assert the backup carries the index extra
    attributes (field_id/user_index_params); verify the restored collections and data
    on the downstream (19500) in addition to the upstream.
  • tests/conftest.py: add --backup_uri_secondary and --secondary_milvus_uri options
    so the test can reach a downstream-pointed backup server and the downstream Milvus.
  • .github/workflows/main.yaml: new test-backup-restore-secondary-api job that deploys
    the existing dual-cluster deployment/secondary environment, runs inittarget to
    register the downstream, starts two backup servers (upstream :8081 for create,
    downstream :8082 for restore secondary), and runs pytest --tags SECONDARY.

/kind improvement

Signed-off-by: huanghaoyuanhhy <haoyuan.huang@zilliz.com>
@sre-ci-robot sre-ci-robot added the kind/improvement Changes related to something improve, likes ut and code refactor label Aug 13, 2026
@sre-ci-robot

Copy link
Copy Markdown
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: huanghaoyuanhhy

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 42.50%. Comparing base (2309945) to head (d484871).

❌ Your project status has failed because the head coverage (42.50%) is below the target coverage (80.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1155   +/-   ##
=======================================
  Coverage   42.50%   42.50%           
=======================================
  Files         136      136           
  Lines       12181    12181           
=======================================
  Hits         5178     5178           
  Misses       6624     6624           
  Partials      379      379           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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

Labels

approved dco-passed kind/improvement Changes related to something improve, likes ut and code refactor size/L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants