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

[GH-85,84,71,49] (WIP)Confluence Phase-2 #88

Draft
wants to merge 54 commits into
base: master
Choose a base branch
from

Conversation

Kshitij-Katiyar
Copy link

@Kshitij-Katiyar Kshitij-Katiyar commented Jun 8, 2022

Summary and Features Added:-

  1. Removed the dependency on the Confluence-side plugin (OBR file) to support subscriptions on Confluence Server/Data Center.

  2. Added support for OAuth 2.0 for both Cloud and Server editions of Confluence . Users can OAuth using /Confluence connect command.

  3. Remove the need to use a single shared authentication token limiting subscriptions to
    admins only.

  4. In case of subscriptions ,users can only subscribe to spaces and pages that their Confluence
    account has access to.

  5. Support of following events is there:-
    • space_updated
    • page_created
    • page_restored
    • page_trashed
    • page_updated
    • comment_created
    • comment_updated

  6. Added permissions for both Mattermost and confluence side which can be changed by Mattermost Admin in Plugin configuration.

  7. Create Page through Mattermost on Confluence both for server as well as cloud
    i) A Post Dropdown Menu Action to create a new confluence page
    ii) Opens a modal that with following options:-
    • Confluence URL
    • Space Key/Name
    • Page Title
    • Page body text which shall be pre-populated with the post content
    iii) Once the new page is created, It will also post a notification of the new page in the channel that from which the page
    was created.

* MI-1721: WIP

* MI-1721: WIP

* MI-1721: Fixed GetClient function

* MI-1721: WIP

* [MI-1751]:Added Logic to create webhook for connecting to confluence server

* MI-1721: Added OAuth2.0 for confluence server and cloud

* MI-1721: Done some code refactoring

* [MI-1772]:WIP:Working on Notifications

* [MI-1751]:Fixed Review fixes

* [MI-1751]:[WIP]:Added Notifications for server

* [MI-1772]:[WIP]:refactoring code

* [MI-1772]:Fixed Self Review fixes

* [MI-1772]:Fixed Review fixes

* [MI-1794][WIP]:Added Notifications for Confluence Cloud

* [MI-1794]:Added Confluence Cloud Notification

* [MI-1794]:Self review fixes

* [MI-1788]:Completed Notifications for Confluence Server

* [MI-1788]:Self Review Fixes

* [MI-1811]:Fixed Unsubscribe command

* [MI-1811]:Self review fixes

* [MI-1814]:Added /edit Command in confluence Plugin

* [MI-1794]:Fixed Review fixes

* [MI-1822][WIP]:wrote some test cases

* [MI-1826]:Added Permissions for who can create/edit/delete the subscriptions

* [MI-1826]:Fixed review fixes

* [MI-1788]:Fixed Review fixes

* [MI-1811]:Fixed review fixes

* [MI-1788]:Removed Kv store Admin Funtions

* [MI-1814]:Fixed review fixes

* [MI-1822]:Updated the test cases

* [MI-1834][WIP]:Fixing bugs

* [MI-1834]:self review fixes

* [MI-1834]:review fixes done

* [MI-1826]:review fixes done

* [MI-1814]:review fixes done

* [MI-1811]:review fixes done

* [MI-1842]:Added test cases for Oauth flow

* [MI-1842]:self review fixes

* [MI-1842]:added yml files

* [MI-1721]:fixed review fixes

* [MI-1849]:fixed bug fixes

* [MI-1849]:fixed templates

* [MI-1849]:fixed review fixes

* [MI-1853]:fixed linting errors

* [MI-1853]:Fixed and removed lint erros

* [MI-1853]:self review fixes

* [MI-1853]:fixed linters in github actions

* [MI-1853]:fixes goimports error

* [MI-1853]:fix lint errors in webapp

* [MI-1853]:fixed webapp test cases

* [MI-1853]:Fixed circleCI error

* [MI-1853]:fixed Circle lint error

* [MI-1853]:Ran go mod tidy

* [MI-1853]:fixed go.mod file

* [MI-1853]:fixed go.mod and go.sum

* [MI-1853]:fixed review fixes

* [MI-1721]:fixed review fixes

* [MI-1751]:Added Logic to create webhook for connecting to confluence server (#1)

* [MI-1751]:Added Logic to create webhook for connecting to confluence server

* [MI-1751]:Fixed Review fixes

* [MI-1772]:Added logic for server side notifications for confluence (#3)

* [MI-1772]:WIP:Working on Notifications

* [MI-1751]:[WIP]:Added Notifications for server

* [MI-1772]:[WIP]:refactoring code

* [MI-1772]:Fixed Self Review fixes

* [MI-1772]:Fixed Review fixes

* [MI-1772]:fixed review fixes

* [MI-1794]:Added Notifications for Confluence Cloud (#4)

* [MI-1794][WIP]:Added Notifications for Confluence Cloud

* [MI-1794]:Added Confluence Cloud Notification

* [MI-1794]:Self review fixes

* [MI-1794]:Fixed Review fixes

* [MI-1794]:fixed review fixes

* [MI-1794]:fixed review fixes

* [MI-1788]:Created Notifications for Confluence Server(webhook per user) (#5)

* [MI-1788]:Completed Notifications for Confluence Server

* [MI-1788]:Self Review Fixes

* [MI-1788]:Fixed Review fixes

* [MI-1788]:Removed Kv store Admin Funtions

* [MI-1811]:Added Logic for Unsubscribe Command  (#6)

* [MI-1811]:Fixed Unsubscribe command

* [MI-1811]:Self review fixes

* [MI-1811]:Fixed review fixes

* [MI-1811]:review fixes done

* [MI-1814]:Added /edit Command in confluence Plugin (#7)

* [MI-1814]:Added /edit Command in confluence Plugin

* [MI-1814]:Fixed review fixes

* [MI-1814]:review fixes done

* [MI-1814]:fixed review fixes

* [MI-1822]:Updated the Test cases for Confluence Plugin (#9)

* [MI-1822][WIP]:wrote some test cases

* [MI-1822]:Updated the test cases

* [MI-1822]:fixed review fixes

* [MI-1822]:fixed review fixes

Co-authored-by: Kshitij Katiyar <[email protected]>

Co-authored-by: Kshitij Katiyar <[email protected]>

Co-authored-by: Kshitij Katiyar <[email protected]>

Co-authored-by: Kshitij Katiyar <[email protected]>

Co-authored-by: Kshitij Katiyar <[email protected]>

Co-authored-by: Kshitij Katiyar <[email protected]>

Co-authored-by: Kshitij Katiyar <[email protected]>
Co-authored-by: Shivam Chauhan <[email protected]>

* [MI-1721]:fixed circle error

* [MI-1721]:fixed frontend linters

Co-authored-by: Kshitij Katiyar <[email protected]>
Co-authored-by: kshitij katiyar <[email protected]>
@Kshitij-Katiyar Kshitij-Katiyar requested a review from jfrerich as a code owner June 8, 2022 19:24
@Kshitij-Katiyar Kshitij-Katiyar changed the title Confluence Phase-2 [GH-85,84,71,49] Confluence Phase-2 Jun 9, 2022
@mickmister
Copy link
Contributor

@mkdbns I meant to mention you above

@Kshitij-Katiyar
Copy link
Author

@Kshitij-Katiyar Is it possible to split this PR up into separate features to make it more reasonable to review?

@mickmister We can create 2 Incremental PRs one for auth/notification and one for create Page Module. As they are incremental and create page module is dependent on auth/notification and i can only 1 create PR here with a base branch of mattermost:master and the other one have to be internal as auth/notification Branch is not present in mattermost confluence repo. So should i create only 1 PR and wait for it to merge or should i create 1 branch with mattermost master and other as a internal PR on brightscout domain but that will be on a public forked repo .

@mickmister
Copy link
Contributor

@Kshitij-Katiyar Let's have the auth/notification PR be merged, and then have the create page module PR submitted. We can use this open PR as the create page PR if the git history makes sense for that.

@Kshitij-Katiyar
Copy link
Author

@Kshitij-Katiyar Let's have the auth/notification PR be merged, and then have the create page module PR submitted. We can use this open PR as the create page PR if the git history makes sense for that.

@mickmister Create a PR for auth/notifications .Please find the at following link :- #89

@jfrerich jfrerich removed their request for review July 27, 2022 18:37
@catalintomai catalintomai requested review from javaguirre and removed request for catalintomai October 14, 2022 16:12
Copy link

@javaguirre javaguirre left a comment

Choose a reason for hiding this comment

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

Hi! I made a first sweep to the backend, I couldn't review the frontend yet, but It might have been nice to split these in the future, there are some strategies (creating a feature per PR, splitting front and back, ...)

assets/templates/command/install_cloud.md Show resolved Hide resolved
server/command.go Show resolved Hide resolved
server/command.go Show resolved Hide resolved
server/plugin.go Show resolved Hide resolved
server/serializer/confluence_cloud.go Show resolved Hide resolved
server/utils/utils.go Show resolved Hide resolved
server/utils/utils.go Show resolved Hide resolved
@javaguirre
Copy link

Not sure if we will review everything on #89, just in case let's check there also when there are new changes.

@hanzei hanzei added the 3: QA Review Requires review by a QA tester label Nov 14, 2022
@hanzei hanzei added this to the v1.3.0 milestone Nov 14, 2022
@hanzei hanzei mentioned this pull request Nov 14, 2022
@Kshitij-Katiyar Kshitij-Katiyar changed the title [GH-85,84,71,49] Confluence Phase-2 [GH-85,84,71,49] (WIP)Confluence Phase-2 Nov 16, 2022
@Kshitij-Katiyar
Copy link
Author

@javaguirre I will be fixing all the above review comments in the PR #89 as that is the latest PR containing features like config manipulation through slash commands and migrations of subscriptions. All the code present in this is present in PR 89 apart from 1 feature (Create confluence page using mattermost) This PR is here only for reference.

@javaguirre
Copy link

javaguirre commented Nov 17, 2022

@javaguirre I will be fixing all the above review comments in the PR #89 as that is the latest PR containing features like config manipulation through slash commands and migrations of subscriptions. All the code present in this is present in PR 89 apart from 1 feature (Create confluence page using mattermost) This PR is here only for reference.

Thank you for pointing that out! 💯

Please, let me know when to review.

@mickmister mickmister removed their request for review February 8, 2023 03:56
@hanzei hanzei requested a review from mickmister February 15, 2023 11:50
@hanzei
Copy link
Collaborator

hanzei commented Feb 15, 2023

@Kshitij-Katiyar Heads up that there are merge conflicts to resolve

@Kshitij-Katiyar Kshitij-Katiyar marked this pull request as draft February 15, 2023 12:56
@Kshitij-Katiyar
Copy link
Author

Kshitij-Katiyar commented Feb 15, 2023

@Kshitij-Katiyar Heads up that there are merge conflicts to resolve

@hanzei Please read this comment #88 (comment) ,#88 (comment) and #88 (comment). This PR is a Draft PR I am not able to convert it to Draft for some reason, that's why added WIP in the title. Please see #89

@hanzei hanzei marked this pull request as ready for review April 12, 2023 15:51
@hanzei hanzei requested a review from catalintomai as a code owner April 12, 2023 15:51
@Kshitij-Katiyar Kshitij-Katiyar marked this pull request as draft February 8, 2024 10:32
@hanzei hanzei modified the milestones: v1.3.0, v1.4.0 Dec 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2: Dev Review Requires review by a core committer 3: QA Review Requires review by a QA tester Awaiting Submitter Action Blocked on the author
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants