SlideShare a Scribd company logo
1 of 21
Download to read offline
Nashik MuleSoft Meetup Group
Implementing CI/CD pipeline for deploying
MuleSoft Application Using GitHub Actions
27th February 2022
Safe Harbour Statement
● Both the speaker and the host are organizing this meet-up in individual capacity only. We are
not representing our companies here.
● This presentation is strictly for learning purposes only. Organizer/Presenter do not hold any
responsibility that same solution will work for your business requirements.
● This presentation is not meant for any promotional activities.
2
A recording of this meetup will be uploaded to events page within 24 hours.
Questions can be submitted/asked at any time in the Chat/Questions & Answers Tab.
Make it more Interactive!!!
Give us feedback! Rate this meetup session by filling feedback form at the end of the day.
We Love Feedbacks!!! Its Bread & Butter for Meetup.
Housekeeping
3
Organizers
4
Jitendra Bafna
Senior Solution Architect
EPAM Systems
Speaker
5
Jitendra Bafna
Senior Solution Architect
EPAM Systems
⮚ Overall, 14 years of experience in API and Integration Technologies.
⮚ MuleSoft Ambassador and Surat/Nashik MuleSoft Meetup Leader
⮚ Published overall 300+ YouTube Videos and 150+ Articles on MuleSoft
and Anypoint Platform.
⮚ Expertise in setting up MuleSoft platform includes Hybrid
Implementation, CloudHub (Anypoint VPC, VPN and DLB), Customer
Hosted Mule Runtime (Clustering and Server Group).
⮚ Expertise in Application Integration using API Led Connectivity and
Event Driven Architecture.
⮚ Expertise in Integration with various systems like Salesforce, NetSuite
ERP, Snowflake, Databases, SAP,
⮚ Define Integration and migration strategy and roadmap includes
migrating from on premise to CloudHub, migrating to higher version of
Mule Runtime etc.
6
Agenda
● What is CI/CD?
● Mule Maven Plugin
● GitHub Action
● Deploying Application to CloudHub using GitHub Action (Anypoint
Username and Password)
● Deploying Application to CloudHub using GitHub Action (Connected
Apps)
● Trivia Quiz
DevOps is a culture which promotes collaboration between Development and IT Operations Team to deploy
code to production faster in an automated & repeatable way.
Benefits of DevOps
● Releases/deployment can be done more frequently and quicker.
● Shorter mean time to repair.
● Cost reduction and reliable deployment.
● Fault isolation.
What is DevOps
Continuous Integration is a development practice where developers checked in the code multiple times a day in a shared
repository. Each integration is verified by an automated build and automated unit testing.
Continuous Deployment is the ability to move the changes including features, bug fixes into the production quicker.
Benefits of CI/CD
● Quicker releases
● Smaller code changes
● Faster Mean Time To Resolution (MTTR).
● Improved testability.
● Improved customer satisfaction.
What is CI/CD
GitHub Action is CI/CD platform that allows you to automates the build, test and deployment pipeline. GitHub Action
provides capability to create the workflow that build or deploy the application on pull request or push.
GitHub Action
Mule Maven Plugin allows you to deploy MuleSoft application to CloudHub, Runtime Fabric Manager or Standalone Mule
Runtime.
Authentication mechanism supported by Mule Maven Plugin
- Anypoint Username and Password
- AuthToken
- ConnectedApps
- Server
Mule Maven Plugin
Mule Maven Plugin
Parameter Description Required
cloudHubDeployment Top-level element Yes
uri
Your Anypoint Platform URI
No
If not set, by default this value is set to https://anypoint.mulesoft.com.
muleVersion
The Mule runtime engine version to run in your CloudHub instance.
Yes
Ensure that this value is equal to or higher than the earliest required Mule version of your application.
Example values: 4.3.0, 4.2.2-hf4
username Your CloudHub username
Only when using Anypoint Platform
credentials to login.
password Your CloudHub password
Only when using Anypoint Platform
credentials to login.
applicationName
The name of your application in CloudHub
Yes
This name is part of the domain of your deployed app. For example, naming your application application-1 makes your app’s public domain application-1.cloudhub.io.
artifact
The absolute path of the JAR file to be deployed
No
If not set, the path defaults to the location of the JAR file generated at the package phase.
environment
The CloudHub environment to which you want to deploy
Yes
This value must match any environment configured in your CloudHub account.
<environment>Sandbox</environment>
properties
Top-Level element
No
If you need to set properties for the Mule application you are deploying, you can use the <properties> top-level element:
<properties>
<key>value</key>
</properties>
For example:
<properties>
<http.port>8081</http.port>
</properties>
workers
The number of workers
No
By default, this value is 1.
Mule Maven Plugin
workerType
Size of each worker; one of the following values:
No
MICRO (default; 0.1 vCores)
SMALL (0.2 vCores)
MEDIUM (1 vCore )
LARGE (2 vCores)
XLARGE (4 vCores)
XXLARGE (8 vCores)
4XLARGE (16 vCores)
region
Region of worker clouds; one of the following values:
No
us-east-1 (default; US East, N. Virginia)
us-east-2 (US East, Ohio)
us-west-1 (US West, N. California)
us-west-2 (US West, Oregon)
us-gov-west-1 (MuleSoft Government Cloud)
eu-central-1 (EU, Frankfurt)
eu-west-1 (EU, Ireland)
eu-west-2 (EU, London)
ap-southeast-1 (Asia Pacific, Singapore)
ap-southeast-2 (Asia Pacific, Sydney)
ap-northeast-1 (Asia Pacific, Tokyo)
ca-central-1 (Canada, Central)
sa-east-1 (South America, São Paulo)
objectStoreV2
Enables Object Store V2
No
By default, this value is set to match the Runtime Manager configuration of OSv2.
persistentQueues
Enables persistent queues
No
By default, it is set to false.
businessGroup
The Business group path of the deployment
No
Specify the full hierarchical path from the parent organization to the target Business group, for example:
<businessGroup>ParentOrgSubOrg1myBusinessGroup</businessGroup>
businessGroupId
The Business group ID of the deployment
No
Instead of specifying the Business group path, you can specify the Business group ID to deploy your application.
The Business group ID is a mandatory parameter when you have access only to a specific Business group but not to the parent
organization.
This parameter is available in plugin version 3.2.7 and later.
deploymentTimeout
The allowed elapsed time, in milliseconds, between the start of the deployment process and the confirmation that the artifact has been
deployed No
The default value is 1000000.
server
Maven server with Anypoint Platform credentials
No
This is only needed if you want to use your credentials stored in your Maven settings.xml file. This is not the Mule server name.
Mule Maven Plugin
skip
When set to true, skips the plugin deployment goal.
No
Its default value is false.
skipDeploymentVerification
When set to true, skips the status verification of your deployed app.
No
Its default value is false.
authToken
Specifies the authorization token to access the platform. You can use this authentication method instead of setting username and password. Only when using an Authorization token to
login.
See Identity Management for a list of supported single sign-on (SSO) types.
connectedAppClientId Specifies the Connected App clientID value.
Only when using Connected Apps credentials
to login.
connectedAppClientSecret Specifies the Connected App secret key.
Only when using Connected Apps credentials
to login.
connectedAppGrantType Specifies the only supported connection type: client_credentials.
Only when using Connected Apps credentials
to login.
applyLatestRuntimePatch
When set to true, the plugin instructs CloudHub to update the worker to the latest available patch for the Mule runtime engine version specified in the
deployment configuration, and then deploys the application.
No
The Connected Apps feature provides a framework that enables an external application to integrate with Anypoint
Platform using APIs through OAuth 2.0 and OpenID Connect. Connected apps help users delegate their access without
sharing sensitive credentials or giving full control of their accounts to third parties. Actions taken by connected apps are
audited, and users can also revoke access at any time.
Connected Apps
Demonstration 1 - Deploying
Application to CloudHub using
GitHub Action (Anypoint
Username and Password)
Demonstration 2 - Deploying
Application to CloudHub using
GitHub Action (Connected Apps)
Q&A
Take a stand !
18
●Nominate yourself for the next meetup speaker and suggest a topic as well.
Get ready to WIN a Special Gift from MuleSoft Community
Quiz Time
20
● Share:
○ Tweet using the hashtag #MuleSoftMeetups
○ Invite your network to join: https://meetups.mulesoft.com/nashik/
● Feedback:
○ Fill out the survey feedback and suggest topics for upcoming events
○ Contact MuleSoft at meetups@mulesoft.com for ways to improve the program
What’s next?
Thank you

More Related Content

What's hot

What's hot (20)

DevOps @ OpenShift Online
DevOps @ OpenShift OnlineDevOps @ OpenShift Online
DevOps @ OpenShift Online
 
OpenShift 4, the smarter Kubernetes platform
OpenShift 4, the smarter Kubernetes platformOpenShift 4, the smarter Kubernetes platform
OpenShift 4, the smarter Kubernetes platform
 
Rtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetesRtf v2 ingress muleSoft meetup self managed kubernetes
Rtf v2 ingress muleSoft meetup self managed kubernetes
 
Containerising the Mule Runtime with Kubernetes & From Zero to Batch : MuleS...
Containerising the Mule Runtime with Kubernetes & From Zero to Batch  : MuleS...Containerising the Mule Runtime with Kubernetes & From Zero to Batch  : MuleS...
Containerising the Mule Runtime with Kubernetes & From Zero to Batch : MuleS...
 
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
 
Manchester MuleSoft Meetup #6 - Runtime Fabric with Mulesoft
Manchester MuleSoft Meetup #6 - Runtime Fabric with Mulesoft Manchester MuleSoft Meetup #6 - Runtime Fabric with Mulesoft
Manchester MuleSoft Meetup #6 - Runtime Fabric with Mulesoft
 
Virtual meetup - Exploring the Runtime Fabric deployment model
Virtual meetup - Exploring the Runtime Fabric deployment modelVirtual meetup - Exploring the Runtime Fabric deployment model
Virtual meetup - Exploring the Runtime Fabric deployment model
 
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
Mule 4 migration + Common Integration Challenges : MuleSoft Virtual Muleys Me...
 
Introduction to CloudHub 2.0
Introduction to CloudHub 2.0Introduction to CloudHub 2.0
Introduction to CloudHub 2.0
 
What’s Mule 4.3? How Does Anytime RTF Help? Our insights explain.
What’s Mule 4.3? How Does Anytime RTF Help? Our insights explain. What’s Mule 4.3? How Does Anytime RTF Help? Our insights explain.
What’s Mule 4.3? How Does Anytime RTF Help? Our insights explain.
 
DevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to KubernetesDevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to Kubernetes
 
Managing APIs with MuleSoft
Managing APIs with MuleSoftManaging APIs with MuleSoft
Managing APIs with MuleSoft
 
Jenkins
JenkinsJenkins
Jenkins
 
Kubernetes - introduction
Kubernetes - introductionKubernetes - introduction
Kubernetes - introduction
 
kubernetes, pourquoi et comment
kubernetes, pourquoi et commentkubernetes, pourquoi et comment
kubernetes, pourquoi et comment
 
Jenkins
JenkinsJenkins
Jenkins
 
[Final] best practices for access management (mule soft meetups riyadh) - j...
[Final] best practices for access management (mule soft meetups   riyadh) - j...[Final] best practices for access management (mule soft meetups   riyadh) - j...
[Final] best practices for access management (mule soft meetups riyadh) - j...
 
Cluster-as-code. The Many Ways towards Kubernetes
Cluster-as-code. The Many Ways towards KubernetesCluster-as-code. The Many Ways towards Kubernetes
Cluster-as-code. The Many Ways towards Kubernetes
 
MuleSoft Sizing Guidelines - VirtualMuleys
MuleSoft Sizing Guidelines - VirtualMuleysMuleSoft Sizing Guidelines - VirtualMuleys
MuleSoft Sizing Guidelines - VirtualMuleys
 
Ansible
AnsibleAnsible
Ansible
 

Similar to MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying MuleSoft Application Using GitHub Actions

Introduction To Development And Operations
Introduction To Development And OperationsIntroduction To Development And Operations
Introduction To Development And Operations
teekhesawaal
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
Dynatrace
 

Similar to MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying MuleSoft Application Using GitHub Actions (20)

Indianapolis_meetup_April-1st-2022.pptx
Indianapolis_meetup_April-1st-2022.pptxIndianapolis_meetup_April-1st-2022.pptx
Indianapolis_meetup_April-1st-2022.pptx
 
MuleSoft Surat Virtual Meetup#15 - Caching Scope, Caching Strategy and Jenkin...
MuleSoft Surat Virtual Meetup#15 - Caching Scope, Caching Strategy and Jenkin...MuleSoft Surat Virtual Meetup#15 - Caching Scope, Caching Strategy and Jenkin...
MuleSoft Surat Virtual Meetup#15 - Caching Scope, Caching Strategy and Jenkin...
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
 
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptxMulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
 
Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18
 
Azure DevOps Pipeline setup for Mule APIs #36
Azure DevOps Pipeline setup for Mule APIs #36Azure DevOps Pipeline setup for Mule APIs #36
Azure DevOps Pipeline setup for Mule APIs #36
 
Microsoft DevOps AZ-400 Real Dumps 2023
Microsoft DevOps AZ-400 Real Dumps 2023Microsoft DevOps AZ-400 Real Dumps 2023
Microsoft DevOps AZ-400 Real Dumps 2023
 
Implementing CloudHub 2.0 CI/CD Pipeline with Bitbucket Integration
Implementing CloudHub 2.0 CI/CD Pipeline with Bitbucket IntegrationImplementing CloudHub 2.0 CI/CD Pipeline with Bitbucket Integration
Implementing CloudHub 2.0 CI/CD Pipeline with Bitbucket Integration
 
DevOps Service | Mindtree
DevOps Service | MindtreeDevOps Service | Mindtree
DevOps Service | Mindtree
 
Automate mule deployments with github actions and travis ci
Automate mule deployments with github actions  and  travis ciAutomate mule deployments with github actions  and  travis ci
Automate mule deployments with github actions and travis ci
 
Mule soft indore meetup 2
Mule soft indore meetup 2Mule soft indore meetup 2
Mule soft indore meetup 2
 
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
 
DevOps & DevEx
DevOps & DevExDevOps & DevEx
DevOps & DevEx
 
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
Increase the Velocity of Your Software Releases Using GitHub and DeployHubIncrease the Velocity of Your Software Releases Using GitHub and DeployHub
Increase the Velocity of Your Software Releases Using GitHub and DeployHub
 
Transform Digital Business with DevOps
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
 
Introduction To Development And Operations
Introduction To Development And OperationsIntroduction To Development And Operations
Introduction To Development And Operations
 
Azure slots for app deployment the continuous delivery way
Azure slots for app deployment the continuous delivery wayAzure slots for app deployment the continuous delivery way
Azure slots for app deployment the continuous delivery way
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021
 
Deep Dive on CI/CD NYC Meet Up Group
Deep Dive on CI/CD NYC Meet Up GroupDeep Dive on CI/CD NYC Meet Up Group
Deep Dive on CI/CD NYC Meet Up Group
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
 

More from Jitendra Bafna

More from Jitendra Bafna (20)

MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQMuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
MuleSoft Surat Meetup#55 - Unleash the power of Anypoint MQ
 
MuleSoft Surat Meetup#54 - MuleSoft Automation
MuleSoft Surat Meetup#54 - MuleSoft AutomationMuleSoft Surat Meetup#54 - MuleSoft Automation
MuleSoft Surat Meetup#54 - MuleSoft Automation
 
MuleSoft Surat Meetup#53 - MuleSoft for Clinical Trial Modernization
MuleSoft Surat Meetup#53 - MuleSoft for Clinical Trial ModernizationMuleSoft Surat Meetup#53 - MuleSoft for Clinical Trial Modernization
MuleSoft Surat Meetup#53 - MuleSoft for Clinical Trial Modernization
 
MuleSoft Surat Meetup#52 - Flex Gateway (Port Based Routing V/S Path Based Ro...
MuleSoft Surat Meetup#52 - Flex Gateway (Port Based Routing V/S Path Based Ro...MuleSoft Surat Meetup#52 - Flex Gateway (Port Based Routing V/S Path Based Ro...
MuleSoft Surat Meetup#52 - Flex Gateway (Port Based Routing V/S Path Based Ro...
 
MuleSoft Surat Meetup#51 - API Monitoring - Through a New Lens
MuleSoft Surat Meetup#51 - API Monitoring - Through a New LensMuleSoft Surat Meetup#51 - API Monitoring - Through a New Lens
MuleSoft Surat Meetup#51 - API Monitoring - Through a New Lens
 
Engineering Student MuleSoft Meetup#7 - Leveraging MuleSoft Service in Salesf...
Engineering Student MuleSoft Meetup#7 - Leveraging MuleSoft Service in Salesf...Engineering Student MuleSoft Meetup#7 - Leveraging MuleSoft Service in Salesf...
Engineering Student MuleSoft Meetup#7 - Leveraging MuleSoft Service in Salesf...
 
MuleSoft Nashik Meetup#7 - Building FHIR applications in MongoDB using MuleSoft
MuleSoft Nashik Meetup#7 - Building FHIR applications in MongoDB using MuleSoftMuleSoft Nashik Meetup#7 - Building FHIR applications in MongoDB using MuleSoft
MuleSoft Nashik Meetup#7 - Building FHIR applications in MongoDB using MuleSoft
 
MuleSoft Surat Meetup#50 - Ask the MuleSoft Ambassadors + CloudHub 2.0 Overvi...
MuleSoft Surat Meetup#50 - Ask the MuleSoft Ambassadors + CloudHub 2.0 Overvi...MuleSoft Surat Meetup#50 - Ask the MuleSoft Ambassadors + CloudHub 2.0 Overvi...
MuleSoft Surat Meetup#50 - Ask the MuleSoft Ambassadors + CloudHub 2.0 Overvi...
 
MuleSoft Surat Meetup#49 - Robotic Process Automation - Why, Where, When and ...
MuleSoft Surat Meetup#49 - Robotic Process Automation - Why, Where, When and ...MuleSoft Surat Meetup#49 - Robotic Process Automation - Why, Where, When and ...
MuleSoft Surat Meetup#49 - Robotic Process Automation - Why, Where, When and ...
 
MuleSoft Surat Meetup#47 - Error Handling With MuleSoft
MuleSoft Surat Meetup#47 - Error Handling With MuleSoftMuleSoft Surat Meetup#47 - Error Handling With MuleSoft
MuleSoft Surat Meetup#47 - Error Handling With MuleSoft
 
MuleSoft Surat Meetup#46 - Deep Dive into MUnit With MuleSoft
MuleSoft Surat Meetup#46 - Deep Dive into MUnit With MuleSoftMuleSoft Surat Meetup#46 - Deep Dive into MUnit With MuleSoft
MuleSoft Surat Meetup#46 - Deep Dive into MUnit With MuleSoft
 
Engineering Student MuleSoft Meetup#6 - Basic Understanding of DataWeave With...
Engineering Student MuleSoft Meetup#6 - Basic Understanding of DataWeave With...Engineering Student MuleSoft Meetup#6 - Basic Understanding of DataWeave With...
Engineering Student MuleSoft Meetup#6 - Basic Understanding of DataWeave With...
 
MuleSoft Nashik Meetup#5 - JSON Logger and Externalize Logs
MuleSoft Nashik Meetup#5 - JSON Logger and Externalize LogsMuleSoft Nashik Meetup#5 - JSON Logger and Externalize Logs
MuleSoft Nashik Meetup#5 - JSON Logger and Externalize Logs
 
MuleSoft Surat Meetup#43 - Combine Service Mesh With Anypoint API Management ...
MuleSoft Surat Meetup#43 - Combine Service Mesh With Anypoint API Management ...MuleSoft Surat Meetup#43 - Combine Service Mesh With Anypoint API Management ...
MuleSoft Surat Meetup#43 - Combine Service Mesh With Anypoint API Management ...
 
Engineering Student MuleSoft Meetup#5 - Error Handling With MuleSoft
Engineering Student MuleSoft Meetup#5 - Error Handling With MuleSoftEngineering Student MuleSoft Meetup#5 - Error Handling With MuleSoft
Engineering Student MuleSoft Meetup#5 - Error Handling With MuleSoft
 
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
MuleSoft Surat Meetup#41 - Universal API Management, Anypoint Flex Gateway an...
 
MuleSoft Surat Meetup#40 - Watermarking Concept and Fragments in MuleSoft
MuleSoft Surat Meetup#40 - Watermarking Concept and Fragments in MuleSoftMuleSoft Surat Meetup#40 - Watermarking Concept and Fragments in MuleSoft
MuleSoft Surat Meetup#40 - Watermarking Concept and Fragments in MuleSoft
 
Engineering Student MuleSoft Meetup#4 - API Testing With MuleSoft
Engineering Student MuleSoft Meetup#4 - API Testing With MuleSoftEngineering Student MuleSoft Meetup#4 - API Testing With MuleSoft
Engineering Student MuleSoft Meetup#4 - API Testing With MuleSoft
 
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
MuleSoft Surat Meetup#39 - Pragmatic API Led ConnectivityMuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
 
Engineering Student MuleSoft Meetup#3 - API Implementation using APIKIT route...
Engineering Student MuleSoft Meetup#3 - API Implementation using APIKIT route...Engineering Student MuleSoft Meetup#3 - API Implementation using APIKIT route...
Engineering Student MuleSoft Meetup#3 - API Implementation using APIKIT route...
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

MuleSoft Nashik Virtual Meetup#4 - Implementing CI/CD pipeline for deploying MuleSoft Application Using GitHub Actions

  • 1. Nashik MuleSoft Meetup Group Implementing CI/CD pipeline for deploying MuleSoft Application Using GitHub Actions 27th February 2022
  • 2. Safe Harbour Statement ● Both the speaker and the host are organizing this meet-up in individual capacity only. We are not representing our companies here. ● This presentation is strictly for learning purposes only. Organizer/Presenter do not hold any responsibility that same solution will work for your business requirements. ● This presentation is not meant for any promotional activities. 2
  • 3. A recording of this meetup will be uploaded to events page within 24 hours. Questions can be submitted/asked at any time in the Chat/Questions & Answers Tab. Make it more Interactive!!! Give us feedback! Rate this meetup session by filling feedback form at the end of the day. We Love Feedbacks!!! Its Bread & Butter for Meetup. Housekeeping 3
  • 5. Speaker 5 Jitendra Bafna Senior Solution Architect EPAM Systems ⮚ Overall, 14 years of experience in API and Integration Technologies. ⮚ MuleSoft Ambassador and Surat/Nashik MuleSoft Meetup Leader ⮚ Published overall 300+ YouTube Videos and 150+ Articles on MuleSoft and Anypoint Platform. ⮚ Expertise in setting up MuleSoft platform includes Hybrid Implementation, CloudHub (Anypoint VPC, VPN and DLB), Customer Hosted Mule Runtime (Clustering and Server Group). ⮚ Expertise in Application Integration using API Led Connectivity and Event Driven Architecture. ⮚ Expertise in Integration with various systems like Salesforce, NetSuite ERP, Snowflake, Databases, SAP, ⮚ Define Integration and migration strategy and roadmap includes migrating from on premise to CloudHub, migrating to higher version of Mule Runtime etc.
  • 6. 6 Agenda ● What is CI/CD? ● Mule Maven Plugin ● GitHub Action ● Deploying Application to CloudHub using GitHub Action (Anypoint Username and Password) ● Deploying Application to CloudHub using GitHub Action (Connected Apps) ● Trivia Quiz
  • 7. DevOps is a culture which promotes collaboration between Development and IT Operations Team to deploy code to production faster in an automated & repeatable way. Benefits of DevOps ● Releases/deployment can be done more frequently and quicker. ● Shorter mean time to repair. ● Cost reduction and reliable deployment. ● Fault isolation. What is DevOps
  • 8. Continuous Integration is a development practice where developers checked in the code multiple times a day in a shared repository. Each integration is verified by an automated build and automated unit testing. Continuous Deployment is the ability to move the changes including features, bug fixes into the production quicker. Benefits of CI/CD ● Quicker releases ● Smaller code changes ● Faster Mean Time To Resolution (MTTR). ● Improved testability. ● Improved customer satisfaction. What is CI/CD
  • 9. GitHub Action is CI/CD platform that allows you to automates the build, test and deployment pipeline. GitHub Action provides capability to create the workflow that build or deploy the application on pull request or push. GitHub Action
  • 10. Mule Maven Plugin allows you to deploy MuleSoft application to CloudHub, Runtime Fabric Manager or Standalone Mule Runtime. Authentication mechanism supported by Mule Maven Plugin - Anypoint Username and Password - AuthToken - ConnectedApps - Server Mule Maven Plugin
  • 11. Mule Maven Plugin Parameter Description Required cloudHubDeployment Top-level element Yes uri Your Anypoint Platform URI No If not set, by default this value is set to https://anypoint.mulesoft.com. muleVersion The Mule runtime engine version to run in your CloudHub instance. Yes Ensure that this value is equal to or higher than the earliest required Mule version of your application. Example values: 4.3.0, 4.2.2-hf4 username Your CloudHub username Only when using Anypoint Platform credentials to login. password Your CloudHub password Only when using Anypoint Platform credentials to login. applicationName The name of your application in CloudHub Yes This name is part of the domain of your deployed app. For example, naming your application application-1 makes your app’s public domain application-1.cloudhub.io. artifact The absolute path of the JAR file to be deployed No If not set, the path defaults to the location of the JAR file generated at the package phase. environment The CloudHub environment to which you want to deploy Yes This value must match any environment configured in your CloudHub account. <environment>Sandbox</environment> properties Top-Level element No If you need to set properties for the Mule application you are deploying, you can use the <properties> top-level element: <properties> <key>value</key> </properties> For example: <properties> <http.port>8081</http.port> </properties> workers The number of workers No By default, this value is 1.
  • 12. Mule Maven Plugin workerType Size of each worker; one of the following values: No MICRO (default; 0.1 vCores) SMALL (0.2 vCores) MEDIUM (1 vCore ) LARGE (2 vCores) XLARGE (4 vCores) XXLARGE (8 vCores) 4XLARGE (16 vCores) region Region of worker clouds; one of the following values: No us-east-1 (default; US East, N. Virginia) us-east-2 (US East, Ohio) us-west-1 (US West, N. California) us-west-2 (US West, Oregon) us-gov-west-1 (MuleSoft Government Cloud) eu-central-1 (EU, Frankfurt) eu-west-1 (EU, Ireland) eu-west-2 (EU, London) ap-southeast-1 (Asia Pacific, Singapore) ap-southeast-2 (Asia Pacific, Sydney) ap-northeast-1 (Asia Pacific, Tokyo) ca-central-1 (Canada, Central) sa-east-1 (South America, São Paulo) objectStoreV2 Enables Object Store V2 No By default, this value is set to match the Runtime Manager configuration of OSv2. persistentQueues Enables persistent queues No By default, it is set to false. businessGroup The Business group path of the deployment No Specify the full hierarchical path from the parent organization to the target Business group, for example: <businessGroup>ParentOrgSubOrg1myBusinessGroup</businessGroup> businessGroupId The Business group ID of the deployment No Instead of specifying the Business group path, you can specify the Business group ID to deploy your application. The Business group ID is a mandatory parameter when you have access only to a specific Business group but not to the parent organization. This parameter is available in plugin version 3.2.7 and later. deploymentTimeout The allowed elapsed time, in milliseconds, between the start of the deployment process and the confirmation that the artifact has been deployed No The default value is 1000000. server Maven server with Anypoint Platform credentials No This is only needed if you want to use your credentials stored in your Maven settings.xml file. This is not the Mule server name.
  • 13. Mule Maven Plugin skip When set to true, skips the plugin deployment goal. No Its default value is false. skipDeploymentVerification When set to true, skips the status verification of your deployed app. No Its default value is false. authToken Specifies the authorization token to access the platform. You can use this authentication method instead of setting username and password. Only when using an Authorization token to login. See Identity Management for a list of supported single sign-on (SSO) types. connectedAppClientId Specifies the Connected App clientID value. Only when using Connected Apps credentials to login. connectedAppClientSecret Specifies the Connected App secret key. Only when using Connected Apps credentials to login. connectedAppGrantType Specifies the only supported connection type: client_credentials. Only when using Connected Apps credentials to login. applyLatestRuntimePatch When set to true, the plugin instructs CloudHub to update the worker to the latest available patch for the Mule runtime engine version specified in the deployment configuration, and then deploys the application. No
  • 14. The Connected Apps feature provides a framework that enables an external application to integrate with Anypoint Platform using APIs through OAuth 2.0 and OpenID Connect. Connected apps help users delegate their access without sharing sensitive credentials or giving full control of their accounts to third parties. Actions taken by connected apps are audited, and users can also revoke access at any time. Connected Apps
  • 15. Demonstration 1 - Deploying Application to CloudHub using GitHub Action (Anypoint Username and Password)
  • 16. Demonstration 2 - Deploying Application to CloudHub using GitHub Action (Connected Apps)
  • 17. Q&A
  • 18. Take a stand ! 18 ●Nominate yourself for the next meetup speaker and suggest a topic as well.
  • 19. Get ready to WIN a Special Gift from MuleSoft Community Quiz Time
  • 20. 20 ● Share: ○ Tweet using the hashtag #MuleSoftMeetups ○ Invite your network to join: https://meetups.mulesoft.com/nashik/ ● Feedback: ○ Fill out the survey feedback and suggest topics for upcoming events ○ Contact MuleSoft at meetups@mulesoft.com for ways to improve the program What’s next?