You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-10-08 22:51:57 +02:00
Доработка тестов SFTP, фикс подключения компонент
This commit is contained in:
2
docs/docusaurus/src/pages/index.js
vendored
2
docs/docusaurus/src/pages/index.js
vendored
@@ -35,6 +35,8 @@ const iconList = [
|
||||
'/img/APIs/TCP.png',
|
||||
'/img/APIs/VKTeams.png',
|
||||
'/img/APIs/FTP.png',
|
||||
'/img/APIs/SFTP.png',
|
||||
'/img/APIs/SSH.png',
|
||||
];
|
||||
|
||||
const FallingIcons = () => {
|
||||
|
@@ -1,12 +1,12 @@
|
||||
"MAIN ---"
|
||||
linux-vdso.so.1 (0x00007ffd323ad000)
|
||||
libssl.so.3 => /lib64/libssl.so.3 (0x000073db97600000)
|
||||
libcrypto.so.3 => /lib64/libcrypto.so.3 (0x000073db96e00000)
|
||||
libpthread.so.0 => /lib64/libpthread.so.0 (0x000073db96a00000)
|
||||
libc.so.6 => /lib64/libc.so.6 (0x000073db96600000)
|
||||
libdl.so.2 => /lib64/libdl.so.2 (0x000073db96200000)
|
||||
/lib64/ld-linux-x86-64.so.2 (0x000073db97a00000)
|
||||
libz.so.1 => /lib64/libz.so.1 (0x000073db95e00000)
|
||||
linux-vdso.so.1 (0x00007ffc92f7c000)
|
||||
libssl.so.3 => /lib64/libssl.so.3 (0x00007d7cede00000)
|
||||
libcrypto.so.3 => /lib64/libcrypto.so.3 (0x00007d7ced600000)
|
||||
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007d7ced200000)
|
||||
libc.so.6 => /lib64/libc.so.6 (0x00007d7cece00000)
|
||||
libdl.so.2 => /lib64/libdl.so.2 (0x00007d7ceca00000)
|
||||
/lib64/ld-linux-x86-64.so.2 (0x00007d7cee200000)
|
||||
libz.so.1 => /lib64/libz.so.1 (0x00007d7cec600000)
|
||||
GLIBC_2.2.5
|
||||
GLIBC_2.3
|
||||
GLIBC_2.3.4
|
||||
|
@@ -1,5 +1,6 @@
|
||||
use std::io::{BufReader, Cursor, Read, copy, Write};
|
||||
use std::path::{Path, PathBuf};
|
||||
use std::str::FromStr;
|
||||
use serde_json::{json, Value};
|
||||
use ssh2::{FileStat, RenameFlags, Sftp};
|
||||
use crate::component::{AddIn};
|
||||
@@ -88,16 +89,16 @@ impl AddIn{
|
||||
None => return json!({"result": false, "error": "Init SFTP first"}).to_string()
|
||||
};
|
||||
|
||||
let real_path = match sftp.realpath(path.as_ref()){
|
||||
Ok(real_path) => real_path,
|
||||
let pb = match PathBuf::from_str(path){
|
||||
Ok(pb) => pb,
|
||||
Err(err) => return format_json_error(&err.to_string()),
|
||||
};
|
||||
|
||||
match sftp.stat(real_path.as_path()) {
|
||||
match sftp.stat(pb.as_path()) {
|
||||
Ok(stat) => {
|
||||
json!({
|
||||
"result": true,
|
||||
"data": form_file_info(&real_path, &stat)
|
||||
"data": form_file_info(&pb, &stat)
|
||||
}).to_string()
|
||||
},
|
||||
Err(err) => format_json_error(&err.to_string()),
|
||||
|
BIN
src/en/OInt/addins/OPI_SSH.zip
vendored
BIN
src/en/OInt/addins/OPI_SSH.zip
vendored
Binary file not shown.
Binary file not shown.
BIN
src/ru/OInt/addins/OPI_SSH.zip
vendored
BIN
src/ru/OInt/addins/OPI_SSH.zip
vendored
Binary file not shown.
@@ -191,11 +191,16 @@
|
||||
КонецФункции
|
||||
|
||||
Функция ПодключитьКомпонентуНеИзолированно(ИмяМакета, ИмяКомпоненты)
|
||||
|
||||
Если OPI_Инструменты.ЭтоOneScript() Или OPI_Инструменты.ЭтоWindows() Тогда
|
||||
НеобходимТип = Ложь;
|
||||
|
||||
ЭтоOneScript = OPI_Инструменты.ЭтоOneScript();
|
||||
НеобходимТипПоСистеме = Не ЭтоOneScript И Не OPI_Инструменты.ЭтоWindows();
|
||||
|
||||
Если ЭтоOneScript Тогда
|
||||
|
||||
НеобходимТипПоВерсии = Ложь;
|
||||
|
||||
Иначе
|
||||
|
||||
|
||||
СистемнаяИнформация = Новый СистемнаяИнформация();
|
||||
|
||||
Версия1С = СистемнаяИнформация.ВерсияПриложения;
|
||||
@@ -205,29 +210,32 @@
|
||||
Часть2 = Число(Версия1С[1]);
|
||||
Часть3 = Число(Версия1С[2]);
|
||||
|
||||
НеобходимТип = Часть1 > 8 Или Часть2 > 3 Или Часть3 > 20;
|
||||
НеобходимТипПоВерсии = Часть1 > 8 Или Часть2 > 3 Или Часть3 > 20;
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Если Не НеобходимТип Тогда
|
||||
|
||||
ТипПодключенияВнешнейКомпоненты = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
НеобходимТип = НеобходимТипПоВерсии И НеобходимТипПоСистеме;
|
||||
|
||||
Если Не НеобходимТип Тогда
|
||||
|
||||
Если Не НеобходимТипПоВерсии Тогда
|
||||
ТипПодключенияВнешнейКомпоненты = Неопределено;
|
||||
КонецЕсли;
|
||||
|
||||
Результат = ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native);
|
||||
|
||||
|
||||
Иначе
|
||||
|
||||
|
||||
// BSLLS:UnusedLocalVariable-off
|
||||
|
||||
|
||||
//@skip-check module-unused-local-variable
|
||||
ТипПодключения = ТипПодключенияВнешнейКомпоненты.НеИзолированно;
|
||||
//@skip-check server-execution-safe-mode
|
||||
|
||||
|
||||
// BSLLS:UnusedLocalVariable-on
|
||||
|
||||
Результат = Вычислить(
|
||||
"ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native, ТипПодключения)");
|
||||
|
||||
|
||||
Результат = Вычислить("ПодключитьВнешнююКомпоненту(ИмяМакета, ИмяКомпоненты, ТипВнешнейКомпоненты.Native, ТипПодключения)");
|
||||
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
|
@@ -11616,15 +11616,18 @@
|
||||
|
||||
Функция Проверка_SFTP_ЗагрузитьФайл(Знач Результат, Знач Вариант, Размер = "")
|
||||
|
||||
ОжидаетЧто(Результат["bytes"]).Равно(Размер);
|
||||
|
||||
Если Не СтрНайти(Вариант, "Размер 1") > 0 Или СтрНайти(Вариант, "Размер 2") > 0 Тогда
|
||||
|
||||
Если СтрНайти(Вариант, "Размер файла") > 0 Тогда
|
||||
|
||||
ОжидаетЧто(Результат).Равно(Размер);
|
||||
|
||||
Иначе
|
||||
|
||||
ОжидаетЧто(Результат["bytes"]).Равно(Размер);
|
||||
ОжидаетЧто(Результат["result"]).Равно(Истина);
|
||||
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
@@ -11756,10 +11759,9 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция Проверка_SFTP_СохранитьФайл(Знач Результат, Знач Вариант, РазмерРезультата = "", РазмерПроверки = "")
|
||||
Функция Проверка_SFTP_СохранитьФайл(Знач Результат, Знач Вариант, РазмерПроверки = "")
|
||||
|
||||
Если СтрНайти(Вариант, "Размер файла") > 0 Тогда
|
||||
ОжидаетЧто(Результат).Равно(РазмерРезультата);
|
||||
ОжидаетЧто(Результат).Равно(РазмерПроверки);
|
||||
Иначе
|
||||
ОжидаетЧто(Результат["result"]).Равно(Истина);
|
||||
@@ -11793,7 +11795,11 @@
|
||||
|
||||
Функция Проверка_SFTP_ИзменитьПуть(Знач Результат, Знач Вариант)
|
||||
|
||||
ОжидаетЧто(Результат["result"]).Равно(Истина);
|
||||
Если СтрНайти(Вариант, "Проверка, Старый") Тогда
|
||||
ОжидаетЧто(Результат["result"]).Равно(Ложь);
|
||||
Иначе
|
||||
ОжидаетЧто(Результат["result"]).Равно(Истина);
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
|
@@ -23641,8 +23641,20 @@
|
||||
|
||||
// END
|
||||
|
||||
Обработать(Результат , "SFTP", "ЗагрузитьФайл", Постфикс , КартинкаДД.Размер());
|
||||
ЗагруженныйФайл = Новый Файл(Картинка);
|
||||
|
||||
Обработать(Результат , "SFTP", "ЗагрузитьФайл", Постфикс , ЗагруженныйФайл.Размер());
|
||||
Обработать(Результат2, "SFTP", "ЗагрузитьФайл", "Двоичные, " + Постфикс, КартинкаДД.Размер());
|
||||
|
||||
|
||||
РазмерФайлаЛокальный = ЗагруженныйФайл.Размер();
|
||||
РазмерФайлаЛокальныйДД = КартинкаДД.Размер();
|
||||
|
||||
РазмерФайлаУдаленный = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, "pic_from_disk.png")["data"]["size"];
|
||||
РазмерФайлаУдаленныйДД = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, "files_folder/pic_from_binary.png")["data"]["size"];
|
||||
|
||||
Обработать(РазмерФайлаЛокальный, "SFTP", "СохранитьФайл", "Размер файла, " + Постфикс, РазмерФайлаУдаленный);
|
||||
Обработать(РазмерФайлаЛокальныйДД, "SFTP", "СохранитьФайл", "Размер файла, ДД, " + Постфикс, РазмерФайлаУдаленныйДД);
|
||||
|
||||
Для Н = 1 По 7 Цикл
|
||||
|
||||
@@ -24070,8 +24082,14 @@
|
||||
КонецЕсли;
|
||||
|
||||
// END
|
||||
|
||||
|
||||
Обработать(Результат, "SFTP", "СохранитьФайл", Постфикс);
|
||||
|
||||
ЗагруженныйФайл = Новый Файл(ИмяФайла);
|
||||
РазмерФайлаЛокальный = ЗагруженныйФайл.Размер();
|
||||
РазмерФайлаУдаленный = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, Путь)["data"]["size"];
|
||||
|
||||
Обработать(РазмерФайлаЛокальный, "SFTP", "СохранитьФайл", "Размер файла, " + Постфикс, РазмерФайлаУдаленный);
|
||||
|
||||
Путь = "files_folder/pic_from_binary.png";
|
||||
|
||||
@@ -24155,6 +24173,11 @@
|
||||
// END
|
||||
|
||||
Обработать(Результат, "SFTP", "ПолучитьДанныеФайла", Постфикс);
|
||||
|
||||
РазмерФайлаЛокальный = Результат.Размер();
|
||||
РазмерФайлаУдаленный = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, Путь)["data"]["size"];
|
||||
|
||||
Обработать(РазмерФайлаЛокальный, "SFTP", "ПолучитьДанныеФайла", "Размер файла, " + Постфикс, РазмерФайлаУдаленный);
|
||||
|
||||
Путь = "files_folder/pic_from_binary.png";
|
||||
|
||||
@@ -24233,10 +24256,26 @@
|
||||
// END
|
||||
|
||||
Обработать(Результат , "SFTP", "ИзменитьПуть", Постфикс);
|
||||
|
||||
Результат = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, "pic_from_disk.png");
|
||||
|
||||
Обработать(Результат , "SFTP", "ИзменитьПуть", "Проверка, Старый, " + Постфикс);
|
||||
|
||||
Результат = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, "files_folder/pic_from_disk.png");
|
||||
|
||||
Обработать(Результат , "SFTP", "ИзменитьПуть", "Проверка, Новый, " + Постфикс);
|
||||
|
||||
Результат = OPI_SFTP.ИзменитьПуть(Соединение, "files_folder/pic_from_disk.png", "pic_from_disk.png");
|
||||
|
||||
Обработать(Результат , "SFTP", "ИзменитьПуть", "Обратно, " + Постфикс);
|
||||
|
||||
Результат = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, "files_folder/pic_from_disk.png");
|
||||
|
||||
Обработать(Результат , "SFTP", "ИзменитьПуть", "Проверка, Старый, Обратно, " + Постфикс);
|
||||
|
||||
Результат = OPI_SFTP.ПолучитьИнформациюОФайле(Соединение, "pic_from_disk.png");
|
||||
|
||||
Обработать(Результат , "SFTP", "ИзменитьПуть", "Проверка, Новый, Обратно, " + Постфикс);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
|
Binary file not shown.
Reference in New Issue
Block a user