milvus/tests/python_client/deploy
zhuwenxing fd5412c45a
[skip ci]Fix scripts to export error log (#10691)
Signed-off-by: zhuwenxing <wenxing.zhu@zilliz.com>
2021-10-26 20:32:24 +08:00
..
scripts [skip ci] Format code style (#9325) 2021-10-06 17:10:28 +08:00
cluster-values.yaml [skip ci]Add helm deploy test (#9715) 2021-10-13 06:50:32 +08:00
README.md [skip ci]Update readme for deploy test (#10615) 2021-10-25 22:34:20 +08:00
requirements.txt [skip ci]Update pymilvus version (#9528) 2021-10-09 10:06:58 +08:00
run.sh Add deploy test (#7539) 2021-09-09 14:32:27 +08:00
test.sh [skip ci]Fix scripts to export error log (#10691) 2021-10-26 20:32:24 +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 RC)
    2. Insert data
    3. Search
    4. Stop Milvus
    5. Deploy Milvus (Latest RC)
    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