src/server/pkg/ppsutil/util.go
func NewPipelineManifestReader(path string) (result *PipelineManifestReader, retErr error) {
	result = &PipelineManifestReader{}
	var pipelineReader io.Reader
	if path == "-" {
		pipelineReader = io.TeeReader(os.Stdin, &result.buf)
		fmt.Print("Reading from stdin.\n")
	} else if url, err := url.Parse(path); err == nil && url.Scheme != "" {
		resp, err := http.Get(url.String())
		if err != nil {
			return nil, err
		}
		defer func() {
			if err := resp.Body.Close(); err != nil && retErr == nil {
				retErr = err
			}
		}()
		rawBytes, err := ioutil.ReadAll(resp.Body)
		if err != nil {
			return nil, err
		}
		pipelineReader = io.TeeReader(strings.NewReader(string(rawBytes)), &result.buf)
	} else {
		rawBytes, err := ioutil.ReadFile(path)
		if err != nil {
			return nil, err
		}

		pipelineReader = io.TeeReader(strings.NewReader(string(rawBytes)), &result.buf)
	}
	result.decoder = json.NewDecoder(pipelineReader)
	return result, nil
}
func NewPipelineManifestReader(path string) (result *PipelineManifestReader, retErr error) {
	result = &PipelineManifestReader{}
	var pipelineReader io.Reader
	if path == "-" {
		pipelineReader = io.TeeReader(os.Stdin, &result.buf)
		fmt.Print("Reading from stdin.\n")
	} else if url, err := url.Parse(path); err == nil && url.Scheme != "" {
		resp, err := http.Get(url.String())
		if err != nil {
			return nil, err
		}
		defer func() {
			if err := resp.Body.Close(); err != nil && retErr == nil {
				retErr = err
			}
		}()
		rawBytes, err := ioutil.ReadAll(resp.Body)
		if err != nil {
			return nil, err
		}
		pipelineReader = io.TeeReader(strings.NewReader(string(rawBytes)), &result.buf)
	} else {
		rawBytes, err := ioutil.ReadFile(path)
		if err != nil {
			return nil, err
		}

		pipelineReader = io.TeeReader(strings.NewReader(string(rawBytes)), &result.buf)
	}
	result.decoder = json.NewDecoder(pipelineReader)
	return result, nil
}
func NewPipelineManifestReader ( path string ) ( result * PipelineManifestReader , retErr error ) { result = & PipelineManifestReader { } var pipelineReader io . Reader if path == " " { pipelineReader = io . TeeReader ( os . Stdin , & result . buf ) fmt . Print ( " \n " ) } else if url , err := url . Parse ( path ) ; err == nil && url . Scheme != " " { resp , err := http . Get ( url . String ( ) ) if err != nil { return nil , err } defer func ( ) { if err := resp . Body . Close ( ) ; err != nil && retErr == nil { retErr = err } } ( ) rawBytes , err := ioutil . ReadAll ( resp . Body ) if err != nil { return nil , err } pipelineReader = io . TeeReader ( strings . NewReader ( string ( rawBytes ) ) , & result . buf ) } else { rawBytes , err := ioutil . ReadFile ( path ) if err != nil { return nil , err } pipelineReader = io . TeeReader ( strings . NewReader ( string ( rawBytes ) ) , & result . buf ) } result . decoder = json . NewDecoder ( pipelineReader ) return result , nil }
// NewPipelineManifestReader creates a new manifest reader from a path.
NewPipelineManifestReader creates a new manifest reader from a path .