Skip to content
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

Add first GitHub entities and automatically fetch them for the leaderboard #62

Merged
merged 57 commits into from
Sep 2, 2024

Conversation

GODrums
Copy link
Contributor

@GODrums GODrums commented Aug 18, 2024

Motivation

To make our Leaderboard possible, we first have to fetch the required PRs / Comments data from Github's API and store them in the database, as well as make the data available through our own API.

Description

  • Adds application-local.yml-support for the Github PAT
  • Adds the database structure for Github's API/Webhook schema
  • Provides a sample runner to store Hephaestus`s data in the database
  • Provides a Github API Client + GraphQL Client as fallback

Next up for the leaderboard (in other PRs):

  • Webhook integrations (NATS)
  • More endpoints depending on which data we need in our front-end

Screenshots (if applicable)

Checklist

General

  • PR title is clear and descriptive
  • PR description explains the purpose and changes
  • Code follows project coding standards
  • Self-review of the code has been done
  • Changes have been tested locally
  • Screenshots have been attached (if applicable)
  • Documentation has been updated (if applicable)

Server (if applicable)

  • Code is performant and follows best practices
  • No security vulnerabilities introduced
  • Proper error handling has been implemented
  • Added tests for new functionality
  • Changes have been tested in different environments (if applicable)

@GODrums GODrums added enhancement New feature or request application-server size:XL This PR changes 500-999 lines, ignoring generated files. labels Aug 18, 2024
@GODrums GODrums added this to the Gamification Leaderboard MVP milestone Aug 18, 2024
@GODrums GODrums self-assigned this Aug 18, 2024
@FelixTJDietrich FelixTJDietrich added bug Something isn't working and removed bug Something isn't working labels Aug 19, 2024
@github-actions github-actions bot added size:XXL This PR changes 1000+ lines, ignoring generated files. and removed size:XL This PR changes 500-999 lines, ignoring generated files. labels Aug 25, 2024
@GODrums GODrums changed the title DRAFT: Add Github GraphQL Repository Fetching Add Github API + GraphQL Repository Fetching Aug 26, 2024
@GODrums GODrums marked this pull request as ready for review August 26, 2024 00:40
Copy link
Collaborator

@FelixTJDietrich FelixTJDietrich left a comment

Choose a reason for hiding this comment

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

I did not look at everything, but some comments also apply to the other files. Let's do this PR right and set the standard for future PRs :) Also as reference.

Copy link
Collaborator

@FelixTJDietrich FelixTJDietrich left a comment

Choose a reason for hiding this comment

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

Some more final comments

@FelixTJDietrich
Copy link
Collaborator

I think the code looks good now, maybe you can take a quick look at ResponseEntity and the returned NotFoundException. Also you need to update the angular API client library, there is a command that you need to run in package.json. Afterwards we can merge this PR :)

Copy link
Collaborator

@FelixTJDietrich FelixTJDietrich left a comment

Choose a reason for hiding this comment

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

I have only a minor comment, the rest looks fine. You still need to make the checks pass.

@github-actions github-actions bot added the client label Sep 2, 2024
@FelixTJDietrich FelixTJDietrich changed the title Add Github API + GraphQL Repository Fetching Add first GitHub entities and automatically fetch them for the leaderboard Sep 2, 2024
Copy link
Collaborator

@FelixTJDietrich FelixTJDietrich left a comment

Choose a reason for hiding this comment

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

Code LGTM now, thank you!

@FelixTJDietrich FelixTJDietrich merged commit 2937c61 into develop Sep 2, 2024
6 checks passed
@FelixTJDietrich FelixTJDietrich deleted the feature/github-graphql-artemis branch September 2, 2024 07:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
application-server client enhancement New feature or request feature size:XXL This PR changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants