{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=ashutoshd/find-cheapest-instance-for-workload@0.1.0","method":"GET","rel":"https://rote.dev/rels/bootstrap-and-run","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"inspect":{"command":"rote play inspect https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0","effect":"read-only"},"installCliOnly":{"effect":"installs the rote CLI, nothing else","href":"https://play.modiqo.ai/install","method":"GET","rel":"https://rote.dev/rels/install-cli","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"run":{"command":"rote play run https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"Give it a CPU and memory shape and it names the cheapest EC2 instance type that actually fits, with the full pricing ladder underneath: on-demand, spot with its published interruption band, and one and three year reserved. Kubernetes quantities are parsed properly, so 1500m is 1.5 vCPU and 4Gi is 4 GiB while 4G is 3.73 GiB, which is the arithmetic that produces confidently wrong dollars when a tool gets it casually wrong. Point it at a manifest or a rendered chart and it sums the resources.requests it finds instead. Every candidate reports stranded capacity, the vCPU and memory you pay for and cannot use, so a memory-shaped workload is never handed a compute-family box just because the hourly rate looked lower. A burstable type is flagged rather than silently recommended, because its vCPU is credit-metered and throttles under sustained load, and the cheapest sustained-throughput alternative is priced beside it. It also reports pool depth: how many instance types in that region satisfy the requirement at all.","distribution":{"digest":"sha256:c2ff996a444c2cd9982eb7fa85c4128b45238be3d3e67c524fe25e0852d41ebc","mediaType":"application/vnd.modiqo.rote-flow","size":11286,"verifiedBy":"rote verifies the downloaded archive against this digest before it runs"},"effects":{"credentialsProvidedBy":"runner","credentialsRemainLocal":true,"declaredWrites":[],"publisherReceivesCredentials":false},"id":"https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0","inputPolicy":{"optionalWithDefault":"show_default_and_accept_override","optionalWithoutDefault":"omit_unless_supplied","required":"ask","secrets":"collect_locally_outside_conversation"},"links":{"docs":"https://rote.dev","page":"https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0.json"},"name":"find-cheapest-instance-for-workload","owner":{"kind":"user","slug":"ashutoshd"},"parameters":[{"default":"2","description":"vCPU required. Accepts Kubernetes millicores such as 1500m.","example":"1500m","input":{"allowCustom":true,"choices":[],"label":"Cpu"},"name":"cpu","required":false,"type":"string"},{"default":"4Gi","description":"Memory required. Gi and Mi are binary, G and M are decimal, a bare number is bytes.","example":"8Gi","input":{"allowCustom":true,"choices":[],"label":"Memory"},"name":"memory","required":false,"type":"string"},{"default":"us-east-1","description":"AWS region whose public rate card is priced","example":"eu-west-1","input":{"allowCustom":true,"choices":[],"label":"Region"},"name":"region","required":false,"type":"string"},{"description":"Optional path to a manifest or rendered chart whose resources.requests are summed instead","example":"./deployment.yaml","input":{"allowCustom":true,"choices":[],"label":"Manifest"},"name":"manifest","required":false,"type":"string"},{"default":"any","description":"Restrict the answer to an architecture","example":"arm","input":{"allowCustom":false,"choices":[{"label":"any","value":"any"},{"label":"x86","value":"x86"},{"label":"arm","value":"arm"}],"label":"Arch"},"name":"arch","required":false,"type":"string","validValues":["any","x86","arm"]},{"default":"1","description":"Multiply the requirement by this replica count before fitting","example":"3","input":{"allowCustom":true,"choices":[],"label":"Replicas"},"name":"replicas","required":false,"type":"string"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0 --json","effect":"read-only"},"step":1,"type":"inspect_local_readiness"},{"references":["/parameters"],"step":2,"type":"collect_parameters"},{"references":["/parameters","/requirements","/effects"],"step":3,"type":"review"},{"consentBoundary":"the user approves the exact play and parameter values","references":["/parameters","/requirements","/effects"],"step":4,"type":"obtain_run_consent"},{"action":{"command":"rote play run https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0","headlessCommandTemplate":"rote play run https://play.modiqo.ai/ashutoshd/find-cheapest-instance-for-workload@0.1.0 <name=value...> --yes"},"preservesAcquisitionBoundaries":["adapter_selection","oauth_dcr","google_discovery","static_token_setup","runtime_security_checks"],"requiresConsent":true,"step":5,"type":"run"}],"producedBy":{"roteVersion":"0.79.0"},"publishedAt":"2026-09-03T12:12:13.348319+00:00","reference":"ashutoshd/find-cheapest-instance-for-workload@0.1.0","requirements":{"adapters":[],"browser":{"dependencies":[],"runtime":false,"signIn":false},"localTools":["python3"],"roteCli":{"minimumVersion":"0.62.0"},"sessions":false},"resolution":"pinned","schema":"rote.play.v1","stats":{"downloads":4,"installs":0},"steps":{"count":3,"names":["fetch_pricing","fit_and_rank","parse_requirement"]},"title":"find-cheapest-instance-for-workload","type":"play","version":"0.1.0","visibility":"public"}