Skip to content

v7.1.0 - Journeys

Compare
Choose a tag to compare
@JoernBerkefeld JoernBerkefeld released this 23 Jul 21:20
· 541 commits to main since this release
100813f

Features

Bugfixes

Chores

Dependencies

Full Changelog: v7.0.4...v7.1.0

Details

Templating Commands

build

CHANGES
Now supports --dependencies and --retrieve.

Command: mcdev build <--fromBu> <--toBu> <--fromMarket> <--toMarket> <--metadata> [--bulk] [--dependencies] [--retrieve]

build with --dependencies (and with --retrieve):

These two parameters are passed through to buildTemplate. Please see buildTemplate's documentation for details. The resulting list of types & keys of whatever buildTemplate will create are then handed over to buildDefinition(Bulk), making this a powerful solution.

buildTemplate

CHANGES
Now supports --dependencies and --retrieve.

Command: mcdev buildTemplate <business unit> [type] [key] [market] [--metadata] [--market] [--dependencies] [--retrieve]

buildTemplate with --dependencies:

Using the --dependencies option you turn on the most powerful templating feature that allows you to find all related other metadata items across all types. This includes other items linked via r__ field ("r" means "relationship") in their JSON and assets loaded via AMPscript or SSJS using the functions ContentBlockByKey, ContentBlockByName and ContentBlockById. The logic works recursively, finding dependencies of dependencies on all levels.

Example:

mcdev bt MyProject/DEV --market pilotMarketDEV1 -m dataExtension:MyUserTable --dependencies

buildTemplate with --retrieve:

When running buildTemplate you are solely using whats saved locally on your computer. If you want to get a fresh version from the server first, you can of course run mcdev retrieve yourself - or you include the --retrieve option here.
If used together with --dependencies, this will download all metadata types for the selected BU. If used without --dependencies option it will only retrieve the types you specified as part of your buildTemplate command.

Example:

mcdev bt MyProject/DEV --market pilotMarketDEV1 -m dataExtension:MyUserTable --retrieve
mcdev bt MyProject/DEV --market pilotMarketDEV1 -m dataExtension:MyUserTable --dependencies --retrieve

Standard Commands

deploy

CHANGES
Now supports --noUpdate, --publish and --skipStatusCheck

Command: mcdev deploy [business unit] [metadata type] [metadata key] [--metadata] [--fromRetrieve] [--refresh] [--keySuffix] [--noMidSuffix] [--changeKeyValue=yourNewKey] [--changeKeyField=otherFieldInJson] [--execute] [--schedule] [--fixShared] [--noUpdate] [--publish] [--skipStatusCheck]

deploy with --noUpdate

If you want to ensure that your deployment does not override existing metadata but instead is limited to creating new elements, then add the --noUpdate option to your call.

mcdev deploy cred/bu --noUpdate

deploy with --publish (and --skipStatusCheck)

By adding the --publish flag, you tell deploy to run mcdev publish for supported types as a post-deployment step. See publish method for more details

mcdev deploy cred/bu journey --publish 
mcdev deploy cred/bu journey --publish --skipStatusCheck

publish

CHANGES
New command

Command: mcdev publish <business unit> [metadata type] [metadata key] [--like] [--skipStatusCheck] [--metadata]

You can publish a draft journey using this command. This is the same as clicking on Publish in the web interface. If you don't care about the publishing result, you can skip that check (it might be useful in CI/CD environments). Generally, we recommend against using—-skipStatusCheck because it happens often that something is blocking the publishing, and without that check, you would not know about the problem.

mcdev publish cred/bu journey myJourneyKey
mcdev publish cred/bu journey id:myJourneyId
mcdev publish cred/bu -m journey:myJourneyKey -m journey:id:myJourneyId
mcdev publish cred/bu journey myJourneyKey --skipStatusCheck

execute

CHANGES
Now supports --metadata.

Command: mcdev execute <business unit> [type] [key] [--like] [--schedule] [--metadata]

Example:

mcdev execute MyProject/DEV -m automation:key1 -m automation:key2 -m query:keyA
mcdev execute MyProject/DEV -m automation:key1 automation:key2 query:keyB

pause

CHANGES
Now supports --metadata.

Command: mcdev pause <business unit> [type] [key] [--like] [--metadata]

Example:

mcdev pause MyProject/DEV -m automation:key1 -m automation:key2
mcdev pause MyProject/DEV -m automation:key1 automation:key2

schedule

CHANGES
Now supports --metadata.

Command: mcdev schedule <business unit> [type] [key] [--like] [--metadata]

Example:

mcdev schedule MyProject/DEV -m automation:key1 -m automation:key2
mcdev schedule MyProject/DEV -m automation:key1 automation:key2

Admin Commands

describeSoap

CHANGES
New command

Command: mcdev describeSoap [soap object]

Alias: mcdev describe, mcdev soap

This is mainly aimed at contributors to get a quick overview on available fields for the various SOAP Web Service API Objects. While there is a (not always correct) overview on possible SOAP operations per object, there is no good page that shows which fields can be retrieved or deployed.

Example:

mcdev soap DataFolder

Response:

Name                        DataType       IsUpdatable  IsRetrievable  MaxLength  IsRequired
--------------------------  -------------  -----------  -------------  ---------  ----------
ID                          Int32          true         true                      true
Client.ID                   Int32          true         true                      true
ParentFolder.ID             Int32          true         true                      false
ParentFolder.CustomerKey    String         true         true           36         false
ParentFolder.ObjectID       Guid           true         true                      false
ParentFolder.Name           String         true         true           100        false
ParentFolder.Description    String         true         true           200        false
ParentFolder.ContentType    String         true         true           50         false
ParentFolder.IsActive       Boolean        false        true                      false
ParentFolder.IsEditable     Boolean        false        true                      false
ParentFolder.AllowChildren  Boolean        false        true                      false
Name                        String         true         true           100        true
Description                 String         true         true           200        true
ContentType                 String         true         true           50         true
IsActive                    Boolean        true         true                      false
IsEditable                  Boolean        true         true                      false
AllowChildren               Boolean        true         true                      false
CreatedDate                 DateTime       true         true                      true
ModifiedDate                DateTime       true         true                      true
Client.ModifiedBy           Int32          true         true                      true
ObjectID                    String         true         true                      false
CustomerKey                 String         true         true           36         false
Client.EnterpriseID         Int64          true         true                      false
Client.CreatedBy            Int32          true         true                      false
ParentFolder                DataFolder     true         false
Client                      ClientID       true         false
PartnerKey                  String         true         false
PartnerProperties           APIProperty[]  true         false
Owner                       Owner          true         false
CorrelationID               String         true         false
ObjectState                 String         true         false
IsPlatformObject            Boolean        true         false