def clean () {
    sh 'rm -rf .[!.]*'
    sh 'rm -rf ./*'
    sh 'ls -a'
}

def clone (String repoPath, String folder) {
   echo 'cloning...'
   sh "git clone ${repoPath}.git tmp"
   sh "mkdir -p ${folder}"
   sh "mv ./tmp/* ./${folder}"
   sh "mv ./tmp/.[!.]* ./${folder}"
}

def loadScript (String scriptName) {
    load "${JEN_FILES_TMP_NAME}/${scriptName}/Jenkinsfile"
}

pipeline {
   agent any

   stages {
      stage('processing') {
         steps {
                clean()
                clone(JENKINS_SCRIPTS_URL, JEN_FILES_TMP_NAME)
                loadScript('stats')
                // clone('https://aaprimakov@bitbucket.org/aaprimakov/r-and-m', './')
                clone(PROJECT_REPO, './')
                loadScript('install/no-cy')
                loadScript('install/no-electron')
                loadScript('install')
                loadScript('lint/eslint')
                loadScript('build/prod')
                loadScript('tests/unit')

                loadScript('tests/collect_coverage_html')
                loadScript('predeploy')
                loadScript('out')
                loadScript('clean-all')
            }
        }
    }
}