From 6cd32f0effc31ab9202782d7eca24cb07b270932 Mon Sep 17 00:00:00 2001 From: Maxim Muzafarov Date: Fri, 17 Jun 2022 16:22:54 +0300 Subject: [PATCH] IGNITE-17141 Use Maven to build .NET and update versions (#10087) * IGNITE-17141 Use maven for build .NET and update versions * IGNITE-17141 Fix header * IGNITE-17141 Fix cpp * IGNITE-17141 Fix review comments * Update DEVNOTES.txt Co-authored-by: Pavel Tupitsyn * Update DEVNOTES.txt Co-authored-by: Pavel Tupitsyn * IGNITE-17141 Fix review comments 2 * Update modules/platforms/dotnet/pom.xml Co-authored-by: Pavel Tupitsyn * IGNITE-17141 Fix review comments for property naming * IGNITE-17141 Fix review comments 3 * IGNITE-17141 Remove redundant dependency * Update DEVNOTES.txt Co-authored-by: Pavel Tupitsyn * Update DEVNOTES.txt Co-authored-by: Pavel Tupitsyn * IGINTE-17141 fix redundant nl Co-authored-by: Pavel Tupitsyn --- DEVNOTES.txt | 30 ++- modules/core/pom.xml | 27 +++ modules/ducktests/pom.xml | 27 ++- modules/platforms/cpp/CMakeLists.txt | 2 +- modules/platforms/cpp/pom.xml | 68 +++++++ modules/platforms/dotnet/DEVNOTES.txt | 9 + .../platforms/dotnet/SharedAssemblyInfo.cs | 4 +- modules/platforms/dotnet/pom.xml | 126 +++++++++++++ parent/pom.xml | 38 ++++ pom.xml | 175 +----------------- scripts/update-versions.sh | 4 +- 11 files changed, 317 insertions(+), 193 deletions(-) create mode 100644 modules/platforms/cpp/pom.xml create mode 100644 modules/platforms/dotnet/pom.xml diff --git a/DEVNOTES.txt b/DEVNOTES.txt index fb9b2e1ca939e..f65226705e25a 100644 --- a/DEVNOTES.txt +++ b/DEVNOTES.txt @@ -12,28 +12,26 @@ Further in our documentation, we always use the ./mvnw form. Please adapt it to Apache Ignite Maven Build Instructions ====================================== -1) Optional: build Apache Ignite.NET as described at modules/platforms/dotnet/DEVNOTES.txt. - -2) Compile and install: +1) Compile and install: ./mvnw clean install -Pall-java,all-scala,licenses -DskipTests - or if you have built Apache Ignite.NET on the first step use following command: - (Note that 'doxygen' should be installed before running this command.) + or if you have to build .NET part as well, use the following command: + (Note that 'doxygen', `docfx`, '.NET Core SDK 3.1', 'PowerShell' should be installed before running this command.) - ./mvnw clean install -Pall-java,all-scala,licenses -DskipTests -DclientDocs + ./mvnw clean install -Pall-java,all-scala,licenses,platforms -DskipTests -DclientDocs -3) Javadoc generation (optional): +2) Javadoc generation (optional): ./mvnw initialize -Pjavadoc -4) Build Apache Ignite assembly: +3) Build Apache Ignite assembly: ./mvnw initialize -Prelease Look for apache-ignite--bin.zip in ./target/bin directory. -5) Build Apache Ignite slim edition assembly: +4) Build Apache Ignite slim edition assembly: ./mvnw initialize -Prelease -Dignite.edition=apache-ignite-slim @@ -42,22 +40,20 @@ Apache Ignite Maven Build Instructions Apache Ignite with LGPL Maven Build Instructions ================================================ -1) Optional: build Apache Ignite.NET as described at modules/platforms/dotnet/DEVNOTES.txt. - -2) Compile and install: +1) Compile and install: ./mvnw clean install -Pall-java,all-scala,licenses -DskipTests - or if you have built Apache Ignite.NET on the first step use following command: - (Note that 'doxygen' should be installed before running this command.) + or if you have to build .NET part as well, use the following command: + (Note that 'doxygen', `docfx`, '.NET Core SDK 3.1', 'PowerShell' should be installed before running this command.) - ./mvnw clean install -Pall-java,all-scala,licenses -DskipTests -DclientDocs + ./mvnw clean install -Pall-java,all-scala,licenses,platforms -DskipTests -DclientDocs -3) Javadoc generation with LGPL (optional): +2) Javadoc generation with LGPL (optional): ./mvnw initialize -Pjavadoc,lgpl -4) Build Apache Ignite assembly with LGPL dependencies: +3) Build Apache Ignite assembly with LGPL dependencies: ./mvnw initialize -Prelease,lgpl -Dignite.edition=apache-ignite-lgpl diff --git a/modules/core/pom.xml b/modules/core/pom.xml index d5a0e62402700..58504b244eb8e 100644 --- a/modules/core/pom.xml +++ b/modules/core/pom.xml @@ -306,6 +306,33 @@ false + + + org.apache.maven.plugins + maven-antrun-plugin + + + update-versions + + run + + initialize + + + + + + + + + + + + + + + + diff --git a/modules/ducktests/pom.xml b/modules/ducktests/pom.xml index 3513249a47851..13d3a47ee025f 100644 --- a/modules/ducktests/pom.xml +++ b/modules/ducktests/pom.xml @@ -123,10 +123,29 @@ org.apache.maven.plugins - maven-deploy-plugin - - true - + maven-antrun-plugin + + + update-versions + + run + + initialize + + + + + + + + + + + + + + + diff --git a/modules/platforms/cpp/CMakeLists.txt b/modules/platforms/cpp/CMakeLists.txt index 6f620e5ff89eb..7b89b2d3fc57f 100644 --- a/modules/platforms/cpp/CMakeLists.txt +++ b/modules/platforms/cpp/CMakeLists.txt @@ -16,7 +16,7 @@ # cmake_minimum_required(VERSION 3.6) -project(Ignite.C++ VERSION 2.14.0.62943) +project(Ignite.C++ VERSION 2.14.0.22253) set(CMAKE_CXX_STANDARD 98) diff --git a/modules/platforms/cpp/pom.xml b/modules/platforms/cpp/pom.xml new file mode 100644 index 0000000000000..6edf82ad14dfa --- /dev/null +++ b/modules/platforms/cpp/pom.xml @@ -0,0 +1,68 @@ + + + + + + + 4.0.0 + + + org.apache.ignite + ignite-parent-internal + ${revision} + ../../../parent-internal/pom.xml + + + ignite-cpp + pom + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + update-versions + + run + + initialize + + + + + + + + + + + + + + + + + + + diff --git a/modules/platforms/dotnet/DEVNOTES.txt b/modules/platforms/dotnet/DEVNOTES.txt index ade3301c2bf48..2d0a51ac5a445 100644 --- a/modules/platforms/dotnet/DEVNOTES.txt +++ b/modules/platforms/dotnet/DEVNOTES.txt @@ -17,6 +17,15 @@ pwsh build.ps1 Resulting binaries will be in bin folder, and NuGet packages in nupkg folder. +Build Apache Ignite .NET with Maven +=================================== + +Note that .NET Core SDK 3.1 and PowerShell must be installed first. + +The command below will build the binaries and NuGet packages with Maven: + + ./mvnw clean install -am -pl modules/platforms/dotnet -DskipTests -P platforms + Solutions and Projects ====================== diff --git a/modules/platforms/dotnet/SharedAssemblyInfo.cs b/modules/platforms/dotnet/SharedAssemblyInfo.cs index 351f6fafad92b..0b0c75de240d3 100644 --- a/modules/platforms/dotnet/SharedAssemblyInfo.cs +++ b/modules/platforms/dotnet/SharedAssemblyInfo.cs @@ -24,6 +24,6 @@ [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] -[assembly: AssemblyVersion("2.14.0.62943")] -[assembly: AssemblyFileVersion("2.14.0.62943")] +[assembly: AssemblyVersion("2.14.0.22253")] +[assembly: AssemblyFileVersion("2.14.0.22253")] [assembly: AssemblyInformationalVersion("2.14.0")] diff --git a/modules/platforms/dotnet/pom.xml b/modules/platforms/dotnet/pom.xml new file mode 100644 index 0000000000000..23dc450ec0350 --- /dev/null +++ b/modules/platforms/dotnet/pom.xml @@ -0,0 +1,126 @@ + + + + + + + 4.0.0 + + + org.apache.ignite + ignite-parent-internal + ${revision} + ../../../parent-internal/pom.xml + + + ignite-dotnet + pom + + + + + ${project.groupId} + ignite-core + + + ${project.groupId} + ignite-indexing + + + ${project.groupId} + ignite-spring + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + + + update-versions + + run + + initialize + + + + + + + + + + + + + + + + + + + + + + + + build-dotnet + generate-sources + + + + + + + + + + run + + + + clean-native + clean + + run + + + + Basedir: ${project.basedir} + + + + + + + + + + + diff --git a/parent/pom.xml b/parent/pom.xml index c94823044defb..24f0e2f56f79d 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -169,6 +169,10 @@ false clean + + + ${ignite.majorVersion}.${ignite.minorVersion}.${ignite.incrementalVersion}.${ignite.buildNumber} + https://ignite.apache.org @@ -628,6 +632,40 @@ + + + + org.codehaus.mojo + build-helper-maven-plugin + + + + parse-version + + parse-version + + validate + + ignite + + + + thin-timestamp-property + + timestamp-property + + validate + + ignite.buildNumber + + yywwu + + + + diff --git a/pom.xml b/pom.xml index a32948a01cc00..57abf4f02d926 100644 --- a/pom.xml +++ b/pom.xml @@ -129,6 +129,14 @@ + + platforms + + modules/platforms/dotnet + modules/platforms/cpp + + + javadoc @@ -538,173 +546,6 @@ - - update-versions - - - - - org.apache.maven.plugins - maven-antrun-plugin - - - update-versions - - run - - validate - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -