Skip to content

Commit 2ceaf76

Browse files
authored
dedup progenitor, and update crucible and propolis revs (#2005)
This is PR 3 of N in this series. For the earlier ones, see: * oxidecomputer/crucible#552 * oxidecomputer/propolis#262 Currently, we specify the progenitor dependency as both: ```toml progenitor-client = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" } ``` And ```toml progenitor-client = { git = "https://github.com/oxidecomputer/progenitor" } ``` Cargo (due to rust-lang/cargo#7497) doesn't dedup these dependencies even though they resolve to the same branch and hash. This causes issues with `cargo doc` colliding with itself, as it tries to document both: ``` Documenting progenitor-impl v0.2.1-dev (https://github.com/oxidecomputer/progenitor#4b5cef4b) Documenting progenitor-impl v0.2.1-dev (https://github.com/oxidecomputer/progenitor?branch=main#4b5cef4b) ``` Fix this by always using the branch name. (We choose this option over not specifying the branch so to maintain uniformity in cases where a non-default branch must be used.) This also requires a crucible update, since that didn't specify a branch either. And the crucible update necessitates a propolis update to get the versions aligned. In the future it would be nice to have a lint which ensures that git dependencies always have the branch name in them.
1 parent 0625831 commit 2ceaf76

File tree

16 files changed

+142
-143
lines changed

16 files changed

+142
-143
lines changed

Cargo.lock

Lines changed: 119 additions & 113 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ members = [
3636
"test-utils",
3737
"wicket",
3838
"wicketd",
39-
"wicketd-client"
39+
"wicketd-client",
4040
]
4141

4242
default-members = [
@@ -116,7 +116,8 @@ panic = "abort"
116116
#[patch."https://github.com/oxidecomputer/propolis"]
117117
#propolis-client = { path = "../propolis/lib/propolis-client" }
118118
#[patch."https://github.com/oxidecomputer/crucible"]
119-
#crucible-client-typess = { path = "../crucible/crucible-client-typess" }
119+
#crucible-agent-client = { path = "../crucible/agent-client" }
120+
#crucible-client-types = { path = "../crucible/crucible-client-types" }
120121

121122
#
122123
# Local client generation during development.

common/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ tokio-postgres = { version = "0.7", features = [ "with-chrono-0_4", "with-uuid-1
3232
toml = "0.5.9"
3333
uuid = { version = "1.2.2", features = [ "serde", "v4" ] }
3434
parse-display = "0.6.0"
35-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
35+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
3636

3737
[dev-dependencies]
3838
expectorate = "1.0.5"

ddm-admin-client/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ version = "0.1.0"
44
edition = "2021"
55

66
[dependencies]
7-
progenitor-client = { git = "https://github.com/oxidecomputer/progenitor" }
7+
progenitor-client = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
88
reqwest = { version = "0.11.13", features = ["json", "stream", "rustls-tls"] }
99
serde = { version = "1.0", features = ["derive"] }
1010
slog = "2.7"
1111

1212
[build-dependencies]
1313
anyhow = "1.0"
1414
omicron-zone-package = "0.5.1"
15-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
15+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
1616
quote = "1.0"
1717
serde_json = "1.0"
1818
toml = "0.5"

gateway-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ license = "MPL-2.0"
66

77
[dependencies]
88
futures = "0.3.25"
9-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
9+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
1010
reqwest = { version = "0.11.13", default-features = false, features = ["rustls-tls", "stream"] }
1111
schemars = "0.8"
1212
serde_json = "1.0"

internal-dns-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ license = "MPL-2.0"
77
[dependencies]
88
futures = "0.3.25"
99
omicron-common = { path = "../common" }
10-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
10+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
1111
reqwest = { version = "0.11.13", features = ["json", "rustls-tls", "stream"] }
1212
serde = { version = "1.0", features = [ "derive" ] }
1313
serde_json = "1.0"

nexus-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ edition = "2021"
55
license = "MPL-2.0"
66

77
[dependencies]
8-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
8+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
99
reqwest = { version = "0.11.13", default-features = false, features = ["rustls-tls", "stream"] }
1010
serde_json = "1.0"
1111

nexus/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ base64 = "0.13.1"
1515
bb8 = "0.8.0"
1616
clap = { version = "4.0", features = ["derive"] }
1717
cookie = "0.16"
18-
crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "144d8dafa41715e00b08a5929cc62140ff0eb561" }
18+
crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "861a09c350fd0e127b6105c8099e31a0bc3b711a" }
1919
diesel = { version = "2.0.2", features = ["postgres", "r2d2", "chrono", "serde_json", "network-address", "uuid"] }
2020
diesel-dtrace = { git = "https://github.com/oxidecomputer/diesel-dtrace", rev = "18748d9f76c94e1f4400fbec0859b3e77a221a8d" }
2121
# TODO(luqman): Update once merged & new release is cut
@@ -47,7 +47,7 @@ oximeter-db = { path = "../oximeter/db/" }
4747
parse-display = "0.6.0"
4848
# See omicron-rpaths for more about the "pq-sys" dependency.
4949
pq-sys = "*"
50-
propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "e58937fea67aca6bc2d37a3cc50a72291328ae0e", features = [ "generated" ] }
50+
propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "b596e72b6b93bc412d675358f782ae7d53f8bf7a", features = [ "generated" ] }
5151
rand = "0.8.5"
5252
ref-cast = "1.0"
5353
reqwest = { version = "0.11.13", features = [ "json" ] }

nexus/src/app/instance.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -516,13 +516,11 @@ impl super::Nexus {
516516
for (i, disk) in disks.iter().enumerate() {
517517
let volume =
518518
self.db_datastore.volume_checkout(disk.volume_id).await?;
519-
let gen: i64 = (&disk.runtime_state.gen.0).into();
520519
disk_reqs.push(sled_agent_client::types::DiskRequest {
521520
name: disk.name().to_string(),
522521
slot: sled_agent_client::types::Slot(i as u8),
523522
read_only: false,
524523
device: "nvme".to_string(),
525-
gen: gen as u64,
526524
volume_construction_request: serde_json::from_str(
527525
&volume.data(),
528526
)?,

openapi/sled-agent.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -613,11 +613,6 @@
613613
"device": {
614614
"type": "string"
615615
},
616-
"gen": {
617-
"type": "integer",
618-
"format": "uint64",
619-
"minimum": 0
620-
},
621616
"name": {
622617
"type": "string"
623618
},
@@ -633,7 +628,6 @@
633628
},
634629
"required": [
635630
"device",
636-
"gen",
637631
"name",
638632
"read_only",
639633
"slot",

oxide-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ license = "MPL-2.0"
66

77
[dependencies]
88
futures = "0.3.25"
9-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
9+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
1010
regress = "0.4.1"
1111
serde_json = "1.0.89"
1212
base64 = "0.13"

oximeter-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ edition = "2021"
55
license = "MPL-2.0"
66

77
[dependencies]
8-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
8+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
99
reqwest = { version = "0.11.13", default-features = false, features = ["rustls-tls", "stream"] }
1010

1111
[dependencies.chrono]

package-manifest.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,10 @@ service_name = "crucible"
9292
# 3. Use source.type = "manual" instead of "prebuilt"
9393
source.type = "prebuilt"
9494
source.repo = "crucible"
95-
source.commit = "144d8dafa41715e00b08a5929cc62140ff0eb561"
95+
source.commit = "861a09c350fd0e127b6105c8099e31a0bc3b711a"
9696
# The SHA256 digest is automatically posted to:
9797
# https://buildomat.eng.oxide.computer/public/file/oxidecomputer/crucible/image/<commit>/crucible.sha256.txt
98-
source.sha256 = "2de086b0ba27efc638c88ff46a6d110236c2db92499266eccbd2a3ec28acc693"
98+
source.sha256 = "f0cefac66b82a377d1460065a838af22aeb0c03c98563f994eca562d2541f551"
9999
output.type = "zone"
100100

101101
# Refer to
@@ -105,10 +105,10 @@ output.type = "zone"
105105
service_name = "propolis-server"
106106
source.type = "prebuilt"
107107
source.repo = "propolis"
108-
source.commit = "e58937fea67aca6bc2d37a3cc50a72291328ae0e"
108+
source.commit = "b596e72b6b93bc412d675358f782ae7d53f8bf7a"
109109
# The SHA256 digest is automatically posted to:
110110
# https://buildomat.eng.oxide.computer/public/file/oxidecomputer/propolis/image/<commit>/propolis-server.sha256.txt
111-
source.sha256 = "00d11a6f669e9f7caa03963c3bd345f2f3a2e6b4ec0e713f2e1dbf94177b4fa9"
111+
source.sha256 = "014f21152629e6ec7a5cfe42f6ad0057279456f191a040a7e4f04d4db74b627c"
112112
output.type = "zone"
113113

114114
[package.maghemite]

sled-agent-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ license = "MPL-2.0"
77
[dependencies]
88
async-trait = "0.1"
99
ipnetwork = "0.20"
10-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
10+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
1111
regress = "0.4.1"
1212
reqwest = { version = "0.11.13", default-features = false, features = ["rustls-tls", "stream"] }
1313

sled-agent/Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ cfg-if = "1.0"
1414
chrono = { version = "0.4", features = [ "serde" ] }
1515
clap = { version = "4.0", features = ["derive"] }
1616
# Only used by the simulated sled agent.
17-
crucible-client-types = { git = "https://github.com/oxidecomputer/crucible", rev = "144d8dafa41715e00b08a5929cc62140ff0eb561" }
18-
crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "144d8dafa41715e00b08a5929cc62140ff0eb561" }
17+
crucible-client-types = { git = "https://github.com/oxidecomputer/crucible", rev = "861a09c350fd0e127b6105c8099e31a0bc3b711a" }
18+
crucible-agent-client = { git = "https://github.com/oxidecomputer/crucible", rev = "861a09c350fd0e127b6105c8099e31a0bc3b711a" }
1919
ddm-admin-client = { path = "../ddm-admin-client" }
2020
dropshot = { git = "https://github.com/oxidecomputer/dropshot", branch = "main", features = [ "usdt-probes" ] }
2121
futures = "0.3.25"
@@ -30,8 +30,8 @@ oximeter = { version = "0.1.0", path = "../oximeter/oximeter" }
3030
oximeter-producer = { version = "0.1.0", path = "../oximeter/producer" }
3131
p256 = "0.9.0"
3232
percent-encoding = "2.2.0"
33-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
34-
propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "e58937fea67aca6bc2d37a3cc50a72291328ae0e", features = [ "generated-migration" ] }
33+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
34+
propolis-client = { git = "https://github.com/oxidecomputer/propolis", rev = "b596e72b6b93bc412d675358f782ae7d53f8bf7a", features = [ "generated-migration" ] }
3535
rand = { version = "0.8.5", features = ["getrandom"] }
3636
reqwest = { version = "0.11.13", default-features = false, features = ["rustls-tls", "stream"] }
3737
schemars = { version = "0.8.10", features = [ "chrono", "uuid1" ] }

wicketd-client/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ edition = "2021"
55
license = "MPL-2.0"
66

77
[dependencies]
8-
progenitor = { git = "https://github.com/oxidecomputer/progenitor" }
8+
progenitor = { git = "https://github.com/oxidecomputer/progenitor", branch = "main" }
99
reqwest = { version = "0.11.13", default-features = false, features = ["rustls-tls", "stream"] }
1010
schemars = "0.8"
1111

0 commit comments

Comments
 (0)