From fea0239c9195ff6f2a8d42a60e53326083a154d6 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Mon, 3 Mar 2025 19:48:28 -0500 Subject: [PATCH 01/14] ci: update container registry location --- .github/workflows/pr_github_validation.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pr_github_validation.yaml b/.github/workflows/pr_github_validation.yaml index 7d312bb8f0bc..8afe1eff6443 100644 --- a/.github/workflows/pr_github_validation.yaml +++ b/.github/workflows/pr_github_validation.yaml @@ -32,7 +32,7 @@ jobs: name: Build and Test - ${{ matrix.framework }} env: CONTAINER_ID: test_${{ github.run_id }}_${{ github.run_attempt }}_${{ github.job }}_${{ matrix.framework }} - IMAGE_TAG: ghcr.io/triton-inference-server/triton_distributed:pr_${{ github.event.pull_request.number}}_${{ matrix.framework }} + IMAGE_TAG: ghcr.io/dynemo-ai/dynemo:pr_${{ github.event.pull_request.number}}_${{ matrix.framework }} PYTEST_XML_FILE: pytest_test_report.xml steps: - name: Checkout repository @@ -48,7 +48,7 @@ jobs: - name: Decide on cache id: which_cache env: - DEFAULT_CACHE_LOCATION: ghcr.io/triton-inference-server/triton_distributed:buildcache_${{ matrix.framework }} + DEFAULT_CACHE_LOCATION: ghcr.io/dynemo-ai/dynemo:buildcache_${{ matrix.framework }} run: | set +e docker manifest inspect ${{ env.IMAGE_TAG }} From 583efbf21ab7678f5e9dc54614268f565c36eba0 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Mon, 3 Mar 2025 21:11:30 -0500 Subject: [PATCH 02/14] ci: fix copyright checks container image --- .github/workflows/pre-merge.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pre-merge.yml b/.github/workflows/pre-merge.yml index 5b7c51f1f84b..9c6eb31faba4 100644 --- a/.github/workflows/pre-merge.yml +++ b/.github/workflows/pre-merge.yml @@ -54,7 +54,7 @@ jobs: copyright-checks: runs-on: ubuntu-24.04 container: - image: ghcr.io/triton-inference-server/triton_distributed/helm-tester:0.1.1 + image: ghcr.io/dynemo-ai/dynemo/helm-tester:0.1.1 options: --tty volumes: - ${{ github.workspace }}:/workspace @@ -64,7 +64,7 @@ jobs: steps: - uses: actions/checkout@v4 # Allowlist both variants of the mounted source directory. - - run: git config --global --add safe.directory /__w/triton_distributed/triton_distributed + - run: git config --global --add safe.directory /__w/dynemo/dynemo - run: git config --global --add safe.directory /workspace - run: pwsh /workspace/.github/workflows/copyright-check.ps1 env: From 4d091969db0bbdd7967564de50bdeaa24ab93bfe Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Mon, 3 Mar 2025 21:21:24 -0500 Subject: [PATCH 03/14] ci: split out jobs into separate workflows --- .github/workflows/codeql.yml | 34 +++++++++++++++++++ .github/workflows/copyright-checks.yml | 34 +++++++++++++++++++ .github/workflows/pre-merge.yml | 47 -------------------------- 3 files changed, 68 insertions(+), 47 deletions(-) create mode 100644 .github/workflows/codeql.yml create mode 100644 .github/workflows/copyright-checks.yml diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 000000000000..49b99eefdb87 --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,34 @@ +name: CodeQL + +on: + pull_request: + +jobs: + codeql: + name: Analyze Codebase + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + + strategy: + fail-fast: false + matrix: + language: [ 'python' ] + + steps: + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + + - name: Initialize CodeQL + uses: github/codeql-action/init@v3 + with: + languages: ${{matrix.language}} + queries: +security-and-quality + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v3 + with: + category: "/language:${{matrix.language}}" + diff --git a/.github/workflows/copyright-checks.yml b/.github/workflows/copyright-checks.yml new file mode 100644 index 000000000000..203ffa3c360b --- /dev/null +++ b/.github/workflows/copyright-checks.yml @@ -0,0 +1,34 @@ +name: Copyright Checks + +on: + pull-request: + +jobs: + codeql: + name: Analyze Codebase + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + + strategy: + fail-fast: false + matrix: + language: [ 'python' ] + + steps: + - name: Checkout repository + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + + - name: Initialize CodeQL + uses: github/codeql-action/init@v3 + with: + languages: ${{matrix.language}} + queries: +security-and-quality + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v3 + with: + category: "/language:${{matrix.language}}" + diff --git a/.github/workflows/pre-merge.yml b/.github/workflows/pre-merge.yml index 9c6eb31faba4..ab311c4c6a55 100644 --- a/.github/workflows/pre-merge.yml +++ b/.github/workflows/pre-merge.yml @@ -51,54 +51,7 @@ jobs: - uses: pre-commit/action@v3.0.0 timeout-minutes: 3 - copyright-checks: - runs-on: ubuntu-24.04 - container: - image: ghcr.io/dynemo-ai/dynemo/helm-tester:0.1.1 - options: --tty - volumes: - - ${{ github.workspace }}:/workspace - permissions: - contents: read - packages: read - steps: - - uses: actions/checkout@v4 - # Allowlist both variants of the mounted source directory. - - run: git config --global --add safe.directory /__w/dynemo/dynemo - - run: git config --global --add safe.directory /workspace - - run: pwsh /workspace/.github/workflows/copyright-check.ps1 - env: - NVBUILD_VERBOSITY: DETAILED - timeout-minutes: 2 - working-directory: /workspace - - codeql: - name: Analyze Codebase - runs-on: ubuntu-latest - permissions: - actions: read - contents: read - security-events: write - - strategy: - fail-fast: false - matrix: - language: [ 'python' ] - - steps: - - name: Checkout repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{matrix.language}} - queries: +security-and-quality - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 - with: - category: "/language:${{matrix.language}}" # providers_validation: # runs-on: ubuntu-latest From 64847625f4bfcd6a0ecc2eed212aba249a857da0 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Mon, 3 Mar 2025 21:24:30 -0500 Subject: [PATCH 04/14] ci[fix]: indentation --- .github/workflows/codeql.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 49b99eefdb87..8156c8725f4a 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -4,7 +4,7 @@ on: pull_request: jobs: - codeql: + codeql: name: Analyze Codebase runs-on: ubuntu-latest permissions: From 7a60b58c1df158ceaf1c21949bcf64d6fff30e29 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 08:45:54 -0500 Subject: [PATCH 05/14] ci: use inline --cache-to to be able to pull image --- .github/workflows/pr_github_validation.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/pr_github_validation.yaml b/.github/workflows/pr_github_validation.yaml index 8afe1eff6443..09d2a14a0ddb 100644 --- a/.github/workflows/pr_github_validation.yaml +++ b/.github/workflows/pr_github_validation.yaml @@ -63,8 +63,7 @@ jobs: - name: Build image env: CACHE_FROM: "type=registry,ref=${{ steps.which_cache.outputs.cache_from_location }}" - CACHE_TO: "type=registry,ref=${{ steps.which_cache.outputs.cache_to_location }},image-manifest=true,mode=max" - + CACHE_TO: "type=inline,ref=${{ steps.which_cache.outputs.cache_to_location }}" run: | ./container/build.sh --tag $IMAGE_TAG --framework ${{ matrix.framework }} --cache-from "${{ env.CACHE_FROM }}" --cache-to "${{ env.CACHE_TO }}" - name: Run pytest From 11ff1ce87bb0db522c24da53ae50eb6fbaac6272 Mon Sep 17 00:00:00 2001 From: Anant Sharma Date: Tue, 4 Mar 2025 06:38:06 -0800 Subject: [PATCH 06/14] remove timeout for cargo deny check --- .github/workflows/pre-merge-rust.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/pre-merge-rust.yml b/.github/workflows/pre-merge-rust.yml index 93d1dc3ab386..74ad6f75aae0 100644 --- a/.github/workflows/pre-merge-rust.yml +++ b/.github/workflows/pre-merge-rust.yml @@ -85,7 +85,6 @@ jobs: run: | cargo-deny --version || cargo install cargo-deny@0.16.4 cargo-deny check --hide-inclusion-graph licenses --config ${{ github.workspace }}/deny.toml - timeout-minutes: 5 - name: Run Unit Tests working-directory: ${{ matrix.dir }} run: cargo test --locked --all-targets From c9a3b1042d924096239857028018a8c69d0f4c17 Mon Sep 17 00:00:00 2001 From: Anant Sharma Date: Tue, 4 Mar 2025 06:40:01 -0800 Subject: [PATCH 07/14] fix --- .github/workflows/pre-merge-rust.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pre-merge-rust.yml b/.github/workflows/pre-merge-rust.yml index 74ad6f75aae0..f799c1ddf45b 100644 --- a/.github/workflows/pre-merge-rust.yml +++ b/.github/workflows/pre-merge-rust.yml @@ -26,7 +26,7 @@ on: branches: - main paths: - - pre-merge-rust.yml + - .github/workflows/pre-merge-rust.yml - 'lib/runtime/**' - 'lib/llm/**' - 'lib/bindings/**' From 6cccc4876792e4fbab5f32741ffc13dc8f366de7 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 09:59:59 -0500 Subject: [PATCH 08/14] ci: follow naming conventions --- .github/workflows/pr_github_validation.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pr_github_validation.yaml b/.github/workflows/pr_github_validation.yaml index 09d2a14a0ddb..0bb00cad801a 100644 --- a/.github/workflows/pr_github_validation.yaml +++ b/.github/workflows/pr_github_validation.yaml @@ -32,7 +32,7 @@ jobs: name: Build and Test - ${{ matrix.framework }} env: CONTAINER_ID: test_${{ github.run_id }}_${{ github.run_attempt }}_${{ github.job }}_${{ matrix.framework }} - IMAGE_TAG: ghcr.io/dynemo-ai/dynemo:pr_${{ github.event.pull_request.number}}_${{ matrix.framework }} + IMAGE_TAG: ghcr.io/dynemo-ai/dynemo:pr${{ github.event.pull_request.number}}-${{ matrix.framework }} PYTEST_XML_FILE: pytest_test_report.xml steps: - name: Checkout repository @@ -48,7 +48,7 @@ jobs: - name: Decide on cache id: which_cache env: - DEFAULT_CACHE_LOCATION: ghcr.io/dynemo-ai/dynemo:buildcache_${{ matrix.framework }} + DEFAULT_CACHE_LOCATION: ghcr.io/dynemo-ai/dynemo:latest-${{ matrix.framework }} run: | set +e docker manifest inspect ${{ env.IMAGE_TAG }} From 7c24ae1bbed3b1dccd29b63a2b34e139735925c3 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 10:18:36 -0500 Subject: [PATCH 09/14] codeowners: update to dynemo org --- CODEOWNERS | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CODEOWNERS b/CODEOWNERS index 51af2537a810..e6377ec078fc 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1,4 +1,4 @@ -# CODEOWNERS file for Triton Distributed +# CODEOWNERS file for dynemo # # For more information about CODEOWNERS files, see: # https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners @@ -17,8 +17,8 @@ Cargo.toml @ryanolson @grahamking @paulhendricks @biswapanda @tmonty12 @guanluo /deploy/Kubernetes/ @whoisj @hutm @biswapanda # CI/CD -/.github/ @triton-inference-server/devops @nnshah1 -CODEOWNERS @triton-inference-server/devops @nnshah1 +/.github/ @dynemo-ai/Devops @nnshah1 +CODEOWNERS @dynemo-ai/Devops @nnshah1 # Legal /LICENSE @nv-anants @nvda-mesharma @glos-nv @dmitry-tokarev-nv From 7a482c4114d2bdc84742f117d3fd70aebceddb27 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 10:21:01 -0500 Subject: [PATCH 10/14] ci: fix copyright checks --- .github/workflows/copyright-checks.yml | 50 +++++++++++--------------- 1 file changed, 21 insertions(+), 29 deletions(-) diff --git a/.github/workflows/copyright-checks.yml b/.github/workflows/copyright-checks.yml index 203ffa3c360b..4ab4a0e04d65 100644 --- a/.github/workflows/copyright-checks.yml +++ b/.github/workflows/copyright-checks.yml @@ -1,34 +1,26 @@ name: Copyright Checks on: - pull-request: + pull_request jobs: - codeql: - name: Analyze Codebase - runs-on: ubuntu-latest - permissions: - actions: read - contents: read - security-events: write - - strategy: - fail-fast: false - matrix: - language: [ 'python' ] - - steps: - - name: Checkout repository - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{matrix.language}} - queries: +security-and-quality - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 - with: - category: "/language:${{matrix.language}}" - + copyright-checks: + runs-on: ubuntu-24.04 + container: + image: ghcr.io/triton-inference-server/triton_distributed/helm-tester:0.1.1 + options: --tty + volumes: + - ${{ github.workspace }}:/workspace + permissions: + contents: read + packages: read + steps: + - uses: actions/checkout@v4 + # Allowlist both variants of the mounted source directory. + - run: git config --global --add safe.directory /__w/triton_distributed/triton_distributed + - run: git config --global --add safe.directory /workspace + - run: pwsh /workspace/.github/workflows/copyright-check.ps1 + env: + NVBUILD_VERBOSITY: DETAILED + timeout-minutes: 2 + working-directory: /workspace \ No newline at end of file From d750624ae59da5b9065887972efa5c39174b2d47 Mon Sep 17 00:00:00 2001 From: Anant Sharma Date: Tue, 4 Mar 2025 07:24:30 -0800 Subject: [PATCH 11/14] rerun: check timing From 23e0ab98952826fb56753642522d812ebeb14b6b Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 10:25:57 -0500 Subject: [PATCH 12/14] ci: revert to working cache location --- .github/workflows/pr_github_validation.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pr_github_validation.yaml b/.github/workflows/pr_github_validation.yaml index 0bb00cad801a..8f9cfc18e0b5 100644 --- a/.github/workflows/pr_github_validation.yaml +++ b/.github/workflows/pr_github_validation.yaml @@ -32,7 +32,7 @@ jobs: name: Build and Test - ${{ matrix.framework }} env: CONTAINER_ID: test_${{ github.run_id }}_${{ github.run_attempt }}_${{ github.job }}_${{ matrix.framework }} - IMAGE_TAG: ghcr.io/dynemo-ai/dynemo:pr${{ github.event.pull_request.number}}-${{ matrix.framework }} + IMAGE_TAG: ghcr.io/dynemo-ai/dynemo:pr_${{ github.event.pull_request.number}}_${{ matrix.framework }} PYTEST_XML_FILE: pytest_test_report.xml steps: - name: Checkout repository @@ -63,7 +63,7 @@ jobs: - name: Build image env: CACHE_FROM: "type=registry,ref=${{ steps.which_cache.outputs.cache_from_location }}" - CACHE_TO: "type=inline,ref=${{ steps.which_cache.outputs.cache_to_location }}" + CACHE_TO: "type=registry,ref=${{ steps.which_cache.outputs.cache_to_location }},image-manifest=true,mode=max" run: | ./container/build.sh --tag $IMAGE_TAG --framework ${{ matrix.framework }} --cache-from "${{ env.CACHE_FROM }}" --cache-to "${{ env.CACHE_TO }}" - name: Run pytest From 02c7176e8c4bb093a740454103b45d831d3d171f Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 10:28:06 -0500 Subject: [PATCH 13/14] ci: fix copyright again --- .github/workflows/copyright-checks.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/copyright-checks.yml b/.github/workflows/copyright-checks.yml index 4ab4a0e04d65..f99ecd255146 100644 --- a/.github/workflows/copyright-checks.yml +++ b/.github/workflows/copyright-checks.yml @@ -7,7 +7,7 @@ jobs: copyright-checks: runs-on: ubuntu-24.04 container: - image: ghcr.io/triton-inference-server/triton_distributed/helm-tester:0.1.1 + image: ghcr.io/dynemo-ai/dynemo/helm-tester:0.1.1 options: --tty volumes: - ${{ github.workspace }}:/workspace @@ -17,7 +17,7 @@ jobs: steps: - uses: actions/checkout@v4 # Allowlist both variants of the mounted source directory. - - run: git config --global --add safe.directory /__w/triton_distributed/triton_distributed + - run: git config --global --add safe.directory /__w/dynemo/dynemo - run: git config --global --add safe.directory /workspace - run: pwsh /workspace/.github/workflows/copyright-check.ps1 env: From c7118b9fdea65f0f4db2a5fa6197839df9741689 Mon Sep 17 00:00:00 2001 From: Harrison King Saturley-Hall Date: Tue, 4 Mar 2025 11:06:59 -0500 Subject: [PATCH 14/14] nit: update name of project in CODEOWNERS --- CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CODEOWNERS b/CODEOWNERS index e6377ec078fc..ffba51539325 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -1,4 +1,4 @@ -# CODEOWNERS file for dynemo +# CODEOWNERS file for Dynemo # # For more information about CODEOWNERS files, see: # https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners