Skip to content

[feature]: a GitHub App to Trigger GitHub Actions #2531

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

Open
1 task done
Sonichigo opened this issue Feb 7, 2025 · 5 comments · May be fixed by keploy/testGPT#9
Open
1 task done

[feature]: a GitHub App to Trigger GitHub Actions #2531

Sonichigo opened this issue Feb 7, 2025 · 5 comments · May be fixed by keploy/testGPT#9
Labels
Enhancement New feature or request Good First Issue Good for newcomers GSoC Issues up for GSoC keploy OSS Open Source

Comments

@Sonichigo
Copy link
Contributor

👀 Is there an existing feature request for this?

  • I have searched the existing issues

🔖 Enhancement description

  • A GitHub App is created and listens for PR events.
  • Successfully triggers a GitHub Action on PR updates.
  • Integrates testGPT to check if keploy folder is present if yes, run the testcases.

🎤 Why should this be worked on?

  1. Listen for PR-related events (opened, updated, merged).
  2. Authenticate with GitHub and handle webhooks.
  3. Upon PR creation/update, trigger a workflow.
  4. Run tests, linting, or security scans automatically.
  5. Post test feedback as PR comments.

💻 Repository

keploy

@Sonichigo Sonichigo added Enhancement New feature or request Good First Issue Good for newcomers GSoC Issues up for GSoC OSS Open Source labels Feb 7, 2025
@Parijat-Ghosh
Copy link

I am starting to work on it .... Can you clarify testGPT’s role here? Is it a custom script, an external API, or part of Keploy’s existing tooling? Are there existing examples/docs I can reference?

@Sonichigo
Copy link
Contributor Author

I am starting to work on it .... Can you clarify testGPT’s role here? Is it a custom script, an external API, or part of Keploy’s existing tooling? Are there existing examples/docs I can reference?

Hi @Parijat-Ghosh , testGPT is the keploy's github action you can find here. It uses bash scripts to run and get triggered once it is in pipeline

@Parijat-Ghosh
Copy link

Thanks a lot!

@SkySingh04
Copy link
Contributor

@Sonichigo will be picking this up as well!

@SkySingh04 SkySingh04 linked a pull request Feb 12, 2025 that will close this issue
@SkySingh04
Copy link
Contributor

SkySingh04 commented Feb 12, 2025

Hey People! Over the weekend, I worked on a prototype for this issue, I call it PRism (get it? PR-ism? lol). I just wanted to quickly share what I have built so far:

  1. LLM Integration:
  • Designed the system to be LLM-agnostic, allowing integration with any open-source or closed-source LLM.
  • The tool also recommends which LLM to use based on use-case. Note: This is when you self-host the tool.
  1. Security Enhancements:
  • I used trivy to setup the security dependency checks.
  1. Static Analysis and Linting:
  • Integrated Keploy to run test generation workflows.
  • Added ESLint and GolangCI-Lint for comprehensive static code analysis.
  1. Line-by-Line Suggestions (CodeRabbit-style):
  • Implemented inline suggestions for coding style, security vulnerabilities, and best practices directly in pull requests (PRs).
  • Ensures actionable feedback, improving developer experience.
  1. Modular Webhook System:
  • Built a webhook-based system to integrate seamlessly with CI/CD workflows and version control platforms (e.g., GitHub, GitLab).
  • Configurable trigger points to optimize performance (e.g., only running on certain branches or PR events).

Demo Video :

PRism.Demo.Video.-.Made.with.Clipchamp_1740285601615.mp4

Looking forward to your feedback on this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request Good First Issue Good for newcomers GSoC Issues up for GSoC keploy OSS Open Source
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants