* feat(backend): extract 12 leaf crates from windmill-api to improve incremental compilation Extract independent modules from windmill-api (90k LOC monolith) into separate leaf crates to reduce incremental compilation times. Modules extracted: assets, configs, debug, flow-conversations, inputs, npm-proxy, openapi, schedule, settings, workers, agent-workers, and alerting (from windmill-common). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: add windmill-api-settings dep to root crate, make ee_oss public Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * test: add agent_workers integration tests 8 tests covering agent worker lifecycle: - Simple script execution (bun) - Script with arguments - Script with logs (verified in job_logs table) - Script failure handling - Complex result (nested objects/arrays) - Agent token creation via API - Token creation + Initial/MainLoop ping cycle - Multiple sequential job execution Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * all --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
55 lines
1.2 KiB
Rust
55 lines
1.2 KiB
Rust
#[cfg(feature = "private")]
|
|
mod ee;
|
|
#[cfg(feature = "private")]
|
|
#[allow(unused)]
|
|
pub use ee::*;
|
|
|
|
/*
|
|
* Author: Ruben Fiszel
|
|
* Copyright: Windmill Labs, Inc 2042
|
|
* This file and its contents are licensed under the AGPLv3 License.
|
|
* Please see the included NOTICE for copyright information and
|
|
* LICENSE-AGPL for a copy of the license.
|
|
*/
|
|
|
|
#[cfg(not(feature = "private"))]
|
|
use windmill_common::DB;
|
|
|
|
#[cfg(not(feature = "private"))]
|
|
use axum::Router;
|
|
|
|
#[cfg(not(feature = "private"))]
|
|
pub fn global_service(_job_completed_tx: windmill_worker::JobCompletedSender) -> Router {
|
|
Router::new()
|
|
}
|
|
|
|
#[cfg(not(feature = "private"))]
|
|
pub fn workspaced_service(
|
|
db: DB,
|
|
_base_internal_url: String,
|
|
) -> (
|
|
Router,
|
|
Vec<tokio::task::JoinHandle<()>>,
|
|
Option<windmill_worker::JobCompletedSender>,
|
|
) {
|
|
use windmill_common::worker::Connection;
|
|
use windmill_worker::JobCompletedSender;
|
|
|
|
let (job_completed_tx, _job_completed_rx) =
|
|
JobCompletedSender::new(&Connection::Sql(db.clone()), 10);
|
|
|
|
let router = Router::new();
|
|
|
|
(router, vec![], Some(job_completed_tx))
|
|
}
|
|
|
|
#[cfg(not(feature = "private"))]
|
|
pub struct AgentCache {}
|
|
|
|
#[cfg(not(feature = "private"))]
|
|
impl AgentCache {
|
|
pub fn new() -> Self {
|
|
AgentCache {}
|
|
}
|
|
}
|