Skip to content

Commit 55d87ae

Browse files
authored
Merge pull request #8261 from dannyzaken/danny-fix-upgarde-script
moved upgrade script of upgrade_bucket_policy to 5.15.6 dir
2 parents aa9d446 + 3adf2b5 commit 55d87ae

File tree

2 files changed

+22
-19
lines changed

2 files changed

+22
-19
lines changed

src/test/unit_tests/test_upgrade_scripts.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ const { S3 } = require('@aws-sdk/client-s3');
99
const { NodeHttpHandler } = require("@smithy/node-http-handler");
1010
const http = require('http');
1111
const system_store = require('../../server/system_services/system_store').get_instance();
12-
const upgrade_bucket_policy = require('../../upgrade/upgrade_scripts/5.14.0/upgrade_bucket_policy');
12+
const upgrade_bucket_policy = require('../../upgrade/upgrade_scripts/5.15.6/upgrade_bucket_policy');
1313
const dbg = require('../../util/debug_module')(__filename);
1414
const assert = require('assert');
1515
const mocha = require('mocha');
@@ -21,7 +21,7 @@ let s3;
2121
async function _clean_all_bucket_policies() {
2222
for (const bucket of system_store.data.buckets) {
2323
if (bucket.s3_policy) {
24-
await s3.deleteBucketPolicy({Bucket: bucket.name.unwrap()});
24+
await s3.deleteBucketPolicy({ Bucket: bucket.name.unwrap() });
2525
}
2626
}
2727
}
@@ -50,8 +50,7 @@ mocha.describe('test upgrade scripts', async function() {
5050
mocha.it('test upgrade bucket policy to version 5.14.0', async function() {
5151
const old_policy = {
5252
version: '2012-10-17',
53-
statement: [
54-
{
53+
statement: [{
5554
sid: 'id-1',
5655
effect: 'allow',
5756
principal: ["*"],
@@ -79,7 +78,7 @@ mocha.describe('test upgrade scripts', async function() {
7978
}
8079
});
8180

82-
await upgrade_bucket_policy.run({dbg, system_store, system_server: null});
81+
await upgrade_bucket_policy.run({ dbg, system_store, system_server: null });
8382
const res = await s3.getBucketPolicy({ // should work - bucket policy should fit current schema
8483
Bucket: BKT,
8584
});

src/upgrade/upgrade_scripts/5.14.0/upgrade_bucket_policy.js renamed to src/upgrade/upgrade_scripts/5.15.6/upgrade_bucket_policy.js

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33

44
const util = require('util');
55
const { OP_NAME_TO_ACTION } = require('../../../endpoint/s3/s3_bucket_policy_utils');
6+
const _ = require('lodash');
7+
68

79
function _create_actions_map() {
810
const actions_map = new Map();
@@ -26,20 +28,22 @@ async function run({ dbg, system_store, system_server }) {
2628
//Do not update if there are no bucket policy.
2729
if (!bucket.s3_policy) continue;
2830

29-
const new_policy = {};
30-
if (bucket.s3_policy.version) new_policy.Version = bucket.s3_policy.version;
31-
32-
new_policy.Statement = bucket.s3_policy.statement.map(statement => ({
33-
Effect: statement.effect === 'allow' ? 'Allow' : 'Deny',
34-
Action: statement.action.map(action => actions_map.get(action)),
35-
Principal: { AWS: statement.principal },
36-
Resource: statement.resource,
37-
Sid: statement.sid
38-
}));
39-
buckets.push({
40-
_id: bucket._id,
41-
s3_policy: new_policy,
42-
});
31+
32+
if (_.isUndefined(bucket.s3_policy.Statement)) {
33+
const new_policy = {};
34+
if (bucket.s3_policy.version) new_policy.Version = bucket.s3_policy.version;
35+
new_policy.Statement = bucket.s3_policy.statement.map(statement => ({
36+
Effect: statement.effect === 'allow' ? 'Allow' : 'Deny',
37+
Action: statement.action.map(action => actions_map.get(action)),
38+
Principal: { AWS: statement.principal },
39+
Resource: statement.resource,
40+
Sid: statement.sid
41+
}));
42+
buckets.push({
43+
_id: bucket._id,
44+
s3_policy: new_policy,
45+
});
46+
}
4347
}
4448

4549
if (buckets.length > 0) {

0 commit comments

Comments
 (0)