mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-27 18:31:15 +08:00
[vcpkg] Move CI cleaning back out of the 'ci' command into a separate command to restore cross-compilation preinstalls. (#11545)
This commit is contained in:
parent
1982faa57b
commit
d9b4acf02d
@ -35,6 +35,7 @@ jobs:
|
||||
- bash: toolsrc/build.rel/vcpkg-test
|
||||
displayName: 'Run vcpkg tests'
|
||||
- powershell: |
|
||||
./vcpkg x-ci-clean
|
||||
$skipList = ./scripts/azure-pipelines/generate-skip-list.ps1 -Triplet "x64-linux" -BaselineFile "$(System.DefaultWorkingDirectory)/scripts/ci.baseline.txt"
|
||||
mkdir $(System.ArtifactsDirectory)/xml-results
|
||||
$env:HOME = '/home/agent'
|
||||
|
@ -36,6 +36,7 @@ jobs:
|
||||
- bash: toolsrc/build.rel/vcpkg-test
|
||||
displayName: 'Run vcpkg tests'
|
||||
- powershell: |
|
||||
./vcpkg x-ci-clean
|
||||
$skip_list = ./scripts/azure-pipelines/generate-skip-list.ps1 -Triplet "x64-osx" -BaselineFile "$(System.DefaultWorkingDirectory)/scripts/ci.baseline.txt"
|
||||
mkdir $(System.ArtifactsDirectory)/xml-results
|
||||
./vcpkg ci x64-osx --x-xunit="$(System.ArtifactsDirectory)/xml-results/x64-osx.xml" --exclude=$skip_list --binarycaching
|
||||
|
@ -20,8 +20,15 @@ jobs:
|
||||
inputs:
|
||||
filename: 'bootstrap-vcpkg.bat'
|
||||
- powershell: |
|
||||
.\vcpkg.exe x-ci-clean
|
||||
$skipList = ./scripts/azure-pipelines/generate-skip-list.ps1 -Triplet "${{ parameters.triplet }}" -BaselineFile "$(System.DefaultWorkingDirectory)\scripts\ci.baseline.txt"
|
||||
mkdir $(System.ArtifactsDirectory)\xml-results
|
||||
# WORKAROUND: the x86-windows flavors of these are needed for all cross-compilation, but they are not auto-installed.
|
||||
# Install them so the CI succeeds:
|
||||
if ( "${{ parameters.triplet }}" -notmatch "x86-windows" -and "${{ parameters.triplet }}" -notmatch "x64-windows" ) {
|
||||
.\vcpkg.exe install protobuf:x86-windows boost-build:x86-windows sqlite3:x86-windows
|
||||
}
|
||||
|
||||
$command = ".\vcpkg.exe ci ${{ parameters.triplet }} --x-xunit=`"$(System.ArtifactsDirectory)\xml-results\${{ parameters.triplet }}.xml`" --exclude=$skipList --binarycaching"
|
||||
Set-Content -Path 'run_ci.cmd' -Value $command -Encoding ASCII
|
||||
displayName: 'Write Test Modified Ports Batch File'
|
||||
|
@ -166,14 +166,6 @@ boost-test:arm-uwp=fail
|
||||
boost-test:x64-uwp=fail
|
||||
boost-wave:arm-uwp=fail
|
||||
boost-wave:x64-uwp=fail
|
||||
# Building boost-* with arm-uwp requires the x86-windows boost-* which breaks CI testing, Ignore them
|
||||
boost-atomic:arm-uwp=ignore
|
||||
boost-signals:arm-uwp=ignore
|
||||
boost-exception:arm-uwp=ignore
|
||||
boost-regex:arm-uwp=ignore
|
||||
boost-nowide:arm-uwp=ignore
|
||||
boost-system:arm-uwp=ignore
|
||||
boost-container:arm-uwp=ignore
|
||||
botan:arm64-windows=fail
|
||||
botan:arm-uwp=fail
|
||||
botan:x64-uwp=fail
|
||||
|
@ -27,6 +27,11 @@ namespace vcpkg::Commands
|
||||
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, Triplet default_triplet);
|
||||
}
|
||||
|
||||
namespace CIClean
|
||||
{
|
||||
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths);
|
||||
}
|
||||
|
||||
namespace Env
|
||||
{
|
||||
extern const CommandStructure COMMAND_STRUCTURE;
|
||||
|
@ -397,12 +397,6 @@ namespace vcpkg::Commands::CI
|
||||
|
||||
const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE);
|
||||
|
||||
auto& filesystem = paths.get_filesystem();
|
||||
if (filesystem.is_directory(paths.installed))
|
||||
{
|
||||
filesystem.remove_all_inside(paths.installed, VCPKG_LINE_INFO);
|
||||
}
|
||||
|
||||
std::set<std::string> exclusions_set;
|
||||
auto it_exclusions = options.settings.find(OPTION_EXCLUDE);
|
||||
if (it_exclusions != options.settings.end())
|
||||
@ -558,11 +552,11 @@ namespace vcpkg::Commands::CI
|
||||
System::print2("Total elapsed time: ", result.summary.total_elapsed_time, "\n");
|
||||
result.summary.print();
|
||||
}
|
||||
auto& fs = paths.get_filesystem();
|
||||
|
||||
auto it_xunit = options.settings.find(OPTION_XUNIT);
|
||||
if (it_xunit != options.settings.end())
|
||||
{
|
||||
fs.write_contents(fs::u8path(it_xunit->second), xunitTestResults.build_xml(), VCPKG_LINE_INFO);
|
||||
paths.get_filesystem().write_contents(fs::u8path(it_xunit->second), xunitTestResults.build_xml(), VCPKG_LINE_INFO);
|
||||
}
|
||||
|
||||
Checks::exit_success(VCPKG_LINE_INFO);
|
||||
|
32
toolsrc/src/vcpkg/commands.ciclean.cpp
Normal file
32
toolsrc/src/vcpkg/commands.ciclean.cpp
Normal file
@ -0,0 +1,32 @@
|
||||
#include "pch.h"
|
||||
|
||||
#include <vcpkg/base/checks.h>
|
||||
#include <vcpkg/base/files.h>
|
||||
#include <vcpkg/commands.h>
|
||||
#include <vcpkg/vcpkgcmdarguments.h>
|
||||
|
||||
using namespace vcpkg;
|
||||
|
||||
namespace vcpkg::Commands::CIClean
|
||||
{
|
||||
void perform_and_exit(const VcpkgCmdArguments&, const VcpkgPaths& paths)
|
||||
{
|
||||
auto& fs = paths.get_filesystem();
|
||||
if (fs.is_directory(paths.buildtrees))
|
||||
{
|
||||
fs.remove_all_inside(paths.buildtrees, VCPKG_LINE_INFO);
|
||||
}
|
||||
|
||||
if (fs.is_directory(paths.installed))
|
||||
{
|
||||
fs.remove_all_inside(paths.installed, VCPKG_LINE_INFO);
|
||||
}
|
||||
|
||||
if (fs.is_directory(paths.packages))
|
||||
{
|
||||
fs.remove_all_inside(paths.packages, VCPKG_LINE_INFO);
|
||||
}
|
||||
|
||||
Checks::exit_success(VCPKG_LINE_INFO);
|
||||
}
|
||||
}
|
@ -48,6 +48,7 @@ namespace vcpkg::Commands
|
||||
{"autocomplete", &Autocomplete::perform_and_exit},
|
||||
{"hash", &Hash::perform_and_exit},
|
||||
{"fetch", &Fetch::perform_and_exit},
|
||||
{"x-ci-clean", &CIClean::perform_and_exit},
|
||||
{"x-history", &PortHistory::perform_and_exit},
|
||||
{"x-vsinstances", &X_VSInstances::perform_and_exit},
|
||||
};
|
||||
|
@ -244,6 +244,7 @@
|
||||
<ClCompile Include="..\src\vcpkg\commands.buildexternal.cpp" />
|
||||
<ClCompile Include="..\src\vcpkg\commands.cache.cpp" />
|
||||
<ClCompile Include="..\src\vcpkg\commands.ci.cpp" />
|
||||
<ClCompile Include="..\src\vcpkg\commands.ciclean.cpp" />
|
||||
<ClCompile Include="..\src\vcpkg\commands.contact.cpp" />
|
||||
<ClCompile Include="..\src\vcpkg\commands.cpp" />
|
||||
<ClCompile Include="..\src\vcpkg\commands.create.cpp" />
|
||||
|
@ -48,6 +48,9 @@
|
||||
<ClCompile Include="..\src\vcpkg\commands.ci.cpp">
|
||||
<Filter>Source Files\vcpkg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\vcpkg\commands.ciclean.cpp">
|
||||
<Filter>Source Files\vcpkg</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\vcpkg\commands.contact.cpp">
|
||||
<Filter>Source Files\vcpkg</Filter>
|
||||
</ClCompile>
|
||||
|
Loading…
x
Reference in New Issue
Block a user