Exemple #1
0
func (identifier ResourceCacheIdentifier) CreateOn(logger lager.Logger, workerClient worker.Client) (worker.Volume, error) {
	ttl := time.Duration(0)

	if identifier.Version == nil {
		ttl = worker.VolumeTTL
	}

	return workerClient.CreateVolume(
		logger,
		worker.VolumeSpec{
			Strategy: worker.ResourceCacheStrategy{
				ResourceVersion: identifier.Version,
				ResourceHash:    GenerateResourceHash(identifier.Source, string(identifier.Type)),
			},
			Properties: identifier.volumeProperties(),
			Privileged: true,
			TTL:        ttl,
		},
	)
}