Skip to content

Commit ec22eff

Browse files
committed
feat: support run entry from stdin
Signed-off-by: peefy <[email protected]>
1 parent e8cea33 commit ec22eff

File tree

4 files changed

+32
-4
lines changed

4 files changed

+32
-4
lines changed

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.10.0-beta.1
1+
0.10.0-beta.2

pkg/fs/util.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,18 @@ import (
77
"path/filepath"
88
)
99

10+
func GenTempFileFromStdin() (string, error) {
11+
tempFile, err := os.CreateTemp("", "stdin")
12+
if err != nil {
13+
return "", err
14+
}
15+
_, err = io.Copy(tempFile, os.Stdin)
16+
if err != nil {
17+
return "", err
18+
}
19+
return tempFile.Name(), nil
20+
}
21+
1022
func GetAllFilesInFolder(folderPath string, recursive bool) ([]string, error) {
1123
var fileList []string
1224

pkg/options/run.go

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ func (o *RunOptions) Run() error {
9898
if o.Quiet {
9999
cli.SetLogWriter(nil)
100100
}
101-
// acquire the lock of the package cache.
101+
// Acquire the lock of the package cache.
102102
err = cli.AcquirePackageCacheLock()
103103
if err != nil {
104104
return err
@@ -110,6 +110,18 @@ func (o *RunOptions) Run() error {
110110
err = releaseErr
111111
}
112112
}()
113+
// Generate temp entries from os.Stdin
114+
tempEntries := []string{}
115+
for i, entry := range o.Entries {
116+
if entry == "-" {
117+
entry, err := fs.GenTempFileFromStdin()
118+
if err != nil {
119+
return err
120+
}
121+
tempEntries = append(tempEntries, entry)
122+
o.Entries[i] = entry
123+
}
124+
}
113125
result, err = cli.Run(
114126
client.WithRunSourceUrls(o.Entries),
115127
client.WithSettingFiles(o.Settings),
@@ -133,6 +145,10 @@ func (o *RunOptions) Run() error {
133145
}
134146
return err
135147
}
148+
// Remove temp entries
149+
for _, entry := range tempEntries {
150+
_ = os.Remove(entry)
151+
}
136152
return o.writeResult(result)
137153
}
138154

pkg/version/version.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ func getVersion(version string) string {
3232
}
3333

3434
const (
35-
VersionTypeLatest = Version_0_10_0_beta1
35+
VersionTypeLatest = Version_0_10_0_beta2
3636

37-
Version_0_10_0_beta1 VersionType = "0.10.0-beta.1"
37+
Version_0_10_0_beta2 VersionType = "0.10.0-beta.2"
3838

3939
Version_0_9_8 VersionType = "0.9.8"
4040
Version_0_9_7 VersionType = "0.9.7"

0 commit comments

Comments
 (0)