Andrey Nering
acfbbaa549
Merge branch 'master' into v3
2020-03-28 10:48:49 -03:00
Paul Varache
7453e688fd
Compile tasks before printing help or summary ( Closes #276 )
2020-01-26 21:32:20 +00:00
Andrey Nering
14d7f04a81
Always expode .TIMESTAMP and .STATUS when using status:
2019-09-14 18:04:41 -03:00
Andrey Nering
1a28e5e0d4
Few code improvements on #216
2019-09-14 17:54:41 -03:00
Stephen Prater
a1aec8178a
Export Time Struct to Template
2019-08-25 13:36:48 -07:00
Stephen Prater
db36bc67f1
Changes per feedback
2019-08-25 10:30:00 -07:00
Stephen Prater
e0f72a6193
Apply suggestions from code review
...
Co-Authored-By: Andrey Nering <andrey.nering@gmail.com >
2019-08-25 09:39:39 -07:00
Stephen Prater
1ee684b7c0
Expose timestamp and checksum to status
2019-08-25 09:39:39 -07:00
Stephen Prater
044d3a0ff9
Remove ignore_errors
2019-05-28 13:02:59 -07:00
Stephen Prater
659cae6a4c
Apply suggestions from code review
...
Co-Authored-By: Andrey Nering <andrey.nering@gmail.com >
2019-05-28 12:28:29 -07:00
Stephen Prater
bd5882f0f0
Add Preconditions to Tasks
2019-05-17 13:51:15 -07:00
Andrey Nering
aac6c5a1c7
Add hability to globally set environment variables
...
Closes #138
2019-01-02 12:06:12 -02:00
Andrey Nering
57a01aa6ff
Fix failing test
...
There was some breaking changes described at
https://github.com/mvdan/sh/issues/335#issuecomment-447605295
2018-12-24 15:19:53 -02:00
Andrey Nering
3cbc89769d
Re-write import paths to v2
2018-11-04 21:23:35 -02:00
Andrey Nering
feaf70922d
Allow ignore_error at task level
2018-08-05 12:53:42 -03:00
Tobias Salzmann
90a5f17f58
Merge branch 'master' into master
2018-08-01 10:47:25 +02:00
Andrey Nering
9f294b4d10
Refactor and move logic of reading Taskfiles to its own package
...
Idea to making things easier to start implementing #98
2018-07-22 16:10:20 -03: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
102f8ab74e
Expand environment variables on "dir", "sources" and "generates"
...
So a path like this works: $GOPATH/src/github.com/go-task/task
Allowing of "~" was also implemented. See #74 and baac067a1a
Fixes #116
2018-06-16 14:30:40 -03:00
Andrey Nering
a407b0a8eb
First step implementing "prefixed" output option
...
Ref #104
2018-04-22 15:41:53 -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
baac067a1a
expand home dir ("~" symbol) on paths
...
fixes #74
2017-11-02 10:25:50 -02:00
Andrey Nering
33b167215d
move some packages to the "internal" directory
...
- this makes it impossible to import these packages outside Task
- as a side effect, it makes the root directory cleaner
2017-10-15 17:58:21 -02:00
Andrey Nering
abb19dfbf8
print logs to stderr instead of stdout
...
also, don't print up-to-date status when the --silent flag was given
closes #68
2017-09-30 14:56:35 -03: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
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
394b69676a
rename func to handleShVar
2017-07-30 20:36:35 -03:00
Andrey Nering
f54dde4f78
func isUpToDate should be bound to Task struct
2017-07-30 19:45:59 -03:00
Andrey Nering
70ef9fbcfe
rename func: ReplaceVariables -> CompiledTask
2017-07-30 19:34:28 -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
d0b37df615
add silent mode to disable echoing of commands
2017-07-19 20:20:24 -03:00
Andrey Nering
72250b32d3
replace variables in a task once, instead of mixing these calls with unrelated code
...
this is the first big step of #45
now t.ReplaceVariable will return a copy of the task, but with variables
replaced
now we don't need to replace variables everywhere in the code, and will
make other refactorings easier
2017-07-16 16:09:55 -03:00
Andrey Nering
ce27e973be
hotpath for a blank variable template
2017-07-15 15:38:57 -03: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
5268df6bfd
only get variable map twice and implement vars template
...
ref #40
2017-07-08 16:00:17 -03:00
Andrey Nering
82e1c0f810
refactor: functions reorder (higher level first)
2017-07-08 15:13:27 -03:00
Andrey Nering
082fa321cb
rename 2 files
...
- read_taskfile.go -> taskfile.go
- variable_handling.go -> variables.go
2017-07-08 14:58:43 -03:00