mirror of
https://github.com/go-task/task.git
synced 2025-06-23 00:38:19 +02:00
feat: remote taskfiles (HTTP) (#1152)
* feat: remote taskfiles over http * feat: allow insecure connections when --insecure flag is provided * feat: better error handling for fetch errors * fix: ensure cache directory always exists * fix: setup logger before everything else * feat: put remote taskfiles behind an experiment * feat: --download and --offline flags for remote taskfiles * feat: node.Read accepts a context * feat: experiment docs * chore: changelog * chore: remove unused optional param from Node interface * chore: tidy up and generalise NewNode function * fix: use sha256 in remote checksum * feat: --download by itself will not run a task * feat: custom error if remote taskfiles experiment is not enabled * refactor: BaseNode functional options and simplified FileNode * fix: use hex encoding for checksum instead of b64
This commit is contained in:
32
setup.go
32
setup.go
@ -23,21 +23,18 @@ import (
|
||||
)
|
||||
|
||||
func (e *Executor) Setup() error {
|
||||
e.setupLogger()
|
||||
if err := e.setCurrentDir(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := e.readTaskfile(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
e.setupFuzzyModel()
|
||||
|
||||
if err := e.setupTempDir(); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := e.readTaskfile(); err != nil {
|
||||
return err
|
||||
}
|
||||
e.setupFuzzyModel()
|
||||
e.setupStdFiles()
|
||||
e.setupLogger()
|
||||
if err := e.setupOutput(); err != nil {
|
||||
return err
|
||||
}
|
||||
@ -75,15 +72,22 @@ func (e *Executor) setCurrentDir() error {
|
||||
}
|
||||
|
||||
func (e *Executor) readTaskfile() error {
|
||||
var err error
|
||||
e.Taskfile, err = read.Taskfile(&read.FileNode{
|
||||
Dir: e.Dir,
|
||||
Entrypoint: e.Entrypoint,
|
||||
})
|
||||
uri := filepath.Join(e.Dir, e.Entrypoint)
|
||||
node, err := read.NewNode(uri, e.Insecure)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
e.Taskfile, err = read.Taskfile(
|
||||
node,
|
||||
e.Insecure,
|
||||
e.Download,
|
||||
e.Offline,
|
||||
e.TempDir,
|
||||
e.Logger,
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
e.Dir = filepath.Dir(e.Taskfile.Location)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user