@@ -35,6 +35,7 @@ func init() {
3535var convertCmd = newConvertCmd ()
3636
3737func newConvertCmd () * cobra.Command {
38+ var cfgData []byte
3839 res := & cobra.Command {
3940 Use : "convert [flags] <path/to/config_file>" ,
4041 Short : "Convert between yaml and Aerospike config format." ,
@@ -91,11 +92,6 @@ func newConvertCmd() *cobra.Command {
9192
9293 logger .Debugf ("Processing flag format value=%v" , srcFormat )
9394
94- fdata , err := os .ReadFile (srcPath )
95- if err != nil {
96- return err
97- }
98-
9995 var outFmt asconf.Format
10096 switch srcFormat {
10197 case asconf .AsConfig :
@@ -109,14 +105,14 @@ func newConvertCmd() *cobra.Command {
109105 // if the version option is empty,
110106 // try populating from the metadata
111107 if version == "" {
112- version , err = getMetaDataItem (fdata , metaKeyAerospikeVersion )
108+ version , err = getMetaDataItem (cfgData , metaKeyAerospikeVersion )
113109 if err != nil && ! force {
114110 return errors .Join (errMissingAerospikeVersion , err )
115111 }
116112 }
117113
118114 conf , err := asconf .NewAsconf (
119- fdata ,
115+ cfgData ,
120116 srcFormat ,
121117 outFmt ,
122118 version ,
@@ -142,7 +138,7 @@ func newConvertCmd() *cobra.Command {
142138
143139 // prepend metadata to the config output
144140 mtext , err := genMetaDataText (metaDataArgs {
145- src : fdata ,
141+ src : cfgData ,
146142 aerospikeVersion : version ,
147143 asconfigVersion : VERSION ,
148144 })
@@ -215,7 +211,15 @@ func newConvertCmd() *cobra.Command {
215211 return err
216212 }
217213
218- cfgData , err := os .ReadFile (args [0 ])
214+ // read stdin by default
215+ var srcPath string
216+ if len (args ) == 0 {
217+ srcPath = os .Stdin .Name ()
218+ } else {
219+ srcPath = args [0 ]
220+ }
221+
222+ cfgData , err = os .ReadFile (srcPath )
219223 if err != nil {
220224 return err
221225 }
0 commit comments