This repository has been archived by the owner on Nov 10, 2023. It is now read-only.
Supports natsmq #800
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
# This workflow is triggered on any golang code, makefile, workflow changes to repository. | |
on: | |
push: | |
paths-ignore: | |
- 'docs/**' | |
pull_request: | |
paths-ignore: | |
- 'docs/**' | |
jobs: | |
code-check: | |
name: Code Check | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: true | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: 1.16 | |
- name: Cache Go Mod Pkg | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/.cache/go-build | |
~/go/pkg/mod | |
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: ${{ runner.os }}-go- | |
- name: Code Check | |
run: | | |
make code-check | |
unit-test: | |
name: Unit Test | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: 1.16 | |
- name: Cache Go Mod Pkg | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/.cache/go-build | |
~/go/pkg/mod | |
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: ${{ runner.os }}-go- | |
- name: Cache TestBin | |
uses: actions/cache@v2 | |
with: | |
path: testbin | |
key: ubuntu${{ matrix.ubuntu }}-testbin | |
restore-keys: ubuntu${{ matrix.ubuntu }}-testbin | |
- name: Kubernetes KinD Cluster | |
uses: container-tools/kind-action@v1 | |
- name: Unit Test | |
run: | | |
make go-generate | |
make test-only | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v2 | |
with: | |
files: ./cover.out | |
name: ubuntu-${{ matrix.ubuntu }}-unittests | |
sit: | |
name: System Integration Test | |
runs-on: ubuntu-latest | |
timeout-minutes: 40 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Maximize build space | |
uses: easimon/maximize-build-space@v7 | |
with: | |
root-reserve-mb: 20480 | |
swap-size-mb: 1024 | |
remove-dotnet: 'true' | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Prepare Docker Images | |
run: | | |
make sit-prepare-images | |
- name: Setup KinD Cluster | |
uses: engineerd/setup-kind@v0.5.0 | |
with: | |
version: "v0.11.1" | |
- name: Deploy to KinD | |
run: | | |
make sit-deploy | |
- name: Integration Test | |
run: | | |
make sit-test | |
sit-mixture: | |
name: System Integration Test for Mixture | |
runs-on: ubuntu-latest | |
timeout-minutes: 40 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Maximize build space | |
uses: easimon/maximize-build-space@v7 | |
with: | |
root-reserve-mb: 20480 | |
swap-size-mb: 1024 | |
remove-dotnet: 'true' | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Prepare Docker Images | |
run: | | |
make sit-prepare-images | |
- name: Setup KinD Cluster | |
uses: engineerd/setup-kind@v0.5.0 | |
with: | |
version: "v0.11.1" | |
- name: Deploy to KinD | |
run: | | |
make sit-deploy | |
- name: Integration Test | |
run: | | |
make sit-test test_mode=mixture | |
sit-new-feature: | |
name: System Integration Test for New Feature | |
runs-on: ubuntu-latest | |
timeout-minutes: 40 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Prepare Docker Images | |
run: | | |
make sit-prepare-images | |
- name: Setup KinD Cluster | |
uses: engineerd/setup-kind@v0.5.0 | |
with: | |
version: "v0.11.1" | |
- name: Deploy to KinD | |
run: | | |
make sit-deploy | |
- name: Test NewFeature | |
run: | | |
make sit-test test_mode=feature | |
sit-milvus-upgrade: | |
name: System Integration Test for Milvus Upgrade | |
runs-on: ubuntu-latest | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Prepare Docker Images | |
run: | | |
make sit-prepare-images | |
- name: Setup KinD Cluster | |
uses: engineerd/setup-kind@v0.5.0 | |
with: | |
version: "v0.11.1" | |
- name: Deploy to KinD | |
run: | | |
make sit-deploy | |
- name: Test Upgrade | |
run: | | |
make test-milvus-upgrade | |
sit-upgrade: | |
name: System Integration Test for Upgrade | |
runs-on: ubuntu-latest | |
timeout-minutes: 40 | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu18.04] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Setup KinD Cluster | |
uses: engineerd/setup-kind@v0.5.0 | |
with: | |
version: "v0.11.1" | |
- name: Prepare Docker Images | |
run: | | |
make sit-prepare-images | |
make sit-load-images | |
- name: Test Upgrade | |
run: | | |
make test-upgrade |