ocean
ocean copied to clipboard
[Integration][Github] Github-Ocean Integration
User description
Description
included repo from https://github.com/rubbieKelvin/port.io-asm
What – Added an integration for GitHub that pulls in key elements like Issues, Pull Requests, Workflows, Repositories, and Teams
Why – To give users a quick, centralized view of how their organization is using GitHub what’s being worked on, what’s in review, which workflows are running, and who’s involved.
How – Set this up by following Port’s documentation, making sure all the relevant resources were connected and synced properly.
Type of change
Please leave one option from the following and delete the rest:
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [x] New Integration (non-breaking change which adds a new integration)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Non-breaking change (fix of existing functionality that will not change current behavior)
- [ ] Documentation (added/updated documentation)
All tests should be run against the port production environment(using a testing org).
Core testing checklist
- [x] Integration able to create all default resources from scratch
- [x] Resync finishes successfully
- [x] Resync able to create entities
- [x] Resync able to update entities
- [x] Resync able to detect and delete entities
- [x] Scheduled resync able to abort existing resync and start a new one
- [ ] Tested with at least 2 integrations from scratch
- [ ] Tested with Kafka and Polling event listeners
- [ ] Tested deletion of entities that don't pass the selector
Integration testing checklist
- [x] Integration able to create all default resources from scratch
- [x] Resync able to create entities
- [x] Resync able to update entities
- [x] Resync able to detect and delete entities
- [x] Resync finishes successfully
- [ ] If new resource kind is added or updated in the integration, add example raw data, mapping and expected result to the
examplesfolder in the integration directory. - [ ] If resource kind is updated, run the integration with the example data and check if the expected result is achieved
- [ ] If new resource kind is added or updated, validate that live-events for that resource are working as expected
- [ ] Docs PR link here
Preflight checklist
- [x] Handled rate limiting
- [x] Handled pagination
- [x] Implemented the code in async
- [ ] Support Multi account
Screenshots
API Documentation
Provide links to the API documentation used for this integration.
PR Type
Enhancement, Tests, Documentation
Description
-
Introduced new GitHub integration for Port Ocean.
- Syncs repositories, pull requests, issues, teams, and workflows.
- Handles GitHub API authentication, pagination, and error handling.
- Provides webhook endpoint for GitHub events.
-
Added comprehensive type definitions and error handling for GitHub data.
-
Implemented extensive test suite for GitHub client logic.
-
Included configuration, blueprints, and documentation files.
Changes walkthrough 📝
| Relevant files | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Enhancement | |||||||||||||
| Error handling | 1 files
| ||||||||||||
| Tests | 1 files
| ||||||||||||
| Configuration changes | 6 files
| ||||||||||||
| Documentation | |||||||||||||
| Miscellaneous | |||||||||||||
| Dependencies | 1 files
| ||||||||||||
| Additional files |
Need help?
Type /help how to ...in the comments thread for any questions about Qodo Merge usage.Check out the documentation for more information.
PR Reviewer Guide 🔍
Here are some key observations to aid the review process:
| ⏱️ Estimated effort to review: 4 🔵🔵🔵🔵⚪ |
| 🧪 PR contains tests |
| 🔒 Security concerns Sensitive information exposure: |
⚡ Recommended focus areas for reviewError Handling
|
PR Code Suggestions ✨
Explore these optional code suggestions:
| Category | Suggestion | Impact |
| General |
Fix typo in commentFix the typo in the comment "cehck" to "check" for better code readability and integrations/github/github/client.py [138-139]
Suggestion importance[1-10]: 4__ Why: This suggestion corrects a minor typo in a comment, improving code readability and professionalism. While it does not affect functionality, it contributes to code quality. | Low |
Improve comment clarityReplace the vague comment "err" with a more descriptive comment like "raise integrations/github/github/client.py [141-142]
Suggestion importance[1-10]: 4__ Why: The suggestion makes the comment more descriptive, enhancing code clarity and maintainability. This is a minor improvement that does not impact the code's behavior. | Low | |
| ||
This pull request is automatically being deployed by Amplify Hosting (learn more).
Access this pull request here: https://pr-1678.d1ftd8v2gowp8w.amplifyapp.com