Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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
languagexml
<?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).

...