дзеркало
https://github.com/l0ng-ai/openidea.git
синхронізовано 2026-11-09 19:25:54 +02:00
fix(deployment): filter servers by selected path coverage (#544)
The server choosers listed every configured server without checking mapping coverage or exclusions, so choosing the wrong one silently skipped the files. - Add a shared eligibility check, available through desktop IPC and host RPC, that never contacts a server. - Filter Upload to, Download from, Compare and Delete choosers by it. A selection lists a server if it covers at least one path, and the rest are reported as skipped. - Explain why the default server cannot take a selection, by file name, instead of doing nothing. Apply the same exclusion rules when a transfer runs. Fixes #538
Цей коміт міститься в:
1 джерело
999eb86408
коміт
ee2585e7e9
14 files changed
+333
-38
No files matched your search
@@ -1,9 +1,19 @@
|
||||
use crate::state::AppState;
|
||||
use ide_core::{IdeResult, IpcPath, RequestId};
|
||||
use ide_remote::{DeployedPath, SyncEntry, SyncStep, TransferReport};
|
||||
use ide_remote::{DeployedPath, DeploymentCoverage, SyncEntry, SyncStep, TransferReport};
|
||||
use ide_ssh::{FsConnection, RemoteEntry};
|
||||
use tauri::{State, Window};
|
||||
|
||||
#[tauri::command]
|
||||
#[specta::specta]
|
||||
pub async fn deploy_coverage(
|
||||
window: Window,
|
||||
state: State<'_, AppState>,
|
||||
paths: Vec<IpcPath>,
|
||||
) -> IdeResult<Vec<DeploymentCoverage>> {
|
||||
ide_host::ops::deploy::deploy_coverage(window.label(), &state.host, paths).await
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
#[specta::specta]
|
||||
pub async fn deploy_upload(
|
||||
|
||||
@@ -451,6 +451,7 @@ pub fn builder() -> tauri_specta::Builder<tauri::Wry> {
|
||||
ssh::git_credentials,
|
||||
ssh::git_credential_forget,
|
||||
ssh::ssh_terminal_command,
|
||||
deploy::deploy_coverage,
|
||||
deploy::deploy_upload,
|
||||
deploy::deploy_download,
|
||||
deploy::deploy_delete_remote,
|
||||
|
||||
Reference in new issue
Заблокувати користувача