Skip to content

Comments

AI-Powered Ballerina Connector Automation #8432

Merged
TharmiganK merged 2 commits intoballerina-platform:connector-automationfrom
nostoc:connector-automation
Nov 4, 2025
Merged

AI-Powered Ballerina Connector Automation #8432
TharmiganK merged 2 commits intoballerina-platform:connector-automationfrom
nostoc:connector-automation

Conversation

@nostoc
Copy link
Contributor

@nostoc nostoc commented Nov 4, 2025

Purpose

To automate the entire Ballerina connector development lifecycle using AI.
This project includes:

  • OpenAPI spec sanitization
  • Client generation
  • Intelligent code fixing
  • Example generation
  • Test generationd
  • Documentation generation

Copy link
Contributor

@TharmiganK TharmiganK left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved the PR, lets do a proper review when we sent the PR to the main branch

@TharmiganK TharmiganK merged commit 4361ecc into ballerina-platform:connector-automation Nov 4, 2025
2 checks passed
TharmiganK added a commit that referenced this pull request Nov 21, 2025
* Add connector automation source code

* Update org name

* Merge pull request #8432 from nostoc/connector-automation

AI-Powered Ballerina Connector Automation

* Implement the auto-generate-workflow partially

* Add directory name extraction function and update example README generation

* Remove user confirmation prompt from full pipeline execution

* Add auto-generate connector workflow

* Update doc generator to support relative paths

* Add auto generate connector template

* Address PR review comments

* Remove auto-confirm input and simplify pipeline arguments in connector generation workflow

* Remove unused inputs from auto-generate connector workflow and update PR body

* Add Auto generate Connector Template (#8440)

* Add connector automation source code

* Update org name

* Implement the auto-generate-workflow partially

* Add directory name extraction function and update example README generation

* Remove user confirmation prompt from full pipeline execution

* Add auto-generate connector workflow

* Update doc generator to support relative paths

* Add auto generate connector template

* Address PR review comments

* Remove auto-confirm input and simplify pipeline arguments in connector generation workflow

* Remove unused inputs from auto-generate connector workflow and update PR body

* Enhance auto-generate connector workflow by adding distribution-zip input, setting up JDK 21, and improving Ballerina setup steps

* Update description for distribution-zip input in auto-generate connector workflow

* Rename step for setting default Ballerina command in auto-generate connector workflow

* Refactor Get Ballerina distribution  to use curl for downloading and added authorization token

* Remove redundant Get Ballerina Distribution step in auto-generate connector workflow

* Improve Ballerina distribution download step by combining download and extraction, handling nested ZIP files, and cleaning up temporary files

* Update workflow

* Update workflow again

* Update again

* Add debugging into clone connector automator step

* Add branch

* Add Config.toml creation for connector automator

* Add Ballerina bin directory to PATH for custom distribution in connector automator

* Add license path as argument to connector generation pipeline

* Remove license file input from connector generation workflow

* Comment out license handling code in client generator

* Update connector automator clone URL to use internal repository

* Fix clone URL for connector automator to use GitHub repository

* Fix output path in connector generation pipeline

* Improve connector generation pipeline by updating spec and output paths, and adding error handling for missing spec file

* Update TEMPLATES_PATH to use relative path for template directory

* Rename module main functions and files

* Enhance user feedback and improve CLI interactions

* Remove cost tracking and improve logging

* Update PR body for AI-generated connector to emphasize review requirements and provide detailed generation information

* Add license file support to client generation and update workflow template

* Fix syntax error in the workflow

* Add cleanup step to remove Dependencies.toml, .backup files, and target directories

* Refactor client build validation

* Refactor spec updater to use structured types for OpenAPI specification

* Enhance parameter handling by making 'in' field optional in Parameter type and improve context extraction in description requests

* Refactor spec handling to improve JSON writing and enhance parameter type definitions for better compatibility with OpenAPI specifications

* Enhance JSON handling by adding prettification before writing updated OpenAPI specs

* Enhance README generation instructions by adding critical validation examples for Config.toml based on configurable variables

* Rename branch for connector generation from 'auto-generate-connector' to 'dry-run'

* Rename branch reference from 'auto-generate-connector' to 'dry-run' in push and PR creation steps

* Refactor build validation logic and enhance error handling in the pipeline process

* Revert branch name

* Format ballerina files

* Enhance AI-generated connector workflow and update JDK version in documentation

* Add directory creation for OpenAPI specification download

* Update default Ballerina version and adjust JDK setup condition in workflow

* Connector Automator Package  (#8454)

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* Add connector automation source code

* Update org name

* Implement the auto-generate-workflow partially

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* Add directory name extraction function and update example README generation

* Remove user confirmation prompt from full pipeline execution

* Add auto-generate connector workflow

* Update doc generator to support relative paths

* Add auto generate connector template

* Address PR review comments

* Remove auto-confirm input and simplify pipeline arguments in connector generation workflow

* Remove unused inputs from auto-generate connector workflow and update PR body

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* Enhance auto-generate connector workflow by adding distribution-zip input, setting up JDK 21, and improving Ballerina setup steps

* Update description for distribution-zip input in auto-generate connector workflow

* Rename step for setting default Ballerina command in auto-generate connector workflow

* Refactor Get Ballerina distribution  to use curl for downloading and added authorization token

* Remove redundant Get Ballerina Distribution step in auto-generate connector workflow

* Improve Ballerina distribution download step by combining download and extraction, handling nested ZIP files, and cleaning up temporary files

* Update workflow

* Update workflow again

* Update again

* Add debugging into clone connector automator step

* Add branch

* Add Config.toml creation for connector automator

* Add Ballerina bin directory to PATH for custom distribution in connector automator

* Add license path as argument to connector generation pipeline

* Remove license file input from connector generation workflow

* Comment out license handling code in client generator

* Update connector automator clone URL to use internal repository

* Fix clone URL for connector automator to use GitHub repository

* Fix output path in connector generation pipeline

* Improve connector generation pipeline by updating spec and output paths, and adding error handling for missing spec file

* Update TEMPLATES_PATH to use relative path for template directory

* Rename module main functions and files

* [AUTOMATED] Update the dependency graph and the dashboard

* [AUTOMATED] Update the dependency graph and the dashboard

* Enhance user feedback and improve CLI interactions

* Remove cost tracking and improve logging

* Update PR body for AI-generated connector to emphasize review requirements and provide detailed generation information

* [AUTOMATED] Update the dependency graph and the dashboard

* Add license file support to client generation and update workflow template

* Fix syntax error in the workflow

* Add cleanup step to remove Dependencies.toml, .backup files, and target directories

* Refactor client build validation

* Refactor spec updater to use structured types for OpenAPI specification

* Enhance parameter handling by making 'in' field optional in Parameter type and improve context extraction in description requests

* Refactor spec handling to improve JSON writing and enhance parameter type definitions for better compatibility with OpenAPI specifications

* Enhance JSON handling by adding prettification before writing updated OpenAPI specs

* Enhance README generation instructions by adding critical validation examples for Config.toml based on configurable variables

* Rename branch for connector generation from 'auto-generate-connector' to 'dry-run'

* Rename branch reference from 'auto-generate-connector' to 'dry-run' in push and PR creation steps

* Refactor build validation logic and enhance error handling in the pipeline process

* Revert branch name

* Format ballerina files

* Enhance AI-generated connector workflow and update JDK version in documentation

* Add directory creation for OpenAPI specification download

* [AUTOMATED] Update the dependency graph and the dashboard

* Update default Ballerina version and adjust JDK setup condition in workflow

---------

Co-authored-by: ballerina-bot <ballerina-bot@ballerina.org>
Co-authored-by: ballerina-bot <ballerinalang@wso2.com>

* Add auto-generate connector workflow configuration

* Add logic to handle remote method signatures in test generation prompts.

* Add auto-generate workflow (#8456)

* Add connector automation source code

* Update org name

* Implement the auto-generate-workflow partially

* Add directory name extraction function and update example README generation

* Remove user confirmation prompt from full pipeline execution

* Add auto-generate connector workflow

* Update doc generator to support relative paths

* Add auto generate connector template

* Address PR review comments

* Remove auto-confirm input and simplify pipeline arguments in connector generation workflow

* Remove unused inputs from auto-generate connector workflow and update PR body

* Enhance auto-generate connector workflow by adding distribution-zip input, setting up JDK 21, and improving Ballerina setup steps

* Update description for distribution-zip input in auto-generate connector workflow

* Rename step for setting default Ballerina command in auto-generate connector workflow

* Refactor Get Ballerina distribution  to use curl for downloading and added authorization token

* Remove redundant Get Ballerina Distribution step in auto-generate connector workflow

* Improve Ballerina distribution download step by combining download and extraction, handling nested ZIP files, and cleaning up temporary files

* Update workflow

* Update workflow again

* Update again

* Add debugging into clone connector automator step

* Add branch

* Add Config.toml creation for connector automator

* Add Ballerina bin directory to PATH for custom distribution in connector automator

* Add license path as argument to connector generation pipeline

* Remove license file input from connector generation workflow

* Comment out license handling code in client generator

* Update connector automator clone URL to use internal repository

* Fix clone URL for connector automator to use GitHub repository

* Fix output path in connector generation pipeline

* Improve connector generation pipeline by updating spec and output paths, and adding error handling for missing spec file

* Update TEMPLATES_PATH to use relative path for template directory

* Rename module main functions and files

* Enhance user feedback and improve CLI interactions

* Remove cost tracking and improve logging

* Update PR body for AI-generated connector to emphasize review requirements and provide detailed generation information

* Add license file support to client generation and update workflow template

* Fix syntax error in the workflow

* Add cleanup step to remove Dependencies.toml, .backup files, and target directories

* Refactor client build validation

* Refactor spec updater to use structured types for OpenAPI specification

* Enhance parameter handling by making 'in' field optional in Parameter type and improve context extraction in description requests

* Refactor spec handling to improve JSON writing and enhance parameter type definitions for better compatibility with OpenAPI specifications

* Enhance JSON handling by adding prettification before writing updated OpenAPI specs

* Enhance README generation instructions by adding critical validation examples for Config.toml based on configurable variables

* Rename branch for connector generation from 'auto-generate-connector' to 'dry-run'

* Rename branch reference from 'auto-generate-connector' to 'dry-run' in push and PR creation steps

* Refactor build validation logic and enhance error handling in the pipeline process

* Revert branch name

* Format ballerina files

* Enhance AI-generated connector workflow and update JDK version in documentation

* Add directory creation for OpenAPI specification download

* Update default Ballerina version and adjust JDK setup condition in workflow

* Add auto-generate connector workflow configuration

* Add logic to handle remote method signatures in test generation prompts.

---------

Co-authored-by: ballerina-bot <ballerina-bot@ballerina.org>
Co-authored-by: ballerina-bot <ballerinalang@wso2.com>
Co-authored-by: Krishnananthalingam Tharmigan <63336800+TharmiganK@users.noreply.github.com>
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