-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
7.3.0 #1613
7.3.0 #1613
Conversation
…efore deploy and after retrieve
…nnot-be-published-after-deploy
…lds-are-send-during-createupdate-of-eventdefinitions bug/1599 ensure required fields are send to API
…nnot-be-published-after-deploy
…the the proper API
…to event + journey
…r using the the proper API" This reverts commit 3cabe0c.
…eliable due to the bad API
…recognition is more stable
…re-journey-instead-of-a-single-version task/1611 allow deleting entire journey by specifying the version with /*
Coverage ReportCommit:ffb1f93Base: main@1be10f7 Details (changed files):
|
…key-deletion-logic task/1614 speed up multi-key deletes & equalize delete-errors
despite those fields not being updatable
…and-modifieddate-are-saved-after-updates task/1616 have CreatedDate and ModifiedDate in deploy response
…nnot-be-published-after-deploy
feature/1020 pause journey and stop journey features added
…nnot-be-published-after-deploy
…-journeys-cannot-be-published-after-deploy bug/1570 salesforce triggered journeys cannot be published after deploy
…-in-build-buildtemplate feature/1619 allow using "name:" for buildTemplate and build
…ildDefinition and build
…ltiple-markets-in-sequence-by-builddefinition feature/1522 allow specifying multiple markets at once in bt, bd, bdb and build
deleteCommand: Alias: Deletes the given metadata from your server. This needs to be run with care as any data stored in the deleted meta-data will be lost. Currently supported types: Metadata Type Support Example: mcdev delete MyProject/_ParentBU_ dataExtension MyUserTable You can also delete multiple keys at once, even across types: mcdev delete MyProject/_ParentBU_ -m dataExtension:MyUserTable -m query:myKey -m query:myKey2
mcdev delete MyProject/_ParentBU_ dataExtensionField MyUserTable.MyFieldName Journeys are somewhat special because they are the only metadata type in SFMC that has versions stored in the platform itself. Therefore, when deleting a journey, you need to specify what version you want to delete - or if you want to delete the journey with all its versions. You achieve that by appending "/3" for deleting version 3 or "/*" for deleting all versions. mcdev del MyProject/_ParentBU_ journey id:%235cfb1bcb-9cb7-42c9-81de-033943bbc18c/4
mcdev del MyProject/_ParentBU_ journey id:5cfb1bcb-9cb7-42c9-81de-033943bbc18c/4
mcdev del MyProject/_ParentBU_ -m journey:id:5cfb1bcb-9cb7-42c9-81de-033943bbc18c/4
mcdev del MyProject/_ParentBU_ -m journey:myJourneyKey/4
mcdev del MyProject/_ParentBU_ -m journey:myJourneyKey/*
|
https://github.com/Accenture/sfmc-devtools/wiki/06.b-~-Standard-Commands/_edit pauseCommand: Alias: This command lets you pause metadata of a given type and key. Currently supported types:
Example: mcdev pause MyProject/DEV automation key1
mcdev pause MyProject/DEV journey key3
mcdev pause MyProject/DEV journey key3/4
mcdev pause MyProject/DEV journey key3/*
mcdev pause MyProject/DEV automation "key1,key2,key3"
mcdev pause MyProject/DEV -m automation:key1 -m automation:key2
mcdev pause MyProject/DEV -m automation:key1 automation:key2 journey:key3 For pause with --like operator: mcdev pause MyProject/DEV automation --like.key "myprefix_%"
mcdev pause MyProject/DEV automation --like.key "myprefix_%" --like.r__folder_Path "Query/Testing%" pause on all BUs: This is a variation of pause command that allows you to pause specified items on all BUs. mcdev will look for the items of specified types and keys on all BUs and pause them. Example: mcdev pause MyProject/* automation key1
mcdev pause MyProject/* automation "key1,key2,key3" stopCommand: Alias: - This command lets you stop metadata of a given type and key. Currently supported types:
Example: mcdev stop MyProject/DEV journey key3
mcdev stop MyProject/DEV journey "key1,key2,key3"
mcdev stop MyProject/DEV -m journey:key1 journey:key2 For stop with --like operator: mcdev stop MyProject/DEV journey --like.key "myprefix_%"
mcdev stop MyProject/DEV journey --like.key "myprefix_%" --like.r__folder_Path "my Journeys/Testing%" stop on all BUs: This is a variation of stop command that allows you to stop specified items on all BUs. mcdev will look for the items of specified types and keys on all BUs and stop hem. Example: mcdev stop MyProject/* journey key1
mcdev stop MyProject/* journey "key1,key2,key3"
mcdev stop MyProject/* -m journey:key1 journey:key2 journey:key3 |
https://github.com/Accenture/sfmc-devtools/wiki/06.c-~-Templating-Commands/_edit buildCommand: This combines the power of Example: // before
mcdev bt MyProject/DEV --market pilotMarketDEV1 -m dataExtension:table1 -m dataExtension:table2 -m dataExtension:table3 -m query:sql1 -m query:sql2
mcdev bd MyProject/QA --market pilotMarketQA1 -m dataExtension:table1 -m dataExtension:table2 -m dataExtension:table3 -m query:sql1 -m query:sql2
// after
mcdev build --buFrom MyProject/DEV --buTo MyProject/QA --marketFrom pilotMarketDEV1 --marketTo pilotMarketQA1 -m dataExtension:name:table1 dataExtension:table2 dataExtension:table3 query:sql1 query:name:sql2 Note how you can also use names instead of keys to select metadata by prefixing the name with "name" (e.g And if you already have market lists set up and want to use Example: // before
mcdev bt MyProject/DEV --market pilotMarketDEV1 -m dataExtension:table1 -m dataExtension:table2 -m dataExtension:table3 -m query:sql1 -m query:sql2
mcdev bdb pilotMarketsQA -m dataExtension:table1 -m dataExtension:table2 -m dataExtension:table3 -m query:sql1 -m query:sql2
// after
mcdev build --buFrom MyProject/DEV --marketFrom pilotMarketDEV1 --marketTo pilotMarketsQA --bulk -m dataExtension:table1 -m dataExtension:table2 -m dataExtension:table3 -m query:sql1 -m query:sql2 Note how in this bulk-example the parameter build with --dependencies (and with --retrieve): These two parameters are passed through to buildTemplate. Please see that commands 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. build with multiple chained markets If you have more complex scenarios that would otherwise require setting up lots of mostly cloned markets. Instead, you may define multiple markets that can combined to form one new set of variables that then get applied.
This will take pilotMarketDEV1 and add whatever is defined in addtionalMarketDEV. If there is an overlap in defined attributes, whatever market is set second, overwrites what is set first in the command. You can chain as many markets as you want. The order of how the markets are defined in the config does not have an effect. "markets": {
"addtionalMarketDEV": {
"c": 6,
"d": 4,
"e": 5,
},
"pilotMarketDEV1": {
"a": 1,
"b": 2,
"c": 3,
}
} The resulting market would be {
"a": 1,
"b": 2,
"c": 6,
"d": 4,
"e": 5,
} buildTemplateCommand: Alias: The This command is a prerequisite for the
Currently supported types: Check out Metadata Type Support. Example: mcdev bt MyProject/DEV dataExtension MyUserTable pilotMarketDEV1
mcdev bt MyProject/DEV --market pilotMarketDEV1 -m dataExtension:MyUserTable dataExtension:name:MyUserTableName This will result in buildTemplate with multiple chained markets [...] buildDefinitionbuildDefinition with multiple chained markets [...] buildDefinitionBulkbuildDefinitionBulk with multiple chained markets Without chaining, the config would look like this and result in buildDefinition getting run twice seperately. Once for QA-DE market, and once for QA-GULF market: "markets": {
"QA-DE": {
"a": 1,
"c": 3
},
"QA-GULF": {
"a": 2,
"b": 2
}
},
"marketList": {
"Parent-shared": {
"description": "used to deploy shared data extensions",
"MySandbox/_ParentBU_": ["QA-DE", "QA-GULF"],
}
} With chaining, the config would look like the following and result in buildDefinition being run once for QA-DE market and QA-GULF market merged: "markets": {
"QA-DE": {
"a": 1,
"c": 3
},
"QA-GULF": {
"a": 2,
"b": 2
}
},
"marketList": {
"Parent-shared": {
"description": "used to deploy shared data extensions",
"MySandbox/_ParentBU_": [
["QA-DE", "QA-GULF"]
]
}
} The resulting market would have these variables: {
"a": 2,
"c": 3,
"b": 2
} |
Release details
Checklist
Before merge
npm audit fix
npm run lint-ts
npm run lint:fix
After merge
npm run version:major/minor/patch
Documentation
Issues