...
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> <ns0:InvokePlugin> <ns0:PluginName>FlexagonEBSPlugin</ns0:PluginName> <ns0:PluginOperation>build</ns0:PluginOperation> <ns0:consumesArtifacts>false</ns0:consumesArtifacts> <ns0:producesArtifacts>false</ns0:producesArtifacts> <ns0:PluginInputs> <ns0:PluginInput> <ns0:Name>FDEBS_INP_INCLUDE_FILES</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> </ns0:PluginInput> </ns0:PluginInputs> <ns0:UserInputs/> <ns0:PluginOutputs/> <ns0:UserOutputs/> </ns0:InvokePlugin> </ns0:Step> <ns0:Step> <ns1:Name>Git Clone</ns1:Name> <ns1:StepId>2</ns1:StepId> <ns0:InvokePlugin> <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName> <ns0:PluginOperation>clone</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_BRANCH</ns0:Name> <ns0:ValueType>Expression</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Value> <ns0:Expression>FDBLD_STREAM_NAME</ns0:Expression> </ns0:Value> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_DEPTH</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>Integer</ns1:Type> <ns0:Text>1</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDGIT_INP_SPARSE_CHECKOUT_FOLDERS</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> </ns0:PluginInput> </ns0:PluginInputs> <ns0:UserInputs/> <ns0:PluginOutputs/> <ns0:UserOutputs/> </ns0:InvokePlugin> </ns0:Step> <ns0:Step> <ns1:Name>Copy downloaded files to Git Repository</ns1:Name> <ns1:StepId>3</ns1:StepId> <ns0:InvokePlugin> <ns0:PluginName>FlexagonFilePlugin</ns0:PluginName> <ns0:PluginOperation>copy</ns0:PluginOperation> <ns0:consumesArtifacts>false</ns0:consumesArtifacts> <ns0:producesArtifacts>false</ns0:producesArtifacts> <ns0:EndpointSelection> <ns0:EndpointSelectionChoice>All</ns0:EndpointSelectionChoice> </ns0:EndpointSelection> <ns0:EndpointExecutionChoice>Any</ns0:EndpointExecutionChoice> <ns0:PluginInputs> <ns0:PluginInput> <ns0:Name>FDFILE_INP_FILE_FILTER</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> <ns0:Text>*.ldt</ns0:Text> </ns0:PluginInput> <ns0:PluginInput> <ns0:Name>FDFILE_INP_FILE_FILTER_EXCLUDED</ns0:Name> <ns0:ValueType>Text</ns0:ValueType> <ns0:Encrypted>false</ns0:Encrypted> <ns1:Type>String</ns1:Type> </ns0:PluginInput> <ns0:PluginInput> <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> name: Extract LDT description: '' steps: - id: '1' name: Extract LDT Files from EBS type: INVOKE_PLUGIN data: pluginName: FlexagonEBSPlugin pluginOperation: build inputs: - name: <ns0:Name>FDFILEFDEBS_INP_CLEAN_DIRECTORY</ns0:Name>INCLUDE_FILES value: <ns0:ValueType>Text</ns0:ValueType> isExpression: false <ns0:Encrypted>false</ns0:Encrypted> isEncrypted: false endpointInstanceOverride: isExpression: <ns1:Type>Boolean</ns1:Type>false consumesArtifacts: false producesArtifacts: false <ns0:Text>false</ns0:Text> endpointSelection: choice: All </ns0endpointExecution:PluginInput> choice: Any </ns0:PluginInputs> outputs: [] <ns0userInputs:UserInputs/> [] userOutputs: [] - <ns0id:PluginOutputs/> '2' name: Git Clone <ns0:UserOutputs/>type: INVOKE_PLUGIN data: </ns0:InvokePlugin>pluginName: FlexagonGITPlugin </ns0:Step>pluginOperation: clone <ns0inputs:Step> - <ns1:Name>Add any new Files</ns1:Name>name: FDGIT_INP_INSTANCE_CODE value: <ns1:StepId>4</ns1:StepId> <ns0value:InvokePlugin> EMILYGIT <ns0isExpression:PluginName>FlexagonGITPlugin</ns0:PluginName> false <ns0:PluginOperation>add</ns0:PluginOperation> isEncrypted: false - <ns0:consumesArtifacts>false</ns0:consumesArtifacts> name: FDGIT_INP_DEST_SUBFOLDER <ns0:producesArtifacts>false</ns0:producesArtifacts>value: <ns0:PluginInputs>value: ../ebsldtfiles isExpression: false <ns0:PluginInput> isEncrypted: false - <ns0name:Name>FDGIT FDGIT_INP_INSTANCE_CODE</ns0:Name>BRANCH <ns0:ValueType>Text</ns0:ValueType>value: value: FDBLD_STREAM_NAME <ns0:Encrypted>false</ns0:Encrypted> isExpression: true <ns1:Type>String</ns1:Type>isEncrypted: false - name: FDGIT_INP_DEPTH <ns0:Text>GIT1</ns0:Text> value: </ns0:PluginInput>value: '1' isExpression: false <ns0:PluginInput> isEncrypted: false - <ns0name:Name>FDGIT FDGIT_INP_DEST_SUBFOLDER</ns0:Name>SPARSE_CHECKOUT_FOLDERS value: <ns0:ValueType>Text</ns0:ValueType> value: EBSCustomizations/XXHR/import <ns0:Encrypted>false</ns0:Encrypted>isExpression: false isEncrypted: false <ns1endpointInstanceOverride:Type>String</ns1:Type> isExpression: false <ns0:Text>../ebsldtfiles</ns0:Text> consumesArtifacts: false producesArtifacts: false </ns0endpointSelection:PluginInput> choice: All <ns0 endpointExecution:PluginInput> choice: Any <ns0:Name>FDGIT_INP_FILELIST</ns0:Name> outputs: [] userInputs: [] userOutputs: [] <ns0:ValueType>Text</ns0:ValueType> - id: '3' name: Copy downloaded files to Git Repository <ns0type:Encrypted>false</ns0:Encrypted> INVOKE_PLUGIN data: pluginName: FlexagonFilePlugin <ns1:Type>String</ns1:Type> pluginOperation: copy inputs: <ns0:Text>--all .</ns0:Text> name: FDFILE_INP_FILE_FILTER </ns0:PluginInput>value: </ns0:PluginInputs>value: '*.ldt' <ns0isExpression:UserInputs/> false <ns0isEncrypted:PluginOutputs/> false - name: <ns0:UserOutputs/>FDFILE_INP_FILE_FILTER_EXCLUDED </ns0value:InvokePlugin> </ns0:Step> <ns0isExpression:Step> false <ns1:Name>Commit to Git</ns1:Name>isEncrypted: false - <ns1:StepId>5</ns1:StepId>name: FDFILE_INP_SOURCE_PATH <ns0value:InvokePlugin> <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName>value: FD_TEMP_DIR <ns0isExpression:PluginOperation>commit</ns0:PluginOperation> true <ns0:consumesArtifacts>false</ns0:consumesArtifacts> isEncrypted: false - <ns0:producesArtifacts>false</ns0name:producesArtifacts> FDFILE_INP_TARGET_PATH <ns0value:PluginInputs> <ns0value:PluginInput> FD_TEMP_DIR + '/../ebsldtfiles' <ns0:Name>FDGIT_INP_INSTANCE_CODE</ns0:Name> isExpression: true isEncrypted: false <ns0:ValueType>Text</ns0:ValueType> - name: FDFILE_INP_CLEAN_DIRECTORY value: <ns0:Encrypted>false</ns0:Encrypted> value: 'false' <ns1:Type>String</ns1:Type> isExpression: false isEncrypted: false <ns0:Text>GIT1</ns0:Text> endpointInstanceOverride: </ns0isExpression:PluginInput> false consumesArtifacts: false <ns0producesArtifacts:PluginInput> false endpointSelection: <ns0:Name>FDGIT_INP_DEST_SUBFOLDER</ns0:Name> choice: All endpointExecution: <ns0:ValueType>Text</ns0:ValueType> choice: Any outputs: [] userInputs: [] <ns0:Encrypted>false</ns0:Encrypted> userOutputs: [] - id: '4' name: Add <ns1:Type>String</ns1:Type> any new Files type: INVOKE_PLUGIN data: <ns0:Text>../ebsldtfiles</ns0:Text> pluginName: FlexagonGITPlugin pluginOperation: add </ns0inputs:PluginInput> - name: FDGIT_INP_INSTANCE_CODE <ns0:PluginInput> value: <ns0:Name>FDGIT_INP_NAME</ns0:Name>value: EMILYGIT isExpression: false <ns0:ValueType>Expression</ns0:ValueType> isEncrypted: false - name: <ns0:Encrypted>false</ns0:Encrypted>FDGIT_INP_DEST_SUBFOLDER value: <ns1:Type>String</ns1:Type> value: ../ebsldtfiles <ns0isExpression:Value> false isEncrypted: false <ns0:Expression>FD_WF_USER</ns0:Expression>- name: FDGIT_INP_FILELIST value: </ns0:Value> value: '--all .' </ns0:PluginInput> isExpression: false <ns0isEncrypted:PluginInput> false endpointInstanceOverride: <ns0:Name>FDGIT_INP_EMAIL</ns0:Name> isExpression: false consumesArtifacts: false <ns0:ValueType>Expression</ns0producesArtifacts:ValueType> false endpointSelection: <ns0:Encrypted>false</ns0:Encrypted> choice: All endpointExecution: choice: Any <ns1:Type>String</ns1:Type> outputs: [] userInputs: [] <ns0:Value> userOutputs: [] - id: '5' name: Commit to Git <ns0type:Expression>FD_WF_USER_EMAIL</ns0:Expression> INVOKE_PLUGIN data: pluginName: FlexagonGITPlugin </ns0pluginOperation:Value> commit inputs: </ns0:PluginInput> - name: FDGIT_INP_INSTANCE_CODE value: <ns0:PluginInput> value: EMILYGIT <ns0:Name>FDGIT_INP_REVISION_MESSAGE</ns0:Name>isExpression: false isEncrypted: false - <ns0:ValueType>Text</ns0:ValueType>name: FDGIT_INP_DEST_SUBFOLDER value: <ns0:Encrypted>false</ns0:Encrypted> value: ../ebsldtfiles <ns1isExpression:Type>String</ns1:Type> false isEncrypted: false <ns0:Text>new ldt files</ns0:Text> - name: FDGIT_INP_NAME </ns0value:PluginInput> </ns0:PluginInputs>value: FD_WF_USER <ns0isExpression:UserInputs/> true <ns0isEncrypted:PluginOutputs/> false - name: <ns0:UserOutputs/>FDGIT_INP_EMAIL </ns0value:InvokePlugin> </ns0:Step> <ns0:Step>value: FD_WF_USER_EMAIL <ns1:Name>Push to Central Repository</ns1:Name>isExpression: true <ns1:StepId>6</ns1:StepId>isEncrypted: false - <ns0:InvokePlugin>name: FDGIT_INP_REVISION_MESSAGE <ns0:PluginName>FlexagonGITPlugin</ns0:PluginName>value: <ns0value:PluginOperation>push</ns0:PluginOperation> New ldt files added from FlexDeploy <ns0:consumesArtifacts>false</ns0:consumesArtifacts> isExpression: false <ns0:producesArtifacts>false</ns0:producesArtifacts> isEncrypted: false <ns0endpointInstanceOverride:PluginInputs> isExpression: false <ns0 consumesArtifacts:PluginInput> false producesArtifacts: false <ns0:Name>FDGIT_INP_INSTANCE_CODE</ns0:Name> endpointSelection: choice: All endpointExecution: <ns0:ValueType>Text</ns0:ValueType> choice: Any outputs: [] <ns0:Encrypted>false</ns0:Encrypted> userInputs: [] userOutputs: [] - id: '6' <ns1:Type>String</ns1:Type> name: Push to Central Repository type: INVOKE_PLUGIN data: <ns0pluginName:Text>GIT1</ns0:Text> FlexagonGITPlugin pluginOperation: push </ns0inputs:PluginInput> - name: FDGIT_INP_INSTANCE_CODE <ns0:PluginInput> value: <ns0:Name>FDGIT_INP_DEST_SUBFOLDER</ns0:Name>value: EMILYGIT isExpression: false <ns0:ValueType>Text</ns0:ValueType> isEncrypted: false - name: FDGIT_INP_DEST_SUBFOLDER <ns0:Encrypted>false</ns0:Encrypted> value: <ns1value:Type>String</ns1:Type> ../ebsldtfiles isExpression: false <ns0:Text>../ebsldtfiles</ns0:Text> isEncrypted: false - </ns0name:PluginInput> FDGIT_INP_BRANCH value: <ns0:PluginInput> value: master <ns0:Name>FDGIT_INP_FOLLOW_TAGS</ns0:Name> isExpression: false isEncrypted: false <ns0:ValueType>Text</ns0:ValueType> - name: FDGIT_INP_FOLLOW_TAGS <ns0:Encrypted>false</ns0:Encrypted> value: value: 'false' <ns1:Type>Boolean</ns1:Type> isExpression: false <ns0:Text>false</ns0:Text> isEncrypted: false endpointInstanceOverride: </ns0isExpression:PluginInput> false consumesArtifacts: false </ns0:PluginInputs> producesArtifacts: false <ns0:UserInputs/>endpointSelection: choice: All <ns0:PluginOutputs/> endpointExecution: <ns0choice:UserOutputs/> Any outputs: </ns0:InvokePlugin>[] userInputs: [] </ns0:Step> </ns0userOutputs: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).
...