From 04ebdb5c687a29bd73337e33eba1c11135da2c72 Mon Sep 17 00:00:00 2001 From: Max Ewing Date: Thu, 19 Aug 2021 12:06:27 +0100 Subject: [PATCH 01/32] chore: platform schema update to site map files --- .../devhub_DevelopmentHub/AppModuleSiteMap.xml | 4 ++++ .../devhub_DevelopmentHub/AppModuleSiteMap_managed.xml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap.xml b/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap.xml index df98e66..68ddd40 100644 --- a/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap.xml +++ b/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap.xml @@ -1,6 +1,10 @@  devhub_DevelopmentHub + False + True + True + True diff --git a/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap_managed.xml b/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap_managed.xml index c3deb54..a71e39b 100644 --- a/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap_managed.xml +++ b/src/solutions/devhub_DevelopmentHub_Develop/Extract/AppModuleSiteMaps/devhub_DevelopmentHub/AppModuleSiteMap_managed.xml @@ -1,6 +1,10 @@  devhub_DevelopmentHub + False + True + True + True From 7dcabaefdea05ae1056c005652030ded0088536f Mon Sep 17 00:00:00 2001 From: Max Ewing Date: Thu, 19 Aug 2021 12:24:15 +0100 Subject: [PATCH 02/32] feat!: parallel merges (CI platform agnostic) This commit enables parallel solution merges agnostic of CI/CD platform. There are further changes required to the devhub_DevelopmentHub_AzureDevOps solution and the sample Azure DevOps pipeline(s) to provide an Azure DevOps implementation. This commit also includes a significant amount of breaking changes intended to make the Development Hub more versatile and extensible in future. BREAKING CHANGE: The following breaking changes are included in this commit: - The application registration client credentials will no longer be stored in plaintext within the Development Hub per environment as this can be replaced by a single secure service connection on Azure DevOps (or equivalent in other CI/CD platforms in future) - Development solution will no longer be archived on the solution merge records after merging as pipeline artifacts is more suitable for this task - Some status reason transitions newly added between existing statuses - Some new required fields when creating a solution and environment (merge strategy and lifetime) --- .../Entities/devhub_environment/Entity.xml | 139 +++++++------ ...{9055186e-ceb9-4d30-bc5f-88433ecb87f1}.xml | 48 ++--- ...e-ceb9-4d30-bc5f-88433ecb87f1}_managed.xml | 48 ++--- ...{a4a4927d-ee98-49e2-b2e8-80daf3f97bdf}.xml | 19 +- ...d-ee98-49e2-b2e8-80daf3f97bdf}_managed.xml | 19 +- ...{91515219-2b79-eb11-a812-002248414025}.xml | 23 +-- ...9-2b79-eb11-a812-002248414025}_managed.xml | 23 +-- ...{0ef451fd-9013-49fc-a71d-65288fff4cd5}.xml | 8 +- ...{315fb094-91e7-46be-a7bb-e3dd68c0431e}.xml | 6 +- ...{3bc6edba-36b0-4dd7-a26c-03c3a6d9e6f8}.xml | 8 +- ...{698f250a-0eba-428c-adc4-1b8c4a2faf83}.xml | 8 +- ...{6bf35967-f49b-4411-93a1-31ccf95debe1}.xml | 6 +- ...{eae132e9-cdcc-4e8c-90bd-3acb38bca6be}.xml | 8 +- ...{97b0d9e0-dab1-41ae-8174-d252bfe633e6}.xml | 139 +------------ .../Entities/devhub_solution/Entity.xml | 51 ++++- ...{6d588ec7-f362-43b4-b68a-e2181734f959}.xml | 60 ++++-- ...7-f362-43b4-b68a-e2181734f959}_managed.xml | 60 ++++-- ...{cb116382-2b79-eb11-a812-002248414025}.xml | 34 ++-- ...2-2b79-eb11-a812-002248414025}_managed.xml | 34 ++-- ...{3fe92e4d-4835-4ce6-a1bd-a85092283b6d}.xml | 10 +- ...{62d1fe69-baec-452c-8dc6-b36843c1f186}.xml | 8 +- ...{b387e88d-e36f-4847-b447-2e62155cd888}.xml | 4 +- ...{d0e17777-70d6-4b40-9c51-84212aab6740}.xml | 4 +- ...{dc37d79a-d704-4a34-9e50-1d27bc75c416}.xml | 4 +- ...{fe73ecfd-3c1e-4dc3-a6f6-3f8ed36ba3d4}.xml | 4 +- .../Entities/devhub_solutionmerge/Entity.xml | 90 +++++++-- ...{6f14717f-673c-45a3-b862-4c3e7408be3f}.xml | 150 +++++--------- ...f-673c-45a3-b862-4c3e7408be3f}_managed.xml | 150 +++++--------- ...{131f5dd1-9e4a-ea11-a812-000d3a0b97ca}.xml | 22 ++- ...{2baece6c-461c-4a01-9ab5-cae63af2eb7c}.xml | 20 +- ...{4e38cbe4-9e4a-ea11-a812-000d3a0b97ca}.xml | 20 +- ...{93d7173f-5b4a-4585-9aac-de791fe4d445}.xml | 20 +- ...{bcabbfd7-a184-e911-a97e-0022480186c3}.xml | 20 +- ...{c3ae2ff7-0bef-4f99-a9f5-55130a4a6790}.xml | 18 +- ...{f926172c-9e4a-ea11-a812-000d3a0b97ca}.xml | 20 +- .../Extract/OptionSets/devhub_lifetime.xml | 25 +++ .../OptionSets/devhub_mergestrategy.xml | 25 +++ .../Extract/Other/Relationships.xml | 3 +- .../Other/Relationships/FileAttachment.xml | 23 --- .../Relationships/devhub_environment.xml | 34 ++++ .../Other/Relationships/devhub_solution.xml | 34 ++++ .../Extract/Other/Solution.xml | 185 ++++++++---------- ...-5849B0A6-1FFD-EB11-94EF-000D3AD6738D.xaml | 76 +++++++ ...-1FFD-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-823F6D6B-D5FA-EB11-94EF-000D3AD6738D.xaml | 150 ++++++++++++++ ...-D5FA-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-EE9BC39C-FFB2-E911-A97B-002248019881.xaml | 18 +- ...-A0F9AE2C-DE8B-4A1B-9604-0A24F2C1E36C.xaml | 158 +++++++++++++++ ...-DE8B-4A1B-9604-0A24F2C1E36C.xaml.data.xml | 34 ++++ ...-FA0BDFA2-BBFA-EB11-94EF-000D3AD6738D.xaml | 111 +++++++++++ ...-BBFA-EB11-94EF-000D3AD6738D.xaml.data.xml | 27 +++ ...-2EDB6882-1AFD-EB11-94EF-000D3AD6738D.xaml | 76 +++++++ ...-1AFD-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-810626DD-19FD-EB11-94EF-000D3AD6738D.xaml | 107 ++++++++++ ...-19FD-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-D7EA745D-BAFA-EB11-94EF-000D3AD6738D.xaml | 133 +++++++++++++ ...-BAFA-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-0A0D90B3-CBFE-EB11-94EF-000D3AD6738D.xaml | 78 ++++++++ ...-CBFE-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-1CCF96D9-1AFD-EB11-94EF-000D3AD6738D.xaml | 76 +++++++ ...-1AFD-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-061D64F1-D7FA-EB11-94EF-000D3AD6738D.xaml | 167 ++++++++++++++++ ...-D7FA-EB11-94EF-000D3AD6738D.xaml.data.xml | 30 +++ ...-FF45DEE1-34AA-4C9B-92C2-97DABDBFFF74.xaml | 117 +++++++++++ ...-34AA-4C9B-92C2-97DABDBFFF74.xaml.data.xml | 27 +++ ...-49C25D1D-FFFD-EB11-94EF-000D3AD6738D.json | 1 + ...-FFFD-EB11-94EF-000D3AD6738D.json.data.xml | 26 +++ ...-3CDF61F8-4EA9-4892-8D0A-C0C60F374B91.xaml | 107 ++++++++++ ...-4EA9-4892-8D0A-C0C60F374B91.xaml.data.xml | 28 +++ ...-C976585F-06B4-EA11-A812-000D3A86AD99.json | 1 + ...06B4-EA11-A812-000D3A86AD99.json.data.xml} | 6 +- ...-5004652F-F9B3-EA11-A812-000D3A86AD99.json | 2 +- ...-F9B3-EA11-A812-000D3A86AD99.json.data.xml | 4 +- ...-7CBCAAFF-8116-43F7-9A1C-BACD092C2380.xaml | 75 +++++++ ...-8116-43F7-9A1C-BACD092C2380.xaml.data.xml | 26 +++ ...-C976585F-06B4-EA11-A812-000D3A86AD99.json | 1 - 76 files changed, 2700 insertions(+), 806 deletions(-) create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/OptionSets/devhub_lifetime.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/OptionSets/devhub_mergestrategy.xml delete mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Other/Relationships/FileAttachment.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Commithashisshownwhenenvironmentisephemeral-5849B0A6-1FFD-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Commithashisshownwhenenvironmentisephemeral-5849B0A6-1FFD-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Environmentisrequiredtoapproveasequentialsolutionm-823F6D6B-D5FA-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Environmentisrequiredtoapproveasequentialsolutionm-823F6D6B-D5FA-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/MarkAsPrepared-A0F9AE2C-DE8B-4A1B-9604-0A24F2C1E36C.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/MarkAsPrepared-A0F9AE2C-DE8B-4A1B-9604-0A24F2C1E36C.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Mergestrategyisrequiredtoapproveasolutionmerge-FA0BDFA2-BBFA-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Mergestrategyisrequiredtoapproveasolutionmerge-FA0BDFA2-BBFA-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Nameisread-onlywhenenvironmentisephemeral-2EDB6882-1AFD-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Nameisread-onlywhenenvironmentisephemeral-2EDB6882-1AFD-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Solutionisshownwhenenvironmentisephemeral-810626DD-19FD-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Solutionisshownwhenenvironmentisephemeral-810626DD-19FD-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/StagingEnvironmentisrequiredwhenMergeStrategyisSeq-D7EA745D-BAFA-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/StagingEnvironmentisrequiredwhenMergeStrategyisSeq-D7EA745D-BAFA-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/URLisnotrequiredwhenstatusispendingprovision-0A0D90B3-CBFE-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/URLisnotrequiredwhenstatusispendingprovision-0A0D90B3-CBFE-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/URLisread-onlywhenenvironmentisephemeral-1CCF96D9-1AFD-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/URLisread-onlywhenenvironmentisephemeral-1CCF96D9-1AFD-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Versionnumbersarehiddenwhenmergestrategyisparallel-061D64F1-D7FA-EB11-94EF-000D3AD6738D.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Versionnumbersarehiddenwhenmergestrategyisparallel-061D64F1-D7FA-EB11-94EF-000D3AD6738D.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenaparallelsolutionmergeisdeleted-Setenvironment-FF45DEE1-34AA-4C9B-92C2-97DABDBFFF74.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenaparallelsolutionmergeisdeleted-Setenvironment-FF45DEE1-34AA-4C9B-92C2-97DABDBFFF74.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenaparallelsolutionmergeismergedorcancelled-Sete-49C25D1D-FFFD-EB11-94EF-000D3AD6738D.json create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenaparallelsolutionmergeismergedorcancelled-Sete-49C25D1D-FFFD-EB11-94EF-000D3AD6738D.json.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenasequentialsolutionmergeiscreated-Inheritenvir-3CDF61F8-4EA9-4892-8D0A-C0C60F374B91.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenasequentialsolutionmergeiscreated-Inheritenvir-3CDF61F8-4EA9-4892-8D0A-C0C60F374B91.xaml.data.xml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenasequentialsolutionmergeismerged-Approvethefir-C976585F-06B4-EA11-A812-000D3A86AD99.json rename src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/{Whenasolutionmergeismerged-Approvethefirstqueuedso-C976585F-06B4-EA11-A812-000D3A86AD99.json.data.xml => Whenasequentialsolutionmergeismerged-Approvethefir-C976585F-06B4-EA11-A812-000D3A86AD99.json.data.xml} (65%) create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenasolutionmergeiscreated-Inheritmergestrategyfr-7CBCAAFF-8116-43F7-9A1C-BACD092C2380.xaml create mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenasolutionmergeiscreated-Inheritmergestrategyfr-7CBCAAFF-8116-43F7-9A1C-BACD092C2380.xaml.data.xml delete mode 100644 src/solutions/devhub_DevelopmentHub_Develop/Extract/Workflows/Whenasolutionmergeismerged-Approvethefirstqueuedso-C976585F-06B4-EA11-A812-000D3A86AD99.json diff --git a/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/Entity.xml b/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/Entity.xml index eb39c46..e8d3865 100644 --- a/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/Entity.xml +++ b/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/Entity.xml @@ -131,11 +131,11 @@ - + nvarchar - devhub_clientid - devhub_clientid - required + devhub_commithash + devhub_commithash + none ValidForAdvancedFind|ValidForForm|ValidForGrid auto 1 @@ -162,33 +162,33 @@ 0 0 text - 36 - 72 + 40 + 80 - + - + - - nvarchar - devhub_clientsecret - devhub_clientsecret - required - ValidForAdvancedFind|ValidForForm|ValidForGrid + + primarykey + devhub_environmentid + devhub_environmentid + systemrequired + ValidForAdvancedFind|RequiredForGrid auto - 1 + 0 1 1 - 1 - 1 + 0 + 0 0 - 0.2.0 + 0.0.1.0 1 1 1 - 1 + 0 1 0 0 @@ -198,37 +198,34 @@ 0 0 - 0 - 0 + 1 + 1 0 - text - 100 - 200 - + - + - - primarykey - devhub_environmentid - devhub_environmentid - systemrequired - ValidForAdvancedFind|RequiredForGrid + + picklist + devhub_lifetime + devhub_lifetime + required + ValidForAdvancedFind|ValidForForm|ValidForGrid auto - 0 + 1 1 1 - 0 - 0 + 1 + 1 0 - 0.0.1.0 + 0.2.0 1 1 1 - 0 + 1 1 0 0 @@ -238,14 +235,16 @@ 0 0 - 1 + 0 1 0 + 353400000 + devhub_lifetime - + - + @@ -288,18 +287,17 @@ - - nvarchar - devhub_tenantid - devhub_tenantid - required + + lookup + devhub_solution + devhub_solution + none ValidForAdvancedFind|ValidForForm|ValidForGrid - auto 1 1 1 1 - 1 + 0 0 0.2.0 1 @@ -318,14 +316,13 @@ 0 0 0 - text - 36 - 72 + single + - + - + @@ -354,9 +351,9 @@ 1 0 - 0 + 1 0 - 0 + 1 0 url 200 @@ -733,7 +730,7 @@ auto 1 1 - 0 + 1 0 1 0 @@ -812,7 +809,7 @@ 0 0 - 0 + 1 0 status @@ -825,14 +822,34 @@ - + - - + - + + + + + + + + + + + + + + + + @@ -995,7 +1012,7 @@ devhub_/Images/devhub_Environment.svg devhub_/Images/devhub_Environment.svg devhub_/Images/devhub_Environment.svg - 0 + 1 1 0 0 diff --git a/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/FormXml/main/{9055186e-ceb9-4d30-bc5f-88433ecb87f1}.xml b/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/FormXml/main/{9055186e-ceb9-4d30-bc5f-88433ecb87f1}.xml index 1352997..68c1f0a 100644 --- a/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/FormXml/main/{9055186e-ceb9-4d30-bc5f-88433ecb87f1}.xml +++ b/src/solutions/devhub_DevelopmentHub_Develop/Extract/Entities/devhub_environment/FormXml/main/{9055186e-ceb9-4d30-bc5f-88433ecb87f1}.xml @@ -12,7 +12,7 @@