unpub_aws

Creator: coderz1093

Last updated:

0 purchases

unpub_aws Image
unpub_aws Images
Add to Cart

Description:

unpub aws

unpub_aws #
A collection of modules to use for deploying unpub into AWS infrastructure.
Available Features #
1. S3 File Storage #
S3 File Storage #
Use AWS S3 or another S3 API compatible endpoint as your file storage.
import 'package:unpub/unpub.dart' as unpub;
import 'package:unpub/' as unpub_aws;

var app = unpub.App(
// ...
packageStore: unpub.S3Store('your-bucket-name'),
);
copied to clipboard
What you need: #

An S3 bucket created in AWS
AWS access credentials

Authentication for AWS can be handled in 1 of 2 ways: Environment variables or during the S3Store class construction.
Environment Variables
AWS_ACCESS_KEY_ID=xxxxxxxxxxxxxxxxxxx
AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AWS_DEFAULT_REGION=us-west-2
AWS_S3_ENDPOINT=s3.amazonaws.com
copied to clipboard
Kitchen Sink Example:
import 'package:mongo_dart/mongo_dart.dart';
import 'package:unpub/unpub.dart' as unpub;
import 'package:unpub_aws/src/aws_credentials.dart';
import 'package:unpub_aws/unpub_aws.dart' as unpub_aws;

main(List<String> args) async {
final db = Db('mongodb://localhost:27017/dart_pub');
await db.open(); // make sure the MongoDB connection opened

final app = unpub.App(
metaStore: unpub.MongoStore(db),
packageStore: unpub_aws.S3Store('my-bucket-name',

// We attempt to find region from AWS_DEFAULT_REGION. If one is not
// available or provided an Argument error will be thrown.
region: 'us-east-1',

// Provide a different S3 compatible endpoint.
endpoint: 'aws-alternative.example.com',

// By default packages are sorted into folders in s3 like this.
// Pass in an alternative if needed.
getObjectPath: (String name, String version) => '$name/$name-$version.tar.gz',

// You can provide credentials manually but...
// don't be bad at security populate env vars instead...
//
// AWS_ACCESS_KEY_ID=xxxxxxxxxxxxxxxxxxxxxxx
// AWS_SECRET_ACCESS_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
credentials: AwsCredentials(
awsAccessKeyId: '',
awsSecretAccessKey: '')),
);

final server = await app.serve('0.0.0.0', 4000);
print('Serving at http://${server.address.host}:${server.port}');
}

copied to clipboard

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.