Skip to content

Conversation

@deleonio
Copy link
Owner

@deleonio deleonio commented Dec 3, 2025

Implements a complete Jenkins Shared Library in shared-library/ subdirectory with the following optimizations:

  • Node.js-based YAML and OpenAPI validation
  • Pinned dependencies for reproducible builds (no ^ or ~)
  • Sparse Git checkout for performance
  • Retry logic for Git and Nexus operations
  • Strict mode with advanced validation checks
  • Versioned Nexus uploads with clear artifact naming

Structure:

  • vars/: Groovy pipeline steps
  • resources/: Node.js validation scripts and dependencies
  • examples/: Three different usage examples

Features:

  • openapiPublish: Complete pipeline orchestration
  • openapiCheckout: Sparse Git checkout
  • openapiValidate: YAML/OpenAPI validation with strict mode
  • openapiUploadNexus: Reliable Nexus upload with retry

Implements a complete Jenkins Shared Library in shared-library/ subdirectory
with the following optimizations:

- Node.js-based YAML and OpenAPI validation
- Pinned dependencies for reproducible builds (no ^ or ~)
- Sparse Git checkout for performance
- Retry logic for Git and Nexus operations
- Strict mode with advanced validation checks
- Versioned Nexus uploads with clear artifact naming

Structure:
- vars/: Groovy pipeline steps
- resources/: Node.js validation scripts and dependencies
- examples/: Three different usage examples

Features:
- openapiPublish: Complete pipeline orchestration
- openapiCheckout: Sparse Git checkout
- openapiValidate: YAML/OpenAPI validation with strict mode
- openapiUploadNexus: Reliable Nexus upload with retry
@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

Implements a complete solution for downloading OpenAPI specifications
from Nexus into the React project - fully OS-independent (Windows,
macOS, Linux).

Features:
- Node.js-based download script using ES Modules
- Configuration via .openapi.config.json
- Support for multiple APIs and versions
- Optional authentication via environment variables
- Automatic download on build (prebuild hook)
- Redirect handling for Nexus URLs
- Comprehensive error handling and logging

Files added:
- scripts/download-openapi.js: Main download script
- .openapi.config.example.json: Example configuration
- docs/OPENAPI_DOWNLOAD.md: Complete documentation with CI/CD examples
- OPENAPI_QUICKSTART.md: Quick start guide

Integration:
- package.json: Added download:openapi and prebuild scripts
- .gitignore: Exclude sensitive config and downloaded specs

Workflow:
1. Jenkins Shared Library publishes OpenAPI specs to Nexus
2. Download script fetches them into React project
3. Build process uses specs for code generation/validation
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.

2 participants