Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[YUNIKORN-2823] Core: Add e2e test run against k8shim master branch #954

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 91 additions & 0 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: Pre-commit checks

on:
pull_request:
branches:
- master
workflow_dispatch: {}

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout source code
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: .go_version
- name: Check license
run: make license-check
- name: Go lint
run: make lint
- name: Run Version Check
run: make pseudo
- name: Run ShellCheck
run: make check_scripts
- name: Unit tests
run: make test
- name: Code coverage
uses: codecov/codecov-action@v4
with:
files: build/coverage.txt
# After codecov/codecov-action@v4, tokenless uploading of coverage files to non-public repo is unsupported.
# To enable codecov analysis in your forked repo. Please configure CODECOV_TOKEN in your repository secrets.
# Ref: https://docs.codecov.com/docs/adding-the-codecov-token
token: ${{ secrets.CODECOV_TOKEN }}

e2e-tests:
needs: build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
k8s: [v1.31.0]
plugin: [""]
steps:
- name: Checkout yunikorn-k8shim source code
uses: actions/checkout@v4
with:
repository: apache/yunikorn-k8shim
fetch-depth: 2
path: k8shim
- name: Checkout yunikorn-core source code
uses: actions/checkout@v4
with:
fetch-depth: 2
path: core
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: k8shim/.go_version
- name: Set hugepage
run: |
echo "vm.nr_hugepages = 1024" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
sudo sysctl -a | grep vm.nr_hugepages
- name: Cache and Restore e2e required tools
id: cache
uses: actions/cache@v4
with:
path: |
k8shim/tools
key: ${{ runner.os }}-e2e-${{ hashFiles('k8shim/Makefile') }}
restore-keys: |
${{ runner.os }}-e2e-
- name: Replace yunikorn-core dependency
run: cd k8shim && go mod edit -replace "github.com/apache/yunikorn-core=../core" && grep yunikorn-core go.mod
- name: Run e2e tests
run: cd k8shim && ./scripts/run-e2e-tests.sh -a "test" -n "yk8s" -v "kindest/node:${KIND_NODE_IMAGE}" ${KIND_EXTRA_ARGS}
env:
KIND_NODE_IMAGE: ${{ matrix.k8s }}
KIND_EXTRA_ARGS: ${{ matrix.plugin }}
- name: Upload artifacts
uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: ${{ github.job }} stdout (${{ matrix.k8s }}${{ matrix.plugin == '--plugin' && format(', {0}', matrix.plugin) || matrix.plugin }})
path: k8shim/build/e2e
23 changes: 3 additions & 20 deletions .github/workflows/main.yml → .github/workflows/push-master.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,13 @@
name: Pre-commit checks
name: Push to master

on:
pull_request:
branches:
- master
push:
branches:
- master
workflow_dispatch: {}

jobs:
build:
unit-tests:
runs-on: ubuntu-latest

steps:
- name: Checkout source code
uses: actions/checkout@v4
Expand All @@ -22,19 +17,7 @@ jobs:
uses: actions/setup-go@v5
with:
go-version-file: .go_version
- name: Check license
run: make license-check
if: ${{ github.event_name == 'pull_request' }}
- name: Go lint
run: make lint
if: ${{ github.event_name == 'pull_request' }}
- name: Run Version Check
run: make pseudo
if: ${{ github.event_name == 'pull_request' }}
- name: Run ShellCheck
run: make check_scripts
if: ${{ github.event_name == 'pull_request' }}
- name: unit test
- name: Unit tests
run: make test
- name: Code coverage
uses: codecov/codecov-action@v4
Expand Down
Loading