...
- First determine type of workflows necessary based on above explanation.
- Optionally, you can create inputs for workflow with necessary Display Name and Initial Values. Workflow inputs are available in plugins and other workflow operations like assign, loop etc.
- Optionally, you can also create workflow properties which may be defined on topology on project. This is defined as property scope. As workflows are reusable, project level property allows for reuse of workflow by many projects.
- You can also turn more Jenkins jobs in to one workflow where each job is set of steps in same workflow. Or you can create many workflows and chain them together using Invoke Workflow step as workflows can invoke other workflows.
- Now you need to replicate steps in Jenkins jobs to FlexDeploy workflow step.
- You can use generic plugins like Shell, PowerShell, Groovy etc. but there are many powerful plugins available with FlexDeploy. See FlexDeploy Plugin Guides.
- You can also reference FlexDeploy Variables Guide for reference of available variables. But most importantly you need to understand folder structure of workflow execution. Each workflow execution in FlexDeploy gets a new clean folder which is different than Jenkins. Code is checked out in FD_TEMP_DIR folder which is a variable available in all plugins. You can create other folders as necessary for your process and work with them.
- If you are using shell script code to invoke ansible in Jenkins, then you can take same script code and put it in FlexDeploy shell plugin. If you are looking to externalize variables in the script code, make them either workflow property or input as appropriate.
- If you are using ant script to generate Oracle SOA Suite composite sar jar file, you can just use FlexDeploy SOA - build operation which is available out of box.
- If you are using WLST to deploy EAR file to WebLogic server, you can use WebLogic - deploy operation which is also available out of box.
...
- Define environment, instances and endpoints to describe physical topology and provide necessary properties like folder paths, credentials, URL etc.
Prepare projects
- Note that single project is used to build and deploy to all of your environments. That is different than how Jenkins is generally configured. You will create either regular or utility projects to match Jenkins job. There is advanced capability of partial deployments is also available in FlexDeploy which might be more suitable for some scenarios.
- Projects need to be configured with source control location(s) and workflows.
- Utility projects will have utility workflow reference and regular projects will have build and deploy workflow reference.
- Configure properties necessary at project level.
...