Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
c1db12e
mvp
sjwiesman Nov 24, 2025
e49cd35
parse unit tests
sjwiesman Nov 24, 2025
0c2f47c
pull profile loading into main
sjwiesman Nov 24, 2025
e74eb57
inline tests
sjwiesman Nov 24, 2025
ffb6f40
gen-data-contracts
sjwiesman Nov 24, 2025
fc50eef
offline typechecking via docker
sjwiesman Nov 24, 2025
e5e2edb
dockerize daemon
sjwiesman Nov 26, 2025
9e04b76
partial deployments
sjwiesman Nov 26, 2025
4c072d6
swap
sjwiesman Nov 26, 2025
9ee44a4
clippy --fix
sjwiesman Nov 28, 2025
9fe2d6d
datalog style algo
sjwiesman Nov 30, 2025
87f1f30
better change detection
sjwiesman Nov 30, 2025
f1ea7e6
fix lints and error message
sjwiesman Nov 30, 2025
586a84f
suppress logging
sjwiesman Nov 30, 2025
7f74cf0
clean up
sjwiesman Nov 30, 2025
0b4749b
add introspection apis
sjwiesman Nov 30, 2025
e0e090c
track clusters based on id
sjwiesman Nov 30, 2025
366a893
add ready command
sjwiesman Dec 1, 2025
9d38da7
require hydration on swap
sjwiesman Dec 1, 2025
61e138f
add rollback to stage
sjwiesman Dec 1, 2025
53dea82
add eager validation
sjwiesman Dec 1, 2025
c37b497
fix bugs
sjwiesman Dec 3, 2025
b54de11
improve output
sjwiesman Dec 3, 2025
f85fd79
ensure seperation of compute and storage objects
sjwiesman Dec 3, 2025
2f11971
add create-tables command
sjwiesman Dec 3, 2025
244aa37
seperate out tables from compute objects
sjwiesman Dec 3, 2025
6cfb51b
cleanup history and deployments
sjwiesman Dec 4, 2025
a289527
rename environment to deploy_id
sjwiesman Dec 4, 2025
ffbdcfa
add additional metadata about deploy type
sjwiesman Dec 4, 2025
c9248d6
remove unsafe inplace apply
sjwiesman Dec 4, 2025
c71f326
cargo fmt
sjwiesman Dec 4, 2025
6d831fc
remove mod.rs module usage
sjwiesman Dec 4, 2025
26017bc
opus cleanup
sjwiesman Dec 5, 2025
6bd2fda
require simple identifiers
sjwiesman Dec 5, 2025
d214040
align ready logic with 0dt upgrades
sjwiesman Dec 5, 2025
d152c78
improve cli docs
sjwiesman Dec 5, 2025
dc8f441
fix clippy lints
sjwiesman Dec 5, 2025
de70868
fix compile
sjwiesman Dec 5, 2025
3741a35
more test coverage
sjwiesman Dec 6, 2025
9070a2c
havent committed in a bit
sjwiesman Dec 6, 2025
eeebeee
dry run
sjwiesman Dec 6, 2025
dae2946
typecheck tests
sjwiesman Dec 8, 2025
28a8beb
remove files
sjwiesman Dec 8, 2025
bf2251a
fix naming
sjwiesman Dec 8, 2025
338f625
cleanups
sjwiesman Dec 8, 2025
07959cb
copy cluster grants
sjwiesman Dec 9, 2025
6ae2059
simplify types on client
sjwiesman Dec 9, 2025
c9ef910
better typed
sjwiesman Dec 10, 2025
0ef8e6a
work with cloud and sinks part 1
sjwiesman Dec 11, 2025
84b15a9
basic sink support
sjwiesman Dec 15, 2025
04d26a2
add at time support for unit tests
sjwiesman Dec 18, 2025
aa2d38b
eagerly validate sinks
sjwiesman Dec 22, 2025
40d758d
prettier
sjwiesman Dec 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
430 changes: 396 additions & 34 deletions Cargo.lock

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ members = [
"src/mysql-util",
"src/mz",
"src/mz-debug",
"src/mz-deploy",
"src/npm",
"src/orchestrator",
"src/orchestrator-kubernetes",
Expand Down Expand Up @@ -181,6 +182,7 @@ default-members = [
"src/mysql-util",
"src/mz",
"src/mz-debug",
"src/mz-deploy",
"src/npm",
"src/orchestrator",
"src/orchestrator-kubernetes",
Expand Down
44 changes: 44 additions & 0 deletions src/mz-deploy/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
[package]
name = "mz-deploy"
description = "Deployment tool for Materialize."
version = "0.1.0"
edition.workspace = true
rust-version.workspace = true
publish = false

[lints]
workspace = true

[dependencies]
async-stream = "0.3"
async-trait = "0.1"
futures = "0.3"
mz-build-info = { path = "../build-info" }
mz-ore = { path = "../ore", default-features = false, features = ["async"] }
mz-sql-parser = { path = "../sql-parser", default-features = false }
thiserror = "2.0"
clap = { version = "4.5.23", features = ["derive", "env"] }
crossterm = "0.28"
owo-colors = "4.0"
tokio = { version = "1", features = ["full"] }
tokio-postgres = { version = "0.7", features = ["with-chrono-0_4"] }
postgres-openssl = { git = "https://github.com/MaterializeInc/rust-postgres" }
openssl = "0.10"
toml = "0.8"
serde = { version = "1.0", features = ["derive"] }
dirs = "5.0"
serde_json = "1.0.145"
sha2 = "0.10"
chrono = "0.4"
workspace-hack = { version = "0.0.0", path = "../workspace-hack", optional = true }

[dev-dependencies]
tempfile = "3.0"
testcontainers = "0.23"

[package.metadata.cargo-udeps.ignore]
normal = ["workspace-hack"]

[features]
default = ["workspace-hack", "docker-typecheck"]
docker-typecheck = []
7 changes: 7 additions & 0 deletions src/mz-deploy/ci/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
MZFROM ubuntu-base

COPY mz-deploy /usr/local/bin/

WORKDIR /workdir

ENTRYPOINT ["mz-deploy"]
4 changes: 4 additions & 0 deletions src/mz-deploy/ci/mzbuild.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
name: mz-deploy
pre-image:
- type: cargo-build
bin: mz-deploy
Loading