Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/elastio/rusoto
Forked rusoto v0.46 crate with Elastio-specific modifications
https://github.com/elastio/rusoto
Last synced: 9 days ago
JSON representation
Forked rusoto v0.46 crate with Elastio-specific modifications
- Host: GitHub
- URL: https://github.com/elastio/rusoto
- Owner: elastio
- License: mit
- Created: 2022-05-03T13:52:40.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-05-13T15:41:35.000Z (over 2 years ago)
- Last Synced: 2024-11-06T13:44:30.405Z (about 2 months ago)
- Language: Rust
- Homepage:
- Size: 187 MB
- Stars: 0
- Watchers: 7
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# ![Rusoto](./assets/logo-wide.png)
**Rusoto is an AWS SDK for Rust**
---
You may be looking for:
* [An overview of Rusoto][rusoto-overview]
* [AWS services supported by Rusoto][supported-aws-services]
* [API documentation][api-documentation]
* [Getting help with Rusoto][rusoto-help]## Installation
Rusoto is available on [crates.io](https://crates.io/crates/rusoto_core).
To use Rusoto in your Rust program built with Cargo, add it as a dependency and `rusoto_$SERVICENAME` for any supported AWS service you want to use.For example, to include only S3 and SQS:
```toml
[dependencies]
rusoto_core = "0.46.0"
rusoto_sqs = "0.46.0"
rusoto_s3 = "0.46.0"
```## Migration notes
Breaking changes and migration details are documented at [https://rusoto.org/migrations.html](https://rusoto.org/migrations.html).
Note that from v0.43.0 onward, Rusoto uses Rust's `std::future::Future`, and the Tokio 0.2 ecosystem. From v0.46.0 onward, Rusoto uses the Tokio 1.0 ecosystem.
## Usage
Rusoto has a crate for each AWS service, containing Rust types for that service's API.
A full list of these services can be found [here][supported-aws-services].
All other public types are reexported to the crate root.
Consult the rustdoc documentation for full details by running `cargo doc` or visiting the online [documentation](https://docs.rs/rusoto_core) for the latest crates.io release.A simple example of using Rusoto's DynamoDB API to list the names of all tables in a database:
```rust,no_run
use rusoto_core::Region;
use rusoto_dynamodb::{DynamoDb, DynamoDbClient, ListTablesInput};#[tokio::main]
async fn main() {
let client = DynamoDbClient::new(Region::UsEast1);
let list_tables_input: ListTablesInput = Default::default();match client.list_tables(list_tables_input).await {
Ok(output) => match output.table_names {
Some(table_name_list) => {
println!("Tables in database:");for table_name in table_name_list {
println!("{}", table_name);
}
}
None => println!("No tables in database!"),
},
Err(error) => {
println!("Error: {:?}", error);
}
}
}
```### Credentials
For more information on Rusoto's use of AWS credentials such as priority and refreshing, see [AWS Credentials](AWS-CREDENTIALS.md).
## Semantic versioning
Rusoto complies with [semantic versioning 2.0.0](http://semver.org/).
Until reaching 1.0.0 the API is to be considered unstable.
See [Cargo.toml](Cargo.toml) or [rusoto on crates.io](https://crates.io/crates/rusoto_core) for current version.## Releases
Information on release schedules and procedures are in [RELEASING](RELEASING.md).
## Contributing
Discussions take place on the [Rusoto Discord channel][discord-invite].
See [CONTRIBUTING](CONTRIBUTING.md) for more information.
## Supported OSs, Rust versions and non-AWS projects
Linux, macOS and Windows are supported and tested via [GitHub actions](https://github.com/rusoto/rusoto/actions?query=workflow%3A%22Build+and+test%22).
Rust stable, beta and nightly are supported.
Rusoto's primary aim is to be used with AWS. Other projects that provide AWS-like APIs, such as Ceph, Minio, Yandex Object Storage, etc... are not a focus at this time. PRs to fix issues with Rusoto and AWS-like APIs are welcome but generally won't be created by Rusoto maintainers.
## License
Rusoto is distributed under the terms of the MIT license.
See [LICENSE][license] for details.
[api-documentation]: https://docs.rs/rusoto_core "API documentation"
[license]: https://github.com/rusoto/rusoto/blob/master/LICENSE "MIT License"
[rusoto-help]: https://www.rusoto.org/help.html "Getting help with Rusoto"
[rusoto-overview]: https://www.rusoto.org/ "Rusoto overview"
[supported-aws-services]: https://www.rusoto.org/supported-aws-services.html "List of AWS services supported by Rusoto"
[discord-invite]: https://discordapp.com/invite/WMJ4DWp "Discord channel invite"