v7.1.2
Features
- 1521: add
deploy
option--matchName
for assets to allow auto-fixing keys during deployments by @JoernBerkefeld in #1524
Bugfixes
- #1513 local folders were rewired during deployment to belong to a shared parent by @JoernBerkefeld in #1520
Chores
- #1506: auto-handle "Another user recently modified this
journey
" update-error by @JoernBerkefeld in #1507 - #1508 exclude
triggeredSend
fromjourney
templating
because they get auto-created upon publishing a journey and can be defined in more detail (including preheader!) as part of the journey's JSON by @JoernBerkefeld in #1509
Dependencies
- Bump fast-xml-parser from 4.4.0 to 4.4.1 by @dependabot in #1519
Full Changelog: v7.1.1...v7.1.2
Details
Standard Commands
deploy
CHANGES |
---|
Now supports --matchName |
Command: mcdev deploy [business unit] [metadata type] [metadata key] [--metadata] [--fromRetrieve] [--refresh] [--keySuffix] [--noMidSuffix] [--changeKeyValue=yourNewKey] [--changeKeyField=otherFieldInJson] [--execute] [--schedule] [--fixShared] [--noUpdate] [--publish] [--skipStatusCheck] [--matchName]
deploy with --matchName:
Imagine you want to start using mcdev, but your SFMC instance is already full of content. Most keys won't be readable, and you will eventually run fixKeys
on your DEV business unit to make things easier. Once you revisited what fixKeys did and changed everything according to your new style guide for keys, you will eventually deploy things to another BU. But wait - the keys there are still in the old format, likely all different from what you had on DEV because you deployed things manually or via Package Manager. That would be a lot of work AGAIN to fix - deploy --matchName
to the rescue!
Important: So far, this works for asset
only, but there, it's really powerful already.
If it fails to find the same key, it will try to find a match by comparing the subtype, name, and folder. If there is ONE match, then it will assume it found what you need to override and update the asset's config and key with what you are trying to deploy.
If it finds more than one match for name & subtype, it will throw an error. If it finds one match but the folder is different, it will also throw an error. The error message will contain more details, allowing you to manually debug the situation before rerunning your deploy command.
Situation A: More than one match for name & type:
Look at all keys provided, search your BU folder for those keys to find out which ones are actually used, and delete the other ones. Be aware that you might not see references if you used ContentBlockByName or ContentBlockById!
Situation B: One match, but the folder is different
Look at the found asset and compare it to the one you are trying to deploy. If it is the right match, update the folder to the value from your deployment package in your local file and deploy that one. Then, re-run your original deployment.
mcdev deploy cred/bu --matchName
mcdev deploy cred/bu -m asset:key1 asset:key2 asset:key3 --matchName