-
Notifications
You must be signed in to change notification settings - Fork 29
[CI] issue: Use internal dpcp from init script #548
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
base: vNext
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Greptile Overview
Greptile Summary
This PR updates the release pipeline to use an internal DPCP repository pre-cloned by the init script instead of cloning from the public GitHub repository during each build.
Key Changes:
- Replaced
git clone https://github.com/Mellanox/libdpcp.git libdpcpwithcd "${WORKSPACE}/jenkins/default/_dpcp-last"in the Build-dpcp step - Aligns with commit 74ad3ae which introduced
.ci/cidemo-init.shto prepare the internal dpcp repo in advance - Eliminates redundant git clone operations and ensures the latest internal dpcp version is used
Verification Needed:
- Ensure the ci-demo pipeline framework executes
cidemo-init.shbefore the release job runs - Confirm the workspace path
${WORKSPACE}/jenkins/default/_dpcp-lastis properly populated and accessible to the rhel8.6 container
Confidence Score: 4/5
- This PR is safe to merge but requires runtime verification that the init script executes successfully
- The change is straightforward and logically sound - it completes the transition started in commit 74ad3ae to use an internal dpcp repository. The implementation correctly references the workspace path established by the init script. However, the score is 4 rather than 5 because the PR depends on external pipeline infrastructure (ci-demo library) to execute the init script, which cannot be verified from the code alone
- No files require special attention - the single modified file is well-structured and the change is minimal
Important Files Changed
File Analysis
| Filename | Score | Overview |
|---|---|---|
| .ci/pipeline/release_matrix_job.yaml | 4/5 | Changed Build-dpcp step to use pre-cloned internal dpcp repo from ${WORKSPACE}/jenkins/default/_dpcp-last instead of cloning public GitHub repo, eliminating git clone operation |
Sequence Diagram
sequenceDiagram
participant Jenkins as Jenkins Pipeline
participant Init as cidemo-init.sh
participant Workspace as Workspace Storage
participant Docker as rhel8.6 Container
participant DPCP as DPCP Repository
participant Release as Release Process
Note over Jenkins,Init: Pipeline Initialization
Jenkins->>Init: Execute init script
Init->>DPCP: git clone internal dpcp repo
DPCP-->>Init: Clone complete
Init->>Workspace: Store at ${WORKSPACE}/jenkins/default/_dpcp-last
Note over Docker,Release: Build-dpcp Step (PR Changes)
Jenkins->>Docker: Start Build-dpcp step
Docker->>Workspace: cd ${WORKSPACE}/jenkins/default/_dpcp-last
Docker->>Docker: ./autogen.sh && ./configure --prefix=/usr
Docker->>Docker: sudo make install
Docker-->>Jenkins: DPCP installed to /usr
Note over Docker,Release: Release Step
Jenkins->>Docker: Start Release step
Docker->>Docker: Execute .ci/do_release.sh
Docker->>Docker: Build packages using installed DPCP
Docker-->>Jenkins: Archive artifacts
362592d to
8723f5d
Compare
Greptile SummaryThis PR updates the release pipeline to use internal dpcp from the Key changes:
Important notes:
Confidence Score: 3/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant CI as CI Framework
participant Init as cidemo-init.sh
participant Docker as Docker Container (rhel8.6)
participant DPCP as DPCP Source
participant Build as Build-dpcp Step
Note over CI,Init: Pipeline Start
CI->>Init: Execute cidemo-init.sh
Init->>Init: Create ${WORKSPACE}/jenkins/default/_dpcp-last
Init->>DPCP: git clone git@github.com:Mellanox/dpcp.git
Note over Init,DPCP: Uses SSH authentication<br/>Requires access to internal repo
DPCP-->>Init: Clone internal dpcp repository
Init->>Init: Find latest tag via git describe
Init->>Init: Checkout latest tag
Init-->>CI: dpcp source ready in workspace
Note over CI,Build: Build-dpcp Step
CI->>Docker: Start rhel8.6 container (tag: 20260112)
Docker->>Build: Execute build step
Build->>Build: cd ${WORKSPACE}/jenkins/default/_dpcp-last
Build->>Build: ./autogen.sh && ./configure --prefix=/usr
Build->>Build: sudo make install
Build-->>Docker: dpcp installed
Note over Docker: Continue with Release step
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2 files reviewed, 2 comments
8723f5d to
4452d42
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
4 files reviewed, 4 comments
4452d42 to
e948ab7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3 files reviewed, 3 comments
|
bot:retest |
1 similar comment
|
bot:retest |
e948ab7 to
d1ec212
Compare
Signed-off-by: NirWolfer <nwolfer@nvidia.com>
Description
Please provide a summary of the change.
What
Subject: what this PR is doing in one line.
Why ?
Justification for the PR. If there is existing issue/bug please reference.
How ?
It is optional but for complex PRs please provide information about the design,
architecture, approach, etc.
Change type
What kind of change does this PR introduce?
Check list