mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-26 10:21:52 +00:00
appmgr: offline queries
This commit is contained in:
committed by
Aiden McClelland
parent
04b9ef8222
commit
351ce2495d
7
appmgr/Cargo.lock
generated
7
appmgr/Cargo.lock
generated
@@ -665,6 +665,9 @@ name = "either"
|
||||
version = "1.6.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
|
||||
dependencies = [
|
||||
"serde",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "embassy-os"
|
||||
@@ -2409,6 +2412,7 @@ dependencies = [
|
||||
"parking_lot",
|
||||
"percent-encoding",
|
||||
"rustls",
|
||||
"serde",
|
||||
"sha2 0.9.5",
|
||||
"smallvec",
|
||||
"sqlformat",
|
||||
@@ -2432,9 +2436,12 @@ dependencies = [
|
||||
"either",
|
||||
"futures",
|
||||
"heck",
|
||||
"hex",
|
||||
"once_cell",
|
||||
"proc-macro2 1.0.28",
|
||||
"quote 1.0.9",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"sha2 0.9.5",
|
||||
"sqlx-core",
|
||||
"sqlx-rt",
|
||||
|
||||
@@ -82,7 +82,7 @@ serde_toml = { package="toml", version="0.5.8" }
|
||||
serde_yaml = "0.8.14"
|
||||
sha2 = "0.9.3"
|
||||
simple-logging = "2.0"
|
||||
sqlx = { version="0.5", features=["runtime-tokio-rustls", "sqlite"] }
|
||||
sqlx = { version="0.5", features=["runtime-tokio-rustls", "sqlite", "offline"] }
|
||||
thiserror = "1.0.24"
|
||||
tokio = { version="1.5.0", features=["full"] }
|
||||
tokio-compat-02 = "0.2.0"
|
||||
|
||||
21
appmgr/sqlx-data.json
Normal file
21
appmgr/sqlx-data.json
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"db": "SQLite",
|
||||
"3e57a0e52b69f33e9411c13b03a5d82c5856d63f0375eb4c23b255a09c54f8b1": {
|
||||
"query": "SELECT key FROM tor WHERE package = ? AND interface = ?",
|
||||
"describe": {
|
||||
"columns": [
|
||||
{
|
||||
"name": "key",
|
||||
"ordinal": 0,
|
||||
"type_info": "Blob"
|
||||
}
|
||||
],
|
||||
"parameters": {
|
||||
"Right": 2
|
||||
},
|
||||
"nullable": [
|
||||
false
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -21,6 +21,7 @@ use crate::{Error, ResultExt};
|
||||
pub struct RpcContextConfig {
|
||||
pub bind_rpc: Option<SocketAddr>,
|
||||
pub bind_ws: Option<SocketAddr>,
|
||||
pub tor_control: Option<SocketAddr>,
|
||||
pub db: Option<PathBuf>,
|
||||
pub secret_store: Option<PathBuf>,
|
||||
}
|
||||
@@ -56,21 +57,27 @@ impl RpcContext {
|
||||
.unwrap_or_else(|| Path::new("/mnt/embassy-os/embassy.db").to_owned()),
|
||||
)
|
||||
.await?;
|
||||
let secret_store = SqlitePool::connect(&format!(
|
||||
"sqlite://{}",
|
||||
base.secret_store
|
||||
.unwrap_or_else(|| Path::new("/mnt/embassy-os/secrets.db").to_owned())
|
||||
.display()
|
||||
))
|
||||
.await?;
|
||||
let mut db_handle = db.handle();
|
||||
let lan_handle = Container::new();
|
||||
lan_handle.set(enable_lan(&mut db_handle).await?).await;
|
||||
let tor_controller = TorController::init(&mut db_handle).await?;
|
||||
let tor_controller = TorController::init(
|
||||
base.tor_control.unwrap_or(([127, 0, 0, 1], 9051).into()),
|
||||
&mut db_handle,
|
||||
&mut secret_store.acquire().await?,
|
||||
)
|
||||
.await?;
|
||||
let seed = Arc::new(RpcContextSeed {
|
||||
bind_rpc: base.bind_rpc.unwrap_or(([127, 0, 0, 1], 5959).into()),
|
||||
bind_ws: base.bind_ws.unwrap_or(([127, 0, 0, 1], 5960).into()),
|
||||
db,
|
||||
secret_store: SqlitePool::connect(&format!(
|
||||
"sqlite://{}",
|
||||
base.secret_store
|
||||
.unwrap_or_else(|| Path::new("/mnt/embassy-os/secrets.db").to_owned())
|
||||
.display()
|
||||
))
|
||||
.await?,
|
||||
secret_store,
|
||||
docker: Docker::connect_with_unix_defaults()?,
|
||||
lan_handle,
|
||||
tor_controller,
|
||||
|
||||
Reference in New Issue
Block a user