Commit Graph

13 Commits (464a9d1265dd9034af4bc9fead5dbdcab3a6aa23)

Author SHA1 Message Date
Frostebite 464a9d1265
feat: Add dynamic provider loader with improved error handling (#734)
* feat: Add dynamic provider loader with improved error handling

- Create provider-loader.ts with function-based dynamic import functionality
- Update CloudRunner.setupSelectedBuildPlatform to use dynamic loader for unknown providers
- Add comprehensive error handling for missing packages and interface validation
- Include test coverage for successful loading and error scenarios
- Maintain backward compatibility with existing built-in providers
- Add ProviderLoader class wrapper for backward compatibility
- Support both built-in providers (via switch) and external providers (via dynamic import)

* fix: Resolve linting errors in provider loader

- Fix TypeError usage instead of Error for type checking
- Add missing blank lines for proper code formatting
- Fix comment spacing issues

* build: Update built artifacts after linting fixes

- Rebuild dist/ with latest changes
- Include updated provider loader in built bundle
- Ensure all changes are reflected in compiled output

* build: Update built artifacts after linting fixes

- Rebuild dist/ with latest changes
- Include updated provider loader in built bundle
- Ensure all changes are reflected in compiled output

* build: Update built artifacts after linting fixes

- Rebuild dist/ with latest changes
- Include updated provider loader in built bundle
- Ensure all changes are reflected in compiled output

* build: Update built artifacts after linting fixes

- Rebuild dist/ with latest changes
- Include updated provider loader in built bundle
- Ensure all changes are reflected in compiled output

* fix: Fix AWS job dependencies and remove duplicate localstack tests

- Update AWS job to depend on both k8s and localstack jobs
- Remove duplicate localstack tests from k8s job (now only runs k8s tests)
- Remove unused cloud-runner-localstack job from main integrity check
- Fix AWS SDK warnings by using Uint8Array(0) instead of empty string for S3 PutObject
- Rename localstack-and-k8s job to k8s job for clarity

* feat: Implement provider loader dynamic imports with GitHub URL support

- Add URL detection and parsing utilities for GitHub URLs, local paths, and NPM packages
- Implement git operations for cloning and updating repositories with local caching
- Add automatic update checking mechanism for GitHub repositories
- Update provider-loader.ts to support multiple source types with comprehensive error handling
- Add comprehensive test coverage for all new functionality
- Include complete documentation with usage examples
- Support GitHub URLs: https://github.com/user/repo, user/repo@branch
- Support local paths: ./path, /absolute/path
- Support NPM packages: package-name, @scope/package
- Maintain backward compatibility with existing providers
- Add fallback mechanisms and interface validation

* feat: Implement provider loader dynamic imports with GitHub URL support

- Add URL detection and parsing utilities for GitHub URLs, local paths, and NPM packages
- Implement git operations for cloning and updating repositories with local caching
- Add automatic update checking mechanism for GitHub repositories
- Update provider-loader.ts to support multiple source types with comprehensive error handling
- Add comprehensive test coverage for all new functionality
- Include complete documentation with usage examples
- Support GitHub URLs: https://github.com/user/repo, user/repo@branch
- Support local paths: ./path, /absolute/path
- Support NPM packages: package-name, @scope/package
- Maintain backward compatibility with existing providers
- Add fallback mechanisms and interface validation

* feat: Fix provider-loader tests and URL parser consistency

- Fixed provider-loader test failures (constructor validation, module imports)
- Fixed provider-url-parser to return consistent base URLs for GitHub sources
- Updated error handling to use TypeError consistently
- All provider-loader and provider-url-parser tests now pass
- Fixed prettier and eslint formatting issues

* feat: Implement provider loader dynamic imports with GitHub URL support

- Add URL detection and parsing utilities for GitHub URLs, local paths, and NPM packages
- Implement git operations for cloning and updating repositories with local caching
- Add automatic update checking mechanism for GitHub repositories
- Update provider-loader.ts to support multiple source types with comprehensive error handling
- Add comprehensive test coverage for all new functionality
- Include complete documentation with usage examples
- Support GitHub URLs: https://github.com/user/repo, user/repo@branch
- Support local paths: ./path, /absolute/path
- Support NPM packages: package-name, @scope/package
- Maintain backward compatibility with existing providers
- Add fallback mechanisms and interface validation

* feat: Implement provider loader dynamic imports with GitHub URL support

- Add URL detection and parsing utilities for GitHub URLs, local paths, and NPM packages
- Implement git operations for cloning and updating repositories with local caching
- Add automatic update checking mechanism for GitHub repositories
- Update provider-loader.ts to support multiple source types with comprehensive error handling
- Add comprehensive test coverage for all new functionality
- Include complete documentation with usage examples
- Support GitHub URLs: https://github.com/user/repo, user/repo@branch
- Support local paths: ./path, /absolute/path
- Support NPM packages: package-name, @scope/package
- Maintain backward compatibility with existing providers
- Add fallback mechanisms and interface validation

* m

* m
2025-09-13 00:54:21 +01:00
Frostebite 98963da430 ci(k8s): remove in-cluster LocalStack; use host LocalStack via localhost:4566 for all; rely on k3d host mapping 2025-09-08 01:31:42 +01:00
Frostebite fd74d25ac9 ci(k8s): run LocalStack inside k3s and use in-cluster endpoint; scope host LocalStack to local-docker 2025-09-07 23:45:55 +01:00
Frostebite a0cb4ff559 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 22:59:53 +01:00
Frostebite edc1df78b3 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 18:59:18 +01:00
Frostebite 7779839e46 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 18:28:13 +01:00
Frostebite df650638a8 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 03:55:46 +01:00
Frostebite 831b913577 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 03:52:27 +01:00
Frostebite f4d46125f8 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 03:50:06 +01:00
Frostebite 1d2d9044df ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 03:44:06 +01:00
Frostebite f50fd8ebb2 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-07 02:44:28 +01:00
Frostebite f6f813b5e1 ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers 2025-09-06 02:49:04 +01:00
Frostebite 26fcfceaa8 refactor(workflows): remove deprecated cloud-runner CI pipeline and introduce cloud-runner integrity workflow 2025-09-06 02:47:10 +01:00