Skip to content

Implement gitlab CI/CD pipeline that invokes entire BuildStream REST API flow E2E#4065

Open
Rajeshkumar-s2 wants to merge 25 commits intodell:pub/build_streamfrom
Rajeshkumar-s2:pub/build_stream
Open

Implement gitlab CI/CD pipeline that invokes entire BuildStream REST API flow E2E#4065
Rajeshkumar-s2 wants to merge 25 commits intodell:pub/build_streamfrom
Rajeshkumar-s2:pub/build_stream

Conversation

@Rajeshkumar-s2
Copy link
Collaborator

@Rajeshkumar-s2 Rajeshkumar-s2 commented Feb 27, 2026

Description of the Solution

Replaces the minimal stub CI/CD pipeline with a complete 12-stage GitLab pipeline that invokes the BuildStream REST API end-to-end, from authentication through image validation. Also fixes a 500 error in the build-image API for x86_64 architectures.

  • - 12-stage sequential workflow: auth → create-job → parse-catalog → generate-input-files → create-local-repo → poll-local-repo → get-roles → build-images → poll-build-status → validate-image → poll-validate-status → job-summary
  • - Secure TLS handling: Consumes BSM_API_CERT CI/CD variable (supports both File-type and regular variables), validates PEM structure and certificate syntax with openssl x509, replaces all curl -k with --cacert
  • - GitLab API TLS: Uses --cacert ${CI_SERVER_TLS_CA_FILE} for GitLab API calls
  • - One-time OAuth registration: Registers client credentials on first run, persists BSM_CLIENT_ID/BSM_CLIENT_SECRET as masked GitLab CI/CD variables for subsequent runs
  • - Job traceability: Updates GitLab pipeline description with BSM Job ID; all stage headers prefixed with [${JOB_ID}]
  • - Async stage polling: Polls long-running stages (local-repo, build-image, validate-image) with configurable interval and max attempts
  • - Job summary: Final stage fetches job status and prints a formatted table of all stage results with error details

Testing

https://100.10.0.112/root/omnia-catalog/-/pipelines/22

Suggested Reviewers

If you wish to suggest specific reviewers for this solution, please include them in this section. Be sure to include the @ before the GitHub username.
@priti-parate @Venu-p1 @abhishek-sa1 @Kratika-P

Signed-off-by: Rajeshkumar-s2 <rajeshkumar.s2@dell.com>
Signed-off-by: Rajeshkumar-s2 <rajeshkumar.s2@dell.com>
@Rajeshkumar-s2 Rajeshkumar-s2 marked this pull request as ready for review February 27, 2026 18:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant