Skip to content

REP-5306 Migrate integration tests to use externally-provisioned clusters. #233

REP-5306 Migrate integration tests to use externally-provisioned clusters.

REP-5306 Migrate integration tests to use externally-provisioned clusters. #233

Workflow file for this run

on:
push:
branches:
- '*'
tags-ignore:
- '*'
pull_request:
jobs:
basics:
strategy:
fail-fast: false
matrix:
mongodb_version:
- '4.2'
- '4.4'
- '5.0'
- '6.0'
- '7.0'
- '8.0'
topology:
- name: replset
srcConnStr: mongodb://localhost:27020,localhost:27021,localhost:27022
dstConnStr: mongodb://localhost:27030,localhost:27031,localhost:27032
- name: sharded
args: --sharded 2
srcConnStr: mongodb://localhost:27020
dstConnStr: mongodb://localhost:27030
# There seems no good reason to test on other OSes … ?
runs-on: ubuntu-latest
steps:
- name: Install packages
run: ${{ matrix.os.setup }}
- name: Install m
run: npm install -g m mongosh
- name: Activate MongoDB ${{ matrix.mongodb_version }}
run: yes | m ${{ matrix.mongodb_version }}
- name: Install mtools
run: pipx install 'mtools[all]'
- name: Check out repository
uses: actions/checkout@v4
- name: Fetch Go ${{ matrix.go_version }}
uses: actions/setup-go@v5
with:
go-version: stable
- name: Build
run: go build main/migration_verifier.go
- name: Start clusters
run: |-
{
echo "mlaunch init --port 27020 --dir src --replicaset ${{ matrix.topology.args }}"
echo "mlaunch init --port 27030 --dir dst --replicaset ${{ matrix.topology.args }}"
echo "mlaunch init --port 27040 --dir meta --replicaset --nodes 1"
} | parallel
- name: Test
run: go test -v ./...
env:
MVTEST_SRC: ${{matrix.topology.srcConnStr}}
MVTEST_DST: ${{matrix.topology.dstConnStr}}
MVTEST_META: mongodb://localhost:27040