diff --git a/.github/workflows/dashboards-reports-test-and-build-workflow.yml b/.github/workflows/dashboards-reports-test-and-build-workflow.yml index bb70b0eb..ed22a83a 100644 --- a/.github/workflows/dashboards-reports-test-and-build-workflow.yml +++ b/.github/workflows/dashboards-reports-test-and-build-workflow.yml @@ -8,8 +8,9 @@ env: OPENSEARCH_VERSION: '1.3' OPENSEARCH_PLUGIN_VERSION: 1.3.7.0 + jobs: - build: + linux-build: runs-on: ubuntu-latest steps: - name: Checkout Plugin @@ -20,21 +21,26 @@ jobs: with: repository: opensearch-project/Opensearch-Dashboards ref: ${{ env.OPENSEARCH_VERSION }} - path: OpenSearch-Dashboards - - - name: Setup Node - uses: actions/setup-node@v1 - with: - node-version: "10.24.1" + path: dashboards-reports/OpenSearch-Dashboards + + - name: Get node version + id: versions_step + run: + echo "::set-output name=node_version::$(node -p "(require('./OpenSearch-Dashboards/package.json').engines.node).match(/[.0-9]+/)[0]")" + - name: Setup Node + uses: actions/setup-node@v1 + with: + node-version: ${{ steps.versions_step.outputs.node_version }} + registry-url: 'https://registry.npmjs.org' - name: Move Dashboards Reports to Plugins Dir - run: mv dashboards-reports ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} + run: mv dashboards-reports OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} - name: Add Chromium Binary to Reporting for Testing run: | sudo apt update sudo apt install -y libnss3-dev fonts-liberation libfontconfig1 - cd ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} + cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} wget https://github.com/opendistro-for-elasticsearch/kibana-reports/releases/download/chromium-1.12.0.0/chromium-linux-x64.zip unzip chromium-linux-x64.zip rm chromium-linux-x64.zip @@ -44,32 +50,31 @@ jobs: with: timeout_minutes: 30 max_attempts: 3 - command: cd ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}; yarn osd bootstrap + command: cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}; yarn osd bootstrap - name: Test uses: nick-invision/retry@v1 with: timeout_minutes: 30 max_attempts: 3 - command: cd ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}; yarn test --coverage + command: cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}; yarn test --coverage - name: Upload coverage uses: codecov/codecov-action@v1 with: flags: dashboards-reports - directory: ../OpenSearch-Dashboards/plugins/ + directory: OpenSearch-Dashboards/plugins/ token: ${{ secrets.CODECOV_TOKEN }} - name: Build Artifact run: | - cd ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} + cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} yarn build cd build - mkdir -p ./{linux-x64,linux-arm64,windows-x64}/opensearch-dashboards/${{ env.PLUGIN_NAME }} + mkdir -p ./{linux-x64,linux-arm64}/opensearch-dashboards/${{ env.PLUGIN_NAME }} cp ./${{ env.PLUGIN_NAME }}-*.zip ./linux-x64/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-linux-x64.zip cp ./${{ env.PLUGIN_NAME }}-*.zip ./linux-arm64/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-linux-arm64.zip - mv ./${{ env.PLUGIN_NAME }}-*.zip ./windows-x64/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-windows-x64.zip cd linux-x64 wget https://github.com/opensearch-project/dashboards-reports/releases/download/chromium-1.12.0.0/chromium-linux-x64.zip @@ -85,27 +90,94 @@ jobs: mv ./${{ env.ARTIFACT_NAME }}-*.zip .. cd .. - cd windows-x64 - wget https://github.com/opensearch-project/dashboards-reports/releases/download/chromium-1.12.0.0/chromium-windows-x64.zip - unzip chromium-windows-x64.zip -d ./opensearch-dashboards/${{ env.PLUGIN_NAME }} - zip -ur ./${{ env.ARTIFACT_NAME }}-*.zip ./opensearch-dashboards - mv ./${{ env.ARTIFACT_NAME }}-*.zip .. - cd .. - - name: Upload Artifact For Linux x64 uses: actions/upload-artifact@v1 with: name: dashboards-reports-linux-x64 - path: ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}/build/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-linux-x64.zip + path: OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}/build/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-linux-x64.zip - name: Upload Artifact For Linux arm64 uses: actions/upload-artifact@v1 with: name: dashboards-reports-linux-arm64 - path: ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}/build/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-linux-arm64.zip + path: OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}/build/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-linux-arm64.zip + + windows-build: + runs-on: windows-latest + steps: + - name: Checkout Plugin + uses: actions/checkout@v1 + + # Enable longer filenames for windows + - name: Enable longer filenames + run: git config --system core.longpaths true + + - name: Checkout OpenSearch Dashboards + uses: actions/checkout@v1 + with: + repository: opensearch-project/Opensearch-Dashboards + ref: ${{ env.OPENSEARCH_VERSION }} + path: dashboards-reports/OpenSearch-Dashboards + + - name: Get node version + id: versions_step + run: + echo "::set-output name=node_version::$(node -p "(require('./OpenSearch-Dashboards/package.json').engines.node).match(/[.0-9]+/)[0]")" + + - name: Setup Node + uses: actions/setup-node@v1 + with: + node-version: ${{ steps.versions_step.outputs.node_version }} + registry-url: 'https://registry.npmjs.org' + + + - name: Move Dashboards Reports to Plugins Dir + run: mv dashboards-reports OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} + + - name: Add Chromium Binary to Reporting for Testing + run: | + cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} + curl.exe -LO https://github.com/opensearch-project/dashboards-reports/releases/download/chromium-1.12.0.0/chromium-windows-x64.zip + Expand-Archive -Path 'chromium-windows-x64.zip' + Move-Item -Path "./chromium-windows-x64/.chromium" -Destination "./.chromium" + rd chromium-windows-x64.zip + rd chromium-windows-x64 + + - name: OpenSearch Dashboards Plugin Bootstrap + uses: nick-invision/retry@v1 + with: + timeout_minutes: 30 + max_attempts: 3 + command: cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} && yarn osd bootstrap + + - name: Test + uses: nick-invision/retry@v1 + with: + timeout_minutes: 30 + max_attempts: 3 + command: cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} && yarn test + + - name: Build Artifact + run: | + cd OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }} + yarn build + + cd build + mkdir -p ./windows-x64/opensearch-dashboards/${{ env.PLUGIN_NAME }} + mv ./${{ env.PLUGIN_NAME }}-*.zip ./windows-x64/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-windows-x64.zip + + cd windows-x64 + curl.exe -LO https://github.com/opensearch-project/dashboards-reports/releases/download/chromium-1.12.0.0/chromium-windows-x64.zip + Expand-Archive -Path 'chromium-windows-x64.zip' + Move-Item -Path "./chromium-windows-x64/.chromium" -Destination "./opensearch-dashboards/${{ env.PLUGIN_NAME }}" + rd chromium-windows-x64.zip + rd chromium-windows-x64 + Compress-Archive -Path "./${{ env.ARTIFACT_NAME }}-*.zip" -Destination "./opensearch-dashboards" + mv ./${{ env.ARTIFACT_NAME }}-*.zip .. + cd .. - name: Upload Artifact For Windows uses: actions/upload-artifact@v1 with: name: dashboards-reports-windows-x64 - path: ../OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}/build/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-windows-x64.zip + path: OpenSearch-Dashboards/plugins/${{ env.PLUGIN_NAME }}/build/${{ env.ARTIFACT_NAME }}-${{ env.OPENSEARCH_PLUGIN_VERSION }}-windows-x64.zip diff --git a/.github/workflows/reports-scheduler-test-and-build-workflow.yml b/.github/workflows/reports-scheduler-test-and-build-workflow.yml index ba1ca593..979edf98 100644 --- a/.github/workflows/reports-scheduler-test-and-build-workflow.yml +++ b/.github/workflows/reports-scheduler-test-and-build-workflow.yml @@ -6,7 +6,7 @@ env: OPENSEARCH_VERSION: '1.3.5-SNAPSHOT' jobs: - build: + linux-build: strategy: matrix: java: @@ -51,6 +51,47 @@ jobs: - name: Upload Artifacts uses: actions/upload-artifact@v1 with: - name: reports-scheduler + name: reports-scheduler-linux path: reports-scheduler-builds + windows-build: + strategy: + matrix: + java: + - 8 + - 11 + - 14 + runs-on: windows-latest + + steps: + - name: Set up JDK ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + + # reports-scheduler + - name: Checkout Reports Scheduler + uses: actions/checkout@v2 + + # Disable bwc tests since first release + # - name: RunBackwards Compatibility Tests + # run: | + # cd reports-scheduler + # echo "Running backwards compatibility tests ..." + # ./gradlew.bat bwcTestSuite + + - name: Build with Gradle + run: | + cd reports-scheduler + ./gradlew.bat build -x integTest -x jacocoTestReport + + - name: Create Artifact Path + run: | + mkdir -p reports-scheduler-builds + cp -r ./reports-scheduler/build/distributions/*.zip reports-scheduler-builds/ + + - name: Upload Artifacts + uses: actions/upload-artifact@v1 + with: + name: reports-scheduler-windows + path: reports-scheduler-builds diff --git a/dashboards-reports/public/components/main/report_details/__tests__/__snapshots__/report_details.test.tsx.snap b/dashboards-reports/public/components/main/report_details/__tests__/__snapshots__/report_details.test.tsx.snap index 55f3ad8b..a27e4230 100644 --- a/dashboards-reports/public/components/main/report_details/__tests__/__snapshots__/report_details.test.tsx.snap +++ b/dashboards-reports/public/components/main/report_details/__tests__/__snapshots__/report_details.test.tsx.snap @@ -172,7 +172,7 @@ exports[` panel render 5 hours recurring component 1`] = `
- Invalid Date -> 10/23/2020, 1:53:35 PM + Invalid Date -> 10/23/2020, 8:53:35 PM
@@ -562,7 +562,7 @@ exports[` panel render on-demand component 1`] = `
- Invalid Date -> 10/23/2020, 1:53:35 PM + Invalid Date -> 10/23/2020, 8:53:35 PM
diff --git a/dashboards-reports/public/components/report_definitions/report_settings/__tests__/__snapshots__/report_settings.test.tsx.snap b/dashboards-reports/public/components/report_definitions/report_settings/__tests__/__snapshots__/report_settings.test.tsx.snap index 32269bf6..c8a1d8d8 100644 --- a/dashboards-reports/public/components/report_definitions/report_settings/__tests__/__snapshots__/report_settings.test.tsx.snap +++ b/dashboards-reports/public/components/report_definitions/report_settings/__tests__/__snapshots__/report_settings.test.tsx.snap @@ -402,7 +402,7 @@ exports[` panel dashboard create from in-context 1`] = ` data-test-subj="superDatePickerstartDatePopoverButton" title="2020-10-26T20:52:56.382Z" > - Oct 26, 2020 @ 13:52:56.382 + Oct 26, 2020 @ 20:52:56.382 @@ -426,7 +426,7 @@ exports[` panel dashboard create from in-context 1`] = ` data-test-subj="superDatePickerendDatePopoverButton" title="2020-10-27T20:52:56.384Z" > - Oct 27, 2020 @ 13:52:56.384 + Oct 27, 2020 @ 20:52:56.384 @@ -1585,7 +1585,7 @@ exports[` panel display errors on create 1`] = ` data-test-subj="superDatePickerstartDatePopoverButton" title="2020-10-26T20:52:56.382Z" > - Oct 26, 2020 @ 13:52:56.382 + Oct 26, 2020 @ 20:52:56.382 @@ -1609,7 +1609,7 @@ exports[` panel display errors on create 1`] = ` data-test-subj="superDatePickerendDatePopoverButton" title="2020-10-27T20:52:56.384Z" > - Oct 27, 2020 @ 13:52:56.384 + Oct 27, 2020 @ 20:52:56.384 @@ -6506,7 +6506,7 @@ exports[` panel saved search create from in-context 1`] = ` data-test-subj="superDatePickerstartDatePopoverButton" title="2020-10-26T20:52:56.382Z" > - Oct 26, 2020 @ 13:52:56.382 + Oct 26, 2020 @ 20:52:56.382 @@ -6530,7 +6530,7 @@ exports[` panel saved search create from in-context 1`] = ` data-test-subj="superDatePickerendDatePopoverButton" title="2020-10-27T20:52:56.384Z" > - Oct 27, 2020 @ 13:52:56.384 + Oct 27, 2020 @ 20:52:56.384 @@ -7689,7 +7689,7 @@ exports[` panel visualization create from in-context 1`] = ` data-test-subj="superDatePickerstartDatePopoverButton" title="2020-10-26T20:52:56.382Z" > - Oct 26, 2020 @ 13:52:56.382 + Oct 26, 2020 @ 20:52:56.382 @@ -7713,7 +7713,7 @@ exports[` panel visualization create from in-context 1`] = ` data-test-subj="superDatePickerendDatePopoverButton" title="2020-10-27T20:52:56.384Z" > - Oct 27, 2020 @ 13:52:56.384 + Oct 27, 2020 @ 20:52:56.384 diff --git a/dashboards-reports/test/jest.config.js b/dashboards-reports/test/jest.config.js index cfbfff71..3c73d24e 100644 --- a/dashboards-reports/test/jest.config.js +++ b/dashboards-reports/test/jest.config.js @@ -3,7 +3,9 @@ * SPDX-License-Identifier: Apache-2.0 */ -process.env.TZ = 'America/Los_Angeles'; +//@ts-check + +process.env.TZ = 'UTC'; module.exports = { rootDir: '../',