- Added `AgentConnectorTrait` and `AgentConnector` for managing agent connections. - Introduced `SshAgentConnector` to handle SSH-related functionalities and start a gRPC server. - Created database entities for `agents`, `certificates`, `organizations`, `public_key_revocations`, `setup_tokens`, `upstreams`, `users`, `virtual_hosts`, and `workspaces` using SeaORM. - Developed `CertificateService` for managing certificate generation and retrieval. - Implemented the main server logic to initialize the database connection and start the agent server. - Configured development settings in `development.toml` for server and database connections.
91 lines
1.6 KiB
TOML
91 lines
1.6 KiB
TOML
[package]
|
|
name = "nxmesh-master"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
default-run = "nxmesh-master"
|
|
|
|
[[bin]]
|
|
name = "nxmesh-master"
|
|
path = "src/main.rs"
|
|
|
|
[[bin]]
|
|
name = "gen-openapi"
|
|
path = "src/bin/gen-openapi.rs"
|
|
|
|
[dependencies]
|
|
# Internal
|
|
nxmesh-core.workspace = true
|
|
nxmesh-proto.workspace = true
|
|
nxmesh-migration.workspace = true
|
|
|
|
# Core
|
|
tokio.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
thiserror.workspace = true
|
|
tracing.workspace = true
|
|
tracing-subscriber.workspace = true
|
|
|
|
# Web
|
|
axum = { workspace = true, features = ["ws"] }
|
|
tower.workspace = true
|
|
tower-http = { workspace = true, features = ["fs", "cors"] }
|
|
|
|
# OpenAPI
|
|
utoipa = { version = "5.4", features = ["axum_extras"] }
|
|
|
|
# gRPC
|
|
tonic.workspace = true
|
|
|
|
# Database
|
|
sea-orm.workspace = true
|
|
sea-orm-migration = { workspace = true, features = [
|
|
"runtime-tokio-native-tls",
|
|
"sqlx-postgres",
|
|
] }
|
|
|
|
# Async
|
|
async-trait.workspace = true
|
|
futures.workspace = true
|
|
async-stream = "0.3"
|
|
|
|
# Config
|
|
config.workspace = true
|
|
toml.workspace = true
|
|
|
|
# Crypto
|
|
argon2.workspace = true
|
|
jsonwebtoken.workspace = true
|
|
sha2.workspace = true
|
|
hex.workspace = true
|
|
|
|
# Validation
|
|
validator.workspace = true
|
|
|
|
# Time
|
|
chrono.workspace = true
|
|
|
|
# UUID
|
|
uuid.workspace = true
|
|
|
|
# Templating
|
|
handlebars.workspace = true
|
|
|
|
# Random generation
|
|
rand = "0.10"
|
|
clap = { workspace = true, features = ["derive"] }
|
|
rcgen = { version = "0.14.7", features = ["x509-parser"] }
|
|
time = "0.3"
|
|
|
|
# Cert handling
|
|
zip = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
tokio-test.workspace = true
|
|
mockall.workspace = true
|