milvus/tests/python_client/deploy
yellow-shine 241c71fdde
enhance: use docker compose instead of docker-compose (#35208)
https://github.com/milvus-io/milvus/issues/35209

---------

Signed-off-by: Yellow Shine <sammy.huang@zilliz.com>
2024-08-02 19:32:32 +08:00
..
cluster [skip e2e]Add docker-compose.yml for deploy test (#14106) 2021-12-23 22:13:32 +08:00
scripts [skip e2e]Skip creating index when it was already created (#27849) 2023-10-23 11:48:09 +08:00
standalone [skip e2e]Add docker-compose.yml for deploy test (#14106) 2021-12-23 22:13:32 +08:00
testcases test: remove re-building index (#32534) 2024-04-28 14:19:25 +08:00
__init__.py [test]Refine deploy test (#18212) 2022-07-11 17:08:25 +08:00
base.py [test]Refine deploy test (#18212) 2022-07-11 17:08:25 +08:00
check_healthy.sh enhance: use docker compose instead of docker-compose (#35208) 2024-08-02 19:32:32 +08:00
cluster-values.yaml enhance:[skip e2e]add some custom deploy config back (#31716) 2024-03-29 18:15:17 +08:00
common.py Remove ANNOY index type (#23189) 2023-04-04 16:30:27 +08:00
conftest.py [test]Refine deploy test (#18212) 2022-07-11 17:08:25 +08:00
milvus_crd.yaml test: add channel exclusive balance test and resource group test (#33093) 2024-05-31 13:55:52 +08:00
monitor_rolling_update.py [test]Wait index building complete before rolling update (#26377) 2023-08-17 16:38:18 +08:00
README.md enhance: use docker compose instead of docker-compose (#35208) 2024-08-02 19:32:32 +08:00
requirements.txt test: fix vulnerability of python lib (#32109) 2024-04-10 17:53:18 +08:00
run.sh [skip e2e]Fix typo in script (#13801) 2021-12-20 19:52:51 +08:00
standalone-values.yaml enhance:[skip e2e]add some custom deploy config back (#31716) 2024-03-29 18:15:17 +08:00
test.sh enhance: use docker compose instead of docker-compose (#35208) 2024-08-02 19:32:32 +08:00
utils.sh enhance: use docker compose instead of docker-compose (#35208) 2024-08-02 19:32:32 +08:00

Overview

To test deployment by docker-compose(Both standalone and cluster)

  • re-install milvus to check data persistence
    1. Deploy Milvus
    2. Insert data
    3. Build index
    4. Search
    5. Stop Milvus
    6. Repeat from step #1
  • upgrade milvus to check data compatibility
    1. Deploy Milvus (Previous Release)
    2. Insert data
    3. Search
    4. Stop Milvus
    5. Deploy Milvus (Latest Release/Build)
    6. Build index
    7. Search

Project structure

.
├── README.md
├── cluster # dir to deploy cluster
│   ├── logs # dir to save logs
│   └──docker-compose.yml
├── standalone # dir to deploy standalone
│   ├── logs # dir to save logs
│   └──docker-compose.yml
├── scripts
│   ├── action_after_upgrade.py
│   ├── action_before_upgrade.py
│   ├── action_reinstall.py
│   └── utils.py
├── cluster-values.yaml # config for helm deployment
├── test.sh # script to run a single task
└── run.sh # script to run all tasks

Usage

Make sure you have installed docker,docker-compose and pymilvus! For different version, you should modify the value of latest_tag, latest_rc_tag and Release. Password of root is needed for deleting volumes dir.

single test task

$ bash test.sh -m ${Mode} -t ${Task} -p ${Password}
# Mode, the mode of milvus deploy. standalone or cluster"
# Task, the task type of test. reinstall or upgrade
# Password, the password of root"

run all tasks

$ bash run.sh -p ${Password}
# Password, the password of root"

Integrate deploy test into CI

Provides a way to periodically run docker compose deployment tests through GitHub actiondeploy-test

  • Parallel testing for four deployment scenarios
  • Upload logs to artifacts for further debug
  • Email notification for test failure
  • Support helm deployment tests
  • Cover more detail information in email notification