From f67170b0f1481538c4b9f13bab438c394db809a7 Mon Sep 17 00:00:00 2001 From: Peter Zhu Date: Thu, 2 Nov 2023 20:29:44 -0400 Subject: [PATCH] Onboard jenkins prod docker images on github actions (#483) Signed-off-by: Peter Zhu (cherry picked from commit cda2f8254fe080132f416b952e6be5bdf6a4153d) --- .github/workflows/CI.yml | 87 ++++++++++++++++++++++++++++++++++++--- .github/workflows/dco.yml | 18 -------- 2 files changed, 81 insertions(+), 24 deletions(-) delete mode 100644 .github/workflows/dco.yml diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 9d8f96bd7..026715279 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -12,13 +12,53 @@ on: - "feature/**" jobs: - Check-neural-search: + Get-CI-Image-Tag: + uses: opensearch-project/opensearch-build/.github/workflows/get-ci-image-tag.yml@main + with: + product: opensearch + + Check-neural-search-linux: + needs: Get-CI-Image-Tag + strategy: + matrix: + java: [11, 17] + os: [ubuntu-latest] + + name: Gradle Check Linux + runs-on: ${{ matrix.os }} + container: + # using the same image which is used by opensearch-build team to build the OpenSearch Distribution + # this image tag is subject to change as more dependencies and updates will arrive over time + image: ${{ needs.Get-CI-Image-Tag.outputs.ci-image-version-linux }} + # need to switch to root so that github actions can install runner binary on container without permission issues. + options: --user root + + steps: + - name: Checkout neural-search + uses: actions/checkout@v1 + + - name: Setup Java ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + + - name: Run build + run: | + chown -R 1000:1000 `pwd` + su `id -un 1000` -c "./gradlew check" + + - name: Upload Coverage Report + uses: codecov/codecov-action@v1 + with: + token: ${{ secrets.CODECOV_TOKEN }} + + Check-neural-search-windows: strategy: matrix: java: [11, 17] - os: [ubuntu-latest, windows-latest] + os: [windows-latest] - name: Run Gradle Check on neural-search Plugin + name: Gradle Check Windows runs-on: ${{ matrix.os }} steps: @@ -39,13 +79,48 @@ jobs: with: token: ${{ secrets.CODECOV_TOKEN }} - Precommit-neural-search: + Precommit-neural-search-linux: + needs: Get-CI-Image-Tag + strategy: + matrix: + java: [11, 17] + os: [ubuntu-latest] + + name: Pre-commit Linux + runs-on: ${{ matrix.os }} + container: + # using the same image which is used by opensearch-build team to build the OpenSearch Distribution + # this image tag is subject to change as more dependencies and updates will arrive over time + image: ${{ needs.Get-CI-Image-Tag.outputs.ci-image-version-linux }} + # need to switch to root so that github actions can install runner binary on container without permission issues. + options: --user root + + steps: + - name: Checkout neural-search + uses: actions/checkout@v1 + + - name: Setup Java ${{ matrix.java }} + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + + - name: Run build + run: | + chown -R 1000:1000 `pwd` + su `id -un 1000` -c "./gradlew precommit --parallel" + + - name: Upload Coverage Report + uses: codecov/codecov-action@v1 + with: + token: ${{ secrets.CODECOV_TOKEN }} + + Precommit-neural-search-windows: strategy: matrix: java: [11, 17] - os: [ubuntu-latest, windows-latest] + os: [windows-latest] - name: Pre-commit neural-search Plugin + name: Pre-commit Windows runs-on: ${{ matrix.os }} steps: diff --git a/.github/workflows/dco.yml b/.github/workflows/dco.yml deleted file mode 100644 index cf30ea89d..000000000 --- a/.github/workflows/dco.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: Developer Certificate of Origin Check - -on: [pull_request] - -jobs: - check: - runs-on: ubuntu-latest - - steps: - - name: Get PR Commits - id: 'get-pr-commits' - uses: tim-actions/get-pr-commits@v1.1.0 - with: - token: ${{ secrets.GITHUB_TOKEN }} - - name: DCO Check - uses: tim-actions/dco@v1.1.0 - with: - commits: ${{ steps.get-pr-commits.outputs.commits }}