diff options
author | Pietro Albini <pietro@pietroalbini.org> | 2020-12-10 16:51:08 +0100 |
---|---|---|
committer | Pietro Albini <pietro@pietroalbini.org> | 2020-12-10 16:51:08 +0100 |
commit | 512629a8fe188ce44907624409fb31b84edf0a83 (patch) | |
tree | 149a95f35fbe6a40f5d8d6c452b1724911a0cbb8 | |
parent | 88e76e1cd1faa22b0bb469de91921ecb627ad730 (diff) | |
download | rust-installer-512629a8fe188ce44907624409fb31b84edf0a83.tar.gz |
tarball: allow choosing the compression formats to output
-rw-r--r-- | src/main.rs | 1 | ||||
-rw-r--r-- | src/main.yml | 5 | ||||
-rwxr-xr-x | test.sh | 36 |
3 files changed, 42 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs index 4e5b50d..e933dd0 100644 --- a/src/main.rs +++ b/src/main.rs @@ -88,6 +88,7 @@ fn tarball(matches: &ArgMatches<'_>) -> Result<()> { "input" => input, "output" => output, "work-dir" => work_dir, + "compression-formats" => compression_formats, }); tarballer.run().context("failed to generate tarballs")?; diff --git a/src/main.yml b/src/main.yml index c9eab6d..7b6d735 100644 --- a/src/main.yml +++ b/src/main.yml @@ -164,4 +164,9 @@ subcommands: long: work-dir takes_value: true value_name: DIR + - compression-formats: + help: Comma-separated list of compression formats to use + long: compression-formats + takes_value: true + value_name: FORMAT @@ -1301,6 +1301,42 @@ combine_compression_formats_error() { } runtest combine_compression_formats_error +tarball_compression_formats_one() { + try cp -r "${TEST_DIR}/image1" "${WORK_DIR}/image" + try sh "$S/make-tarballs.sh" \ + --input="${WORK_DIR}/image" \ + --work-dir="${WORK_DIR}" \ + --output="${OUT_DIR}/rustc" \ + --compression-formats="xz" + + try test ! -e "${OUT_DIR}/rustc.tar.gz" + try test -e "${OUT_DIR}/rustc.tar.xz" +} +runtest tarball_compression_formats_one + +tarball_compression_formats_multiple() { + try cp -r "${TEST_DIR}/image1" "${WORK_DIR}/image" + try sh "$S/make-tarballs.sh" \ + --input="${WORK_DIR}/image" \ + --work-dir="${WORK_DIR}" \ + --output="${OUT_DIR}/rustc" \ + --compression-formats="xz,gz" + + try test -e "${OUT_DIR}/rustc.tar.gz" + try test -e "${OUT_DIR}/rustc.tar.xz" +} +runtest tarball_compression_formats_multiple + +tarball_compression_formats_error() { + try cp -r "${TEST_DIR}/image1" "${WORK_DIR}/image" + expect_fail sh "$S/make-tarballs.sh" \ + --input="${WORK_DIR}/image" \ + --work-dir="${WORK_DIR}" \ + --output="${OUT_DIR}/rustc" \ + --compression-formats="xz,foobar" +} +runtest tarball_compression_formats_error + echo echo "TOTAL SUCCESS!" echo |