diff options
| author | Rob Mensching <rob@firegiant.com> | 2021-05-07 01:04:20 -0700 |
|---|---|---|
| committer | Rob Mensching <rob@firegiant.com> | 2021-05-11 12:30:12 -0700 |
| commit | 5da97c750ef36518970eb0d3b02655b2eac75a35 (patch) | |
| tree | f0bda215ec07234630c4590e0792d760ccb47093 /src | |
| parent | df016066100df955d5ff98811e113fb2b1bd4b8a (diff) | |
| download | wix-5da97c750ef36518970eb0d3b02655b2eac75a35.tar.gz wix-5da97c750ef36518970eb0d3b02655b2eac75a35.tar.bz2 wix-5da97c750ef36518970eb0d3b02655b2eac75a35.zip | |
Assign download URL to files outside the MSI
Fixes wixtoolset/issues#6436
Diffstat (limited to 'src')
3 files changed, 6 insertions, 4 deletions
diff --git a/src/wix/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs b/src/wix/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs index 99e2eda5..18c1ddf8 100644 --- a/src/wix/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs +++ b/src/wix/WixToolset.Core.Burn/Bundles/ProcessMsiPackageCommand.cs | |||
| @@ -394,6 +394,7 @@ namespace WixToolset.Core.Burn.Bundles | |||
| 394 | UnresolvedSourceFile = cabinetName, | 394 | UnresolvedSourceFile = cabinetName, |
| 395 | ContainerRef = packagePayload.ContainerRef, | 395 | ContainerRef = packagePayload.ContainerRef, |
| 396 | ContentFile = true, | 396 | ContentFile = true, |
| 397 | DownloadUrl = packagePayload.DownloadUrl, | ||
| 397 | Packaging = packagePayload.Packaging, | 398 | Packaging = packagePayload.Packaging, |
| 398 | ParentPackagePayloadRef = packagePayload.Id.Id, | 399 | ParentPackagePayloadRef = packagePayload.Id.Id, |
| 399 | }); | 400 | }); |
| @@ -462,6 +463,7 @@ namespace WixToolset.Core.Burn.Bundles | |||
| 462 | UnresolvedSourceFile = name, | 463 | UnresolvedSourceFile = name, |
| 463 | ContainerRef = packagePayload.ContainerRef, | 464 | ContainerRef = packagePayload.ContainerRef, |
| 464 | ContentFile = true, | 465 | ContentFile = true, |
| 466 | DownloadUrl = packagePayload.DownloadUrl, | ||
| 465 | Packaging = packagePayload.Packaging, | 467 | Packaging = packagePayload.Packaging, |
| 466 | ParentPackagePayloadRef = packagePayload.Id.Id, | 468 | ParentPackagePayloadRef = packagePayload.Id.Id, |
| 467 | }); | 469 | }); |
diff --git a/src/wix/test/WixToolsetTest.CoreIntegration/ContainerFixture.cs b/src/wix/test/WixToolsetTest.CoreIntegration/ContainerFixture.cs index dd381dfe..1de38f33 100644 --- a/src/wix/test/WixToolsetTest.CoreIntegration/ContainerFixture.cs +++ b/src/wix/test/WixToolsetTest.CoreIntegration/ContainerFixture.cs | |||
| @@ -15,7 +15,7 @@ namespace WixToolsetTest.CoreIntegration | |||
| 15 | 15 | ||
| 16 | public class ContainerFixture | 16 | public class ContainerFixture |
| 17 | { | 17 | { |
| 18 | [Fact(Skip = "Test demonstrates failure")] | 18 | [Fact] |
| 19 | public void CanBuildWithCustomAttachedContainer() | 19 | public void CanBuildWithCustomAttachedContainer() |
| 20 | { | 20 | { |
| 21 | var folder = TestData.Get(@"TestData"); | 21 | var folder = TestData.Get(@"TestData"); |
| @@ -54,7 +54,7 @@ namespace WixToolsetTest.CoreIntegration | |||
| 54 | var ignoreAttributes = new Dictionary<string, List<string>> { { "Payload", new List<string> { "FileSize", "Hash" } } }; | 54 | var ignoreAttributes = new Dictionary<string, List<string>> { { "Payload", new List<string> { "FileSize", "Hash" } } }; |
| 55 | Assert.Equal(@"<Payload Id='FirstX64' FilePath='FirstX64\FirstX64.msi' FileSize='*' Hash='*' DownloadUrl='http://example.com//FirstX64/FirstX64/FirstX64.msi' Packaging='embedded' SourcePath='a0' Container='BundlePackages' />", payloads[0].GetTestXml(ignoreAttributes)); | 55 | Assert.Equal(@"<Payload Id='FirstX64' FilePath='FirstX64\FirstX64.msi' FileSize='*' Hash='*' DownloadUrl='http://example.com//FirstX64/FirstX64/FirstX64.msi' Packaging='embedded' SourcePath='a0' Container='BundlePackages' />", payloads[0].GetTestXml(ignoreAttributes)); |
| 56 | Assert.Equal(@"<Payload Id='FirstX86.msi' FilePath='FirstX86\FirstX86.msi' FileSize='*' Hash='*' DownloadUrl='http://example.com//FirstX86.msi/FirstX86/FirstX86.msi' Packaging='embedded' SourcePath='a1' Container='BundlePackages' />", payloads[1].GetTestXml(ignoreAttributes)); | 56 | Assert.Equal(@"<Payload Id='FirstX86.msi' FilePath='FirstX86\FirstX86.msi' FileSize='*' Hash='*' DownloadUrl='http://example.com//FirstX86.msi/FirstX86/FirstX86.msi' Packaging='embedded' SourcePath='a1' Container='BundlePackages' />", payloads[1].GetTestXml(ignoreAttributes)); |
| 57 | Assert.Equal(@"<Payload Id='fk1m38Cf9RZ2Bx_ipinRY6BftelU' FilePath='FirstX86\PFiles\MsiPackage\test.txt' FileSize='*' Hash='*' DownloadUrl='http://example.com/FirstX86/fk1m38Cf9RZ2Bx_ipinRY6BftelU/FirstX86/PFiles/MsiPackage/test.txt' Packaging='embedded' SourcePath='a2' Container='BundlePackages' />", payloads[2].GetTestXml(ignoreAttributes)); | 57 | Assert.Equal(@"<Payload Id='fk1m38Cf9RZ2Bx_ipinRY6BftelU' FilePath='FirstX86\PFiles\MsiPackage\test.txt' FileSize='*' Hash='*' DownloadUrl='http://example.com/FirstX86.msi/fk1m38Cf9RZ2Bx_ipinRY6BftelU/FirstX86/PFiles/MsiPackage/test.txt' Packaging='embedded' SourcePath='a2' Container='BundlePackages' />", payloads[2].GetTestXml(ignoreAttributes)); |
| 58 | Assert.Equal(@"<Payload Id='ff2L_N_DLQ.nSUi.l8LxG14gd2V4' FilePath='FirstX64\PFiles\MsiPackage\test.txt' FileSize='*' Hash='*' DownloadUrl='http://example.com/FirstX64/ff2L_N_DLQ.nSUi.l8LxG14gd2V4/FirstX64/PFiles/MsiPackage/test.txt' Packaging='embedded' SourcePath='a3' Container='BundlePackages' />", payloads[3].GetTestXml(ignoreAttributes)); | 58 | Assert.Equal(@"<Payload Id='ff2L_N_DLQ.nSUi.l8LxG14gd2V4' FilePath='FirstX64\PFiles\MsiPackage\test.txt' FileSize='*' Hash='*' DownloadUrl='http://example.com/FirstX64/ff2L_N_DLQ.nSUi.l8LxG14gd2V4/FirstX64/PFiles/MsiPackage/test.txt' Packaging='embedded' SourcePath='a3' Container='BundlePackages' />", payloads[3].GetTestXml(ignoreAttributes)); |
| 59 | } | 59 | } |
| 60 | } | 60 | } |
diff --git a/src/wix/test/WixToolsetTest.CoreIntegration/PayloadFixture.cs b/src/wix/test/WixToolsetTest.CoreIntegration/PayloadFixture.cs index 23f6a9ba..cb35976a 100644 --- a/src/wix/test/WixToolsetTest.CoreIntegration/PayloadFixture.cs +++ b/src/wix/test/WixToolsetTest.CoreIntegration/PayloadFixture.cs | |||
| @@ -194,8 +194,8 @@ namespace WixToolsetTest.CoreIntegration | |||
| 194 | "<Payload Id='burn.exe' FilePath='burn.exe' FileSize='*' Hash='*' Packaging='embedded' SourcePath='a0' Container='PackagesContainer' />", | 194 | "<Payload Id='burn.exe' FilePath='burn.exe' FileSize='*' Hash='*' Packaging='embedded' SourcePath='a0' Container='PackagesContainer' />", |
| 195 | "<Payload Id='test.msi' FilePath='test.msi' FileSize='*' Hash='*' DownloadUrl='http://example.com/id/test.msi/test.msi' Packaging='external' SourcePath='test.msi' />", | 195 | "<Payload Id='test.msi' FilePath='test.msi' FileSize='*' Hash='*' DownloadUrl='http://example.com/id/test.msi/test.msi' Packaging='external' SourcePath='test.msi' />", |
| 196 | "<Payload Id='LayoutOnlyPayload' FilePath='DownloadUrlPlaceholdersBundle.wxs' FileSize='*' Hash='*' LayoutOnly='yes' DownloadUrl='http://example.com/id/LayoutOnlyPayload/DownloadUrlPlaceholdersBundle.wxs' Packaging='external' SourcePath='DownloadUrlPlaceholdersBundle.wxs' />", | 196 | "<Payload Id='LayoutOnlyPayload' FilePath='DownloadUrlPlaceholdersBundle.wxs' FileSize='*' Hash='*' LayoutOnly='yes' DownloadUrl='http://example.com/id/LayoutOnlyPayload/DownloadUrlPlaceholdersBundle.wxs' Packaging='external' SourcePath='DownloadUrlPlaceholdersBundle.wxs' />", |
| 197 | @"<Payload Id='fhuZsOcBDTuIX8rF96kswqI6SnuI' FilePath='MsiPackage\test.txt' FileSize='*' Hash='*' Packaging='external' SourcePath='MsiPackage\test.txt' />", | 197 | @"<Payload Id='fhuZsOcBDTuIX8rF96kswqI6SnuI' FilePath='MsiPackage\test.txt' FileSize='*' Hash='*' DownloadUrl='http://example.com/test.msiid/fhuZsOcBDTuIX8rF96kswqI6SnuI/MsiPackage/test.txt' Packaging='external' SourcePath='MsiPackage\test.txt' />", |
| 198 | @"<Payload Id='faf_OZ741BG7SJ6ZkcIvivZ2Yzo8' FilePath='MsiPackage\Shared.dll' FileSize='*' Hash='*' Packaging='external' SourcePath='MsiPackage\Shared.dll' />", | 198 | @"<Payload Id='faf_OZ741BG7SJ6ZkcIvivZ2Yzo8' FilePath='MsiPackage\Shared.dll' FileSize='*' Hash='*' DownloadUrl='http://example.com/test.msiid/faf_OZ741BG7SJ6ZkcIvivZ2Yzo8/MsiPackage/Shared.dll' Packaging='external' SourcePath='MsiPackage\Shared.dll' />", |
| 199 | }, payloads); | 199 | }, payloads); |
| 200 | 200 | ||
| 201 | var containers = extractResult.SelectManifestNodes("/burn:BurnManifest/burn:Container") | 201 | var containers = extractResult.SelectManifestNodes("/burn:BurnManifest/burn:Container") |
