Package materialize
Package materialize
is the top-level Python package for Materialize, Inc.
While the primary product, materialized, is written in Rust, various demos and build tools are written in Python. This package enables the sharing of code between those scripts.
Consider writing additional Python code when:
-
You are writing scripts intended to be run by users of Materialize, not developers, e.g. automation for a complicated demo. We can reasonably ask users to install Python 3.6+. A Rust toolchain is a much bigger ask.
-
You are about to write a large Bash script.
-
You've already written a Bash script whose complexity and maintainability has deteriorated as the script's responsibilities have grown.
Expand source code Browse git
# Copyright Materialize, Inc. and contributors. All rights reserved.
#
# Use of this software is governed by the Business Source License
# included in the LICENSE file at the root of this repository.
#
# As of the Change Date specified in that file, in accordance with
# the Business Source License, use of this software will be governed
# by the Apache License, Version 2.0.
"""Package `materialize` is the top-level Python package for Materialize, Inc.
While the primary product, [materialized], is written in Rust, various demos and
build tools are written in Python. This package enables the sharing of code
between those scripts.
Consider writing additional Python code when:
* You are writing scripts intended to be run by users of Materialize, not
developers, e.g. automation for a complicated demo. We can reasonably ask
users to install Python 3.6+. A Rust toolchain is a much bigger ask.
* You are about to write a large Bash script.
* You've already written a Bash script whose complexity and maintainability
has deteriorated as the script's responsibilities have grown.
[materialized]: https://dev.materialize.com/api/rust/materialized/index.html
"""
import os
from pathlib import Path
MZ_ROOT = Path(os.environ["MZ_ROOT"])
"""The absolute path to the root of the Materialize repository."""
Sub-modules
materialize.benches
materialize.build_context
-
Build context providing a partial facade to git utilities and buildkite utilities.
materialize.buildkite
-
Buildkite utilities.
materialize.buildkite_insights
materialize.cargo
-
A pure Python metadata parser for Cargo, Rust's package manager …
materialize.checks
materialize.ci_util
-
Utility functions only useful in CI.
materialize.cli
-
Package
materialize.cli
describes the command line interface to the materialize package … materialize.cloudtest
materialize.cut-release
-
Cut a new release and push it to the Materialize repo
materialize.data_ingest
materialize.deb
-
Debian packaging utilities.
materialize.docker
-
Docker utilities.
materialize.elf
materialize.feature_benchmark
materialize.file_util
-
File utilities.
materialize.git
-
Git utilities.
materialize.lint
materialize.mysql_util
materialize.mz_version
-
Version types
materialize.mzbuild
-
The implementation of the mzbuild system for Docker images …
materialize.mzcompose
-
The implementation of the mzcompose system for Docker compositions …
materialize.mzexplore
materialize.optbench
materialize.output_consistency
materialize.parallel_workload
materialize.postgres_consistency
materialize.query_fitness
materialize.rustc_flags
materialize.scalability
materialize.scratch
-
Utilities for launching and interacting with scratch EC2 instances.
materialize.setup
materialize.spawn
-
Utilities for spawning processes …
materialize.sqlsmith
materialize.terminal
-
Terminal utilities.
materialize.ui
-
Utilities for interacting with humans.
materialize.util
-
Various utilities
materialize.version_ancestor_overrides
materialize.version_consistency
materialize.version_list
materialize.xcompile
-
Support for cross-compiling to Linux.
materialize.zippy
Global variables
var MZ_ROOT
-
The absolute path to the root of the Materialize repository.