Apache Ignite GCE Module
------------------------

Apache Ignite GCE module provides Google Cloud Storage based implementations of IP finder for TCP discovery.

Depending on how you use Ignite, you can an extension using one of the following methods:

- If you use the binary distribution, move the lib/optional/{module-dir} to the lib directory before starting the node.
- Add libraries from lib/optional/{module-dir} to the classpath of your application.
- Add a module as a Maven dependency to your project.

Importing GCE Module In Maven Project
-------------------------------------

If you are using Maven to manage dependencies of your project, you can add GCE module
dependency like this (replace '${ignite.version}' with actual Ignite version you are
interested in):

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                        http://maven.apache.org/xsd/maven-4.0.0.xsd">
    ...
    <dependencies>
        ...
        <dependency>
            <groupId>org.apache.ignite</groupId>
            <artifactId>ignite-gce-ext</artifactId>
            <version>${ignite-gce-ext.version}</version>
        </dependency>
        ...
    </dependencies>
    ...
</project>
