-
Notifications
You must be signed in to change notification settings - Fork 44
Jazz Supported Installations
Jazz can be installed through the following scenarios:
- Scenario 1: Installation with existing Jenkins and Bitbucket services - Provisions Jazz stack and connects it with existing Jenkins and Bitbucket services.
- Scenario 2: Installation with existing Bitbucket service and setting up new Jenkins service (as a container) - Uses existing Bitbucket service and spins up a Jenkins service as a container in ECS.
- Scenario 3: Installation with provisioning new Gitlab and Jenkins services - Spins up Gitlab and Jenkins services as containers in ECS. (Recommended for trying out Jazz)
Jazz framework uses the following AWS resources:
AWS::ApiGateway
AWS::CloudFront
AWS::Cognito
AWS::DynamoDB
AWS::IAM::Policy
AWS::EC2::Instance
AWS::ElasticLoadBalancing::LoadBalancer
AWS::Lambda
AWS::S3::Bucket
AWS::Elasticsearch::Domain
AWS::SES
Building stack using existing Jenkins/BitBucket services and provide existing BitBucket/Jenkins information to create the rest of the stack.
Note:
- Installation will require a Jenkins user with 'admin' permission.
- Installation will require a BitBucket user with 'create project' permission.
- Logon to the installer box, create jenkinskey.pem and bitbucketkey.pem with private keys of Jenkins and Bitbucket in /home/ec2-user
In case if you have had to run ./run.py manually, please ensure that you have provided information for the prompt below:
Please provide the tag Name to Prefix your Stack(Eg:- jazz10 ): jazz700
Then, provide inputs to the following prompts:
Please provide Jenkins host name (Please ignore http and port number from URL): jazzTest-jenkinselb.us-east-1.elb.amazonaws.com
Please provide username for Jenkins (used for execution of Jenkins jobs): jenkinsusername
Please provide password for Jenkins (used for execution of Jenkins jobs): jenkinspassword
Please provide Jenkins Server IP (used for configuring Jenkins plugins): XX.XXX.XXX.XXX
Please provide Jenkins SSH login name (used for configuring Jenkins plugins): ec2-user
Please provide Jenkins Server Security Group Name: sg-xxxxxx
Please provide Jenkins Server Subnet: subnet-xxxxx
Please provide Bitbucket host name (Please ignore http and port number from URL):: jazzTest-bitbucketelb.us-east-1.elb.amazonaws.com
Please provide username for Bitbucket (used for creating repositories and managing permissions):
Please provide password for Bitbucket (used for creating repositories and managing permissions):
Please provide bitbucket Server IP: XX.XXX.XXX.XXX
Please provide bitbucket SSH login name: ec2-user
Press the <ENTER> key to continue...
Please provide valid email ID to login to Jazz Application (provide valid email as you will need to confirm before logging in): usern@email.com
Note: The installer will take around 20-30 min (for a AWS RHEL t2.micro instance) to complete. Installation logs are stored in ~/jazz-installer/stack_creation.out
-
To ensure that the installation is complete, please execute the following command & verify that you see the line - Installation Completed!!!
tail -f stack_creation.out | grep 'Installation Completed!!!'
-
To find stack details (Jenkins, Bitbucket, Jazz Web Application URLs), run below
cat /home/ec2-user/jazz-installer/installscripts/terraform-unix-noinstances-jazz/settings.txt
-
If the installation does not complete in ~45 min, please review the nohop.out for any error messages.
Terraform will create the stack with the AWS resources below:
AWS::Cognito
Cognito_user_pool
AWS::EC2::SecurityGroup
Aws_security_group.bitbucketelb
Aws_security_group.jenkins
Aws_security_group.bitbucket
Aws_security_group.jenkinselb
AWS::S3::Bucket
Aws_s3_bucket.cloudfrontlogs
AWS::DynamoDB
Aws_dynamodb_table.dynamodb-table-stg
Aws_dynamodb_table.dynamodb-table-dev
Aws_dynamodb_table.dynamodb-table-prod
AWS::ApiGateway
Aws_api_gateway_rest_api.jazz-dev
Aws_api_gateway_rest_api.jazz-prod
Aws_api_gateway_rest_api.jazz-stag
AWS::Lambda
Aws_iam_role.lambda_role
AWS::S3::Bucket
Aws_s3_bucket.oab-apis-deployment-dev
Aws_s3_bucket.oab-apis-deployment-stg
Aws_s3_bucket.oab-apis-deployment-prod
Aws_s3_bucket.jazz-web
AWS::CloudFront
Aws_cloudfront_origin_access_identity.origin_access_identity
Aws_cloudfront_distribution.jazz
AWS::IAM::Policy
Aws_iam_role_policy_attachment.apigatewayinvokefullAccess
Aws_iam_role_policy_attachment.lambdafullaccess
Aws_iam_role_policy_attachment.cloudwatchlogaccess
AWS::ElasticLoadBalancing::LoadBalancer
Aws_elb.bitbucketelb
Aws_elb.jenkinselb
AWS::Elasticsearch::Domain
Aws_elasticsearch_domain
Aws_elasticsearch_domain_policy.elasticsearchdomain_policy
AWS::EC2::Instance
Aws_instance.bitbucketserver
Aws_instance.jenkinsserver
AWS::ElasticLoadBalancing::LoadBalancer
Aws_elb_attachment.jenkins
Aws_elb_attachment.bitbucket
List of Jenkins plugins that will be installed and configured:
bouncycastle-api bouncycastle API Plugin 2.16.1 (2.16.2)
pipeline-input-step Pipeline: Input Step 2.8
cloudbees-folder Folders Plugin 6.0.4 (6.3)
branch-api Branch API Plugin 2.0.10 (2.0.17)
structs Structs Plugin 1.17
docker-commons Docker Commons Plugin 1.13
junit JUnit Plugin 1.26.1
antisamy-markup-formatter OWASP Markup Formatter Plugin 1.5
pam-auth PAM Authentication plugin 1.4
windows-slaves Windows Slaves Plugin 1.3.1
pipeline-build-step Pipeline: Build Step 2.7
display-url-api Display URL API 2.0 (2.2.0)
docker-workflow Docker Pipeline 1.12 (1.14)
mailer Mailer Plugin 1.21
ldap LDAP Plugin 1.15 (1.18)
token-macro Token Macro Plugin 2.1 (2.3)
external-monitor-job External Monitor Job Type Plugin 1.7
icon-shim Icon Shim Plugin 2.0.3
matrix-auth Matrix Authorization Strategy Plugin 1.6 (2.2)
pipeline-model-api Pipeline: Model API 1.1.6 (1.2.5)
script-security Script Security Plugin 1.47
matrix-project Matrix Project Plugin 1.11 (1.12)
build-timeout build timeout plugin 1.18 (1.19)
credentials Credentials Plugin 2.1.18
ssh-credentials SSH Credentials Plugin 1.14
workflow-step-api Pipeline: Step API 2.16
plain-credentials Plain Credentials Plugin 1.4
git-client Git client plugin 2.7.3
apache-httpcomponents-client Apache HttpComponents Client 4.x API Plugin 4.5.5-3.0
jsch JSch dependency plugin 0.1.54.2
credentials-binding Credentials Binding Plugin 1.16
timestamper Timestamper 1.8.8 (1.8.9)
jackson2-api Jackson 2 API Plugin 2.7.3 (2.8.10.1)
scm-api SCM API Plugin 2.3.0
workflow-api Pipeline: API 2.30
workflow-support Pipeline: Supporting APIs 2.21
github-api GitHub API Plugin 1.92
durable-task Durable Task Plugin 1.26
workflow-durable-task-step Pipeline: Nodes and Processes 2.22
git-server GIT server Plugin 1.7
resource-disposer Resource Disposer Plugin 0.12
ws-cleanup Workspace Cleanup Plugin 0.33 (0.34)
ant Ant Plugin 1.8
git Git plugin 3.9.1
gradle Gradle Plugin 1.26 (1.28)
workflow-cps Pipeline: Groovy 2.59
pipeline-milestone-step Pipeline: Milestone Step 1.3.1
workflow-cps-global-lib Pipeline: Shared Groovy Libraries 2.8 (2.9)
jquery-detached JavaScript GUI Lib: jQuery bundles (jQuery and jQuery UI) plugin 1.2.1
ace-editor JavaScript GUI Lib: ACE Editor bundle plugin 1.1
workflow-scm-step Pipeline: SCM Step 2.7
pipeline-stage-step Pipeline: Stage Step 2.2 (2.3)
github GitHub plugin 1.29.3
workflow-job Pipeline: Job 2.12 (2.16)
pipeline-stage-view Pipeline: Stage View Plugin 2.8 (2.9)
pipeline-graph-analysis Pipeline Graph Analysis Plugin 1.4 (1.6)
pipeline-rest-api Pipeline: REST API Plugin 2.8 (2.9)
handlebars JavaScript GUI Lib: Handlebars bundle plugin 1.1.1
momentjs JavaScript GUI Lib: Moment.js bundle plugin 1.1.1
pipeline-model-extensions Pipeline: Declarative Extension Points API 1.1.6 (1.2.5)
workflow-multibranch Pipeline: Multibranch 2.15 (2.16)
authentication-tokens Authentication Tokens API Plugin 1.3
mapdb-api MapDB API Plugin 1.0.9.0
pipeline-stage-tags-metadata Pipeline: Stage Tags Metadata 1.1.6 (1.2.5)
pipeline-model-declarative-agent Pipeline: Declarative Agent API 1.1.1
workflow-basic-steps Pipeline: Basic Steps 2.5 (2.6)
pipeline-model-definition Pipeline: Model Definition 1.1.6 (1.2.5)
workflow-aggregator Pipeline 2.5
github-branch-source GitHub Branch Source Plugin 2.4.1
pipeline-github-lib Pipeline: GitHub Groovy Libraries 1.0
subversion Subversion Plug-in 2.12.1
ssh-slaves SSH Slaves plugin 1.20 (1.25)
config-file-provider Config File Provider Plugin 3.3
pipeline-npm Pipeline NPM Integration Plugin 0.9.1 (0.9.2)
mercurial Mercurial plugin 2.4
cloudbees-bitbucket-branch-source Bitbucket Branch Source Plugin 2.1.2 (2.2.8)
bitbucket Bitbucket Plugin 1.1.8
envinject Environment Injector Plugin 2.1.1 (2.1.5)
build-user-vars-plugin user build vars plugin 1.5
javadoc Javadoc Plugin 1.4
jquery jQuery plugin 1.11.2-0 (1.12.4-0)
extended-choice-parameter Extended Choice Parameter Plug-In 0.76
aws-java-sdk Amazon Web Services SDK 1.11.119 (1.11.248)
aws-credentials CloudBees Amazon Web Services Credentials Plugin 1.21 (1.23)
cloudbees-credentials CloudBees Credentials Plugin 3.3
gitlab-plugin GitLab 1.5.2
command-launcher Command Agent Launcher 1.2
jdk-tool JDK Tool Plugin 1.1