mirror of
https://github.com/go-task/task.git
synced 2025-01-04 03:48:02 +02:00
feat: experiments flag (#1242)
This commit is contained in:
parent
02f1c8482a
commit
46f7bba90d
@ -10,6 +10,8 @@
|
||||
@sounisi5011).
|
||||
- Added the [gentle force experiment](https://taskfile.dev/experiments) as a
|
||||
draft (#1200, #1216 by @pd93).
|
||||
- Added an `--experiments` flag to allow you to see which experiments are
|
||||
enabled (#1242 by @pd93).
|
||||
- Added ability to specify which variables are required in a task (#1203, #1204
|
||||
by @benc-uk).
|
||||
|
||||
|
@ -70,6 +70,7 @@ var flags struct {
|
||||
color bool
|
||||
interval time.Duration
|
||||
global bool
|
||||
experiments bool
|
||||
}
|
||||
|
||||
func main() {
|
||||
@ -129,6 +130,7 @@ func run() error {
|
||||
pflag.IntVarP(&flags.concurrency, "concurrency", "C", 0, "Limit number tasks to run concurrently.")
|
||||
pflag.DurationVarP(&flags.interval, "interval", "I", 0, "Interval to watch for changes.")
|
||||
pflag.BoolVarP(&flags.global, "global", "g", false, "Runs global Taskfile, from $HOME/{T,t}askfile.{yml,yaml}.")
|
||||
pflag.BoolVar(&flags.experiments, "experiments", false, "Lists all the available experiments and whether or not they are enabled.")
|
||||
|
||||
// Gentle force experiment will override the force flag and add a new force-all flag
|
||||
if experiments.GentleForce {
|
||||
@ -150,6 +152,16 @@ func run() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
if flags.experiments {
|
||||
l := &logger.Logger{
|
||||
Stdout: os.Stdout,
|
||||
Stderr: os.Stderr,
|
||||
Verbose: flags.verbose,
|
||||
Color: flags.color,
|
||||
}
|
||||
return experiments.List(l)
|
||||
}
|
||||
|
||||
if flags.init {
|
||||
wd, err := os.Getwd()
|
||||
if err != nil {
|
||||
|
@ -5,8 +5,11 @@ import (
|
||||
"fmt"
|
||||
"os"
|
||||
"strings"
|
||||
"text/tabwriter"
|
||||
|
||||
"github.com/joho/godotenv"
|
||||
|
||||
"github.com/go-task/task/v3/internal/logger"
|
||||
)
|
||||
|
||||
const envPrefix = "TASK_X_"
|
||||
@ -41,3 +44,11 @@ func readDotEnv() error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func List(l *logger.Logger) error {
|
||||
w := tabwriter.NewWriter(os.Stdout, 0, 8, 6, ' ', 0)
|
||||
l.FOutf(w, logger.Yellow, "* ")
|
||||
l.FOutf(w, logger.Green, "GENTLE_FORCE")
|
||||
l.FOutf(w, logger.Default, ": \t%t\n", GentleForce)
|
||||
return w.Flush()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user