This project is mirrored from https://gitee.com/mirrors/nomad.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
  1. 10 Apr, 2019 7 commits
  2. 05 Apr, 2019 1 commit
  3. 29 Mar, 2019 1 commit
  4. 28 Feb, 2019 2 commits
  5. 25 Feb, 2019 1 commit
    • Danielle Tomlinson's avatar
      docker: Return undetected before first detection · 6c774e7b
      Danielle Tomlinson authored
      This commit causes the docker driver to return undetected before it
      first establishes a connection to the docker daemon.
      
      This fixes a bug where hosts without docker installed would return as
      unhealthy, rather than undetected.
      6c774e7b
  6. 22 Feb, 2019 1 commit
  7. 20 Feb, 2019 2 commits
    • Danielle Tomlinson's avatar
      docker: Avoid leaking containers during Reattach · df57099e
      Danielle Tomlinson authored
      Currently if a docker_logger cannot be reattached to, we will leak the
      container that was being used. This is problematic if e.g using static
      ports as it means you can never recover your task, or if a service is
      expensive to run and will then be running without supervision.
      df57099e
    • Danielle Tomlinson's avatar
      docker: Respawn docker logger during recovery · 274a3485
      Danielle Tomlinson authored
      Sometimes the nomad docker_logger may be killed by a service manager
      when restarting the client for upgrades or reliability reasons.
      
      Currently if this happens, we leak the users container and try to
      reschedule over it.
      
      This commit adds a new step to the recovery process that will spawn a
      new docker logger process that will fetch logs from _the current
      timestamp_. This is to avoid restarting users tasks because our logging
      sidecar has failed.
      274a3485
  8. 14 Feb, 2019 1 commit
  9. 23 Jan, 2019 1 commit
  10. 22 Jan, 2019 1 commit
  11. 18 Jan, 2019 2 commits
  12. 17 Jan, 2019 1 commit
  13. 16 Jan, 2019 3 commits
  14. 15 Jan, 2019 3 commits
    • Nick Ethier's avatar
      e7a4dbb8
    • oleksii.shyman's avatar
      Add support for docker runtimes · cc98f282
      oleksii.shyman authored
        - docker fingerprint issues a docker api system info call to get the
        list of supported OCI runtimes.
        - OCI runtimes are reported as comma separated list of names
        - docker driver is aware of GPU runtime presence
        - docker driver throws an error when user tries to run container with
        GPU, when GPU runtime is not present
        - docker GPU runtime name is configurable
      cc98f282
    • Danielle Tomlinson's avatar
      docker: Terminate dockerlogger · f9a45940
      Danielle Tomlinson authored
      Previously, we did not attempt to stop Docker Logger processes until
      DestroyTask, which means that under many circumstances, we will never
      successfully close the plugin client.
      
      This commit terminates the plugin process when `run` terminates, or when
      `DestroyTask` is called.
      
      Steps to repro:
      
      ```
      $ nomad agent -dev
      $ nomad init
      $ nomad run example.nomad
      $ nomad stop example
      $ ps aux | grep nomad # See docker logger process running
      $ signal the dev agent
      $ ps aux | grep nomad # See docker logger process running
      ```
      f9a45940
  15. 14 Jan, 2019 1 commit
  16. 12 Jan, 2019 1 commit
    • Nick Ethier's avatar
      executor: implement streaming stats API · fbf9a4c7
      Nick Ethier authored
      plugins/driver: update driver interface to support streaming stats
      
      client/tr: use streaming stats api
      
      TODO:
       * how to handle errors and closed channel during stats streaming
       * prevent tight loop if Stats(ctx) returns an error
      
      drivers: update drivers TaskStats RPC to handle streaming results
      
      executor: better error handling in stats rpc
      
      docker: better control and error handling of stats rpc
      
      driver: allow stats to return a recoverable error
      fbf9a4c7
  17. 08 Jan, 2019 3 commits
    • Mahmood Ali's avatar
      drivers: re-export ResourceUsage structs · 800a3522
      Mahmood Ali authored
      Re-export the ResourceUsage structs in drivers package to avoid drivers
      directly depending on the internal client/structs package directly.
      
      I attempted moving the structs to drivers, but that caused some import
      cycles that was a bit hard to disentagle.  Alternatively, I added an
      alias here that's sufficient for our purposes of avoiding external
      drivers depend on internal packages, while allowing us to restructure
      packages in future without breaking source compatibility.
      800a3522
    • Mahmood Ali's avatar
      move cstructs.DeviceNetwork to drivers pkg · c0162fab
      Mahmood Ali authored
      c0162fab
    • Danielle Tomlinson's avatar
      drivers: Implement InternalPluginDriver interface · 476e44b4
      Danielle Tomlinson authored
      This implements the InternalPluginDriver interface in each driver, and
      calls the cancellation fn for their respective eventers.
      
      This fixes a per task goroutine leak during test suite execution.
      476e44b4
  18. 19 Dec, 2018 1 commit
  19. 18 Dec, 2018 1 commit
    • Danielle Tomlinson's avatar
      docker: Delete Task on Destroy · ad4bac8d
      Danielle Tomlinson authored
      Currently the docker driver does not remove tasks from its state map
      when destroying the task, which leads to issues when restarting tasks in
      place, and leaks expired handles over time.
      ad4bac8d
  20. 11 Dec, 2018 1 commit
  21. 05 Dec, 2018 2 commits
  22. 30 Nov, 2018 2 commits
  23. 27 Nov, 2018 1 commit
    • Mahmood Ali's avatar
      Use user provided image name to launch container · 2310600d
      Mahmood Ali authored
      This allows the container to be tagged with a user friendly image name
      (e.g. `redis:3.2`) rather than the image ID (e.g.
      `sha256:87856cc39862cec77541d68382e4867d7ccb29a85a17221446c857ddaebca916`).
      
      Useful for human debugging, as well as some debugging and image scanning
      tools.
      
      This risks two bad changes:
      1. Discrepancy in image resolution between docker and Nomad's image
      loader.
        * I checked the image creation paths in Nomad, and noticed that we
      either pulled the image or inspect the image with the user provided
      name.
      
      2. A race in image tagging where the tag is modified between image
      loading and container creation.
        * I, personally, don't think this case is cause for concern, as it is
      analogous to the task running a bit later.  As long as the image is
      still present, creating the container should be good.
      2310600d