Commit Graph

73 Commits

Author SHA1 Message Date
Johannes Batzill
335998505e [MISC] Introduce PathStore and Move PathLogic to Controller Layer (#226)
This change is a follow up on the effort to remove transactions and sync stores from the database layer, and move them in the application layer. It is addressing the repo + space store.
The following changes are included:
- Introduce PathStore storing resource paths (repo + space)
- Add foreign key from path.repo_id/space_id to repo.id/space.id
- Add foreign key from repo/space.parent_id to space.id
- Remove repo_sync and space_sync
- Move path creation logic to repo/space controller (for both creating primary paths for new repos/spaces, as well as creating alias spaces)
- Reimplement repo/space moving on controller layer
2023-01-18 11:34:12 -08:00
Marko Gaćeša
ec4003e331 Handling branch events for PRs (#221) 2023-01-18 13:26:20 +01:00
Marko Gaćeša
8151b4591e PR change state API; Removed rejected state (#220) 2023-01-17 16:04:30 +01:00
Enver Bisevac
aafec0a9dc fix merge-base in diff (#206) 2023-01-17 12:36:57 +01:00
Marko Gaćeša
6705c7234d feat: [SCM-60]: return number of duplicate PR, unique partial index for PR branch uniqueness (#214) 2023-01-17 11:42:33 +01:00
Marko Gaćeša
3e92132d83 execute the list PRs API in a readonly tx (#215) 2023-01-17 11:42:08 +01:00
Marko Gaćeša
e5dc9754cd default list of PR states should be empty (#210) 2023-01-13 18:47:42 -08:00
Marko Gaćeša
bacda596fa Added Correct method for enum types (#194) 2023-01-13 13:59:53 +01:00
Johannes Batzill
c827fa5e66 [MISC] Webhook Creation Default To Secure, Fix PR/Compare Commit Listing, Fix Merge Commit Message (#203)
This change is fixing a few things on both UI and backend side:
- update webhook creation screen to default to enable ssl verification (secure by default should always be the move)
- fix pr/compare commit listing to show correct diffs the head branch is ahead of the base branch (NOTE: THIS ONLY SHOWS THE LATEST 20 COMMITS - NO PAGINATION ADDED)
- fix merge commit message to contain the correct head branch, source repo path and pr numbers (similar'ish to github)
2023-01-13 02:49:39 -08:00
Johannes Batzill
65c59d0b5b [MISC] Fix review bugs, regenerate swagger from latest service, fix webhook.has_secret in swagger (#198)
This change contains the following changes:
- allow submitting reviews without comment for approve
- fix openapi for /reviews api and fix UI calls for submitting reviews
- fix recently broken openapi for webhook (it removed has_secret field as part of openapi refactor)
- fix fatal submit review bug (we passed repo.UID not repo.GitUID to gitrpc - not sure how that ever worked?)
- add missing merge pr activity to list of all pr activity enum values
- return all PR states by default
- show Open PRs by default (instead of all) and fix state filtering query
- regenerate code services based on latest swagger
- fix UI code to work with regenerated code service
2023-01-12 22:39:38 -08:00
Hitesh Aringa
fe00db23f9 [SCM-35]: default branch delete protection (#183)
* [SCM-35]: default branch delete protection
2023-01-12 09:59:09 -08:00
Marko Gaćeša
8909037ec7 enum types should have Enum() method (#192) 2023-01-12 17:13:03 +01:00
Johannes Batzill
5b55f48772 [Tags] Adding EVENT and WEBHOOK Support For Tags (#185)
Adding tagcreated, tagupdated, and tagdeleted events.
Adding tag_created, tag_updated, and tag_deleted webhooks
2023-01-11 20:56:00 -08:00
Johannes Batzill
a74d779dc4 [Webhook] Add display_name/description/latest_execution_result to webhook (#180)
This PR adds the following fields to webhooks:
- 'DisplayName' - the display name of the webhook for easier recognition in UI (no uniqueness guarantees)
- 'Description' - an (optional) description of the webhook
 - 'LatestExecutionResult' - contains the result of the latest execution of the webhook
2023-01-11 17:11:10 -08:00
Enver Bisevac
2c62dda460 [maint] added ReadTree method to git adapter (#174)
* added ReadTree method in git adapter

* minor fix and rebase to main
2023-01-11 00:32:51 +01:00
Johannes Batzill
a426cdd69b [GIT] Add Support for Other Git Clients (#171) 2023-01-10 14:35:09 -08:00
Enver Bisevac
63de576d08 [feat] initial work on merging PR (#170)
* initial work on merging PR

* code refactored based on requested changes

* requested changes
2023-01-10 02:09:43 +01:00
Johannes Batzill
1a84e19ce4 [MISC] Add internal API URL to url.Provider (#168) 2023-01-06 14:17:41 -08:00
Johannes Batzill
5cb824debd [feat]: Add Git Server Hook Support (#159)
This change is adding git server hook components:
- githook CLI implementation
- githook api handlers
- githook controler
2023-01-06 12:15:11 -08:00
Marko Gaćeša
65b49a933a pull request reviewers (#167) 2023-01-06 20:29:20 +01:00
Johannes Batzill
2006f769c9 [Webhook] Add url.Provider, Add principal to branch webhooks (#163) 2023-01-06 01:57:26 -08:00
Johannes Batzill
06721dcf20 [Techdebt] merge user/service/serviceaccount stores into single principal store (#160)
This change merges the `UserStore`, `ServiceStore`, and `ServiceAccountStore` into a single `PrincipalStore`.
2023-01-05 15:58:18 -08:00
Johannes Batzill
6c567b38d0 [MISC] Move GitRPC to Read/WriteRequest, Update Create/Delete Branch to use Push, Setup githook Symlink, Accept Incoming X-Request-Id (#157) 2023-01-05 11:03:35 -08:00
Johannes Batzill
d61e876de0 [FIX] Add repo_pullreq_seq to pullreq read APIs (#158) 2023-01-05 01:06:55 -08:00
Johannes Batzill
7ada1af3aa [API] Add after Support to Commit Listing (#155) 2023-01-04 16:59:43 -08:00
Johannes Batzill
1f1118f624 [Webhook] Add Event Processing and Retrigger (#148)
This change includes:
- webhook event processor (includes actual webhook execution)
- webhook retrigger API allowing to retrigger previous webhook executions
2023-01-04 14:43:36 -08:00
Marko Gaćeša
9f7d6cc857 Added payload to create/update PR comment API (#152) 2023-01-04 12:26:25 +01:00
Marko Gaćeša
98ac3d130d techdebt: [SCM-43]: Using opt lock to generate PR number (#151) 2023-01-04 12:24:17 +01:00
Marko Gaćeša
a79e187a88 DB & API refactor: Use snake case (#144)
Update DB and API to follow Harness Standard
2022-12-29 13:53:08 -08:00
Johannes Batzill
44ec7ceb07 [Webhook] Add API and DB Basics (#142)
This change introduces:
- webhook type / store / controller / handler
- webhookExecution type / store / controller / handler
- foreign key fix for sqlite3
2022-12-28 13:07:48 -08:00
Marko Gaćeša
f14731455d Add parent_id column to the pullreq_activities DB table (#143) 2022-12-28 18:51:34 +01:00
Marko Gaćeša
da53331ca1 PR comment: edit and delete APIs (#138) 2022-12-27 14:55:53 +01:00
Marko Gaćeša
b5bdeb8538 create comment API (#137) 2022-12-27 11:46:49 +01:00
Marko Gaćeša
7fc77396a9 Pull request timeline feature: DB and the list API (#136) 2022-12-26 12:17:38 +01:00
Marko Gaćeša
8f5e579001 rename DB table pullreq to pullreqs; added version (#130) 2022-12-22 20:21:15 +01:00
Enver Bisevac
22b0595476 initial work on raw diff (#129) 2022-12-22 14:30:31 +01:00
Marko Gaćeša
204548169d pullreq: update API (#122) 2022-12-13 16:13:27 +01:00
Marko Gaćeša
fe9118e074 PullReq list API: Added pagination headers (#121) 2022-12-09 17:02:45 +01:00
Marko Gaćeša
6bde210adf added branch params to PR list API (#119) 2022-12-09 15:45:02 +01:00
Marko Gaćeša
15163f3daa pullreq: dedicated struct for pulling data from DB (#116) 2022-12-08 12:52:31 +01:00
Marko Gaćeša
efcb047f46 pullreq refactor: fix linter issues (#115) 2022-12-07 14:22:44 +01:00
Marko Gaćeša
9e86875217 Returning author and merger info for PRs (#114) 2022-12-07 14:03:17 +01:00
Marko Gaćeša
8bdb31a4e2 checking branch existence in PR create (#105)
* checking branch existence in PR create
* added new methods to gitrpc: existence check for branch and tag
2022-12-06 12:26:12 +01:00
Enver Bisevac
c64874143d allow line endings from input 2022-11-30 23:30:41 +01:00
Enver Bisevac
7a54ef9d65 fix with file content on commit, fix linter, removed unused provider 2022-11-30 22:36:01 +01:00
Marko Gaćeša
1f4ac7e4b4 pullreq: list API (#99) 2022-11-30 13:56:29 +01:00
Marko Gaćeša
49cd521593 comment fix (#98) 2022-11-29 17:00:28 +01:00
Marko Gaćeša
1eba93695b feat: pull requests (#89)
* feat: pull requests, data layer

* pull requests: api layer

* add pull request number

* added auth check
2022-11-29 13:51:59 +01:00
Enver Bisevac
630c9b553f ordering imports linter and writer (#85) 2022-11-22 23:42:39 +01:00
Enver Bisevac
ad619c7e3c [feat]ability to commit files using REST api (#82)
* initial work on commit files

* minor improvements, grpc server interceptors and more

* compare file old sha and current sha

* added some validation steps

* config immutable, introduce temp repos dir

* handler added to standalone

* fix CI linter, fix minor bug on update

* wire generator files
2022-11-22 19:24:40 +01:00