From 4e48418059495b9232fea9e19a89b18a8ae789ac Mon Sep 17 00:00:00 2001 From: Yury-Fridlyand Date: Fri, 30 Aug 2024 11:07:21 -0700 Subject: [PATCH 1/2] make workflows reusable Signed-off-by: Yury-Fridlyand --- .github/workflows/csharp.yml | 1 + .github/workflows/go.yml | 1 + .github/workflows/rust.yml | 1 + 3 files changed, 3 insertions(+) diff --git a/.github/workflows/csharp.yml b/.github/workflows/csharp.yml index fa1bb6d4e3..8697b6b0f7 100644 --- a/.github/workflows/csharp.yml +++ b/.github/workflows/csharp.yml @@ -25,6 +25,7 @@ on: - .github/workflows/install-valkey/action.yml - .github/json_matrices/build-matrix.json workflow_dispatch: + workflow_call: permissions: contents: read diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 7cdfedef59..149087b4fe 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -25,6 +25,7 @@ on: - .github/workflows/install-valkey/action.yml - .github/json_matrices/build-matrix.json workflow_dispatch: + workflow_call: concurrency: group: go-${{ github.head_ref || github.ref }} diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 2211a04f0f..ce5559813a 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -23,6 +23,7 @@ on: - .github/workflows/install-valkey/action.yml - .github/json_matrices/build-matrix.json workflow_dispatch: + workflow_call: concurrency: group: rust-${{ github.head_ref || github.ref }} From d28ecd8c17ece38913052f102cb8977607a57961 Mon Sep 17 00:00:00 2001 From: Yury-Fridlyand Date: Fri, 30 Aug 2024 11:10:22 -0700 Subject: [PATCH 2/2] make CI jobs noop Signed-off-by: Yury-Fridlyand --- .github/workflows/csharp.yml | 51 ------------- .github/workflows/go.yml | 136 +---------------------------------- .github/workflows/rust.yml | 53 -------------- 3 files changed, 1 insertion(+), 239 deletions(-) diff --git a/.github/workflows/csharp.yml b/.github/workflows/csharp.yml index 8697b6b0f7..e531c3425e 100644 --- a/.github/workflows/csharp.yml +++ b/.github/workflows/csharp.yml @@ -76,54 +76,3 @@ jobs: - uses: actions/checkout@v4 with: submodules: recursive - - - name: Set up dotnet ${{ matrix.dotnet }} - uses: actions/setup-dotnet@v4 - with: - dotnet-version: ${{ matrix.dotnet }} - - - name: Install shared software dependencies - uses: ./.github/workflows/install-shared-dependencies - with: - os: ${{ matrix.host.OS }} - target: ${{ matrix.host.TARGET }} - github-token: ${{ secrets.GITHUB_TOKEN }} - engine-version: ${{ matrix.engine.version }} - - - name: Format - working-directory: ./csharp - run: dotnet format --verify-no-changes --verbosity diagnostic - - - name: Test dotnet ${{ matrix.dotnet }} - working-directory: ./csharp - run: dotnet test --framework net${{ matrix.dotnet }} "-l:html;LogFileName=TestReport.html" --results-directory . -warnaserror - - - uses: ./.github/workflows/test-benchmark - with: - language-flag: -csharp -dotnet-framework net${{ matrix.dotnet }} - - - name: Upload test reports - if: always() - continue-on-error: true - uses: actions/upload-artifact@v4 - with: - name: test-reports-dotnet-${{ matrix.dotnet }}-redis-${{ matrix.redis }}-${{ matrix.host.RUNNER }} - path: | - csharp/TestReport.html - benchmarks/results/* - utils/clusters/** - - # TODO Add amazonlinux - - lint-rust: - timeout-minutes: 10 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: recursive - - - uses: ./.github/workflows/lint-rust - with: - cargo-toml-folder: ./csharp/lib - github-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 149087b4fe..1bef056b04 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -74,138 +74,4 @@ jobs: with: submodules: recursive - - name: Set up Go ${{ matrix.go }} - uses: actions/setup-go@v5 - with: - go-version: ${{ matrix.go }} - cache-dependency-path: go/go.sum - - - name: Install shared software dependencies - uses: ./.github/workflows/install-shared-dependencies - with: - os: ${{ matrix.host.OS }} - target: ${{ matrix.host.TARGET }} - github-token: ${{ secrets.GITHUB_TOKEN }} - engine-version: ${{ matrix.engine.version }} - - - name: Install tools for Go ${{ matrix.go }} - working-directory: ./go - run: make install-tools-go${{ matrix.go }} - - - name: Set LD_LIBRARY_PATH - if: ${{ matrix.os == 'ubuntu-latest' }} - run: echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/go/target/release/deps/" >> $GITHUB_ENV - - - name: Build client - working-directory: ./go - run: make build - - - name: Run linters - working-directory: ./go - run: make lint-ci - - - name: Run tests - working-directory: ./go - run: | - make test - - - uses: ./.github/workflows/test-benchmark - with: - language-flag: -go - - - name: Upload logs and reports - if: always() - continue-on-error: true - uses: actions/upload-artifact@v4 - with: - name: reports-go-${{ matrix.go }}-redis-${{ matrix.redis }}-${{ matrix.os }} - path: | - utils/clusters/** - benchmarks/results/** - - build-amazonlinux-latest: - if: github.repository_owner == 'valkey-io' - strategy: - # Run all jobs - fail-fast: false - matrix: - go: - - 1.22.0 - runs-on: ubuntu-latest - container: amazonlinux:latest - timeout-minutes: 15 - steps: - - name: Install git - run: | - yum -y remove git - yum -y remove git-* - yum -y install https://packages.endpointdev.com/rhel/7/os/x86_64/endpoint-repo.x86_64.rpm - yum update - yum install -y git - git --version - - - uses: actions/checkout@v4 - - - name: Checkout submodules - run: | - git config --global --add safe.directory "$GITHUB_WORKSPACE" - git submodule update --init --recursive - - - name: Install shared software dependencies - uses: ./.github/workflows/install-shared-dependencies - with: - os: "amazon-linux" - target: "x86_64-unknown-linux-gnu" - github-token: ${{ secrets.GITHUB_TOKEN }} - engine-version: "7.2.5" - - - name: Install Go - run: | - yum -y install wget - yum -y install tar - wget https://go.dev/dl/go${{ matrix.go }}.linux-amd64.tar.gz - tar -C /usr/local -xzf go${{ matrix.go }}.linux-amd64.tar.gz - echo "/usr/local/go/bin" >> $GITHUB_PATH - echo "$HOME/go/bin" >> $GITHUB_PATH - - - name: Install tools for Go ${{ matrix.go }} - working-directory: ./go - run: make install-tools-go${{ matrix.go }} - - - name: Set LD_LIBRARY_PATH - run: echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/go/target/release/deps/" >> $GITHUB_ENV - - - name: Build client - working-directory: ./go - run: make build - - - name: Run linters - working-directory: ./go - run: make lint-ci - - - name: Run tests - working-directory: ./go - run: | - make test - - - name: Upload cluster manager logs - if: always() - continue-on-error: true - uses: actions/upload-artifact@v4 - with: - name: cluster-manager-logs-${{ matrix.go }}-redis-6-amazonlinux - path: | - utils/clusters/** - - lint-rust: - timeout-minutes: 15 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - submodules: recursive - - - uses: ./.github/workflows/lint-rust - with: - cargo-toml-folder: ./go - name: lint go rust + \ No newline at end of file diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index ce5559813a..0be2cdff00 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -59,56 +59,3 @@ jobs: - uses: actions/checkout@v4 with: submodules: recursive - - - name: Install shared software dependencies - uses: ./.github/workflows/install-shared-dependencies - with: - os: "ubuntu" - target: "x86_64-unknown-linux-gnu" - engine-version: ${{ matrix.engine.version }} - - - uses: Swatinem/rust-cache@v2 - - - name: Run tests - working-directory: ./glide-core - run: cargo test --all-features -- --nocapture --test-threads=1 # TODO remove the concurrency limit after we fix test flakyness. - - - name: Run logger tests - working-directory: ./logger_core - run: cargo test --all-features -- --nocapture --test-threads=1 - - - name: Check features - working-directory: ./glide-core - run: | - cargo check --benches --all-features - cargo check --no-default-features - - - uses: ./.github/workflows/test-benchmark - with: - language-flag: -rust - - lint: - runs-on: ubuntu-latest - timeout-minutes: 30 - steps: - - uses: actions/checkout@v4 - with: - submodules: recursive - - - uses: ./.github/workflows/lint-rust - with: - cargo-toml-folder: ./glide-core - github-token: ${{ secrets.GITHUB_TOKEN }} - name: lint glide-core - - - uses: ./.github/workflows/lint-rust - with: - cargo-toml-folder: ./logger_core - github-token: ${{ secrets.GITHUB_TOKEN }} - name: lint logger - - - uses: ./.github/workflows/lint-rust - with: - cargo-toml-folder: ./benchmarks/rust - github-token: ${{ secrets.GITHUB_TOKEN }} - name: lint benchmark