This commit is contained in:
Darren 2018-12-12 11:43:09 -08:00
Родитель d242ae4910 b74fa61aae
Коммит ebfab10259
15 изменённых файлов: 172 добавлений и 14 удалений

Просмотреть файл

@ -15,6 +15,7 @@
<DefineConstants>$(DefineConstants);NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading">
<Version>15.8.168</Version>
</PackageReference>
@ -25,11 +26,13 @@
<PackageReference Include="Remote.Linq">
<Version>5.8.1</Version>
</PackageReference>
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives">
<Version>4.3.0</Version>
</PackageReference>
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage">
<Version>9.3.2</Version>
<Version>9.3.3</Version>
</PackageReference>
<PackageReference Include="CRA">
<Version>2018.11.5.1</Version>
@ -43,6 +46,9 @@
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>

Просмотреть файл

@ -17,19 +17,28 @@
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AmbrosiaLibCS" Version="2018.12.10.1" />
<PackageReference Include="AmbrosiaLibCS" Version="2018.12.12.1" />
<PackageReference Include="CRA" Version="2018.11.5.1" />
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives">
<Version>4.3.0</Version>
</PackageReference>
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
<PackageReference Update="Microsoft.NETCore.App=" Version="2.0.0=" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<None Update="app.config">

Просмотреть файл

@ -17,17 +17,26 @@
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CRA" Version="2018.11.5.1" />
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives">
<Version>4.3.0</Version>
</PackageReference>
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\Ambrosia\Ambrosia\Ambrosia.csproj" />

Просмотреть файл

@ -18,10 +18,25 @@
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage">
<Version>9.3.2</Version>
<Version>9.3.3</Version>
</PackageReference>
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="CRA" Version="2018.11.5.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -54,6 +54,9 @@ RUN cd Clients/C && make debug # publish
# -----------------------------------------------------------
ADD ./Scripts/runAmbrosiaService.sh bin/
# We currently use this as a baseline source of dependencies for generated code:
ADD ./Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj bin/AmbrosiaCS.csproj
# Remove unnecessary execute permissions:
# RUN cd bin && (chmod -x *.dll *.so *.dylib *.a 2>/dev/null || echo ok)

Просмотреть файл

@ -23,14 +23,22 @@
<!-- </Target> -->
<ItemGroup>
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.2" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
<PackageReference Include="CRA" Version="2018.11.5.1" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>

Просмотреть файл

@ -16,7 +16,27 @@
<PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('$(TargetFramework)', '^netcoreapp\d'))">
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CRA" Version="2018.11.5.1" />
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\Clients\CSharp\AmbrosiaLibCS\AmbrosiaLibCS.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -18,12 +18,27 @@
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CRA" Version="2018.11.5.1" />
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\Clients\CSharp\AmbrosiaLibCS\AmbrosiaLibCS.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
<ProjectReference Include="..\GeneratedSourceFiles\PTIAmbrosiaGeneratedAPINetCore\latest\PTIAmbrosiaGeneratedAPINetCore.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net46'">

Просмотреть файл

@ -16,7 +16,27 @@
<PropertyGroup Condition="$([System.Text.RegularExpressions.Regex]::IsMatch('$(TargetFramework)', '^netcoreapp\d'))">
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CRA" Version="2018.11.5.1" />
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\Clients\CSharp\AmbrosiaLibCS\AmbrosiaLibCS.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -59,6 +59,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PTIAmbrosiaGeneratedAPINet4
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PTIAmbrosiaGeneratedAPINetCore", "GeneratedSourceFiles\PTIAmbrosiaGeneratedAPINetCore\latest\PTIAmbrosiaGeneratedAPINetCore.csproj", "{029135E9-7945-4C57-8535-FF17FABB8A7E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "UnsafeDeregisterInstance", "..\..\DevTools\UnsafeDeregisterInstance\UnsafeDeregisterInstance.csproj", "{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -137,6 +139,12 @@ Global
{029135E9-7945-4C57-8535-FF17FABB8A7E}.Release|Any CPU.Build.0 = Release|Any CPU
{029135E9-7945-4C57-8535-FF17FABB8A7E}.Release|x64.ActiveCfg = Release|Any CPU
{029135E9-7945-4C57-8535-FF17FABB8A7E}.Release|x64.Build.0 = Release|Any CPU
{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}.Debug|Any CPU.ActiveCfg = Debug|x64
{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}.Debug|x64.ActiveCfg = Debug|x64
{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}.Debug|x64.Build.0 = Debug|x64
{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}.Release|Any CPU.ActiveCfg = Release|x64
{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}.Release|x64.ActiveCfg = Release|x64
{ECCAFBF6-2521-49AE-9ECC-5BDD6B8A567B}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Просмотреть файл

@ -18,12 +18,27 @@
<DefineConstants>NETCORE</DefineConstants>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CRA" Version="2018.11.5.1" />
<PackageReference Include="Microsoft.CodeAnalysis.Scripting" Version="2.7.0" />
<PackageReference Include="Microsoft.VisualStudio.Threading" Version="15.8.168" />
<PackageReference Include="Mono.Options.Core" Version="1.0.0" />
<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
<PackageReference Include="Remote.Linq" Version="5.8.1" />
<PackageReference Include="System.Collections.Concurrent" Version="4.3.0" />
<PackageReference Include="System.Runtime.Serialization.Primitives" Version="4.3.0" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="4.9.0" />
<PackageReference Include="WindowsAzure.Storage" Version="9.3.3" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\Clients\CSharp\AmbrosiaLibCS\AmbrosiaLibCS.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
<PackageReference Include="System.CodeDom">
<Version>4.5.0</Version>
</PackageReference>
<PackageReference Include="System.Configuration.ConfigurationManager">
<Version>4.5.0</Version>
</PackageReference>
<ProjectReference Include="..\GeneratedSourceFiles\PTIAmbrosiaGeneratedAPINetCore\latest\PTIAmbrosiaGeneratedAPINetCore.csproj" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' == 'net46'">

Просмотреть файл

@ -0,0 +1,16 @@
# ------------------------------
# OPTION (1)
# FROM ambrosia
# FROM microsoft/dotnet:2.0-sdk
# COPY --from=ambrosia /ambrosia/bin /ambrosia/bin
# ENV PATH="$PATH:/ambrosia/bin"
# ------------------------------
# OPTION (2)
FROM ambrosia-dev
# ------------------------------
ADD . /src
WORKDIR /src
# RUN ./build_dotnetcore.sh

Просмотреть файл

@ -9,9 +9,20 @@ DEST=CodeGenDependencies/$FMWK
rm -rf $DEST
mkdir -p $DEST
# Extra codegen dependence, put its code generator's own .csproj file in the resulting deps dir:
# TODO/FIXME: this should be replaced by a template which is modified by the user:
cp -f "../../Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj" $DEST/
if ! which AmbrosiaCS 2>/dev/null; then
echo "ERROR: AmbrosiaCS not on PATH"
exit 1
fi
RSRC=$(dirname `which AmbrosiaCS`)
if ! [ -d "$RSRC" ]; then
echo "Error: directory does not exist: $RSRC"
echo "Expected to find resource/ directory which is part of the AMBROSIA binary distribution."
exit 1
fi
# Baseline CodeGen dependencies:
cp -f "$RSRC/AmbrosiaCS.csproj" $DEST/AmbrosiaCS.csproj
# ^ TODO/FIXME the name should change from AmbrosiaCS.csproj
echo
echo "(STEP 1) Build enough so that we have compiled versions of our RPC interfaces"

Просмотреть файл

@ -77,17 +77,17 @@ case $mode in
# ----------------------------------------
check_az_storage_and_bail
# Test Application: PTI
# ----------------------------------------
cd "$AMBROSIA_ROOT"/InternalImmortals/PerformanceTestInterruptible
./run_small_PTI_and_shutdown.sh $INSTPREF
# Test Application: Native client hello
# ----------------------------------------
cd "$AMBROSIA_ROOT"/Clients/C
./run_hello_world.sh || echo "Allowed failure for now."
# Test Application: PTI (last because it's slow)
# ----------------------------------------------
cd "$AMBROSIA_ROOT"/InternalImmortals/PerformanceTestInterruptible
./run_small_PTI_and_shutdown.sh $INSTPREF
;;
*)

Просмотреть файл

@ -97,9 +97,11 @@ popd
set +x
echo
echo "Copying deployment script."
echo "Copying deployment script and other included resources."
cp -a Scripts/runAmbrosiaService.sh bin/
# (cd bin; ln -s Ambrosia ambrosia || echo ok)
# We currently use this as a baseline source of dependencies for generated code:
cp -a Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj bin/AmbrosiaCS.csproj
echo
echo "Building Native-code client library"
@ -107,7 +109,8 @@ echo "----------------------------------------"
if [ "$UNAME" == Linux ]; then
pushd Clients/C
make publish || \
echo "WARNING: Successfully built a dotnet core distribution, but without the native code wrapper library."
echo "WARNING: Non-fatal error." && \
echo "Successfully built a dotnet core distribution, but the native code wrapper failed to build."
popd
elif [ "$UNAME" == Darwin ]; then
echo "WARNING: not building native client for Mac OS."