From 32c8eeebee88c515d55d0b1b39e2b703fd02af29 Mon Sep 17 00:00:00 2001 From: Derek Ho Date: Fri, 23 Feb 2024 14:08:53 -0500 Subject: [PATCH 1/4] Add verify binary installation workflow and add loose to bootstrapping Signed-off-by: Derek Ho --- .github/workflows/cypress-workflow.yml | 2 +- .github/workflows/release-workflow.yml | 2 +- .github/workflows/unit-tests-workflow.yml | 2 +- .../workflows/verify-binary-installation.yml | 55 +++++++++++++++++++ 4 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/verify-binary-installation.yml diff --git a/.github/workflows/cypress-workflow.yml b/.github/workflows/cypress-workflow.yml index 7469bdb68..1bd8083e8 100644 --- a/.github/workflows/cypress-workflow.yml +++ b/.github/workflows/cypress-workflow.yml @@ -63,7 +63,7 @@ jobs: - name: Bootstrap OpenSearch Dashboards with plugin run: | cd OpenSearch-Dashboards/plugins/alerting-dashboards-plugin - yarn osd bootstrap + yarn osd bootstrap --single-version=loose - name: Run OpenSearch Dashboards server run: | cd OpenSearch-Dashboards diff --git a/.github/workflows/release-workflow.yml b/.github/workflows/release-workflow.yml index 01f035e78..f50a6e7e3 100644 --- a/.github/workflows/release-workflow.yml +++ b/.github/workflows/release-workflow.yml @@ -44,7 +44,7 @@ jobs: mkdir -p Opensearch-Dashboards/plugins mv alerting-dashboards-plugin Opensearch-Dashboards/plugins cd Opensearch-Dashboards/plugins/alerting-dashboards-plugin - yarn osd bootstrap + yarn osd bootstrap --single-version=loose - name: Build plugin id: build_zip run: | diff --git a/.github/workflows/unit-tests-workflow.yml b/.github/workflows/unit-tests-workflow.yml index b733e9584..33f12e380 100644 --- a/.github/workflows/unit-tests-workflow.yml +++ b/.github/workflows/unit-tests-workflow.yml @@ -42,7 +42,7 @@ jobs: cd ./OpenSearch-Dashboards/ su `id -un 1000` -c "source $NVM_DIR/nvm.sh && nvm use && node -v && yarn -v && cd ./plugins/alerting-dashboards-plugin && - whoami && yarn osd bootstrap && yarn build && yarn run test:jest --coverage" + whoami && yarn osd bootstrap --single-version=loose && yarn build && yarn run test:jest --coverage" - name: Uploads coverage uses: codecov/codecov-action@v1 diff --git a/.github/workflows/verify-binary-installation.yml b/.github/workflows/verify-binary-installation.yml new file mode 100644 index 000000000..238217e42 --- /dev/null +++ b/.github/workflows/verify-binary-installation.yml @@ -0,0 +1,55 @@ +name: 'Install Dashboards with Plugin via Binary' + +on: [push, pull_request] +env: + OPENSEARCH_VERSION: '3.0.0' + CI: 1 + # avoid warnings like "tput: No value for $TERM and no -T specified" + TERM: xterm + +jobs: + verify-binary-installation: + name: Run binary installation + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest] + # TODO: add windows support when OSD core is stable on windows + runs-on: ${{ matrix.os }} + steps: + - name: Checkout Branch + uses: actions/checkout@v3 + + - name: Set env + run: | + opensearch_version=$(node -p "require('./opensearch_dashboards.json').opensearchDashboardsVersion") + plugin_version=$(node -p "require('./opensearch_dashboards.json').version") + echo "OPENSEARCH_VERSION=$opensearch_version" >> $GITHUB_ENV + echo "PLUGIN_VERSION=$plugin_version" >> $GITHUB_ENV + shell: bash + + - name: Run Opensearch with security + uses: derek-ho/start-opensearch@v2 + with: + opensearch-version: ${{ env.OPENSEARCH_VERSION }} + security-enabled: false + + - name: Run Dashboard with Security Dashboards Plugin + id: setup-dashboards + uses: derek-ho/setup-opensearch-dashboards@v1 + with: + plugin_name: alerting-dashboards-plugin + built_plugin_name: alerting-dashboards + install_zip: true + + - name: Start the binary + run: | + nohup ./bin/opensearch-dashboards & + working-directory: ${{ steps.setup-dashboards.outputs.dashboards-binary-directory }} + shell: bash + + - name: Health check + run: | + timeout 300 bash -c 'while [[ "$(curl http://localhost:5601/api/status | jq -r '.status.overall.state')" != "green" ]]; do sleep 5; done' + shell: bash + From 222c7c01c78b6b1c2744709aaa892237af244314 Mon Sep 17 00:00:00 2001 From: Derek Ho Date: Fri, 23 Feb 2024 14:26:41 -0500 Subject: [PATCH 2/4] Fix built zip name Signed-off-by: Derek Ho --- .github/workflows/verify-binary-installation.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/verify-binary-installation.yml b/.github/workflows/verify-binary-installation.yml index 238217e42..89ce4e4cf 100644 --- a/.github/workflows/verify-binary-installation.yml +++ b/.github/workflows/verify-binary-installation.yml @@ -39,7 +39,7 @@ jobs: uses: derek-ho/setup-opensearch-dashboards@v1 with: plugin_name: alerting-dashboards-plugin - built_plugin_name: alerting-dashboards + built_plugin_name: alertingDashboards install_zip: true - name: Start the binary From afb97071a0b69adcb907f81f008878a93b7a62ba Mon Sep 17 00:00:00 2001 From: Derek Ho Date: Fri, 23 Feb 2024 14:47:44 -0500 Subject: [PATCH 3/4] Remove references to security Signed-off-by: Derek Ho --- .github/workflows/verify-binary-installation.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/verify-binary-installation.yml b/.github/workflows/verify-binary-installation.yml index 89ce4e4cf..885765f4a 100644 --- a/.github/workflows/verify-binary-installation.yml +++ b/.github/workflows/verify-binary-installation.yml @@ -28,13 +28,13 @@ jobs: echo "PLUGIN_VERSION=$plugin_version" >> $GITHUB_ENV shell: bash - - name: Run Opensearch with security + - name: Run Opensearch uses: derek-ho/start-opensearch@v2 with: opensearch-version: ${{ env.OPENSEARCH_VERSION }} security-enabled: false - - name: Run Dashboard with Security Dashboards Plugin + - name: Run Dashboard id: setup-dashboards uses: derek-ho/setup-opensearch-dashboards@v1 with: From 378074214279447b14226f2e7ddd7c1fbf77809b Mon Sep 17 00:00:00 2001 From: Derek Ho Date: Fri, 22 Mar 2024 10:28:50 -0400 Subject: [PATCH 4/4] Add loose Signed-off-by: Derek Ho --- .github/workflows/unit-tests-workflow.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-tests-workflow.yml b/.github/workflows/unit-tests-workflow.yml index 33f12e380..be7169715 100644 --- a/.github/workflows/unit-tests-workflow.yml +++ b/.github/workflows/unit-tests-workflow.yml @@ -84,7 +84,7 @@ jobs: - name: Bootstrap plugin/opensearch-dashboards run: | cd OpenSearch-Dashboards/plugins/alerting-dashboards-plugin - yarn osd bootstrap + yarn osd bootstrap --single-version=loose - name: Run window tests if: ${{ matrix.os == 'windows-latest' }} run: |