diff --git a/Ambrosia/Ambrosia/Ambrosia.csproj b/Ambrosia/Ambrosia/Ambrosia.csproj index b2bcb72..eff5044 100644 --- a/Ambrosia/Ambrosia/Ambrosia.csproj +++ b/Ambrosia/Ambrosia/Ambrosia.csproj @@ -15,6 +15,7 @@ $(DefineConstants);NETCORE + 15.8.168 @@ -25,11 +26,13 @@ 5.8.1 + 4.3.0 + - 9.3.2 + 9.3.3 2018.11.5.1 @@ -43,6 +46,9 @@ + + 4.5.0 + 4.5.0 diff --git a/Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj b/Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj index e87681f..b89ec63 100644 --- a/Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj +++ b/Clients/CSharp/AmbrosiaCS/AmbrosiaCS.csproj @@ -17,19 +17,28 @@ NETCORE - + + + + + + 4.3.0 + 4.5.0 + + 4.5.0 + diff --git a/Clients/CSharp/AmbrosiaLibCS/AmbrosiaLibCS.csproj b/Clients/CSharp/AmbrosiaLibCS/AmbrosiaLibCS.csproj index 083127f..7cd96f4 100644 --- a/Clients/CSharp/AmbrosiaLibCS/AmbrosiaLibCS.csproj +++ b/Clients/CSharp/AmbrosiaLibCS/AmbrosiaLibCS.csproj @@ -17,17 +17,26 @@ NETCORE + + + + + 4.3.0 + 4.5.0 + + 4.5.0 + diff --git a/DevTools/UnsafeDeregisterInstance/UnsafeDeregisterInstance.csproj b/DevTools/UnsafeDeregisterInstance/UnsafeDeregisterInstance.csproj index 7f77f3a..e35f7ce 100644 --- a/DevTools/UnsafeDeregisterInstance/UnsafeDeregisterInstance.csproj +++ b/DevTools/UnsafeDeregisterInstance/UnsafeDeregisterInstance.csproj @@ -18,10 +18,25 @@ NETCORE + + + + + + + - 9.3.2 + 9.3.3 + + + 4.5.0 + + + 4.5.0 + + \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index a710546..c8d7743 100644 --- a/Dockerfile +++ b/Dockerfile @@ -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) diff --git a/ImmortalCoordinator/ImmortalCoordinator.csproj b/ImmortalCoordinator/ImmortalCoordinator.csproj index 0937242..03e53b6 100644 --- a/ImmortalCoordinator/ImmortalCoordinator.csproj +++ b/ImmortalCoordinator/ImmortalCoordinator.csproj @@ -23,14 +23,22 @@ + + - + + + + + + 4.5.0 + 4.5.0 diff --git a/InternalImmortals/PerformanceTestInterruptible/API/ServerAPI.csproj b/InternalImmortals/PerformanceTestInterruptible/API/ServerAPI.csproj index 42a7746..12bcda0 100644 --- a/InternalImmortals/PerformanceTestInterruptible/API/ServerAPI.csproj +++ b/InternalImmortals/PerformanceTestInterruptible/API/ServerAPI.csproj @@ -16,7 +16,27 @@ NETCORE + + + + + + + + + + + + + + + 4.5.0 + + + 4.5.0 + + \ No newline at end of file diff --git a/InternalImmortals/PerformanceTestInterruptible/Client/Job.csproj b/InternalImmortals/PerformanceTestInterruptible/Client/Job.csproj index f6146d7..2fd3e47 100644 --- a/InternalImmortals/PerformanceTestInterruptible/Client/Job.csproj +++ b/InternalImmortals/PerformanceTestInterruptible/Client/Job.csproj @@ -18,12 +18,27 @@ NETCORE + + + + + + + + + + + 4.5.0 + + + 4.5.0 + diff --git a/InternalImmortals/PerformanceTestInterruptible/IJob/IJob.csproj b/InternalImmortals/PerformanceTestInterruptible/IJob/IJob.csproj index ae8fee8..6dc99d8 100644 --- a/InternalImmortals/PerformanceTestInterruptible/IJob/IJob.csproj +++ b/InternalImmortals/PerformanceTestInterruptible/IJob/IJob.csproj @@ -16,7 +16,27 @@ NETCORE + + + + + + + + + + + + + + + 4.5.0 + + + 4.5.0 + + \ No newline at end of file diff --git a/InternalImmortals/PerformanceTestInterruptible/PerformanceTest.sln b/InternalImmortals/PerformanceTestInterruptible/PerformanceTest.sln index 16b1de8..33544c9 100644 --- a/InternalImmortals/PerformanceTestInterruptible/PerformanceTest.sln +++ b/InternalImmortals/PerformanceTestInterruptible/PerformanceTest.sln @@ -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 diff --git a/InternalImmortals/PerformanceTestInterruptible/Server/Server.csproj b/InternalImmortals/PerformanceTestInterruptible/Server/Server.csproj index 1efc5da..7508a81 100644 --- a/InternalImmortals/PerformanceTestInterruptible/Server/Server.csproj +++ b/InternalImmortals/PerformanceTestInterruptible/Server/Server.csproj @@ -18,12 +18,27 @@ NETCORE + + + + + + + + + + + 4.5.0 + + + 4.5.0 + diff --git a/Samples/HelloWorld/Dockerfile b/Samples/HelloWorld/Dockerfile new file mode 100644 index 0000000..0d84b7a --- /dev/null +++ b/Samples/HelloWorld/Dockerfile @@ -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 diff --git a/Samples/HelloWorld/build_dotnetcore.sh b/Samples/HelloWorld/build_dotnetcore.sh index f246a08..5409f0d 100755 --- a/Samples/HelloWorld/build_dotnetcore.sh +++ b/Samples/HelloWorld/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" diff --git a/Scripts/run_linux_ci.sh b/Scripts/run_linux_ci.sh index 8dc5b30..8e414bc 100755 --- a/Scripts/run_linux_ci.sh +++ b/Scripts/run_linux_ci.sh @@ -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 + ;; *) diff --git a/build_dotnetcore_bindist.sh b/build_dotnetcore_bindist.sh index 6b4cfeb..2420f51 100755 --- a/build_dotnetcore_bindist.sh +++ b/build_dotnetcore_bindist.sh @@ -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."