pipeline {
    agent any
    stages {
        stage('Deploy') {
            steps {
                    catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') { 
                        bat encoding: 'UTF-8', script:'chcp 65001 & xcopy "docs/ru/md" "docs/docusaurus/docs" /s /e /i /y'
                        bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & npm install'
                        bat encoding: 'UTF-8', script:'chcp 65001 & cd docs/docusaurus & "C:/Program Files (x86)/Yarn/bin/yarn" build'
                        withCredentials([string(credentialsId: 'neocities-ru', variable: 'TOKEN')]) {
                            powershell encoding: 'UTF-8', script:'oint neocities СинхронизироватьКаталоги --token $ENV:TOKEN --local "C:/ProgramData/Jenkins/.jenkins/workspace/Docs deploy (RU)/docs/docusaurus/build"'
                        }
                    }
                    
                    bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/Docs deploy (RU)/docs/docusaurus/build"'
                    bat encoding: 'UTF-8', script:'chcp 65001 & rmdir /s /q "C:/ProgramData/Jenkins/.jenkins/workspace/Docs deploy (RU)/docs/docusaurus/node_modules"'
                    
            }
        }
    }
}