ING-1343: Update server versions used in CI testing #14
This file contains hidden or 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: Run Dino Tests | |
| permissions: | |
| contents: read | |
| packages: read | |
| on: | |
| push: | |
| tags: | |
| - v* | |
| branches: | |
| - master | |
| pull_request: | |
| jobs: | |
| test: | |
| name: Dino Test | |
| strategy: | |
| matrix: | |
| server: | |
| - 8.0.0-3534 | |
| - 7.6.3 | |
| - 7.2.6 | |
| - 7.1.6 | |
| - 7.0.5 | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Install cbdinocluster | |
| run: | | |
| mkdir -p "$HOME/bin" | |
| wget -nv -O $HOME/bin/cbdinocluster https://github.com/couchbaselabs/cbdinocluster/releases/download/v0.0.94/cbdinocluster-linux-amd64 | |
| chmod +x $HOME/bin/cbdinocluster | |
| echo "$HOME/bin" >> $GITHUB_PATH | |
| - name: Initialize cbdinocluster | |
| run: | | |
| cbdinocluster -v init --auto | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Start couchbase cluster | |
| env: | |
| CLUSTERCONFIG: | | |
| nodes: | |
| - count: 3 | |
| version: ${{ matrix.server }} | |
| services: [kv, n1ql, index, fts, cbas] | |
| docker: | |
| kv-memory: 512 | |
| index-memory: 1024 | |
| fts-memory: 1024 | |
| run: | | |
| CBDC_ID=$(cbdinocluster -v alloc --def="${CLUSTERCONFIG}") | |
| cbdinocluster -v buckets add ${CBDC_ID} default --ram-quota-mb=100 --flush-enabled=true --num-replicas=2 | |
| cbdinocluster -v collections add ${CBDC_ID} default _default test | |
| CBDC_CONNSTR=$(cbdinocluster -v connstr $CBDC_ID) | |
| echo "CBDC_ID=$CBDC_ID" >> "$GITHUB_ENV" | |
| echo "CBDC_CONNSTR=$CBDC_CONNSTR" >> "$GITHUB_ENV" | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: 1.23 | |
| - name: Initialize deps | |
| run: go get | |
| - name: Generate mocks | |
| run: | | |
| go install github.com/matryer/[email protected] | |
| go generate | |
| - name: Run tests | |
| timeout-minutes: 40 | |
| env: | |
| # CBDC_ID: from above | |
| # CBDC_CONNSTR: from above | |
| GCBDINOID: ${{ env.CBDC_ID }} | |
| GCBCONNSTR: ${{ env.CBDC_CONNSTR }} | |
| run: | | |
| go test ./... -v -race -p 1 -run "Dino$" | |
| - name: Collect couchbase logs | |
| timeout-minutes: 10 | |
| if: failure() | |
| run: | | |
| mkdir -p ./logs | |
| cbdinocluster -v collect-logs $CBDC_ID ./logs | |
| - name: Upload couchbase logs | |
| if: failure() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: cbcollect-logs-${{ matrix.server }} | |
| path: ./logs/* | |
| retention-days: 5 |