Skip to content

v7.1.2

Compare
Choose a tag to compare
@JoernBerkefeld JoernBerkefeld released this 31 Jul 11:25
· 571 commits to main since this release

Features

  • 1521: add deploy option --matchName for assets to allow auto-fixing keys during deployments by @JoernBerkefeld in #1524

Bugfixes

Chores

  • #1506: auto-handle "Another user recently modified this journey" update-error by @JoernBerkefeld in #1507
  • #1508 exclude triggeredSend from journey 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

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