Updated affiliation for @dblock. #2611
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: Integration tests | |
on: [push, pull_request] | |
jobs: | |
integration-opensearch: | |
name: Integration OpenSearch | |
runs-on: ubuntu-latest | |
env: | |
plugins-directory: /tmp/opensearch-plugins | |
strategy: | |
fail-fast: false | |
matrix: | |
# 1.0.1 is skipped because it doesn't have a tag in OpenSearch repo, we can't check out to compile plugins | |
version: [2.2.0, 2.1.0, 2.0.0, 1.3.1, 1.3.0, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.0, 1.0.0] | |
steps: | |
# Due to https://github.com/opensearch-project/project-website/issues/737 | |
# No plugins released for versions 1.0.x , so we need to compile plugins on our own to run tests properly | |
# Compiled plugins are copied to ${plugins-directory} where picked up by the test framework | |
# Versions of OpenSearch starting 1.1.0 are able to download plugins from the Internet | |
- name: Clone OpenSearch repository at tag ${{ matrix.version }} | |
if: ${{ matrix.version == '1.0.0' }} | |
uses: actions/checkout@v3 | |
with: | |
repository: opensearch-project/OpenSearch | |
ref: ${{ matrix.version }} | |
path: opensearch | |
- name: Make plugins directory | |
if: ${{ matrix.version == '1.0.0' }} | |
run: mkdir ${{ env.plugins-directory }} | |
- name: Build plugins | |
if: ${{ matrix.version == '1.0.0' }} | |
run: | | |
cd opensearch | |
PluginList=("analysis-icu" "analysis-kuromoji" "analysis-nori" "analysis-phonetic" "ingest-attachment" "mapper-murmur3") | |
for plugin in ${PluginList[*]}; do | |
./gradlew :plugins:$plugin:assemble -Dbuild.snapshot=false | |
cp plugins/$plugin/build/distributions/$plugin-${{ matrix.version }}.zip ${{ env.plugins-directory }} | |
done | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- uses: actions/setup-dotnet@v1 | |
with: | |
dotnet-version: | | |
5.0.x | |
6.0.x | |
- uses: actions/cache@v2 | |
with: | |
path: ~/.nuget/packages | |
key: ${{ runner.os }}-nuget-${{ hashFiles('**/packages.lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-nuget- | |
- run: dotnet nuget locals all --clear | |
name: Clear nuget cache | |
- run: "./build.sh integrate ${{ matrix.version }} readonly,writable random:test_only_one --report" | |
name: Integration Tests | |
- name: Upload test report | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: report-${{ matrix.version }} | |
path: build/output/* |