Skip to content

Commit 670c9e1

Browse files
committed
refactor: adjust pingap workspace member
1 parent 71c316f commit 670c9e1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+1489
-1061
lines changed

Cargo.lock

+128
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+35-1
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,12 @@ walkdir = "2.5.0"
144144
x509-parser = "0.17.0"
145145
zstd = "0.13.2"
146146
pingap-util = { path = "pingap-util" }
147+
pingap-limit = { path = "pingap-limit" }
148+
pingap-webhook = { path = "pingap-webhook" }
149+
pingap-discovery = { path = "pingap-discovery" }
150+
pingap-health = { path = "pingap-health" }
151+
pingap-service = { path = "pingap-service" }
152+
pingap-config = { path = "pingap-config" }
147153

148154
[target.'cfg(target_os = "linux")'.dependencies]
149155
procfs = { version = "0.17.0", default-features = false }
@@ -188,7 +194,16 @@ harness = false
188194
ignored = ["humantime-serde"]
189195

190196
[workspace]
191-
members = ["pingap-util"]
197+
members = [
198+
"pingap-discovery",
199+
"pingap-limit",
200+
"pingap-util",
201+
"pingap-webhook",
202+
"pingap-discovery",
203+
"pingap-health",
204+
"pingap-service",
205+
"pingap-config",
206+
]
192207

193208
[workspace.dependencies]
194209
once_cell = "1.20.2"
@@ -206,3 +221,22 @@ substring = "1.4.5"
206221
itoa = "1.0.14"
207222
toml = "0.8.19"
208223
tokio = { version = "1.43.0", default-features = false, features = ["fs"] }
224+
TinyUFO = "0.4.0"
225+
tracing = "0.1.41"
226+
async-trait = "0.1.86"
227+
serde = "1.0.217"
228+
serde_json = "1.0.138"
229+
strum = { version = "0.26.3", features = ["derive"] }
230+
reqwest = { version = "0.12.12", default-features = false, features = [
231+
"json",
232+
"default-tls",
233+
] }
234+
hostname = "0.4.0"
235+
futures = "0.3.31"
236+
humantime = "2.1.0"
237+
url = "2.5.4"
238+
arc-swap = "1.7.1"
239+
bytesize = { version = "1.3.0", features = ["serde"] }
240+
futures-util = "0.3.31"
241+
base64 = "0.22.1"
242+
humantime-serde = "1.1.1"

benches/bench.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ use bytes::Bytes;
44
use criterion::{criterion_group, criterion_main, Criterion};
55
use http::{HeaderName, HeaderValue, StatusCode};
66
use nanoid::nanoid;
7-
use pingap::config::LocationConf;
87
use pingap::http_extra::{convert_headers, HttpResponse};
98
use pingap::proxy::{Location, Parser};
109
use pingap::state::{CompressionStat, State};
10+
use pingap_config::LocationConf;
1111
use pingap_util::get_super_ts;
1212
use pingora::http::{RequestHeader, ResponseHeader};
1313
use pingora::proxy::Session;

conf/servers.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# Examples:
77
# "0.0.0.0:80" - listen on all interfaces on port 80
88
# "127.0.0.1:8080" - listen only on localhost on port 8080
9-
# "0.0.0.0:80,0.0.0.0:443" - listen on multiple ports
9+
# "0.0.0.0:80,0.0.0.0:443,[::]:80" - listen on multiple ports
1010
addr = "0.0.0.0:6188"
1111

1212
# access log format (default none)

docs/module_dependencies.md

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Pingap Module Dependencies
2+
3+
```mermaid
4+
graph TD
5+
6+
util[pingap-util]
7+
limit[pingap-limit]
8+
webhook[pingap-webhook]
9+
discovery[pingap-discovery]
10+
health[pingap-health]
11+
service[pingap-service]
12+
13+
limit --> util
14+
webhook --> util
15+
discovery --> util
16+
health --> util
17+
18+
discovery --> webhook
19+
health --> webhook
20+
```

pingap-config/Cargo.toml

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
[package]
2+
name = "pingap-config"
3+
version = "0.9.10"
4+
edition = "2021"
5+
authors = ["Tree Xie <[email protected]>"]
6+
license = "Apache-2.0"
7+
homepage = "https://github.com/vicanso/pingap"
8+
repository = "https://github.com/vicanso/pingap"
9+
keywords = ["pingap", "config"]
10+
11+
12+
[lib]
13+
name = "pingap_config"
14+
path = "src/lib.rs"
15+
16+
17+
[dependencies]
18+
async-trait = { workspace = true }
19+
etcd-client = "0.14.0"
20+
glob = "0.3.2"
21+
crc32fast = "1.4.2"
22+
rustls-pemfile = "2.2.0"
23+
diff = "0.1.13"
24+
arc-swap = { workspace = true }
25+
bytesize = { workspace = true }
26+
bytes = { workspace = true }
27+
http = { workspace = true }
28+
pingora = { workspace = true }
29+
regex = { workspace = true }
30+
serde = { workspace = true }
31+
serde_json = { workspace = true }
32+
tokio = { workspace = true }
33+
tracing = { workspace = true }
34+
url = { workspace = true }
35+
toml = { workspace = true }
36+
once_cell = { workspace = true }
37+
strum = { workspace = true }
38+
humantime = { workspace = true }
39+
substring = { workspace = true }
40+
futures-util = { workspace = true }
41+
snafu = { workspace = true }
42+
base64 = { workspace = true }
43+
humantime-serde = { workspace = true }
44+
pingap-discovery = { path = "../pingap-discovery" }
45+
pingap-util = { path = "../pingap-util" }
46+
47+
48+
[dev-dependencies]
49+
pretty_assertions = "1.4.0"
50+
tempfile = "3.16.0"
51+
tokio-test = "0.4.4"
52+
nanoid = "0.4.0"

0 commit comments

Comments
 (0)