-
-
Notifications
You must be signed in to change notification settings - Fork 616
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for 'platforms' in both task and command #980
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really like this proposal and the direction this is going in. Just a couple of small comments on the draft PR :)
@pd93 - addressed comments. Feels a lot cleaner now as you suggested 👍
|
@leaanthony The linting issue is just the imports not being sorted. You can fix this by running diff --git a/taskfile/platforms.go b/taskfile/platforms.go
index c748b15..ec0f7f2 100644
--- a/taskfile/platforms.go
+++ b/taskfile/platforms.go
@@ -2,9 +2,10 @@ package taskfile
import (
"fmt"
- "gopkg.in/yaml.v3"
"runtime"
"strings"
+
+ "gopkg.in/yaml.v3"
)
// Platform represents GOOS and GOARCH values
diff --git a/taskfile/task.go b/taskfile/task.go
index 12dc76b..c5a9a55 100644
--- a/taskfile/task.go
+++ b/taskfile/task.go
@@ -2,6 +2,7 @@ package taskfile
import (
"fmt"
+
"gopkg.in/yaml.v3"
) Not sure what is causing you to not be able to run the linter. I haven't seen that error before. |
@leaanthony The code layout looks good to me now. Just checked out the branch to try it out and I have a couple of observations: 1.If we have a Taskfile like: version: '3'
tasks:
default:
platforms: [linux/foo]
# ^ invalid arch
cmds:
- echo 'building...' The error message isn't quite right:
This should probably read 2.Do we want to support something like this? default:
platforms: [amd64]
cmds:
- echo 'building...' Or are we happy with only supporting FinallyOnce we're happy with the above, we could do with adding the following too:
Happy to help with any of this ^^^ |
Thanks for all the quick and informative feedback. I've pushed an update with the following changes:
I'll update the docs next 👍 |
Docs + Schema updated. I'm not 💯 on the schema updates so feedback appreciated 🙏 |
Hi @leaanthony! Thanks for your work, and quick response after code review as well! I just merged this to master and push a commit with small improvements: 2efb353. |
Brilliant! Thanks @andreynering and @pd93 for your fast and great feedback. This was a pleasure. |
Hey all, can you please review my PR to add I believe this was accidentally missed in this one - it still works, but my editor is providing false positive lint errors. Thanks! |
This is a draft PR based on the discussions in #978. It allows limiting a task or a command to a particulate OS/Arch combination. It also validates any given OS/Arch against a list of valid values.
Example Taskfile that is valid with this PR:
Todo:
testdata/platforms