summaryrefslogtreecommitdiff
path: root/app/controllers/jira_connect/app_descriptor_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/jira_connect/app_descriptor_controller.rb')
-rw-r--r--app/controllers/jira_connect/app_descriptor_controller.rb71
1 files changed, 50 insertions, 21 deletions
diff --git a/app/controllers/jira_connect/app_descriptor_controller.rb b/app/controllers/jira_connect/app_descriptor_controller.rb
index bf53c61601b..d1ba8a98c64 100644
--- a/app/controllers/jira_connect/app_descriptor_controller.rb
+++ b/app/controllers/jira_connect/app_descriptor_controller.rb
@@ -27,29 +27,9 @@ class JiraConnect::AppDescriptorController < JiraConnect::ApplicationController
authentication: {
type: 'jwt'
},
+ modules: modules,
scopes: %w(READ WRITE DELETE),
apiVersion: 1,
- modules: {
- jiraDevelopmentTool: {
- key: 'gitlab-development-tool',
- application: {
- value: 'GitLab'
- },
- name: {
- value: 'GitLab'
- },
- url: 'https://gitlab.com',
- logoUrl: view_context.image_url('gitlab_logo.png'),
- capabilities: %w(branch commit pull_request)
- },
- postInstallPage: {
- key: 'gitlab-configuration',
- name: {
- value: 'GitLab Configuration'
- },
- url: relative_to_base_path(jira_connect_subscriptions_path)
- }
- },
apiMigrations: {
gdpr: true
}
@@ -58,6 +38,55 @@ class JiraConnect::AppDescriptorController < JiraConnect::ApplicationController
private
+ HOME_URL = 'https://gitlab.com'
+ DOC_URL = 'https://docs.gitlab.com/ee/user/project/integrations/jira.html#gitlab-jira-integration'
+
+ def modules
+ modules = {
+ jiraDevelopmentTool: {
+ key: 'gitlab-development-tool',
+ application: {
+ value: 'GitLab'
+ },
+ name: {
+ value: 'GitLab'
+ },
+ url: HOME_URL,
+ logoUrl: logo_url,
+ capabilities: %w(branch commit pull_request)
+ },
+ postInstallPage: {
+ key: 'gitlab-configuration',
+ name: {
+ value: 'GitLab Configuration'
+ },
+ url: relative_to_base_path(jira_connect_subscriptions_path)
+ }
+ }
+
+ modules.merge!(build_information_module)
+
+ modules
+ end
+
+ def logo_url
+ view_context.image_url('gitlab_logo.png')
+ end
+
+ # See: https://developer.atlassian.com/cloud/jira/software/modules/build/
+ def build_information_module
+ {
+ jiraBuildInfoProvider: {
+ homeUrl: HOME_URL,
+ logoUrl: logo_url,
+ documentationUrl: DOC_URL,
+ actions: {},
+ name: { value: "GitLab CI" },
+ key: "gitlab-ci"
+ }
+ }
+ end
+
def relative_to_base_path(full_path)
full_path.sub(/^#{jira_connect_base_path}/, '')
end