8 Commits

Author SHA1 Message Date
070eb559b9 1.0.9 2021-12-20 18:29:19 +01:00
d07e30d7fb fix(core): update 2021-12-20 18:29:18 +01:00
2293ad69e1 1.0.8 2021-12-20 18:25:55 +01:00
0a150a8a09 fix(core): update 2021-12-20 18:25:55 +01:00
b5f53b1f64 1.0.7 2021-12-20 17:06:43 +01:00
e5a02a014a fix(core): update 2021-12-20 17:06:42 +01:00
9d12338630 1.0.6 2021-12-20 16:38:52 +01:00
3c75bfedfc fix(core): update 2021-12-20 16:38:51 +01:00
4 changed files with 18 additions and 23 deletions

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "@pushrocks/smarts3",
"version": "1.0.5",
"version": "1.0.9",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@pushrocks/smarts3",
"version": "1.0.5",
"version": "1.0.9",
"license": "MIT",
"dependencies": {
"@pushrocks/smartfile": "^9.0.3",

View File

@ -1,6 +1,6 @@
{
"name": "@pushrocks/smarts3",
"version": "1.0.5",
"version": "1.0.9",
"private": false,
"description": "create an s3 endpoint that maps to a local directory",
"main": "dist_ts/index.js",

View File

@ -6,23 +6,16 @@ import * as smarts3 from '../ts/index';
let testSmarts3Instance: smarts3.Smarts3;
tap.test('should create a smarts3 instance and run it', async toolsArg => {
testSmarts3Instance = new smarts3.Smarts3({
testSmarts3Instance = await smarts3.Smarts3.createAndStart({
port: 3000,
cleanSlate: true,
});
await testSmarts3Instance.start();
console.log(`Let the instance run for 2 seconds`);
await toolsArg.delayFor(2000);
});
tap.test('should be able to access buckets', async () => {
const smartbucketInstance = new plugins.smartbucket.SmartBucket({
endpoint: 'localhost',
port: 3000,
useSsl: false,
accessKey: 'S3RVER',
accessSecret: 'S3RVER'
});
const smartbucketInstance = new plugins.smartbucket.SmartBucket(await testSmarts3Instance.getS3Descriptor());
const bucket = await smartbucketInstance.createBucket('testbucket');
const baseDirectory = await bucket.getBaseDirectory();
await baseDirectory.fastStore('subdir/hello.txt', 'hi there!');

View File

@ -7,13 +7,15 @@ export interface ISmarts3ContructorOptions {
}
export class Smarts3 {
public options: ISmarts3ContructorOptions;
public dataForClient = {
s3AccessKey: 'S3RVER',
s3AccessSecret: 'S3RVER',
port: 3000,
useSsl: false
// STATIC
public static async createAndStart(optionsArg: ConstructorParameters<typeof Smarts3>[0]) {
const smartS3Instance = new Smarts3(optionsArg);
await smartS3Instance.start();
return smartS3Instance;
}
// INSTANCE
public options: ISmarts3ContructorOptions;
public s3Instance: plugins.s3rver;
constructor(optionsArg: ISmarts3ContructorOptions) {
@ -40,13 +42,13 @@ export class Smarts3 {
console.log('s3 server is running');
}
public async getLocalS3Descriptor(): Promise<plugins.smartbucket.ISmartBucketConfig> {
public async getS3Descriptor(): Promise<plugins.smartbucket.ISmartBucketConfig> {
return {
accessKey: this.dataForClient.s3AccessKey,
accessSecret: this.dataForClient.s3AccessSecret,
accessKey: 'S3RVER',
accessSecret: 'S3RVER',
endpoint: 'localhost',
port: this.dataForClient.port,
useSsl: this.dataForClient.useSsl,
port: this.options.port,
useSsl: false,
}
}