diff --git a/cumulusci.yml b/cumulusci.yml index 5ff8105..273e405 100644 --- a/cumulusci.yml +++ b/cumulusci.yml @@ -26,7 +26,11 @@ flows: task: assign_permission_sets options: api_names: Membership_Manage - 4: + 4: #adds list views and attempts to assign page layouts. layout assignment not currently functioning as expected. task: deploy_post options: - path: unpackaged/dev \ No newline at end of file + path: unpackaged/dev + 90: # Use a snowfakery recipe for data generation in place of the default dataset operation + task: snowfakery + options: + recipe: datasets/default_data.snowfakery.yml \ No newline at end of file diff --git a/datasets/default/default.dataset.sql b/datasets/default/default.dataset.sql deleted file mode 100644 index c5f7252..0000000 --- a/datasets/default/default.dataset.sql +++ /dev/null @@ -1,158 +0,0 @@ -BEGIN TRANSACTION; -CREATE TABLE "Account" ( - id VARCHAR(255) NOT NULL, - "AccountNumber" VARCHAR(255), - "AccountSource" VARCHAR(255), - "AnnualRevenue" VARCHAR(255), - "BillingCity" VARCHAR(255), - "BillingCountry" VARCHAR(255), - "BillingGeocodeAccuracy" VARCHAR(255), - "BillingLatitude" VARCHAR(255), - "BillingLongitude" VARCHAR(255), - "BillingPostalCode" VARCHAR(255), - "BillingState" VARCHAR(255), - "BillingStreet" VARCHAR(255), - "CleanStatus" VARCHAR(255), - "Description" VARCHAR(255), - "DunsNumber" VARCHAR(255), - "Fax" VARCHAR(255), - "First_Membership_Start_Date__c" VARCHAR(255), - "Industry" VARCHAR(255), - "Jigsaw" VARCHAR(255), - "Last_Membership_Start_Date__c" VARCHAR(255), - "Membership_End_Date__c" VARCHAR(255), - "Membership_Status__c" VARCHAR(255), - "Membership_Type__c" VARCHAR(255), - "NaicsCode" VARCHAR(255), - "NaicsDesc" VARCHAR(255), - "Name" VARCHAR(255), - "NumberOfEmployees" VARCHAR(255), - "Ownership" VARCHAR(255), - "Phone" VARCHAR(255), - "Rating" VARCHAR(255), - "ShippingCity" VARCHAR(255), - "ShippingCountry" VARCHAR(255), - "ShippingGeocodeAccuracy" VARCHAR(255), - "ShippingLatitude" VARCHAR(255), - "ShippingLongitude" VARCHAR(255), - "ShippingPostalCode" VARCHAR(255), - "ShippingState" VARCHAR(255), - "ShippingStreet" VARCHAR(255), - "Sic" VARCHAR(255), - "SicDesc" VARCHAR(255), - "Site" VARCHAR(255), - "TickerSymbol" VARCHAR(255), - "Tradestyle" VARCHAR(255), - "Type" VARCHAR(255), - "Website" VARCHAR(255), - "YearStarted" VARCHAR(255), - "DandbCompanyId" VARCHAR(255), - "OperatingHoursId" VARCHAR(255), - "ParentId" VARCHAR(255), - "Primary_Membership__c" VARCHAR(255), - PRIMARY KEY (id) -); -INSERT INTO "Account" VALUES('Account-1','','','','','','','','','','','','Pending','','','','','','','','','','','','','Existing Account','','','','','','','','','','','','','','','','','','','','','','','Account-2',''); -INSERT INTO "Account" VALUES('Account-2','','','','','','','','','','','','Pending','','','','','','','','','','','','','Existing Parent Account','','','','','','','','','','','','','','','','','','','','','','','',''); -CREATE TABLE "Contact" ( - id VARCHAR(255) NOT NULL, - "AssistantName" VARCHAR(255), - "AssistantPhone" VARCHAR(255), - "Birthdate" VARCHAR(255), - "CleanStatus" VARCHAR(255), - "Department" VARCHAR(255), - "Description" VARCHAR(255), - "DoNotCall" VARCHAR(255), - "Email" VARCHAR(255), - "EmailBouncedDate" VARCHAR(255), - "EmailBouncedReason" VARCHAR(255), - "Fax" VARCHAR(255), - "FirstName" VARCHAR(255), - "First_Membership_Start_Date__c" VARCHAR(255), - "GenderIdentity" VARCHAR(255), - "HasOptedOutOfEmail" VARCHAR(255), - "HasOptedOutOfFax" VARCHAR(255), - "HomePhone" VARCHAR(255), - "Jigsaw" VARCHAR(255), - "LastName" VARCHAR(255), - "Last_Membership_Start_Date__c" VARCHAR(255), - "LeadSource" VARCHAR(255), - "MailingCity" VARCHAR(255), - "MailingCountry" VARCHAR(255), - "MailingGeocodeAccuracy" VARCHAR(255), - "MailingLatitude" VARCHAR(255), - "MailingLongitude" VARCHAR(255), - "MailingPostalCode" VARCHAR(255), - "MailingState" VARCHAR(255), - "MailingStreet" VARCHAR(255), - "Membership_End_Date__c" VARCHAR(255), - "Membership_Status__c" VARCHAR(255), - "Membership_Type__c" VARCHAR(255), - "MobilePhone" VARCHAR(255), - "OtherCity" VARCHAR(255), - "OtherCountry" VARCHAR(255), - "OtherGeocodeAccuracy" VARCHAR(255), - "OtherLatitude" VARCHAR(255), - "OtherLongitude" VARCHAR(255), - "OtherPhone" VARCHAR(255), - "OtherPostalCode" VARCHAR(255), - "OtherState" VARCHAR(255), - "OtherStreet" VARCHAR(255), - "Phone" VARCHAR(255), - "Pronouns" VARCHAR(255), - "Salutation" VARCHAR(255), - "Title" VARCHAR(255), - "AccountId" VARCHAR(255), - "IndividualId" VARCHAR(255), - "ReportsToId" VARCHAR(255), - PRIMARY KEY (id) -); -INSERT INTO "Contact" VALUES('Contact-1','','','','Pending','','','False','email@email.com','','','','Member','','','False','False','','','Testerson','','','','','','','','','','','','','','','','','','','','','','','','','','','','','',''); -CREATE TABLE "DandBCompany" ( - id VARCHAR(255) NOT NULL, - "DunsNumber" VARCHAR(255), - "Name" VARCHAR(255), - PRIMARY KEY (id) -); -CREATE TABLE "Individual" ( - id VARCHAR(255) NOT NULL, - "LastName" VARCHAR(255), - PRIMARY KEY (id) -); -CREATE TABLE "Membership__c" ( - id VARCHAR(255) NOT NULL, - PRIMARY KEY (id) -); -CREATE TABLE "OperatingHours" ( - id VARCHAR(255) NOT NULL, - "Name" VARCHAR(255), - "TimeZone" VARCHAR(255), - PRIMARY KEY (id) -); -CREATE TABLE "Product2" ( - id VARCHAR(255) NOT NULL, - "Description" VARCHAR(255), - "DisplayUrl" VARCHAR(255), - "ExternalId" VARCHAR(255), - "Family" VARCHAR(255), - "Grace_Period__c" VARCHAR(255), - "IsActive" VARCHAR(255), - "IsSerialized" VARCHAR(255), - "Membership_Tier__c" VARCHAR(255), - "Name" VARCHAR(255), - "ProductCode" VARCHAR(255), - "QuantityUnitOfMeasure" VARCHAR(255), - "Renewal_Option__c" VARCHAR(255), - "StockKeepingUnit" VARCHAR(255), - "Term_Unit__c" VARCHAR(255), - "Term__c" VARCHAR(255), - "Downgrade_Path__c" VARCHAR(255), - "Upgrade_Path__c" VARCHAR(255), - PRIMARY KEY (id) -); -INSERT INTO "Product2" VALUES('Product2-1','','','','','','True','False','','Basic Membership','','','One-Time','BSC','Year','1.0','','Product2-2'); -INSERT INTO "Product2" VALUES('Product2-2','','','','','','True','False','','Standard Membership','','','One-Time','STD','Year','1.0','Product2-1','Product2-5'); -INSERT INTO "Product2" VALUES('Product2-3','','','','','','True','False','','Family Membership','','','One-Time','FAM','Year','1.0','',''); -INSERT INTO "Product2" VALUES('Product2-4','','','','','','True','False','','Youth Membership','','','One-Time','YTH','Year','1.0','','Product2-2'); -INSERT INTO "Product2" VALUES('Product2-5','','','','','','True','False','','Premier Membership','','','One-Time','PMR','Year','1.0','Product2-2',''); -COMMIT; diff --git a/datasets/default/default.extract.yml b/datasets/default/default.extract.yml deleted file mode 100644 index de2403b..0000000 --- a/datasets/default/default.extract.yml +++ /dev/null @@ -1,10 +0,0 @@ - -extract: - Account: - fields: FIELDS(ALL) - Contact: - fields: FIELDS(ALL) - Product2: - fields: FIELDS(ALL) - PriceBookEntry: - fields: FIELDS(ALL) diff --git a/datasets/default/default.mapping.yml b/datasets/default/default.mapping.yml deleted file mode 100644 index 3bc9d36..0000000 --- a/datasets/default/default.mapping.yml +++ /dev/null @@ -1,153 +0,0 @@ -# Editing this file is usually not recommended because it will -# be overwritten the next time you re-capture this data. -# -# You can change this file's contents permanently by creating a -# .load.yml file and re-capturing: -# -# https://cumulusci.readthedocs.io/en/stable/data.html#extracting-and-loading-sample-datasets -Insert Product2: - sf_object: Product2 - table: Product2 - fields: - - Description - - DisplayUrl - - ExternalId - - Family - - Grace_Period__c - - IsActive - - IsSerialized - - Membership_Tier__c - - Name - - ProductCode - - QuantityUnitOfMeasure - - Renewal_Option__c - - StockKeepingUnit - - Term_Unit__c - - Term__c - lookups: - Downgrade_Path__c: - table: Product2 - key_field: Downgrade_Path__c - after: Insert Product2 - Upgrade_Path__c: - table: Product2 - key_field: Upgrade_Path__c - after: Insert Product2 -Insert Membership__c: - sf_object: Membership__c - table: Membership__c -Insert Account: - sf_object: Account - table: Account - fields: - - AccountNumber - - AccountSource - - AnnualRevenue - - BillingCity - - BillingCountry - - BillingGeocodeAccuracy - - BillingLatitude - - BillingLongitude - - BillingPostalCode - - BillingState - - BillingStreet - - CleanStatus - - Description - - DunsNumber - - Fax - - First_Membership_Start_Date__c - - Industry - - Jigsaw - - Last_Membership_Start_Date__c - - Membership_End_Date__c - - Membership_Status__c - - Membership_Type__c - - NaicsCode - - NaicsDesc - - Name - - NumberOfEmployees - - Ownership - - Phone - - Rating - - ShippingCity - - ShippingCountry - - ShippingGeocodeAccuracy - - ShippingLatitude - - ShippingLongitude - - ShippingPostalCode - - ShippingState - - ShippingStreet - - Sic - - SicDesc - - Site - - TickerSymbol - - Tradestyle - - Type - - Website - - YearStarted - lookups: - ParentId: - table: Account - key_field: ParentId - after: Insert Account - Primary_Membership__c: - table: Membership__c - key_field: Primary_Membership__c -Insert Contact: - sf_object: Contact - table: Contact - fields: - - AssistantName - - AssistantPhone - - Birthdate - - CleanStatus - - Department - - Description - - DoNotCall - - Email - - EmailBouncedDate - - EmailBouncedReason - - Fax - - FirstName - - First_Membership_Start_Date__c - - GenderIdentity - - HasOptedOutOfEmail - - HasOptedOutOfFax - - HomePhone - - Jigsaw - - LastName - - Last_Membership_Start_Date__c - - LeadSource - - MailingCity - - MailingCountry - - MailingGeocodeAccuracy - - MailingLatitude - - MailingLongitude - - MailingPostalCode - - MailingState - - MailingStreet - - Membership_End_Date__c - - Membership_Status__c - - Membership_Type__c - - MobilePhone - - OtherCity - - OtherCountry - - OtherGeocodeAccuracy - - OtherLatitude - - OtherLongitude - - OtherPhone - - OtherPostalCode - - OtherState - - OtherStreet - - Phone - - Pronouns - - Salutation - - Title - lookups: - AccountId: - table: Account - key_field: AccountId - ReportsToId: - table: Contact - key_field: ReportsToId - after: Insert Contact diff --git a/datasets/default_data.snowfakery.yml b/datasets/default_data.snowfakery.yml new file mode 100644 index 0000000..888f6fb --- /dev/null +++ b/datasets/default_data.snowfakery.yml @@ -0,0 +1,131 @@ +- plugin: snowfakery.standard_plugins.Salesforce.SalesforceQuery + +- var: std_pricebook + value: + SalesforceQuery.find_record: + from: Pricebook2 + where: IsStandard = true + +- object: Account + fields: + Name: Existing Account + ParentId: + - object: Account + fields: + Name: Existing Parent Account + +- object: Contact + fields: + FirstName: Member + LastName: Testerson + Email: email@email.com + +- object: Product2 + nickname: bsc-memb + fields: + isActive: true + Name: Basic Membership + StockKeepingUnit: BSC + Term__c: 1 + Term_Unit__c: Year + Upgrade_Path__c: + reference: std-memb + Downgrade_Path__c: + reference: + Family: Membership + friends: + - object: PricebookEntry + fields: + Pricebook2Id: ${{std_pricebook}} + Product2Id: + reference: bsc-memb + UnitPrice: 50 + IsActive: true + +- object: Product2 + nickname: std-memb + fields: + isActive: true + Name: Standard Membership + StockKeepingUnit: STD + Term__c: 1 + Term_Unit__c: Year + Upgrade_Path__c: + reference: pmr-memb + Downgrade_Path__c: + reference: bsc-memb + Family: Membership + friends: + - object: PricebookEntry + fields: + Pricebook2Id: ${{std_pricebook}} + Product2Id: + reference: std-memb + UnitPrice: 100 + IsActive: true + +- object: Product2 + nickname: pmr-memb + fields: + isActive: true + Name: Premium Membership + StockKeepingUnit: PMR + Term__c: 1 + Term_Unit__c: Year + Upgrade_Path__c: + reference: + Downgrade_Path__c: + reference: std-memb + Family: Membership + friends: + - object: PricebookEntry + fields: + Pricebook2Id: ${{std_pricebook}} + Product2Id: + reference: pmr-memb + UnitPrice: 250 + IsActive: true + +- object: Product2 + nickname: yth-memb + fields: + isActive: true + Name: Youth Membership + StockKeepingUnit: YTH + Term__c: 1 + Term_Unit__c: Year + Upgrade_Path__c: + reference: std-memb + Downgrade_Path__c: + reference: + Family: Membership + friends: + - object: PricebookEntry + fields: + Pricebook2Id: ${{std_pricebook}} + Product2Id: + reference: yth-memb + UnitPrice: 45 + IsActive: true + +- object: Product2 + nickname: fam-memb + fields: + isActive: true + Name: Family Membership + StockKeepingUnit: FAM + Term__c: 1 + Term_Unit__c: Year + Upgrade_Path__c: + reference: + Downgrade_Path__c: + reference: + Family: Membership + friends: + - object: PricebookEntry + fields: + Pricebook2Id: ${{std_pricebook}} + Product2Id: + reference: fam-memb + UnitPrice: 150 + IsActive: true \ No newline at end of file