Currently IgniteContext#ignite() method creates client node only if it is invoked on driver. However, in case standalone mode is used, this should happen also executors (or basically anywhere within Spark).
Most likely, it would be enough to replace this line:
if (sparkContext != null) igniteCfg.setClientMode(true)
with this:
if (standalone || sparkContext != null) igniteCfg.setClientMode(true)