github.com/argoproj/argo-events@v1.9.1/sensors/artifacts/configmap.go (about)

     1  package artifacts
     2  
     3  import (
     4  	"github.com/argoproj/argo-events/common"
     5  	corev1 "k8s.io/api/core/v1"
     6  )
     7  
     8  // ConfigMapReader implements the ArtifactReader interface for K8s configmap
     9  type ConfigMapReader struct {
    10  	configmapArtifact *corev1.ConfigMapKeySelector
    11  }
    12  
    13  // NewConfigMapReader returns a new configmap reader
    14  func NewConfigMapReader(configmapArtifact *corev1.ConfigMapKeySelector) (*ConfigMapReader, error) {
    15  	return &ConfigMapReader{
    16  		configmapArtifact: configmapArtifact,
    17  	}, nil
    18  }
    19  
    20  func (c *ConfigMapReader) Read() (body []byte, err error) {
    21  	cm, err := common.GetConfigMapFromVolume(c.configmapArtifact)
    22  	if err != nil {
    23  		return nil, err
    24  	}
    25  	return []byte(cm), nil
    26  }