...
If you are using other SCM, then you will need to use proper operations for commit of files. Basic steps will be to checkout code, copy files in it and commit.
...
You can download workflow source from ExtractLDT_Workflow_Source.xml and update Source of your workflow.
...
Extract LDT workflow source
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <ns0:WorkFlow xmlns:ns1="http://flexagon.com/flexdeploy/workflow/common" xmlns:ns0="http://flexagon.com/flexdeploy/workflow"> <ns1:Name>Extract LDT</ns1:Name> <ns1:Description></ns1:Description> <ns0:Steps> <ns0:Step> <ns1:Name>Extract LDT Files from EBS</ns1:Name> <ns1:StepId>1</ns1:StepId> name: Extract LDT description: '' steps: - id: '1' name: Extract LDT Files from EBS type: INVOKE_PLUGIN data: pluginName: FlexagonEBSPlugin pluginOperation: build endpointInstanceOverride: isExpression: false consumesArtifacts: false producesArtifacts: true endpointSelection: <ns0choice:InvokePlugin> All endpointExecution: <ns0:PluginName>FlexagonEBSPlugin</ns0:PluginName>choice: Any stopOnError: false <ns0:PluginOperation>build</ns0:PluginOperation>inputs: - name: FDEBS_INP_INCLUDE_FILES <ns0:consumesArtifacts>false</ns0:consumesArtifacts>value: isExpression: false <ns0:producesArtifacts>false</ns0:producesArtifacts> isEncrypted: false outputs: [] <ns0:PluginInputs> userInputs: [] userOutputs: [] - id: '2' <ns0name:PluginInput> Git Clone type: INVOKE_PLUGIN data: pluginName: FlexagonGITPlugin <ns0:Name>FDEBS_INP_INCLUDE_FILES</ns0:Name> pluginOperation: clone endpointInstanceOverride: isExpression: false <ns0:ValueType>Text</ns0consumesArtifacts:ValueType> false producesArtifacts: false endpointSelection: <ns0:Encrypted>false</ns0:Encrypted>choice: All endpointExecution: choice: Any <ns1stopOnError:Type>String</ns1:Type> false inputs: - name: FDGIT_INP_INSTANCE_CODE </ns0:PluginInput> value: </ns0:PluginInputs>value: GIT1 isExpression: false <ns0:UserInputs/> isEncrypted: false - name: <ns0:PluginOutputs/>FDGIT_INP_DEST_SUBFOLDER value: <ns0value:UserOutputs ../>ebsldtfiles </ns0:InvokePlugin>isExpression: false </ns0isEncrypted:Step> false - <ns0name:Step> FDGIT_INP_BRANCH <ns1value:Name>Git Clone</ns1:Name> value: <ns1:StepId>2</ns1:StepId>FDBLD_STREAM_NAME isExpression: true <ns0:InvokePlugin> isEncrypted: false - <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName>name: FDGIT_INP_DEPTH value: <ns0:PluginOperation>clone</ns0:PluginOperation> value: '1' <ns0isExpression:consumesArtifacts>false</ns0:consumesArtifacts> false isEncrypted: false <ns0:producesArtifacts>false</ns0:producesArtifacts> - name: FDGIT_INP_SPARSE_CHECKOUT_FOLDERS value: <ns0:PluginInputs> isExpression: false isEncrypted: false <ns0:PluginInput> outputs: [] userInputs: [] userOutputs: [] - <ns0:Name>FDGIT_INP_INSTANCE_CODE</ns0:Name> id: '3' name: Copy downloaded files to Git Repository type: INVOKE_PLUGIN data: <ns0:ValueType>Text</ns0:ValueType> pluginName: FlexagonFilePlugin pluginOperation: copy endpointInstanceOverride: <ns0isExpression:Encrypted>false</ns0:Encrypted> false consumesArtifacts: false producesArtifacts: false <ns1:Type>String</ns1:Type>endpointSelection: choice: All endpointExecution: <ns0:Text>GIT1</ns0choice:Text> Any stopOnError: false </ns0inputs:PluginInput> - name: FDFILE_INP_FILE_FILTER <ns0value:PluginInput> value: '*.ldt' <ns0:Name>FDGIT_INP_DEST_SUBFOLDER</ns0:Name> isExpression: false isEncrypted: false - <ns0:ValueType>Text</ns0:ValueType> name: FDFILE_INP_FILE_FILTER_EXCLUDED value: <ns0:Encrypted>false</ns0:Encrypted> isExpression: false isEncrypted: false - <ns1:Type>String</ns1:Type>name: FDFILE_INP_SOURCE_PATH value: value: FD_TEMP_DIR <ns0:Text>../ebsldtfiles</ns0:Text> isExpression: true </ns0:PluginInput> isEncrypted: false - name: FDFILE_INP_TARGET_PATH <ns0value:PluginInput> value: FD_TEMP_DIR + '/../ebsldtfiles' <ns0:Name>FDGIT_INP_BRANCH</ns0:Name> isExpression: true isEncrypted: false - <ns0name:ValueType>Expression</ns0:ValueType> FDFILE_INP_CLEAN_DIRECTORY value: <ns0:Encrypted>false</ns0:Encrypted> value: 'false' isExpression: false <ns1:Type>String</ns1:Type> isEncrypted: false outputs: [] userInputs: [] <ns0userOutputs:Value> [] - id: '4' name: Add any new Files type: INVOKE_PLUGIN data: <ns0:Expression>FDBLD_STREAM_NAME</ns0:Expression> pluginName: FlexagonGITPlugin pluginOperation: add endpointInstanceOverride: </ns0isExpression:Value> false consumesArtifacts: false producesArtifacts: false </ns0:PluginInput> endpointSelection: choice: All <ns0endpointExecution:PluginInput> choice: Any stopOnError: false inputs: <ns0:Name>FDGIT - name: FDGIT_INP_DEPTH</ns0:Name>INSTANCE_CODE value: value: GIT1 <ns0:ValueType>Text</ns0:ValueType> isExpression: false isEncrypted: false <ns0:Encrypted>false</ns0:Encrypted> - name: FDGIT_INP_DEST_SUBFOLDER value: <ns1value:Type>Integer</ns1:Type> ../ebsldtfiles isExpression: false <ns0:Text>1</ns0:Text> isEncrypted: false - name: FDGIT_INP_FILELIST </ns0value:PluginInput> value: --all . <ns0:PluginInput> isExpression: false isEncrypted: false <ns0:Name>FDGIT_INP_SPARSE_CHECKOUT_FOLDERS</ns0:Name> outputs: [] userInputs: [] userOutputs: [] - id: '5' <ns0:ValueType>Text</ns0:ValueType> name: Commit to Git type: INVOKE_PLUGIN data: pluginName: FlexagonGITPlugin <ns0pluginOperation:Encrypted>false</ns0:Encrypted> commit endpointInstanceOverride: isExpression: false <ns1consumesArtifacts:Type>String</ns1:Type> false producesArtifacts: false endpointSelection: </ns0:PluginInput> choice: All endpointExecution: </ns0:PluginInputs> choice: Any stopOnError: false <ns0:UserInputs/> inputs: - name: FDGIT_INP_INSTANCE_CODE <ns0:PluginOutputs/> value: <ns0value:UserOutputs/> GIT1 </ns0:InvokePlugin>isExpression: false </ns0isEncrypted:Step> false - <ns0:Step>name: FDGIT_INP_DEST_SUBFOLDER value: <ns1:Name>Copy downloaded files to Git Repository</ns1value:Name> ../ebsldtfiles <ns1isExpression:StepId>3</ns1:StepId> false isEncrypted: false <ns0:InvokePlugin> - name: FDGIT_INP_NAME <ns0:PluginName>FlexagonFilePlugin</ns0:PluginName>value: value: FD_WF_USER <ns0:PluginOperation>copy</ns0:PluginOperation> isExpression: true <ns0:consumesArtifacts>false</ns0isEncrypted:consumesArtifacts> false - name: FDGIT_INP_EMAIL <ns0:producesArtifacts>false</ns0:producesArtifacts> value: value: <ns0:EndpointSelection>FD_WF_USER_EMAIL isExpression: true <ns0isEncrypted:EndpointSelectionChoice>All</ns0:EndpointSelectionChoice> false - name: FDGIT_INP_REVISION_MESSAGE </ns0:EndpointSelection> value: <ns0:EndpointExecutionChoice>Any</ns0:EndpointExecutionChoice> value: new ldt files <ns0isExpression:PluginInputs> false isEncrypted: false <ns0outputs:PluginInput> [] userInputs: [] userOutputs: [] - id: '6' <ns0:Name>FDFILE_INP_FILE_FILTER</ns0:Name> name: Push to Central Repository type: INVOKE_PLUGIN data: <ns0:ValueType>Text</ns0:ValueType> pluginName: FlexagonGITPlugin pluginOperation: push endpointInstanceOverride: <ns0isExpression:Encrypted>false</ns0:Encrypted> false consumesArtifacts: false producesArtifacts: false <ns1:Type>String</ns1:Type>endpointSelection: choice: All endpointExecution: <ns0:Text>*.ldt</ns0:Text>choice: Any stopOnError: false inputs: - </ns0:PluginInput>name: FDGIT_INP_INSTANCE_CODE value: <ns0value:PluginInput> GIT1 isExpression: false <ns0:Name>FDFILEisEncrypted: false - name: FDGIT_INP_FILE_FILTER_EXCLUDED</ns0:Name>DEST_SUBFOLDER value: value: ../ebsldtfiles <ns0:ValueType>Text</ns0:ValueType> isExpression: false isEncrypted: false <ns0:Encrypted>false</ns0:Encrypted> - name: FDGIT_INP_FOLLOW_TAGS value: <ns1:Type>String</ns1:Type>value: 'false' </ns0:PluginInput> isExpression: false <ns0:PluginInput> isEncrypted: false <ns0:Name>FDFILE_INP_SOURCE_PATH</ns0:Name> <ns0:ValueType>Expression</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Value> <ns0:Expression>FD_TEMP_DIR</ns0:Expression> </ns0:Value> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDFILE_INP_TARGET_PATH</ns0:Name> <ns0:ValueType>Expression</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Value> <ns0:Expression>FD_TEMP_DIR + '/../ebsldtfiles'</ns0:Expression> </ns0:Value> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDFILE_INP_CLEAN_DIRECTORY</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>Boolean</ns1:Type> <ns0:Text>false</ns0:Text> </ns0:PluginInput> </ns0:PluginInputs> <ns0:UserInputs/> <ns0:PluginOutputs/> <ns0:UserOutputs/> </ns0:InvokePlugin> </ns0:Step> <ns0:Step> <ns1:Name>Add any new Files</ns1:Name> <ns1:StepId>4</ns1:StepId> <ns0:InvokePlugin> <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName> <ns0:PluginOperation>add</ns0:PluginOperation> <ns0:consumesArtifacts>false</ns0:consumesArtifacts> <ns0:producesArtifacts>false</ns0:producesArtifacts> <ns0:PluginInputs> <ns0:PluginInput> <ns0:Name>FDGIT_INP_INSTANCE_CODE</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>GIT1</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_DEST_SUBFOLDER</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>../ebsldtfiles</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_FILELIST</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>--all .</ns0:Text> </ns0:PluginInput> </ns0:PluginInputs> <ns0:UserInputs/> <ns0:PluginOutputs/> <ns0:UserOutputs/> </ns0:InvokePlugin> </ns0:Step> <ns0:Step> <ns1:Name>Commit to Git</ns1:Name> <ns1:StepId>5</ns1:StepId> <ns0:InvokePlugin> <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName> <ns0:PluginOperation>commit</ns0:PluginOperation> <ns0:consumesArtifacts>false</ns0:consumesArtifacts> <ns0:producesArtifacts>false</ns0:producesArtifacts> <ns0:PluginInputs> <ns0:PluginInput> <ns0:Name>FDGIT_INP_INSTANCE_CODE</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>GIT1</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_DEST_SUBFOLDER</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>../ebsldtfiles</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_NAME</ns0:Name> <ns0:ValueType>Expression</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Value> <ns0:Expression>FD_WF_USER</ns0:Expression> </ns0:Value> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_EMAIL</ns0:Name> <ns0:ValueType>Expression</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Value> <ns0:Expression>FD_WF_USER_EMAIL</ns0:Expression> </ns0:Value> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_REVISION_MESSAGE</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>new ldt files</ns0:Text> </ns0:PluginInput> </ns0:PluginInputs> <ns0:UserInputs/> <ns0:PluginOutputs/> <ns0:UserOutputs/> </ns0:InvokePlugin> </ns0:Step> <ns0:Step> <ns1:Name>Push to Central Repository</ns1:Name> <ns1:StepId>6</ns1:StepId> <ns0:InvokePlugin> <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName> <ns0:PluginOperation>push</ns0:PluginOperation> <ns0:consumesArtifacts>false</ns0:consumesArtifacts> <ns0:producesArtifacts>false</ns0:producesArtifacts> <ns0:PluginInputs> <ns0:PluginInput> <ns0:Name>FDGIT_INP_INSTANCE_CODE</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>GIT1</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_DEST_SUBFOLDER</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>../ebsldtfiles</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_FOLLOW_TAGS</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>Boolean</ns1:Type> <ns0:Text>false</ns0:Text> </ns0:PluginInput> </ns0:PluginInputs> <ns0:UserInputs/> <ns0:PluginOutputs/> <ns0:UserOutputs/> </ns0:InvokePlugin> </ns0:Step> </ns0:Steps> </ns0:WorkFlow> |
Next step is to setup Topology. If you have not yet created EBS instance, you should follow FlexDeploy EBS Getting Started guide to create EBS Instance. Then make sure to associate Extract LDT workflow with your EBS Instance and Save it. See below. This step will happen on Topology page. (Topology - Instances - select EBS Instance - click Workflows).
...
outputs: []
userInputs: []
userOutputs: [] |
Now that we have Workflow and Topology setup completed, last step is create Project for execution. We will create Extract LDT to GIT project. You can create this project in any application of your choice. Make sure to give name that makes sense to you, select Partial Deployments, and select EBS as Project Type.
...