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.
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
- 17 Feb, 2020 40 commits
-
-
Danielle Lancashire authored
-
Tim Gross authored
This changeset adds a new core job `CoreJobCSIVolumePublicationGC` to the leader's loop for scheduling core job evals. Right now this is an empty method body without even a config file stanza. Later changesets will implement the logic of volume publication GC.
-
Danielle Lancashire authored
This commit introduces support for staging volumes when a plugin implements the STAGE_UNSTAGE_VOLUME capability. See the following for further reference material: https://github.com/container-storage-interface/spec/blob/4731db0e0bc53238b93850f43ab05d9355df0fd9/spec.md#nodestagevolume
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
This commit adds helpers that create and validate the staging directory for a given volume. It is currently missing usage options as the interfaces are not yet in place for those. The staging directory is only required when a volume has the STAGE_UNSTAGE Volume capability and has to live within the plugin root as the plugin needs to be able to create mounts inside it from within the container.
-
Danielle Lancashire authored
This package introduces some basic abstractions around mount utilties for various platforms. Initially it only supports linux, but the plan is to expand this as CSI expands across to other platforms.
-
Lang Martin authored
-
Lang Martin authored
* structs: CSIPlugin indexes jobs acting as plugins and node updates * schema: csi_plugins table for CSIPlugin * nomad: csi_endpoint use vol.Denormalize, plugin requests * nomad: csi_volume_endpoint: rename to csi_endpoint * agent: add CSI plugin endpoints * state_store_test: use generated ids to avoid t.Parallel conflicts * contributing: add note about registering new RPC structs * command: agent http register plugin lists * api: CSI plugin queries, ControllerHealthy -> ControllersHealthy * state_store: copy on write for volumes and plugins * structs: copy on write for volumes and plugins * state_store: CSIVolumeByID returns an unhealthy volume, denormalize * nomad: csi_endpoint use CSIVolumeDenormalizePlugins * structs: remove struct errors for missing objects * nomad: csi_endpoint return nil for missing objects, not errors * api: return meta from Register to avoid EOF error * state_store: CSIVolumeDenormalize keep allocs in their own maps * state_store: CSIVolumeDeregister error on missing volume * state_store: CSIVolumeRegister set indexes * nomad: csi_endpoint use CSIVolumeDenormalizePlugins tests
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle authored
Fix comment typo Co-Authored-By:
Tim Gross <tim@0x74696d.com>
-
Danielle Lancashire authored
This Commit adds the VolumeMounter interface, and the VolumeManager type. The volume manager will handle the lifecycle of all volumes for a given CSIPlugin on the node.
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
This commit extracts the fingerprint logic from the csi instance manager into its own struct. This change is to facilitate reusing the csimanager to also manage the node-local CSI functionality, as it is the easiest place for us to guaruntee health checking and to provide additional visibility into the running operations through the fingerprinter mechanism and goroutine.
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
-
Danielle Lancashire authored
Implements a fake version of NodeStageVolume as a dependency of implementing the client.NodeStageVolume request
-
Danielle Lancashire authored
This commit introduces a nomad model for interacting with CSI VolumeCapabilities as a pre-requisite for implementing NodeStageVolume and NodeMountVolume correctly. These fields have a few special characteristics that I've tried to model here - specificially, we make a basic attempt to avoid printing data that should be redacted during debug logs (additional mount flags), and also attempt to make debuggability of other integer fields easier by implementing the fmt.Stringer and fmt.GoStringer interfaces as necessary. We do not currnetly implement a CSI Protobuf -> Nomad implementation transformation as this is currently not needed by any used RPCs.
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-
Lang Martin authored
-