milvus/tests/python_client/deploy
2024-08-02 19:37:09 +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: docker-compose first then try to use docker compose (#35227) 2024-08-02 19:37:09 +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 [skip e2e]Update config of milvus crd for rolling update (#27126) 2023-09-15 15:55:21 +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: docker-compose first then try to use docker compose (#35227) 2024-08-02 19:37:09 +08:00
requirements.txt test: fix vulnerability of python lib (#32109) 2024-04-10 17:53:18 +08:00
run.sh
standalone-values.yaml enhance:[skip e2e]add some custom deploy config back (#31716) 2024-03-29 18:15:17 +08:00
test.sh enhance: docker-compose first then try to use docker compose (#35227) 2024-08-02 19:37:09 +08:00
utils.sh enhance: docker-compose first then try to use docker compose (#35227) 2024-08-02 19:37:09 +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