Skip to content

allow tests to be run against any S3 bucket owned by any account #94

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"main": "index.js",
"scripts": {
"pretest": "eslint *.js bin/*.js test/*.js",
"test": "tape test/*.test.js"
"test": "tape -r ./test/env.js test/*.test.js"
},
"bin": {
"diff-tables": "bin/diff-tables.js",
Expand Down
10 changes: 5 additions & 5 deletions test/backup.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ dynamodb.start();
dynamodb.test('backup: one segment', primaryItems, function(assert) {
var config = {
backup: {
bucket: 'mapbox',
bucket: process.env.BackupBucket,
prefix: 'dynamodb-replicator/test',
jobid: crypto.randomBytes(4).toString('hex')
},
Expand All @@ -46,7 +46,7 @@ dynamodb.test('backup: one segment', primaryItems, function(assert) {
assert.equal(details.size, 98, 'reported 98 bytes');

s3.getObject({
Bucket: 'mapbox',
Bucket: process.env.BackupBucket,
Key: [config.backup.prefix, config.backup.jobid, '0'].join('/')
}, function(err, data) {
assert.ifError(err, 'retrieved backup from S3');
Expand All @@ -72,7 +72,7 @@ dynamodb.test('backup: one segment', primaryItems, function(assert) {
dynamodb.test('backup: parallel', records, function(assert) {
var config = {
backup: {
bucket: 'mapbox',
bucket: process.env.BackupBucket,
prefix: 'dynamodb-replicator/test',
jobid: crypto.randomBytes(4).toString('hex')
},
Expand All @@ -92,8 +92,8 @@ dynamodb.test('backup: parallel', records, function(assert) {
queue(1)
.defer(backup, firstConfig)
.defer(backup, secondConfig)
.defer(s3.getObject.bind(s3), { Bucket: 'mapbox', Key: firstKey })
.defer(s3.getObject.bind(s3), { Bucket: 'mapbox', Key: secondKey })
.defer(s3.getObject.bind(s3), { Bucket: process.env.BackupBucket, Key: firstKey })
.defer(s3.getObject.bind(s3), { Bucket: process.env.BackupBucket, Key: secondKey })
.awaitAll(function(err, results) {
assert.ifError(err, 'all requests completed');
if (err) return assert.end();
Expand Down
4 changes: 4 additions & 0 deletions test/env.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
'use strict';

// use a different S3 bucket by defining BackupBucket in the ENV
process.env.BackupBucket = process.env.BackupBucket || 'mapbox';
2 changes: 1 addition & 1 deletion test/incremental.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ var fs = require('fs');
var backfill = require('../s3-backfill');
var snapshot = require('../s3-snapshot');

var bucket = 'mapbox';
var bucket = process.env.BackupBucket;
var prefix = 'dynamodb-replicator/test/' + crypto.randomBytes(4).toString('hex');
var records = require('./fixtures/records')(50);

Expand Down
1 change: 0 additions & 1 deletion test/index.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ process.env.ReplicaRegion = 'mock';
process.env.ReplicaEndpoint = 'http://localhost:4567';
process.env.AWS_ACCESS_KEY_ID = 'mock';
process.env.AWS_SECRET_ACCESS_KEY = 'mock';
process.env.BackupBucket = 'mapbox';

var httpsAgent;
test('[agent] use http agent for replication tests', function(assert) {
Expand Down
4 changes: 2 additions & 2 deletions test/live-test.backup-table.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ dynamodb.test('backup-table shell script', primaryItems, function(assert) {
var cmd = [
path.resolve(__dirname, '..', 'bin', 'backup-table.js'),
'us-east-1/' + dynamodb.tableName,
's3://mapbox/dynamodb-replicator/test',
's3://' + process.env.BackupBucket + '/dynamodb-replicator/test',
'--jobid', jobid,
'--segment 0',
'--segments 1',
Expand All @@ -40,7 +40,7 @@ dynamodb.test('backup-table shell script', primaryItems, function(assert) {
queue()
.defer(function(next) {
s3.getObject({
Bucket: 'mapbox',
Bucket: process.env.BackupBucket,
Key: 'dynamodb-replicator/test/' + jobid + '/0'
}, function(err, data) {
assert.ifError(err, 'S3 getObject success');
Expand Down