From 02296d85a52c3cd1495f00427df980a411e522dd Mon Sep 17 00:00:00 2001 From: Zelda Hessler Date: Thu, 18 Aug 2022 13:39:33 -0500 Subject: [PATCH] update: canary-runner deps (#1639) * update: canary-runner deps * rename: use Args instead of Opt to match other CLI tools --- tools/ci-cdk/canary-runner/Cargo.lock | 239 ++++++++++-------- tools/ci-cdk/canary-runner/Cargo.toml | 10 +- .../ci-cdk/canary-runner/src/build_bundle.rs | 28 +- .../canary-runner/src/generate_matrix.rs | 4 +- tools/ci-cdk/canary-runner/src/main.rs | 18 +- tools/ci-cdk/canary-runner/src/run.rs | 10 +- 6 files changed, 174 insertions(+), 135 deletions(-) diff --git a/tools/ci-cdk/canary-runner/Cargo.lock b/tools/ci-cdk/canary-runner/Cargo.lock index 44f71f28e..dc3e65808 100644 --- a/tools/ci-cdk/canary-runner/Cargo.lock +++ b/tools/ci-cdk/canary-runner/Cargo.lock @@ -73,9 +73,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "aws-config" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11a8c971b0cb0484fc9436a291a44503b95141edc36ce7a6af6b6d7a06a02ab0" +checksum = "c2a3ad9e793335d75b2d2faad583487efcc0df9154aff06f299a5c1fc8795698" dependencies = [ "aws-http", "aws-sdk-sso", @@ -87,11 +87,12 @@ dependencies = [ "aws-smithy-json", "aws-smithy-types", "aws-types", - "bytes 1.2.0", + "bytes", "hex", "http", "hyper", "ring", + "time 0.3.11", "tokio", "tower", "tracing", @@ -100,9 +101,9 @@ dependencies = [ [[package]] name = "aws-endpoint" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bc956f415dda77215372e5bc751a2463d1f9a1ec34edf3edc6c0ff67e5c8e43" +checksum = "8bd4e9dad553017821ee529f186e033700e8d61dd5c4b60066b4d8fe805b8cfc" dependencies = [ "aws-smithy-http", "aws-types", @@ -113,14 +114,14 @@ dependencies = [ [[package]] name = "aws-http" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a0d98a1d606aa24554e604f220878db4aa3b525b72f88798524497cc3867fc6" +checksum = "2ef5a579a51d352b628b76f4855ba716be686305e5e59970c476d1ae2214e90d" dependencies = [ "aws-smithy-http", "aws-smithy-types", "aws-types", - "bytes 1.2.0", + "bytes", "http", "http-body", "lazy_static", @@ -131,9 +132,9 @@ dependencies = [ [[package]] name = "aws-sdk-cloudwatch" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c81395a9437f1633f01392491bded10b6affbce00fdf75dec59c6093256ad0ae" +checksum = "ab5b3d07682c55fa19d9006ef6c4739ea59d8410955b67449bf208c61ffdf834" dependencies = [ "aws-endpoint", "aws-http", @@ -146,7 +147,7 @@ dependencies = [ "aws-smithy-types", "aws-smithy-xml", "aws-types", - "bytes 1.2.0", + "bytes", "http", "tokio-stream", "tower", @@ -154,9 +155,9 @@ dependencies = [ [[package]] name = "aws-sdk-lambda" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b21368f7a1b89d64d33c1f2eade66e279b642ea44bd9251574034b349de9c88" +checksum = "72f4cd6001d23ff50c00caf6079e1666060215914f8801a49f614252bc04883d" dependencies = [ "aws-endpoint", "aws-http", @@ -168,7 +169,7 @@ dependencies = [ "aws-smithy-json", "aws-smithy-types", "aws-types", - "bytes 1.2.0", + "bytes", "http", "tokio-stream", "tower", @@ -176,15 +177,16 @@ dependencies = [ [[package]] name = "aws-sdk-s3" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f6e22f5641db610235c0c5fb768b5925a6317b16b12e4ab5a625cfed176f8a2" +checksum = "0d2c19b69297f16b3f18936e363f954e7504c23a4a0dc3f2833712313c09c2aa" dependencies = [ "aws-endpoint", "aws-http", "aws-sig-auth", "aws-sigv4", "aws-smithy-async", + "aws-smithy-checksums", "aws-smithy-client", "aws-smithy-eventstream", "aws-smithy-http", @@ -192,18 +194,20 @@ dependencies = [ "aws-smithy-types", "aws-smithy-xml", "aws-types", - "bytes 1.2.0", + "bytes", + "bytes-utils", "http", - "md-5", + "http-body", "tokio-stream", "tower", + "tracing", ] [[package]] name = "aws-sdk-sso" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baa0c66fab12976065403cf4cafacffe76afa91d0da335d195af379d4223d235" +checksum = "f014b8ad3178b414bf732b36741325ef659fc40752f8c292400fb7c4ecb7fdd0" dependencies = [ "aws-endpoint", "aws-http", @@ -215,7 +219,7 @@ dependencies = [ "aws-smithy-json", "aws-smithy-types", "aws-types", - "bytes 1.2.0", + "bytes", "http", "tokio-stream", "tower", @@ -223,9 +227,9 @@ dependencies = [ [[package]] name = "aws-sdk-sts" -version = "0.16.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "048037cdfd7f42fb29b5f969c7f639b4b7eac00e8f911e4eac4f89fb7b3a0500" +checksum = "d37e45fdce84327c69fb924b9188fd889056c6afafbd494e8dd0daa400f9c082" dependencies = [ "aws-endpoint", "aws-http", @@ -238,16 +242,16 @@ dependencies = [ "aws-smithy-types", "aws-smithy-xml", "aws-types", - "bytes 1.2.0", + "bytes", "http", "tower", ] [[package]] name = "aws-sig-auth" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8386fc0d218dbf2011f65bd8300d21ba98603fd150b962f61239be8b02d1fc6" +checksum = "6530e72945c11439e9b3c423c95a656a233d73c3a7d4acaf9789048e1bdf7da7" dependencies = [ "aws-sigv4", "aws-smithy-eventstream", @@ -259,13 +263,13 @@ dependencies = [ [[package]] name = "aws-sigv4" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd866926c2c4978210bcb01d7d1b431c794f0c23ca9ee1e420204b018836b5fb" +checksum = "6351c3ba468b04bd819f64ea53538f5f53e3d6b366b27deabee41e73c9edb3af" dependencies = [ "aws-smithy-eventstream", "aws-smithy-http", - "bytes 1.2.0", + "bytes", "form_urlencoded", "hex", "http", @@ -279,9 +283,9 @@ dependencies = [ [[package]] name = "aws-smithy-async" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb59cfdd21143006c01b9ca4dc4a9190b8c50c2ef831f9eb36f54f69efa42f1" +checksum = "86fc23ad8d050c241bdbfa74ae360be94a844ace8e218f64a2b2de77bfa9a707" dependencies = [ "futures-util", "pin-project-lite", @@ -289,17 +293,38 @@ dependencies = [ "tokio-stream", ] +[[package]] +name = "aws-smithy-checksums" +version = "0.47.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dd674df030b337a84eb67539db048676c691d9c88f0c54cf7748da11836cfd8" +dependencies = [ + "aws-smithy-http", + "aws-smithy-types", + "bytes", + "crc32c", + "crc32fast", + "hex", + "http", + "http-body", + "md-5", + "pin-project-lite", + "sha1", + "sha2", + "tracing", +] + [[package]] name = "aws-smithy-client" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44243329ba8618474c3b7f396de281f175ae172dd515b3d35648671a3cf51871" +checksum = "2e147b157f49ce77f2a86ec693a14c84b2441fa28be58ffb2febb77d5726c934" dependencies = [ "aws-smithy-async", "aws-smithy-http", "aws-smithy-http-tower", "aws-smithy-types", - "bytes 1.2.0", + "bytes", "fastrand", "http", "http-body", @@ -314,24 +339,24 @@ dependencies = [ [[package]] name = "aws-smithy-eventstream" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e69ee49b9ed0ef080a6e18c08644521d3026029eb65dfc8c694315e1ae3118bc" +checksum = "da29e67a0b90a2bc5f2bd0a06fd43e728de62e02048879c15f646a3edf8db012" dependencies = [ "aws-smithy-types", - "bytes 1.2.0", + "bytes", "crc32fast", ] [[package]] name = "aws-smithy-http" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fba78f69a5bbe7ac1826389304c67b789032d813574e78f9a2d450634277f833" +checksum = "5cc1af50eac644ab6f58e5bae29328ba3092851fc2ce648ad139134699b2b66f" dependencies = [ "aws-smithy-eventstream", "aws-smithy-types", - "bytes 1.2.0", + "bytes", "bytes-utils", "futures-core", "http", @@ -347,12 +372,12 @@ dependencies = [ [[package]] name = "aws-smithy-http-tower" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff8a512d68350561e901626baa08af9491cfbd54596201b84b4da846a59e4da3" +checksum = "a1bf4c4664dff2febf91f8796505c5bc8f38a0bff0d1397d1d3fdda17bd5c5d1" dependencies = [ "aws-smithy-http", - "bytes 1.2.0", + "bytes", "http", "http-body", "pin-project-lite", @@ -362,18 +387,18 @@ dependencies = [ [[package]] name = "aws-smithy-json" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b7633698853aae80bd8b26866531420138eca91ea4620735d20b0537c93c2e" +checksum = "0e6ebc76c3c108dd2a96506bf47dc31f75420811a19f1a09907524d1451789d2" dependencies = [ "aws-smithy-types", ] [[package]] name = "aws-smithy-query" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95a94b5a8cc94a85ccbff89eb7bc80dc135ede02847a73d68c04ac2a3e4cf6b7" +checksum = "2956f1385c4daa883907a2c81d32256af8f95834c9de1bc0613fa68db63b88c4" dependencies = [ "aws-smithy-types", "urlencoding", @@ -381,11 +406,11 @@ dependencies = [ [[package]] name = "aws-smithy-types" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d230d281653de22fb0e9c7c74d18d724a39d7148e2165b1e760060064c4967c0" +checksum = "352fb335ec1d57160a17a13e87aaa0a172ab780ddf58bfc85caedd3b7e47caed" dependencies = [ - "itoa 1.0.2", + "itoa", "num-integer", "ryu", "time 0.3.11", @@ -393,18 +418,18 @@ dependencies = [ [[package]] name = "aws-smithy-xml" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4aacaf6c0fa549ebe5d9daa96233b8635965721367ee7c69effc8d8078842df3" +checksum = "6cf2807fa715a5a3296feffb06ce45252bd0dfd48f52838128c48fb339ddbf5c" dependencies = [ "xmlparser", ] [[package]] name = "aws-types" -version = "0.46.0" +version = "0.47.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb54f097516352475a0159c9355f8b4737c54044538a4d9aca4d376ef2361ccc" +checksum = "8140b89d76f67be2c136d7393e7e6d8edd65424eb58214839efbf4a2e4f7e8a3" dependencies = [ "aws-smithy-async", "aws-smithy-client", @@ -457,15 +482,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" - -[[package]] -name = "bytes" -version = "1.2.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0b3de4a0c5e67e16066a0715723abd91edc2f9001d09c46e1dca929351e130e" +checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" [[package]] name = "bytes-utils" @@ -473,7 +492,7 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1934a3ef9cac8efde4966a92781e77713e1ba329f1d42e446c7d7eba340d8ef1" dependencies = [ - "bytes 1.2.0", + "bytes", "either", ] @@ -533,16 +552,16 @@ dependencies = [ [[package]] name = "clap" -version = "3.1.18" +version = "3.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2dbdf4bdacb33466e854ce889eee8dfd5729abf7ccd7664d0a2d60cd384440b" +checksum = "29e724a68d9319343bb3328c9cc2dfde263f4b3142ee1059a9980580171c954b" dependencies = [ "atty", "bitflags", "clap_derive", "clap_lex", "indexmap", - "lazy_static", + "once_cell", "strsim", "termcolor", "textwrap", @@ -550,9 +569,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "3.1.18" +version = "3.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25320346e922cffe59c0bbc5410c8d8784509efb321488971081313cb1e1a33c" +checksum = "13547f7012c01ab4a0e8f8967730ada8f9fdf419e8b6c792788f39cf4e46eefa" dependencies = [ "heck", "proc-macro-error", @@ -595,6 +614,15 @@ dependencies = [ "libc", ] +[[package]] +name = "crc32c" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dfea2db42e9927a3845fb268a10a72faed6d416065f77873f05e411457c363e" +dependencies = [ + "rustc_version", +] + [[package]] name = "crc32fast" version = "1.3.2" @@ -856,7 +884,7 @@ version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57" dependencies = [ - "bytes 1.2.0", + "bytes", "fnv", "futures-core", "futures-sink", @@ -902,9 +930,9 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" dependencies = [ - "bytes 1.2.0", + "bytes", "fnv", - "itoa 1.0.2", + "itoa", ] [[package]] @@ -913,16 +941,16 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ - "bytes 1.2.0", + "bytes", "http", "pin-project-lite", ] [[package]] name = "httparse" -version = "1.3.6" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc35c995b9d93ec174cf9a27d425c7892722101e14993cd227fdb51d70cf9589" +checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c" [[package]] name = "httpdate" @@ -930,13 +958,19 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" +[[package]] +name = "httpdate" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" + [[package]] name = "hyper" -version = "0.14.5" +version = "0.14.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bf09f61b52cfcf4c00de50df88ae423d6c02354e385a86341133b5338630ad1" +checksum = "02c929dc5c39e335a03c405292728118860721b10190d98c2a0f0efd5baafbac" dependencies = [ - "bytes 1.2.0", + "bytes", "futures-channel", "futures-core", "futures-util", @@ -944,9 +978,9 @@ dependencies = [ "http", "http-body", "httparse", - "httpdate", - "itoa 0.4.8", - "pin-project", + "httpdate 1.0.2", + "itoa", + "pin-project-lite", "socket2", "tokio", "tower-service", @@ -990,7 +1024,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" dependencies = [ - "bytes 1.2.0", + "bytes", "hyper", "native-tls", "tokio", @@ -999,17 +1033,15 @@ dependencies = [ [[package]] name = "hyperx" -version = "1.2.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2adce67e2c21cd95288ae3d9f2bbb2762cf17c03744628d49679f315ed1e2e58" +checksum = "5617e92fc2f2501c3e2bc6ce547cad841adba2bae5b921c7e52510beca6d084c" dependencies = [ "base64 0.13.0", - "bytes 0.5.6", + "bytes", "http", - "httparse", - "httpdate", + "httpdate 0.3.2", "language-tags", - "log", "mime", "percent-encoding", "unicase", @@ -1051,12 +1083,6 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" -[[package]] -name = "itoa" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" - [[package]] name = "itoa" version = "1.0.2" @@ -1088,9 +1114,9 @@ dependencies = [ [[package]] name = "language-tags" -version = "0.2.2" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" +checksum = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388" [[package]] name = "lazy_static" @@ -1592,7 +1618,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46a1f7aa4f35e5e8b4160449f51afc758f0ce6454315a9fa7d0d113e958c41eb" dependencies = [ "base64 0.13.0", - "bytes 1.2.0", + "bytes", "encoding_rs", "futures-core", "futures-util", @@ -1794,7 +1820,7 @@ version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1847b767a3d62d95cbf3d8a9f0e421cf57a0d8aa4f411d4b16525afb0284d4ed" dependencies = [ - "bytes 1.2.0", + "bytes", "chrono", "dyn-clone", "schemars_derive", @@ -1908,7 +1934,7 @@ version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7" dependencies = [ - "itoa 1.0.2", + "itoa", "ryu", "serde", ] @@ -1920,7 +1946,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" dependencies = [ "form_urlencoded", - "itoa 1.0.2", + "itoa", "ryu", "serde", ] @@ -1936,6 +1962,17 @@ dependencies = [ "digest", ] +[[package]] +name = "sha2" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55deaec60f81eefe3cce0dc50bda92d6d8e88f2a27df7c5033b42afeb1ed2676" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + [[package]] name = "sharded-slab" version = "0.1.4" @@ -2140,7 +2177,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a8325f63a7d4774dd041e363b2409ed1c5cbbd0f867795e661df066b2b0a581" dependencies = [ "autocfg", - "bytes 1.2.0", + "bytes", "libc", "memchr", "mio", @@ -2214,7 +2251,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc463cd8deddc3770d20f9852143d50bf6094e640b485cb2e189a2099085ff45" dependencies = [ - "bytes 1.2.0", + "bytes", "futures-core", "futures-sink", "pin-project-lite", diff --git a/tools/ci-cdk/canary-runner/Cargo.toml b/tools/ci-cdk/canary-runner/Cargo.toml index ab2615406..e356f40c2 100644 --- a/tools/ci-cdk/canary-runner/Cargo.toml +++ b/tools/ci-cdk/canary-runner/Cargo.toml @@ -12,12 +12,12 @@ publish = false [dependencies] anyhow = "1" async-trait = "0.1.56" -aws-config = "0.46" -aws-sdk-cloudwatch = "0.16" -aws-sdk-lambda = "0.16" -aws-sdk-s3 = "0.16" +aws-config = "0.47.0" +aws-sdk-cloudwatch = "0.17.0" +aws-sdk-lambda = "0.17.0" +aws-sdk-s3 = "0.17.0" base64 = "0.13" -clap = { version = "~3.1.18", features = ["derive"] } +clap = { version = "3.2.17", features = ["derive"] } hex = "0.4.3" lazy_static = "1" octorust = "0.1.37" diff --git a/tools/ci-cdk/canary-runner/src/build_bundle.rs b/tools/ci-cdk/canary-runner/src/build_bundle.rs index 39f1e84de..7a47c96ba 100644 --- a/tools/ci-cdk/canary-runner/src/build_bundle.rs +++ b/tools/ci-cdk/canary-runner/src/build_bundle.rs @@ -68,7 +68,7 @@ lazy_static! { } #[derive(Debug, Parser, Eq, PartialEq)] -pub struct BuildBundleOpt { +pub struct BuildBundleArgs { /// Canary Lambda source code path (defaults to current directory) #[clap(long)] pub canary_path: Option, @@ -181,7 +181,7 @@ fn sha1_file(path: &Path) -> Result { Ok(hex::encode(hasher.finalize())) } -pub async fn build_bundle(opt: BuildBundleOpt) -> Result> { +pub async fn build_bundle(opt: BuildBundleArgs) -> Result> { let canary_path = opt .canary_path .unwrap_or_else(|| std::env::current_dir().expect("current dir")); @@ -252,20 +252,20 @@ pub async fn build_bundle(opt: BuildBundleOpt) -> Result> { #[cfg(test)] mod tests { use super::*; - use crate::Opt; + use crate::Args; use clap::Parser; use smithy_rs_tool_common::package::PackageCategory; use smithy_rs_tool_common::versions_manifest::CrateVersion; #[test] fn test_arg_parsing() { - assert!(Opt::try_parse_from(["./canary-runner", "build-bundle"]).is_err()); + assert!(Args::try_parse_from(["./canary-runner", "build-bundle"]).is_err()); assert!( - Opt::try_parse_from(["./canary-runner", "build-bundle", "--sdk-release-tag"]).is_err() + Args::try_parse_from(["./canary-runner", "build-bundle", "--sdk-release-tag"]).is_err() ); - assert!(Opt::try_parse_from(["./canary-runner", "build-bundle", "--sdk-path"]).is_err()); - assert!(Opt::try_parse_from(["./canary-runner", "build-bundle", "--musl"]).is_err()); - assert!(Opt::try_parse_from([ + assert!(Args::try_parse_from(["./canary-runner", "build-bundle", "--sdk-path"]).is_err()); + assert!(Args::try_parse_from(["./canary-runner", "build-bundle", "--musl"]).is_err()); + assert!(Args::try_parse_from([ "./canary-runner", "build-bundle", "--sdk-release-tag", @@ -275,14 +275,14 @@ mod tests { ]) .is_err()); assert_eq!( - Opt::BuildBundle(BuildBundleOpt { + Args::BuildBundle(BuildBundleArgs { canary_path: None, sdk_release_tag: Some(ReleaseTag::from_str("release-2022-07-26").unwrap()), sdk_path: None, musl: false, manifest_only: false, }), - Opt::try_parse_from([ + Args::try_parse_from([ "./canary-runner", "build-bundle", "--sdk-release-tag", @@ -292,14 +292,14 @@ mod tests { .expect("valid args") ); assert_eq!( - Opt::BuildBundle(BuildBundleOpt { + Args::BuildBundle(BuildBundleArgs { canary_path: Some("some-canary-path".into()), sdk_release_tag: None, sdk_path: Some("some-sdk-path".into()), musl: false, manifest_only: false, }), - Opt::try_parse_from([ + Args::try_parse_from([ "./canary-runner", "build-bundle", "--sdk-path", @@ -311,14 +311,14 @@ mod tests { .expect("valid args") ); assert_eq!( - Opt::BuildBundle(BuildBundleOpt { + Args::BuildBundle(BuildBundleArgs { canary_path: None, sdk_release_tag: Some(ReleaseTag::from_str("release-2022-07-26").unwrap()), sdk_path: None, musl: true, manifest_only: true, }), - Opt::try_parse_from([ + Args::try_parse_from([ "./canary-runner", "build-bundle", "--sdk-release-tag", diff --git a/tools/ci-cdk/canary-runner/src/generate_matrix.rs b/tools/ci-cdk/canary-runner/src/generate_matrix.rs index cd14c063f..0b1dc589e 100644 --- a/tools/ci-cdk/canary-runner/src/generate_matrix.rs +++ b/tools/ci-cdk/canary-runner/src/generate_matrix.rs @@ -19,7 +19,7 @@ const KNOWN_YANKED_RELEASE_TAGS: &[&str] = &[ ]; #[derive(Debug, Parser, Eq, PartialEq)] -pub struct GenerateMatrixOpt { +pub struct GenerateMatrixArgs { /// Number of previous SDK versions to run the canary against #[clap(short, long)] sdk_versions: u8, @@ -99,7 +99,7 @@ async fn retrieve_latest_release_tags( .collect()) } -pub async fn generate_matrix(opt: GenerateMatrixOpt) -> Result<()> { +pub async fn generate_matrix(opt: GenerateMatrixArgs) -> Result<()> { let retrieve_releases = GitHubRetrieveReleases::new()?; let sdk_release_tags = retrieve_latest_release_tags(&retrieve_releases, opt.sdk_versions as usize).await?; diff --git a/tools/ci-cdk/canary-runner/src/main.rs b/tools/ci-cdk/canary-runner/src/main.rs index 940b3c177..458acd726 100644 --- a/tools/ci-cdk/canary-runner/src/main.rs +++ b/tools/ci-cdk/canary-runner/src/main.rs @@ -12,18 +12,18 @@ mod run; #[derive(Debug, Parser, Eq, PartialEq)] #[clap(version, about)] -pub(crate) enum Opt { +pub(crate) enum Args { /// Builds the canary Lambda bundle #[clap(alias = "build-bundle")] - BuildBundle(build_bundle::BuildBundleOpt), + BuildBundle(build_bundle::BuildBundleArgs), /// Generates a GitHub Actions test matrix for the canary #[clap(alias = "generate-matrix")] - GenerateMatrix(generate_matrix::GenerateMatrixOpt), + GenerateMatrix(generate_matrix::GenerateMatrixArgs), /// Builds, uploads, and invokes the canary as a Lambda #[clap(alias = "run")] - Run(run::RunOpt), + Run(run::RunArgs), } #[tokio::main] @@ -36,10 +36,12 @@ async fn main() -> anyhow::Result<()> { .with(tracing_subscriber::fmt::layer().with_target(false)) .init(); - let opt = Opt::parse(); + let opt = Args::parse(); match opt { - Opt::BuildBundle(subopt) => build_bundle::build_bundle(subopt).await.map(|_| ()), - Opt::GenerateMatrix(subopt) => generate_matrix::generate_matrix(subopt).await, - Opt::Run(subopt) => run::run(subopt).await, + Args::BuildBundle(subopt) => build_bundle::build_bundle(subopt).await.map(|_| ()), + Args::GenerateMatrix(subopt) => generate_matrix::generate_matrix(subopt).await, + Args::Run(subopt) => run::run(subopt).await, } } + +// Tests for individual subcommands can be found in their respective modules diff --git a/tools/ci-cdk/canary-runner/src/run.rs b/tools/ci-cdk/canary-runner/src/run.rs index a04c3ab73..747498906 100644 --- a/tools/ci-cdk/canary-runner/src/run.rs +++ b/tools/ci-cdk/canary-runner/src/run.rs @@ -14,7 +14,7 @@ // CAUTION: This subcommand will `git reset --hard` in some cases. Don't ever run // it against a smithy-rs repo that you're actively working in. -use crate::build_bundle::BuildBundleOpt; +use crate::build_bundle::BuildBundleArgs; use anyhow::{bail, Context, Result}; use aws_sdk_cloudwatch as cloudwatch; use aws_sdk_lambda as lambda; @@ -52,7 +52,7 @@ lazy_static::lazy_static! { } #[derive(Debug, Parser, Eq, PartialEq)] -pub struct RunOpt { +pub struct RunArgs { /// Version of the SDK to compile the canary against #[clap( long, @@ -102,7 +102,7 @@ struct Options { } impl Options { - fn load_from(run_opt: RunOpt) -> Result { + fn load_from(run_opt: RunArgs) -> Result { if let Some(cdk_output) = &run_opt.cdk_output { #[derive(Deserialize)] struct Inner { @@ -144,7 +144,7 @@ impl Options { } } -pub async fn run(opt: RunOpt) -> Result<()> { +pub async fn run(opt: RunArgs) -> Result<()> { let options = Options::load_from(opt)?; let start_time = SystemTime::now(); let config = aws_config::load_from_env().await; @@ -271,7 +271,7 @@ fn use_correct_revision(smithy_rs: &dyn Git, sdk_release_tag: &ReleaseTag) -> Re /// Returns the path to the compiled bundle zip file async fn build_bundle(options: &Options) -> Result { - Ok(crate::build_bundle::build_bundle(BuildBundleOpt { + Ok(crate::build_bundle::build_bundle(BuildBundleArgs { canary_path: None, sdk_release_tag: options.sdk_release_tag.clone(), sdk_path: options.sdk_path.clone(), -- GitLab