package io.vamp.container_driver.marathon

case class AppResponse(app: App)

case class AppsResponse(apps: List[App])

case class App(id: String, instances: Int, cpus: Double, mem: Double, tasks: List[Task], healthChecks: List[MarathonHealthCheck])

/**
  * A class to compare the app and marathon app for checking whether Marathon needs to be updated based on config settings
  */
case class ComparableApp private (id: String, instances: Int, cpus: Double, mem: Double, healthChecks: List[MarathonHealthCheck])

object ComparableApp {
  def fromApp(app: App): ComparableApp =
    ComparableApp(app.id, app.instances, app.cpus, app.mem, app.healthChecks)

  def fromMarathonApp(marathonApp: MarathonApp): ComparableApp =
    ComparableApp(marathonApp.id, marathonApp.instances, marathonApp.cpus, marathonApp.mem, marathonApp.healthChecks)
}

case class Task(id: String, host: String, ports: List[Int], startedAt: Option[String])

package io.vamp.container_driver.marathon

case class AppResponse(app: App)

case class AppsResponse(apps: List[App])

case class App(id: String, instances: Int, cpus: Double, mem: Double, tasks: List[Task], healthChecks: List[MarathonHealthCheck])

/**
  * A class to compare the app and marathon app for checking whether Marathon needs to be updated based on config settings
  */
case class ComparableApp private (id: String, cpus: Double, mem: Double, healthChecks: List[MarathonHealthCheck])

object ComparableApp {
  def fromApp(app: App): ComparableApp =
    ComparableApp(app.id, app.cpus, app.mem, app.healthChecks)

  def fromMarathonApp(marathonApp: MarathonApp): ComparableApp =
    ComparableApp(marathonApp.id, marathonApp.cpus, marathonApp.mem, marathonApp.healthChecks)
}

case class Task(id: String, host: String, ports: List[Int], startedAt: Option[String])

--- 
+++ 
@@ -9,14 +9,14 @@
 /**
   * A class to compare the app and marathon app for checking whether Marathon needs to be updated based on config settings
   */
-case class ComparableApp private (id: String, cpus: Double, mem: Double, healthChecks: List[MarathonHealthCheck])
+case class ComparableApp private (id: String, instances: Int, cpus: Double, mem: Double, healthChecks: List[MarathonHealthCheck])
 
 object ComparableApp {
   def fromApp(app: App): ComparableApp =
-    ComparableApp(app.id, app.cpus, app.mem, app.healthChecks)
+    ComparableApp(app.id, app.instances, app.cpus, app.mem, app.healthChecks)
 
   def fromMarathonApp(marathonApp: MarathonApp): ComparableApp =
-    ComparableApp(marathonApp.id, marathonApp.cpus, marathonApp.mem, marathonApp.healthChecks)
+    ComparableApp(marathonApp.id, marathonApp.instances, marathonApp.cpus, marathonApp.mem, marathonApp.healthChecks)
 }
 
 case class Task(id: String, host: String, ports: List[Int], startedAt: Option[String])
Fix missing merge in ComparableApp
