Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
88 changes: 45 additions & 43 deletions .config/nextest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,30 @@
# improvements or bugfixes that are present in newer versions of nextest.
nextest-version = { required = "0.9.131", recommended = "0.9.131" }

experimental = ["benchmarks", "setup-scripts"]
[experimental]
benchmarks = true
setup-scripts = true

[profile.default]
default-filter = 'all() - package(omicron-live-tests) - package(end-to-end-tests)'

[[profile.default.overrides]]
# These tests are quite slow and can hold up the run, so run them first.
filter = 'package(oximeter-db) and test(=client::tests::test_replicated) + test(test_action_failure_can_unwind)'
priority = 20

[[profile.default.overrides]]
filter = 'package(oximeter-db) and test(replicated) + package(omicron-clickhouse-admin)'
test-group = 'clickhouse-cluster'
# client::tests::test_replicated is part of this filter, but it's matched with
# the higher priority (20) first. The other tests in this group are run after
# that.
priority = 10

[[profile.default.overrides]]
# These tests can time out under heavy contention.
filter = 'binary_id(omicron-nexus::test_all) and test(::schema::)'
threads-required = 4

[[profile.default.scripts]]
# Exclude omicron-dev tests from crdb-seed as we explicitly want to simulate an
Expand All @@ -15,6 +38,10 @@ experimental = ["benchmarks", "setup-scripts"]
filter = '(rdeps(nexus-test-utils) + package(nexus-db-schema)) - package(omicron-dev) - package(omicron-live-tests)'
setup = 'crdb-seed'

[[profile.default.scripts]]
filter = 'package(omicron-clickhouse-admin)'
setup = 'clickhouse-cluster'

[profile.ci]
fail-fast = false
retries = 2
Expand All @@ -26,15 +53,28 @@ path = "junit.xml"
# output for analysis, not visualization.
flaky-fail-status = "success"

[[profile.ci.overrides]]
# `omicron-test-utils` is included in this block that uses a longer-than-normal
# timeout because under some conditions it waits for CockroachDB to shut down
# gracefully. Note that `omicron-test-utils` depends on `omicron-nexus`, so this
# is redundant, but we do this for future-proofing.
filter = 'binary_id(omicron-nexus::test_all) + rdeps(omicron-test-utils)'
# As of 2023-01-08, the slowest test in test_all takes 196s on a Ryzen 7950X.
# 900s is a good upper limit that adds a comfortable buffer.
slow-timeout = { period = '60s', terminate-after = 15 }

[profile.live-tests]
default-filter = 'package(omicron-live-tests)'

[[profile.live-tests.overrides]]
filter = 'package(omicron-live-tests)'
test-group = 'live-tests'

[scripts.setup.crdb-seed]
# Use the test profile for this executable since that's how almost all
# invocations of nextest happen.
command = 'cargo run -p crdb-seed --profile test'

[[profile.default.scripts]]
filter = 'package(omicron-clickhouse-admin)'
setup = 'clickhouse-cluster'

[scripts.setup.clickhouse-cluster]
command = 'cargo run -p clickhouse-cluster-dev'

Expand All @@ -49,41 +89,3 @@ clickhouse-cluster = { max-threads = 1 }
# live-tests operate on a more realistic, shared control plane and test
# behaviors that conflict with each other. They need to be run serially.
live-tests = { max-threads = 1 }

[profile.default]
default-filter = 'all() - package(omicron-live-tests) - package(end-to-end-tests)'

[[profile.default.overrides]]
# These tests are quite slow and can hold up the run, so run them first.
filter = 'package(oximeter-db) and test(=client::tests::test_replicated) + test(test_action_failure_can_unwind)'
priority = 20

[[profile.default.overrides]]
filter = 'package(oximeter-db) and test(replicated) + package(omicron-clickhouse-admin)'
test-group = 'clickhouse-cluster'
# client::tests::test_replicated is part of this filter, but it's matched with
# the higher priority (20) first. The other tests in this group are run after
# that.
priority = 10

[[profile.default.overrides]]
# These tests can time out under heavy contention.
filter = 'binary_id(omicron-nexus::test_all) and test(::schema::)'
threads-required = 4

[[profile.ci.overrides]]
# `omicron-test-utils` is included in this block that uses a longer-than-normal
# timeout because under some conditions it waits for CockroachDB to shut down
# gracefully. Note that `omicron-test-utils` depends on `omicron-nexus`, so this
# is redundant, but we do this for future-proofing.
filter = 'binary_id(omicron-nexus::test_all) + rdeps(omicron-test-utils)'
# As of 2023-01-08, the slowest test in test_all takes 196s on a Ryzen 7950X.
# 900s is a good upper limit that adds a comfortable buffer.
slow-timeout = { period = '60s', terminate-after = 15 }

[profile.live-tests]
default-filter = 'package(omicron-live-tests)'

[[profile.live-tests.overrides]]
filter = 'package(omicron-live-tests)'
test-group = 'live-tests'
1 change: 0 additions & 1 deletion api_identity/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
name = "api_identity"
description = "macro used for Oxide control plane resources with an identity"
version = "0.1.0"
authors = ["David Pacheco <dap@oxidecomputer.com>"]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This field is now deprecated.

edition.workspace = true
repository = "https://github.com/oxidecomputer/omicron/"
license = "MPL-2.0"
Expand Down
1 change: 0 additions & 1 deletion nexus/db-macros/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[package]
name = "db-macros"
version = "0.1.0"
authors = ["Sean Klein <sean@oxide.computer>"]
edition.workspace = true
license = "MPL-2.0"

Expand Down
1 change: 0 additions & 1 deletion oximeter/oximeter-macro-impl/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[package]
name = "oximeter-macro-impl"
version = "0.1.0"
authors = ["Benjamin Naecker <ben@oxide.computer>"]
edition.workspace = true
license = "MPL-2.0"

Expand Down
1 change: 0 additions & 1 deletion oximeter/oximeter/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[package]
name = "oximeter"
version = "0.1.0"
authors = ["Benjamin Naecker <ben@oxide.computer>"]
edition.workspace = true
license = "MPL-2.0"

Expand Down
Loading