<?xml version="1.0" encoding="UTF-8"?>
|
<Package Name="OpenTAP" xmlns="http://opentap.io/schemas/package" InfoLink="http://www.keysight.com/find/TAP" Version="$(GitVersion)" OS="$(Platform)" Architecture="$(Architecture)">
|
<Description>This is the OpenTAP package that contain the most common functionality used in test automation. It controls test plan (list of test steps) execution and provides access to functionality offered by plugins. This covers logging functionality, result handling (database) and instrument communication (user-developed hardware drivers, for example). OpenTAP also includes a CLI and a plugin manager that finds and handles plugins (test steps, DUT and Instrument interfaces, etc.).
|
<Status>Released</Status>
|
<Organisation>Keysight Technologies</Organisation>
|
</Description>
|
<Variables>
|
<!-- We include some native dependencies based on the platform and architecture, notably libgit2sharp -->
|
<Architecture Condition="$(Architecture) == ''">x64</Architecture>
|
<Platform Condition="$(Platform) == ''">Windows</Platform>
|
<!--Set Sign=false to disable Signing elements. This is useful for local debug builds -->
|
<Sign Condition="$(Sign) != false">true</Sign>
|
<!-- Set Debug=true to exclude documentation files and include debugging symbols -->
|
<Debug Condition="$(Debug) != true">false</Debug>
|
</Variables>
|
<SourceUrl>https://github.com/opentap/opentap</SourceUrl>
|
<SourceLicense>MPL-2.0</SourceLicense>
|
<Owner>OpenTAP</Owner>
|
<!-- Common files -->
|
<Files Condition="$(Debug) == false">
|
<File Path="tap.dll">
|
<SetAssemblyInfo Attributes="Version" />
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="OpenTap.dll">
|
<SetAssemblyInfo Attributes="Version" />
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="OpenTap.Package.dll">
|
<SetAssemblyInfo Attributes="Version" />
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="Packages/OpenTAP/OpenTap.Plugins.BasicSteps.dll" SourcePath="OpenTap.Plugins.BasicSteps.dll">
|
<SetAssemblyInfo Attributes="Version"/>
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="Packages/OpenTAP/OpenTap.Cli.dll" SourcePath="OpenTap.Cli.dll">
|
<SetAssemblyInfo Attributes="Version"/>
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="OpenTapApiReference.chm"
|
SourcePath="../../Help/OpenTapApiReference.chm"
|
Condition="$(Debug) == false"/>
|
</Files>
|
<!-- For debug builds. Includes debugging symbols and puts all the DLLs in the OpenTAP root directory. -->
|
<Files Condition="$(Debug) == true">
|
<File Path="tap.dll"/>
|
<File Path="tap.pdb"/>
|
<File Path="OpenTap.dll"/>
|
<File Path="OpenTap.pdb"/>
|
<File Path="OpenTap.Package.dll"/>
|
<File Path="OpenTap.Package.pdb"/>
|
<File Path="OpenTap.Plugins.BasicSteps.dll"/>
|
<File Path="OpenTap.Plugins.BasicSteps.pdb"/>
|
<File Path="OpenTap.Cli.dll"/>
|
<File Path="OpenTap.Cli.pdb"/>
|
<File Path="Packages/OpenTAP/Tap.Upgrader.pdb" SourcePath="Tap.Upgrader.pdb"/>
|
</Files>
|
|
<!-- Windows only files -->
|
<Files Condition="$(Platform) != Windows">
|
<File Path="tap.runtimeconfig.json" SourcePath="../../Shared/tap.runtimeconfig.json" />
|
</Files>
|
<Files Condition="$(Platform) == Windows">
|
<File Path="tap.runtimeconfig.json" SourcePath="../../Shared/tap.runtimeconfig.WindowsDesktop.json" />
|
<File Path="tap.exe">
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<!-- We ship an additional 'tap.exe' file because 'tap.exe' is not overwritten on Windows.
|
It is not possible to overwrite because that executable is currently installing OpenTAP.
|
This additional 'tap.exe.new' overwrites the previous 'tap.exe' file as a post-install action
|
We still need to ship the original 'tap.exe' file in the package in case the package is being deployed
|
by manually unzipping -->
|
<File Path="Packages/OpenTAP/tap.exe.new" SourcePath="tap.exe" >
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="Packages/OpenTAP/tap.dll.new" SourcePath="tap.dll" >
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<!-- The tap upgrader is only necessary on Windows because we cannot overwrite tap.exe otherwise -->
|
<File Path="Packages/OpenTAP/Tap.Upgrader.runtimeconfig.json" SourcePath="Tap.Upgrader.runtimeconfig.json"/>
|
<File Path="Packages/OpenTAP/Tap.Upgrader.exe" SourcePath="Tap.Upgrader.exe">
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="Packages/OpenTAP/Tap.Upgrader.dll" SourcePath="Tap.Upgrader.dll">
|
<SetAssemblyInfo Attributes="Version"/>
|
<Sign Certificate="Keysight Technologies, Inc" Condition="$(Sign)==true"/>
|
</File>
|
<File Path="Dependencies/LibGit2Sharp.0.27.0.0/git2-b7bad55.dll.$(Architecture)"/>
|
<File Path="Dependencies/LibGit2Sharp.0.27.0.0/git2-b7bad55.source" SourcePath="libgit2-b7bad55.source"/>
|
</Files>
|
<!-- Linux files -->
|
<Files Condition="$(Platform) == Linux">
|
<File Path="tap" SourcePath="tap.sh"/>
|
<File Path="Dependencies/LibGit2Sharp.0.27.0.0/libgit2-b7bad55.so.$(Architecture)"/>
|
</Files>
|
<!-- MacOS files -->
|
<Files Condition="$(Platform) == MacOS">
|
<File Path="tap" SourcePath="tap.sh"/>
|
<!-- <File Path="tap"/>-->
|
<File Path="Dependencies/LibGit2Sharp.0.27.0.0/libgit2-b7bad55.dylib.$(Architecture)"/>
|
</Files>
|
<!-- License Texts -->
|
<Files>
|
<File Path="Packages/OpenTAP/LICENSE.txt" SourcePath="LICENSE.txt" />
|
<File Path="Dependencies/LibGit2Sharp.0.27.0.0/LICENSE.txt"
|
SourcePath="libgit2sharp.license.md"/>
|
<File Path="Dependencies/Mono.Cecil.0.10.1.0/LICENSE.txt"
|
SourcePath="Mono.Cecil.License.txt"/>
|
<File Path="Dependencies/System.Reflection.Metadata.1.4.3.0/LICENSE.txt"
|
SourcePath="dotnet_mit_license.txt"/>
|
<File Path="Dependencies/System.Collections.Immutable.1.2.3.0/LICENSE.txt"
|
SourcePath="dotnet_mit_license.txt"/>
|
<File Path="Dependencies/Microsoft.CSharp.4.0.4.0/LICENSE.txt"
|
SourcePath="dotnet_mit_license.txt"/>
|
<File Path="Dependencies/System.ValueTuple.4.0.3.0/LICENSE.txt"
|
SourcePath="dotnet_mit_license.txt"/>
|
|
<File Path="Dependencies/System.Linq.4.1.0.0/LICENSE.txt"
|
SourcePath="dotnet_library_license.txt"/>
|
<File Path="Dependencies/DotNet.Glob.3.0.1.0/LICENSE.txt"
|
SourcePath="Dotnet.Glob.License.txt"/>
|
<File Path="Dependencies/Newtonsoft.Json.13.0.0.0/LICENSE.txt"
|
SourcePath="newtonsoft_mit_license.txt"/>
|
<!-- Manually added Newtonsoft dll since it is not being picked up automatically -->
|
<File Path="Dependencies/Newtonsoft.Json.13.0.0.0/Newtonsoft.Json.dll" SourcePath="Newtonsoft.Json.dll"/>
|
</Files>
|
<PackageActionExtensions Condition="$(Platform) != Windows">
|
<!-- An exit code of '1' means we failed to set the permission.
|
This happens when the user has read/write/execute permissions,
|
but doesn't actually own the file. This is the case for the Debian package
|
because the user doesn't own the installation, but belongs to a group that does.
|
This is usually fine because the file is already executable.
|
|
The alternative to suppressing this error is a broken installation, so even in the case
|
where 'tap' is not executable after an upgrade, this behavior where the user can fix
|
it with 'chmod +X' is still the preferable alternative.
|
-->
|
<ActionStep ActionName="install" ExeFile="chmod" Arguments="+x tap" ExpectedExitCodes="0,1" />
|
</PackageActionExtensions>
|
<PackageActionExtensions Condition="$(Platform) == Windows">
|
<ActionStep ActionName="install" ExeFile="Packages/OpenTAP/Tap.Upgrader.exe" />
|
</PackageActionExtensions>
|
</Package>
|