Questions tagged with Developer Tools
Content language: English
Sort by most recent
I am getting the following error in my Lambda logs
```
failed to patch module botocore
```
Its a Flask app deployed using Zappa. Essentially following the instructions at
* https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-python-patching.html
* https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-python-serverless.html
here is the code
```
import boto3
from aws_xray_sdk.ext.flask.middleware import XRayMiddleware
from aws_xray_sdk.core import patcher, xray_recorder
from aws_xray_sdk.core import patch_all
patch_all()
```
Modules installed are
```
aws-xray-sdk==2.11.0
boto3==1.26.69
botocore==1.29.69
```
It is successfully patching the requests package.
I want to try and resolve this as I believe my downstream calls to services like SSM and S3 are not being tracked in Xray.
Thanks for any help
Been fighting with this error in AWS console where it doesn't let me manage Lambda functions

I realise CodeCatalyst is in preview, but it would be really useful if the API could be expanded so that we can manage issues via the CLI.
As an example, I'm thinking that it would be useful for a workflow to be able to raise an issue if there was a problem with a new run, and assign it to the author of the associated commit.
This could also provide a solution to my request for manual authorisation as part of a workflow - i.e. before deploying to prod, check if a ticket exists to approve the deployment, if not create one, and if one does exist, wait until it is closed by someone in a list. This would mean we need be able to
* query if a issue exists based on id, associated commit id, or other criteria. If the issue does exists, the details of the ticket, including the issue status should be returned
* create a query
This seems like a zeitwerks load issue ... I have manually set the value in ENV same error -
Here is code block of message with trace:
```
`program:~/environment/timpdaley_2 (upgradeRails61to70) $ bin/rails db:migrate RAILS_ENV=development --trace
** Invoke db:migrate (first_time)
** Invoke db:load_config (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:load_config
** Execute db:migrate
== 20230307163758 AddServiceNameToActiveStorageBlobs: migrating ===============
-- table_exists?(:active_storage_blobs)
-> 0.0017s
-- column_exists?(:active_storage_blobs, :service_name)
-> 0.0020s
-- add_column(:active_storage_blobs, :service_name, :string)
-> 0.0014s
rails aborted!
StandardError: An error has occurred, this and all later migrations canceled:
No region was provided. Configure the `:region` option or export the region name to ENV['AWS_REGION']
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/aws-sdk-core/plugins/regional_endpoint.rb:92:in `after_initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:81:in `block in after_initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:80:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:80:in `after_initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:24:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-s3-1.119.1/lib/aws-sdk-s3/client.rb:452:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:102:in `new'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-s3-1.119.1/lib/aws-sdk-s3/resource.rb:28:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/s3_service.rb:16:in `new'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/s3_service.rb:16:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service.rb:61:in `new'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service.rb:61:in `build'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/configurator.rb:17:in `build'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/registry.rb:13:in `block in fetch'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/registry.rb:11:in `fetch'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/registry.rb:11:in `fetch'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/engine.rb:155:in `block (2 levels) in <class:Engine>'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:95:in `class_eval'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:95:in `block in execute_hook'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:85:in `with_execution_control'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:90:in `execute_hook'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:76:in `block in run_load_hooks'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:75:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:75:in `run_load_hooks'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/app/models/active_storage/blob.rb:410:in `<top (required)>'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:30:in `require'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:30:in `require'
/home/ubuntu/environment/timpdaley_2/db/migrate/20230307163758_add_service_name_to_active_storage_blobs.active_storage.rb:9:in `up'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:873:in `public_send'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:873:in `exec_migration'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:854:in `block (2 levels) in migrate'
/home/ubuntu/.rvm/rubies/ruby-3.0.0/lib/ruby/3.0.0/benchmark.rb:293:in `measure'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:853:in `block in migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:852:in `migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1046:in `migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1360:in `block in execute_migration_in_transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/database_statements.rb:316:in `transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/transactions.rb:209:in `transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1411:in `ddl_transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1359:in `execute_migration_in_transaction'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1333:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1333:in `migrate_without_lock'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1282:in `block in migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1432:in `block in with_advisory_lock'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:215:in `with_connection'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1447:in `with_advisory_lock_connection'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1428:in `with_advisory_lock'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1282:in `migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1117:in `up'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:1092:in `migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/tasks/database_tasks.rb:262:in `migrate'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/railties/databases.rake:92:in `block (2 levels) in <top (required)>'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:281:in `block in execute'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:281:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:281:in `execute'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:219:in `block in invoke_with_call_chain'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:199:in `synchronize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:199:in `invoke_with_call_chain'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/task.rb:188:in `invoke'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:160:in `invoke_task'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:116:in `block (2 levels) in top_level'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:116:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:116:in `block in top_level'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:125:in `run_with_threads'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:110:in `top_level'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/railties-7.0.4.2/lib/rails/commands/rake/rake_command.rb:24:in `block (2 levels) in perform'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/application.rb:186:in `standard_exception_handling'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/railties-7.0.4.2/lib/rails/commands/rake/rake_command.rb:24:in `block in perform'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/rake-13.0.6/lib/rake/rake_module.rb:59:in `with_application'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/railties-7.0.4.2/lib/rails/commands/rake/rake_command.rb:18:in `perform'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/railties-7.0.4.2/lib/rails/command.rb:51:in `invoke'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/railties-7.0.4.2/lib/rails/commands.rb:18:in `<top (required)>'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Caused by:
Aws::Errors::MissingRegionError: No region was provided. Configure the `:region` option or export the region name to ENV['AWS_REGION']
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/aws-sdk-core/plugins/regional_endpoint.rb:92:in `after_initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:81:in `block in after_initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:80:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:80:in `after_initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:24:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-s3-1.119.1/lib/aws-sdk-s3/client.rb:452:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-core-3.170.0/lib/seahorse/client/base.rb:102:in `new'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/aws-sdk-s3-1.119.1/lib/aws-sdk-s3/resource.rb:28:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/s3_service.rb:16:in `new'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/s3_service.rb:16:in `initialize'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service.rb:61:in `new'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service.rb:61:in `build'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/configurator.rb:17:in `build'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/registry.rb:13:in `block in fetch'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/registry.rb:11:in `fetch'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/service/registry.rb:11:in `fetch'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/lib/active_storage/engine.rb:155:in `block (2 levels) in <class:Engine>'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:95:in `class_eval'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:95:in `block in execute_hook'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:85:in `with_execution_control'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:90:in `execute_hook'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:76:in `block in run_load_hooks'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:75:in `each'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activesupport-7.0.4.2/lib/active_support/lazy_load_hooks.rb:75:in `run_load_hooks'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activestorage-7.0.4.2/app/models/active_storage/blob.rb:410:in `<top (required)>'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:30:in `require'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:30:in `require'
/home/ubuntu/environment/timpdaley_2/db/migrate/20230307163758_add_service_name_to_active_storage_blobs.active_storage.rb:9:in `up'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:873:in `public_send'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:873:in `exec_migration'
/home/ubuntu/.rvm/gems/ruby-3.0.0@timdaley_2/gems/activerecord-7.0.4.2/lib/
```
One of my repos uses git submodules - but I can't see any method to perform a recursive clone as part of a workflow, other than adding a step in the workflow to run `git submodules init` and then a `git submodule update`.
Is there any method to define that a recursive clone is needed on checkout to the workflow?
I deleted a space several days ago from within CodeCatalyst. I also made sure that it was deleted from the associated AWS account.
I've tried to create a new space using that same name, but CodeCatalyst tells me that the `Space name is already taken`.
Do I need to carry out some other action to make the name available again?
We have an existing Java 17 app running SpringBoot 2.7.9 and are upgrading to SpringBoot 3.0.3
Spring Boot 3 uses the Jakarta EE 10 - as a result the javax.servlet.Filter is no longer available (instead its jakarta.servlet.Filter)
ref: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-3.0-Migration-Guide#jakarta-ee
Given the above, we can no longer trace incoming requests - https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-java-filters.html
Are there alternatives are available to resolve this? (eg updated AWS SDK, alternative filter suggestions?)
-- updated --
I see in the github repo that a Jakarta compatible servlet has been merged into the master branch, so I guess this is just pending a new release
ref : https://github.com/aws/aws-xray-sdk-java/pull/372
we have different account for AWS, we are running AWS toolkit from VScode, I was able to setup our sso account profile in config file for different account and we are able to successfully login through Terminal. But, There is a AWS explorer window that let you connect to your AWS Profile account but it only takes Default profile, how do we add another profile for SSO account in AWS explorer?

Hello,
I been messing around with AWS Application Migration Service and I noticed that when Cutover/Test server is launched there is no KeyPair. I checked the launch template and there is no option to create keypair. Any idea on this?
Thank you
Amanuel.

They create 267 Errors and fail the build. The only workaround being just excluding the tests all together.
Hello,
Not sure this is the right place for feature requests...
I'm following the [IVS DVR](https://github.com/aws-samples/amazon-ivs-dvr-web-demo) sample and it seems that fetching the live recording location on s3 is way more complex that it should be.
The current solution setup an s3 bucket listener to "catch" new `recording-started.json` files and writes a `recording-started-latest.json` file with the details to be used later.
Checking the IVS sdk I see there's a nice [GetStream](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-ivs/classes/getstreamcommand.html) command that already returns the stream details, aside from the recording location... I'm sure there's a technical reason for that but it would really make the api MUCH more friendly if the stream info would have included the recording path...
Thx.
I've been sitting here waiting to SSH into my new instance for ten minutes and this thing is STILL installing. Why is it so painfully slow? This is insane.
Created in launch template with script:
```
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
```