Skip to content

Commit 4a8c79c

Browse files
committed
fix: all default taskfile name
1 parent 0a879b9 commit 4a8c79c

File tree

4 files changed

+16
-7
lines changed

4 files changed

+16
-7
lines changed

internal/compiler/compiler.go

+8-1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import (
1515
"github.com/go-task/task/v3/internal/templater"
1616
"github.com/go-task/task/v3/internal/version"
1717
"github.com/go-task/task/v3/taskfile/ast"
18+
"github.com/go-task/task/v3/taskfile/taskfile"
1819
)
1920

2021
type Compiler struct {
@@ -182,7 +183,13 @@ func (c *Compiler) ResetCache() {
182183
func (c *Compiler) getSpecialVars(t *ast.Task) (map[string]string, error) {
183184
entrypoint := c.Entrypoint
184185
if entrypoint == "" {
185-
entrypoint = "Taskfile.yml"
186+
for _, defaultName := range taskfile.DefaultTaskfiles {
187+
alt := filepathext.SmartJoin(c.Dir, defaultName)
188+
if _, err := os.Stat(alt); err == nil {
189+
entrypoint = alt
190+
break
191+
}
192+
}
186193
}
187194
return map[string]string{
188195
"TASK": t.Task,

taskfile/node_file.go

+3-2
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package taskfile
22

33
import (
44
"context"
5+
"github.com/go-task/task/v3/taskfile/taskfile"
56
"io"
67
"os"
78
"path/filepath"
@@ -53,7 +54,7 @@ func (node *FileNode) Read(ctx context.Context) ([]byte, error) {
5354
func resolveFileNodeEntrypointAndDir(l *logger.Logger, entrypoint, dir string) (string, string, error) {
5455
var err error
5556
if entrypoint != "" {
56-
entrypoint, err = Exists(l, entrypoint)
57+
entrypoint, err = taskfile.Exists(l, entrypoint)
5758
if err != nil {
5859
return "", "", err
5960
}
@@ -68,7 +69,7 @@ func resolveFileNodeEntrypointAndDir(l *logger.Logger, entrypoint, dir string) (
6869
return "", "", err
6970
}
7071
}
71-
entrypoint, err = ExistsWalk(l, dir)
72+
entrypoint, err = taskfile.ExistsWalk(l, dir)
7273
if err != nil {
7374
return "", "", err
7475
}

taskfile/node_http.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package taskfile
22

33
import (
44
"context"
5+
"github.com/go-task/task/v3/taskfile/taskfile"
56
"io"
67
"net/http"
78
"net/url"
@@ -38,7 +39,7 @@ func NewHTTPNode(
3839
}
3940
ctx, cf := context.WithTimeout(context.Background(), timeout)
4041
defer cf()
41-
url, err = RemoteExists(ctx, l, url)
42+
url, err = taskfile.RemoteExists(ctx, l, url)
4243
if err != nil {
4344
return nil, err
4445
}

taskfile/taskfile.go renamed to taskfile/taskfile/taskfile.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616
)
1717

1818
var (
19-
defaultTaskfiles = []string{
19+
DefaultTaskfiles = []string{
2020
"Taskfile.yml",
2121
"taskfile.yml",
2222
"Taskfile.yaml",
@@ -67,7 +67,7 @@ func RemoteExists(ctx context.Context, l *logger.Logger, u *url.URL) (*url.URL,
6767

6868
// If the request was not successful, append the default Taskfile names to
6969
// the URL and return the URL of the first successful request
70-
for _, taskfile := range defaultTaskfiles {
70+
for _, taskfile := range DefaultTaskfiles {
7171
// Fixes a bug with JoinPath where a leading slash is not added to the
7272
// path if it is empty
7373
if u.Path == "" {
@@ -110,7 +110,7 @@ func Exists(l *logger.Logger, path string) (string, error) {
110110
return filepath.Abs(path)
111111
}
112112

113-
for _, taskfile := range defaultTaskfiles {
113+
for _, taskfile := range DefaultTaskfiles {
114114
alt := filepathext.SmartJoin(path, taskfile)
115115
if _, err := os.Stat(alt); err == nil {
116116
l.VerboseOutf(logger.Magenta, "task: [%s] Not found - Using alternative (%s)\n", path, taskfile)

0 commit comments

Comments
 (0)