2018-12-17 15:40:11 -06:00
# https://github.com/sagiegurari/cargo-make#automatically-extend-workspace-makefile
[ env ]
CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = "true"
2019-11-15 14:44:24 -06:00
CARGO_MAKE_CARGO_ALL_FEATURES = ""
2021-07-08 01:47:16 -05:00
CARGO_MAKE_WORKSPACE_SKIP_MEMBERS = "integration_tests/*;examples/*;juniper_benchmarks;"
2018-12-17 15:40:11 -06:00
2019-05-12 01:51:28 -05:00
# Run `RELEASE_LEVEL=(patch|major|minor) cargo make release` to push a new release of every crate.
#
2021-07-08 01:47:16 -05:00
# Run `RELEASE_LEVEL=(patch|major|minor) CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS="crate1;crate2;" cargo make release`
# to push a new release of a subset of crates.
2018-12-17 15:40:11 -06:00
[ tasks . release ]
2019-05-12 01:51:28 -05:00
condition = { env_set = [ "RELEASE_LEVEL" ] }
command = "cargo-release"
2022-01-27 01:11:17 -06:00
args = [ "release" , "--config" , "${CARGO_MAKE_WORKING_DIRECTORY}/../_build/release.toml" , "--execute" , "${RELEASE_LEVEL}" ]
2018-12-17 15:40:11 -06:00
2019-05-12 01:51:28 -05:00
# Run `RELEASE_LEVEL=(patch|major|minor) cargo make release-dry-run` to do a dry run.
#
2021-07-08 01:47:16 -05:00
# Run `RELEASE_LEVEL=(patch|major|minor) CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS="crate1;crate2;" cargo make release-dry-run`
# to do a dry run of a subset of crates.
2018-12-17 15:40:11 -06:00
[ tasks . release-dry-run ]
2019-05-12 01:51:28 -05:00
condition = { env_set = [ "RELEASE_LEVEL" ] }
2018-12-17 15:40:11 -06:00
description = "Run `cargo-release --dry-run` for every crate"
2019-05-12 01:51:28 -05:00
command = "cargo-release"
2022-01-27 01:11:17 -06:00
args = [ "release" , "--config" , "${CARGO_MAKE_WORKING_DIRECTORY}/../_build/release.toml" , "--no-confirm" , "--no-publish" , "--no-push" , "--no-tag" , "${RELEASE_LEVEL}" ]
2019-05-12 01:51:28 -05:00
2021-07-08 01:47:16 -05:00
# Run `RELEASE_LEVEL=(patch|major|minor) cargo make release-local-test` to actually make changes locally but
2019-05-12 01:51:28 -05:00
# not push them up to crates.io or Github.
#
2021-07-08 01:47:16 -05:00
# Run `RELEASE_LEVEL=(patch|major|minor) CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS="crate1;crate2;" cargo make release-local-test` to actually make changes locally but
# not push some crates up to crates.io or Github.
2019-05-12 01:51:28 -05:00
[ tasks . release-local-test ]
condition = { env_set = [ "RELEASE_LEVEL" ] }
description = "Run `cargo-release` for every crate, but only make changes locally"
command = "cargo-release"
2022-01-27 01:11:17 -06:00
args = [ "release" , "--config" , "${CARGO_MAKE_WORKING_DIRECTORY}/../_build/release.toml" , "--no-confirm" , "${RELEASE_LEVEL}" ]