Andrey Nering
5eb1a1f7f5
Fixes to Taskfile including:
...
- Disallow recursive Taskfile including (i.e. included Taskfile including other Taskfiles)
- Write test for included a file instead of a directory
2018-10-13 17:52:09 -03:00
Andrey Nering
5a28560177
Write first test for including a Taskfile
2018-10-13 16:56:51 -03:00
Andrey Nering
76253bf516
Reduce code duplication on test
2018-08-05 12:56:55 -03:00
Andrey Nering
feaf70922d
Allow ignore_error at task level
2018-08-05 12:53:42 -03:00
Andrey Nering
550c116aea
Merge branch 'master' into master
2018-08-05 11:32:07 -03:00
Andrey Nering
a5f31a4280
Dry run small code style changes
2018-08-05 11:28:02 -03:00
Tobias Salzmann
90a5f17f58
Merge branch 'master' into master
2018-08-01 10:47:25 +02:00
Tobias Salzmann
108cb91d95
IgnoreError
...
* Document ignore_error
* ignore_error only for commands
2018-08-01 10:44:53 +02:00
Josh Bebbington
00a0755ff3
Added test for executor.DryRun
2018-07-31 23:17:21 +01:00
Andrey Nering
67105b332f
Move path expanding logic to shell.Expand
2018-07-15 15:49:00 -03:00
Tobias Salzmann
05600601ff
add ignoreError option
2018-07-10 10:44:58 +02:00
Andrey Nering
120d0be84c
Fixes panic on task --list
...
Fixes #99
2018-03-11 14:39:40 -03:00
Andrey Nering
1a3df08aca
Allow global variables in the Taskfile
...
Closes #66
2018-03-04 15:39:14 -03:00
Andrey Nering
2d4ca37226
Use semver for Taskfile versions
2018-03-03 18:54:42 -03:00
Andrey Nering
3556942516
Improve nested variables support
...
Closes #76 #89 #77 #83
2018-02-18 09:50:39 -03:00
Andrey Nering
87a200e42c
Extract some functionality to its own packages
...
Like variable and template handling, and logging
2018-02-17 16:12:41 -02:00
Andrey Nering
152fc0ad38
Move all structs related to Taskfile to its own package
2018-02-17 14:22:18 -02:00
Andrey Nering
134c6b79c4
Add Taskfile struct and start implementing new format
...
Updates #54 , #66 and #77
2017-12-29 18:46:15 -02:00
Andrey Nering
dfd890c8a6
Revert "simplify getVariables() and improve nested variables support"
...
This reverts commit 9619c7f54d
.
2017-11-19 18:46:46 -02:00
Andrey Nering
9619c7f54d
simplify getVariables() and improve nested variables support
...
/cc @smyrman
2017-11-17 00:54:26 -02:00
Andrey Nering
44a52359dc
checksum: save them in a subdir .task/checksum
...
future-proof since the .task directory can be used to save other state
in the future
2017-11-02 10:37:02 -02:00
Andrey Nering
48bf09da21
remove deprecated set
keyword
2017-09-17 11:24:30 -03:00
Andrey Nering
c295a1998a
add checksum based status check, alternative to timestamp based
2017-09-17 11:06:47 -03:00
Andrey Nering
f3097845b4
allow assigning variables to tasks at run time via CLI
...
using a similar syntax than setting env variables to command in bash,
but used right after the task:
```bash
task print MESSAGE=Hello!
```
closes #33
2017-09-07 13:57:06 -03:00
Sindre Røkenes Myren
7a64530e83
Added suport for multiline variables from sh
...
Instead of giving an error on multiline results from sh, the results are
now stored as is, except that the last newline is stripped away to make
the output of most commands easy to use in shell commands.
Two helper functions have been added to help deal with multi-line
results. In addition, previous PascalCase template function names have
been renamed to camelCase for consistency with the sprig lib.
2017-09-04 10:14:09 +02:00
Sindre Røkenes Myren
72bfd94329
Fixes env: remove square braces and evaluate shell ( #62 )
...
Fixes bug #61 , and makes `env` work more similar to `vars` by allowing
dynamic shell values to be evaluated as part of `CompiledTask`.
2017-08-16 08:04:58 -03:00
Andrey Nering
bb1aff84cf
custom stdout for InitTaskfile func
2017-07-30 19:29:49 -03:00
Sindre Røkenes Myren
31faf05c3a
Reintroduce template evaluation in variables
...
With a recent commit, template evaluation for variables in tasks got
broken. This reindroudces temmplate evaluation in taks, and resolves
a series of issues that where previouisly present on master, such as:
- Taskvars did not get evaluated as templates.
- Taskvars would, in contrast to the documentation, _override_ task
variables for the taks called directly via `Executor.Run(args
...string)`. This caused different behaviour in the "default" task
v.s. other tasks.
This commit ensures:
- Priority order for variables is now according to the documentation,
also for the "default" task.
- Variables gets resolved in a particular order to ensure logical
access to varaibles on template compile time, and that template
compilation finds place _before_ resolution of dynamic variables.
This change also allows the following to work:
task:
vars:
A: "52"
B: "{{.A}}"
However, the following will always replace C with the uncompiled
`{{.A}}`:
task:
vars:
A: "52"
C: "{{.B}}"
B: "{{.A}}"
Several tests have also been added to prevent this feature from breaking
again. This should hopefully finally resolve issue #40 .
2017-07-22 00:50:23 +02:00
Andrey Nering
e8e914b11c
use YAML for dynamix variable instead of $ prefix
...
$ prefix still works but is now deprecated
before:
VAR: $echo var
after:
VAR:
sh: echo bar
closes #46
2017-07-15 15:28:59 -03:00
Andrey Nering
5ece1d74f6
fix Taskvars.yml vars not available while interpolating vars
prop
...
closes #40
2017-07-15 14:40:58 -03:00
Sindre Røkenes Myren
86a23849e0
Allow absolute path in generates section
...
Fixes issue #47 by allowing absolute paths in a task's generates and
sources sections. Tests are added for the generates section only at this
time.
2017-07-12 18:14:34 +02:00
Sindre Myren
a548c63a92
Bugfix: allow templating when calling deps
...
Fixes issue #42 by allowing for template evaluatation on task override
variables when the task is launched as dependency.
2017-07-09 23:48:36 +02:00
Andrey Nering
2dd3564da1
changed cyclic dep detection
...
since interpolation can be used, detection should be a execution time,
and not before
now, to prevent infinite execution, there's a miximum of 100 calls per
task
closes #37
2017-07-08 13:33:55 -03:00
Sindre Røkenes Myren
2f9381065d
Allow template evaluation in parameters
...
When passing variables to a sub-task, allow template evaluation
within the passed-on variables.
2017-07-07 00:47:56 +02:00
Andrey Nering
196d3cb13d
add custom Cmd and Dep types
2017-07-03 21:04:38 -03:00
Andrey Nering
ecfd8e8a62
change all tests to call functions instead of binary directly
...
I had to temporarely hack github.com/mvdan/sh to fix dir handling
2017-07-01 15:32:13 -03:00
Andrey Nering
81e0f170ef
accept setting dir of execution and improve tests
...
One test is not yet migrated. First we should have specific
Stdin, Stdout and Stderr for executor.
2017-06-24 20:09:05 -03:00
Andrey Nering
2615000609
Add --init flag to create a new Taskfile
2017-05-17 15:38:46 -03:00
Andrey Nering
2a2dfce137
Add status option to prevent task from running
...
Closes #27
2017-05-17 14:37:16 -03:00
Andrey Nering
59306cda38
Possibility to call another task
2017-03-25 15:26:42 -03:00
Andrey Nering
0db3e9a05d
Fix "=" not being reconized in variables/environment variables
...
Fixes #19
2017-03-25 11:01:44 -03:00
Andrey Nering
c2773a7287
Fix delete of files before test run
2017-03-25 10:52:41 -03:00
Andrey Nering
e28b0bc646
Write tests for variables
2017-03-25 10:51:30 -03:00
Andrey Nering
06633e2f99
Write first test for deps
2017-03-15 21:15:27 -03:00