Skip to content

Commit

Permalink
Schema additions for Zip support (#2288)
Browse files Browse the repository at this point in the history
  • Loading branch information
ryfu-msft authored Jul 5, 2022
1 parent de4aa01 commit dea9a20
Show file tree
Hide file tree
Showing 71 changed files with 476 additions and 98 deletions.
51 changes: 51 additions & 0 deletions schemas/JSON/manifests/v1.3.0/manifest.installer.1.3.0.json
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,45 @@
],
"description": "Enumeration of supported installer types. InstallerType is required in either root level or individual Installer level"
},
"NestedInstallerType": {
"type": [ "string", "null" ],
"enum": [
"msix",
"msi",
"appx",
"exe",
"inno",
"nullsoft",
"wix",
"burn",
"portable"
],
"description": "Enumeration of supported nested installer types contained inside an archive file"
},
"NestedInstallerFiles": {
"type": [ "array", "null" ],
"items": {
"type": "object",
"title": "NestedInstallerFile",
"properties": {
"RelativeFilePath": {
"type": "string",
"minLength": 1,
"maxLength": 512,
"description": "The relative path to the nested installer file"
},
"PortableCommandAlias": {
"type": [ "string", "null" ],
"minLength": 1,
"maxLength": 40,
"description": "The command alias to be used for calling the package. Only applies to the nested portable package"
}
},
"description": "A nested installer file contained inside an archive"
},
"maxItems": 1024,
"description": "List of nested installer files contained inside an archive"
},
"Architecture": {
"type": "string",
"enum": [
Expand Down Expand Up @@ -492,6 +531,12 @@
"InstallerType": {
"$ref": "#/definitions/InstallerType"
},
"NestedInstallerType": {
"$ref": "#/definitions/NestedInstallerType"
},
"NestedInstallerFiles": {
"$ref": "#/definitions/NestedInstallerFiles"
},
"Scope": {
"$ref": "#/definitions/Scope"
},
Expand Down Expand Up @@ -611,6 +656,12 @@
"InstallerType": {
"$ref": "#/definitions/InstallerType"
},
"NestedInstallerType": {
"$ref": "#/definitions/NestedInstallerType"
},
"NestedInstallerFiles": {
"$ref": "#/definitions/NestedInstallerFiles"
},
"Scope": {
"$ref": "#/definitions/Scope"
},
Expand Down
51 changes: 51 additions & 0 deletions schemas/JSON/manifests/v1.3.0/manifest.singleton.1.3.0.json
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,45 @@
],
"description": "Enumeration of supported installer types. InstallerType is required in either root level or individual Installer level"
},
"NestedInstallerType": {
"type": [ "string", "null" ],
"enum": [
"msix",
"msi",
"appx",
"exe",
"inno",
"nullsoft",
"wix",
"burn",
"portable"
],
"description": "Enumeration of supported nested installer types contained inside an archive file"
},
"NestedInstallerFiles": {
"type": [ "array", "null" ],
"items": {
"type": "object",
"title": "NestedInstallerFile",
"properties": {
"RelativeFilePath": {
"type": "string",
"minLength": 1,
"maxLength": 512,
"description": "The relative path to the nested installer file"
},
"PortableCommandAlias": {
"type": [ "string", "null" ],
"minLength": 1,
"maxLength": 40,
"description": "The command alias to be used for calling the package. Only applies to the nested portable package"
}
},
"description": "A nested installer file contained inside an archive"
},
"maxItems": 1024,
"description": "List of nested installer files contained inside an archive"
},
"Architecture": {
"type": "string",
"enum": [
Expand Down Expand Up @@ -533,6 +572,12 @@
"InstallerType": {
"$ref": "#/definitions/InstallerType"
},
"NestedInstallerType": {
"$ref": "#/definitions/NestedInstallerType"
},
"NestedInstallerFiles": {
"$ref": "#/definitions/NestedInstallerFiles"
},
"Scope": {
"$ref": "#/definitions/Scope"
},
Expand Down Expand Up @@ -765,6 +810,12 @@
"InstallerType": {
"$ref": "#/definitions/InstallerType"
},
"NestedInstallerType": {
"$ref": "#/definitions/NestedInstallerType"
},
"NestedInstallerFiles": {
"$ref": "#/definitions/NestedInstallerFiles"
},
"Scope": {
"$ref": "#/definitions/Scope"
},
Expand Down
12 changes: 12 additions & 0 deletions src/AppInstallerCLITests/AppInstallerCLITests.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -409,6 +409,18 @@
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypePortable-InvalidCommands.yaml">
<DeploymentContent>true</DeploymentContent>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-MissingRelativeFilePath.yaml">
<DeploymentContent>true</DeploymentContent>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-MultipleNestedInstallers.yaml">
<DeploymentContent>true</DeploymentContent>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-NoNestedInstallerFile.yaml">
<DeploymentContent>true</DeploymentContent>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-NoNestedInstallerType.yaml">
<DeploymentContent>true</DeploymentContent>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerUniqueness-DefaultScope.yaml">
<DeploymentContent>true</DeploymentContent>
</CopyFileToFolders>
Expand Down
12 changes: 12 additions & 0 deletions src/AppInstallerCLITests/AppInstallerCLITests.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,18 @@
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypePortable-InvalidCommands.yaml">
<Filter>TestData</Filter>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-MissingRelativeFilePath.yaml">
<Filter>TestData</Filter>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-MultipleNestedInstallers.yaml">
<Filter>TestData</Filter>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-NoNestedInstallerFile.yaml">
<Filter>TestData</Filter>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerTypeZip-NoNestedInstallerType.yaml">
<Filter>TestData</Filter>
</CopyFileToFolders>
<CopyFileToFolders Include="TestData\Manifest-Bad-InstallerUniqueness.yaml">
<Filter>TestData</Filter>
</CopyFileToFolders>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ PackageLocale: en-US
Installers:
- Architecture: x86
InstallerType: MSIX
InstallerUrl: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
InstallerUrl: https://ThisIsNotUsed
InstallerSha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
AppsAndFeaturesEntries:
- DisplayName: DisplayName
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
InstallerType: Zip
InstallerType: Msi
License: Test
Installers:
- Arch: NotAnArch
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
InstallerType: Zip
InstallerType: Msi
License: Test
Installers:
- Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
- Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
Channel: release
InstallerType: Zip
InstallerType: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
INSTALLERTYPE: Zip
INSTALLERTYPE: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
installerType: Zip
installerType: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
installertype: Zip
installertype: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
InstallerType: Zip
installertype: Zip
InstallerType: Msi
installertype: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
InstallerType: Zip
installerType: Zip
InstallerType: Msi
installerType: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ Id: microsoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
Publisher: Microsoft
InstallerType: Zip
InstallerType: Msi
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
4 changes: 2 additions & 2 deletions src/AppInstallerCLITests/TestData/Manifest-Bad-IdInvalid.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
Id: m i c rosoft.msixsdk
Name: MSIX SDK
Version: 1.7.32
InstallerType: Zip
InstallerType: Msi
Publisher: Microsoft
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
4 changes: 2 additions & 2 deletions src/AppInstallerCLITests/TestData/Manifest-Bad-IdMissing.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Bad manifest. No Id
Name: MSIX SDK
Version: 1.7.32
InstallerType: Zip
InstallerType: Msi
Publisher: Microsoft
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Publisher: Microsoft
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
InstallerType: Exe
Switches:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Switches:
Interactive: /i
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
InstallerType: Exe
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ InstallerType: Exe
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
Switches:
Interactive: /i
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ Switches:
Interactive: /i
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ InstallerType: NotAType
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ Publisher: Microsoft
License: Test
Installers:
- Arch: x86
Url: https://rubengustorage.blob.core.windows.net/publiccontainer/msixsdk-x86.zip
Url: https://ThisIsNotUsed
Sha256: 98B67758CEAFFCBB3FE47838FD0A8D7BD581C2650842D6B2B0E0D49A23270CCD
ManifestVersion: 0.1.0
Loading

0 comments on commit dea9a20

Please sign in to comment.