Merge branch 'dcl-i1507c'

GitOrigin-RevId: fc12ab4d20918e83f7aa05ba5263c785d594c8dc
This commit is contained in:
Douglas Lovell 2019-03-01 08:44:40 -03:00 committed by James Allen
parent f887bcb121
commit 65012e5037

View file

@ -0,0 +1,75 @@
//
// Remove the brandVariationId attribute from project documents that have
// that attribute, which value matches the one given.
//
// node scripts/remove_brand_variation_ids.js 3
// gives a report of project documents that have brandVariationId attribute
// with value, "3"
//
// node scripts/remove_brand_variation_ids.js 3 --commit true
// actually removes the brandVariationId attribute from project documents
// that have brandVariationId attribute with value, "3"
//
const { db } = require('../app/js/infrastructure/mongojs')
const async = require('async')
const minimist = require('minimist')
const argv = minimist(process.argv.slice(2))
const bvId = argv._[0]
const commit = argv.commit !== undefined
console.log(
(commit ? 'Remove' : 'Dry run for remove') +
' brandVariationId from projects that have { brandVariationId: ' +
bvId +
' }'
)
var count = 0
db.projects.find(
{ brandVariationId: bvId.toString() },
{ _id: 1, name: 1 },
processRemovals
)
function processRemovals(err, projects) {
if (err) throw err
async.mapSeries(
projects,
function(project, cb) {
count += 1
console.log(
(commit ? 'Removing' : 'Would remove') +
' brandVariationId on project ' +
project._id +
', name: "' +
project.name +
'"'
)
if (commit) {
db.projects.update(
{ _id: project._id },
{ $unset: { brandVariationId: '' } },
cb
)
} else {
cb()
}
},
function(err) {
if (err) {
console.log('There was a problem: ', err)
}
console.log(
'BrandVariationId ' +
(commit ? 'removed' : 'would be removed') +
' from ' +
count +
' projects'
)
process.exit()
}
)
}