Hi Ivan,

Thank you for sharing your feedback. I will try to install all modules in
local agent's repository and run the build.

I will share updates.

Regards,
Saikat

On Tue, Dec 10, 2019 at 9:56 AM Ivan Pavlukhin <vololo...@gmail.com> wrote:

> Saikat,
>
> Let me share my understanding how do we run the majority of our jobs
> executing test suites. Hope it will help.
> 1. ~Build Apache Ignite~ in a separate run and publish everything as a
> single artifact ignite.zip (it contains ignite working directory with
> compiled modules, e.g. modules/core/target and others).
> 2. Download and extract ignite.zip and run particular test suites
> against extracted files.
>
> In a such setup test suites run the same as you do it on your local
> machine and it always works with a single multi-module maven project
> (apache-ignite). So, all dependencies are resolved in the working
> directory.
>
> For a separate IgniteExtensions maven project you need to install all
> dependencies from downloaded ignite.zip into .m2/repository local to
> the agent. I suppose we can do it as follows:
> 1. Download ignite.zip and extract it into "ignite" subfolder.
> 2. Run a maven command installing all modules into local maven
> repository. Something like "mvn install" but here we need to make sure
> that nothing is compiled once again.
> 3. Build IgniteExtensions.
>
> There might be a better way to do the same, I just tried to describe a
> schema how it can be done.
>
> вт, 10 дек. 2019 г. в 06:30, Saikat Maitra <saikat.mai...@gmail.com>:
> >
> > Hi Ivan, Ilya
> >
> > Thank you for your reply. I have added you as dev in IgniteExtensions
> > project and you should be able to check the build configurations.
> >
> > Yes, when I set artifact dependencies for ~Build Apache Ignite~ similar
> to
> > other projects then I receive below error
> >
> > [ERROR] [ERROR] Could not find the selected project in the reactor:
> > :ignite-flink-ext @
> >
> > I do not see the same error when I am running the build in local and
> > maven package command can still get 2.9.0-SNAPSHOT dependencies from my
> > local .m2 repository but it is failing in teamcity.
> >
> > Regards,
> > Saikat
> >
> >
> >
> >
> > On Mon, Dec 9, 2019 at 5:18 AM Ilya Kasnacheev <
> ilya.kasnach...@gmail.com>
> > wrote:
> >
> > > Hello!
> > >
> > > I think that your build should depend on an Apache Ignite build(s) or
> just
> > > use an already released version.
> > >
> > > In the same fashion as all our teamcity depend on "Build Apache
> Ignite" and
> > > use its artifacts.
> > >
> > > Here you want Ignite snapshot but Teamcity does not know where to take
> it
> > > from.
> > >
> > > Regards,
> > > --
> > > Ilya Kasnacheev
> > >
> > >
> > > пн, 9 дек. 2019 г. в 06:40, Saikat Maitra <saikat.mai...@gmail.com>:
> > >
> > > > Hello,
> > > >
> > > > I am running into a problem specific to teamcity build for Ignite
> > > > Extensions project. When I set the dependencies to 2.9.0-SNAPSHOT I
> am
> > > > getting an error message during build as below
> > > >
> > > > [06:24:12][Step 4/5] Failed to execute goal on project
> ignite-flink-ext:
> > > > Could not resolve dependencies for project
> > > > org.apache.ignite.ext:ignite-flink-ext:jar:1.0.0-SNAPSHOT: The
> following
> > > > artifacts could not be resolved:
> > > > org.apache.ignite:ignite-core:jar:2.9.0-SNAPSHOT,
> > > > org.apache.ignite:ignite-core:jar:tests:2.9.0-SNAPSHOT,
> > > > org.apache.ignite:ignite-log4j:jar:2.9.0-SNAPSHOT,
> > > > org.apache.ignite:ignite-spring:jar:2.9.0-SNAPSHOT: Could not find
> > > artifact
> > > > org.apache.ignite:ignite-core:jar:2.9.0-SNAPSHOT in h2database.com (
> > > > https://h2database.com/m2-repo)
> > > >
> > > >
> > > > and if set artifact dependencies for ~Build Apache Ignite~ then I
> receive
> > > > below error
> > > >
> > > > [ERROR] [ERROR] Could not find the selected project in the reactor:
> > > > :ignite-flink-ext @
> > > >
> > > > Build url
> > > >
> > > >
> > >
> https://ci.ignite.apache.org/viewType.html?buildTypeId=IgniteExtensions_Build&branch_IgniteExtensions=pull%2F1%2Fhead&tab=buildTypeStatusDiv
> > > >
> > > > Can you please let me know if you faced similar problem with teamcity
> > > > build?
> > > >
> > > > I can set Ignite Extensions dependencies to released ignite-core
> > > artifacts
> > > > version like 2.7.6 and build works fine.
> > > >
> > > > Regards,
> > > > Saikat
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > On Sat, Nov 30, 2019 at 1:50 PM Saikat Maitra <
> saikat.mai...@gmail.com>
> > > > wrote:
> > > >
> > > > > Hello Denis,
> > > > >
> > > > > Thank you for your email and sharing your thoughts on the release
> > > > process.
> > > > > I will update the artifact id and dependencies for
> ignite-extensions
> > > > > accordingly.
> > > > >
> > > > > I had created Ignite-Extensions project as a root level project
> and in
> > > > > teamcity I was facing issues pulling dependencies for
> 2.8.0-SNAPSHOT
> > > > > whereas I was able to pull dependencies for ignite-core 2.7.6 from
> > > maven
> > > > > central. I will look into it further why teamcity build was not
> able to
> > > > > pull snapshot dependencies.
> > > > >
> > > > > I will also create "ignite-core-2.9+" branch for the upcoming
> release
> > > > > process.
> > > > >
> > > > > Thank you,
> > > > > Saikat
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On Wed, Nov 27, 2019 at 1:05 PM Denis Magda <dma...@apache.org>
> wrote:
> > > > >
> > > > >> Hi Saikat,
> > > > >>
> > > > >> Thanks for driving this activity forward and raising the
> question. Let
> > > > me
> > > > >> share my thoughts below and let's see what the broader community
> > > thinks.
> > > > >>
> > > > >> Each extension needs to have its own version unrelated to the
> core and
> > > > >> Maven's groupId parameter for extension artifacts should be
> > > > >> "org.apache.ignite.ext". For instance, the very first release of
> Flink
> > > > in
> > > > >> the form of extension should be pulled from Maven this way
> > > > >>
> > > > >> <dependency>
> > > > >>             <groupId>org.apache.ignite.ext</groupId>
> > > > >>             <artifactId>ignite-flink</artifactId>
> > > > >>             <version>1.0.0</version>
> > > > >> </dependency>
> > > > >>
> > > > >> When it comes to the releases, all the extensions need to be
> verified
> > > > for
> > > > >> an upcoming release and updated if needed (with the version
> increase
> > > > only
> > > > >> for those updated). Thus, looks like the extensions master needs
> to be
> > > > >> linked to the latest Ignite core snapshot. Whenever the core will
> be
> > > > being
> > > > >> prepared and any extensions need to be modified we can take this
> > > > approach:
> > > > >>
> > > > >>    - Create a branch of extensions for the upcoming core release.
> For
> > > > >>    instance, "ignite-core-2.9+" branch. That's just the branch
> name
> > > (and
> > > > >> not
> > > > >>    any Maven artifact name) with "+" sign implying that the
> updated
> > > > >> extensions
> > > > >>    will work for Ignite 2.9 and later until we need to update them
> > > again
> > > > >>    creating a release branch like "ignite-core-2.14+"
> > > > >>    - If only a subset of the extensions was updated then we need
> to
> > > > >> release
> > > > >>    those extensions to Maven. The goal is to avoid the practice of
> > > > >> publishing
> > > > >>    Flink or any other extension to Maven for every core release if
> > > there
> > > > >> are
> > > > >>    no changes.
> > > > >>    - As for a ZIP archive, we should prepare the archive for a
> > > download
> > > > >>    with the name like "ignite-core-2.9+"
> > > > >>
> > > > >>
> > > > >> -
> > > > >> Denis
> > > > >>
> > > > >>
> > > > >> On Tue, Nov 26, 2019 at 9:03 PM Saikat Maitra <
> > > saikat.mai...@gmail.com>
> > > > >> wrote:
> > > > >>
> > > > >> > Hello,
> > > > >> >
> > > > >> > I wanted to connect and discuss on the release process for
> > > > >> > ignite-extensions. As of today all our integrations since
> released
> > > > >> together
> > > > >> > were able to run build based on latest snapshot for example the
> > > > current
> > > > >> > build depends on 2.8.0-SNAPSHOT. If we are making
> ignite-extensions
> > > as
> > > > >> > separate project with different release cycle then it make
> sense to
> > > > have
> > > > >> > dependencies on core modules based on released artifact for
> example
> > > > the
> > > > >> > dependency for ignite-core would be 2.7.6
> > > > >> >
> > > > >> > Please review and share your thoughts.
> > > > >> >
> > > > >> > PR https://github.com/apache/ignite-extensions/pull/1
> > > > >> >
> > > > >> > Regards
> > > > >> > Saikat
> > > > >> >
> > > > >>
> > > > >
> > > >
> > >
>
>
>
> --
> Best regards,
> Ivan Pavlukhin
>

Reply via email to