Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 7 additions & 3 deletions website/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -317,11 +317,15 @@ export default defineConfig({
collapsed: false,
items: [
{
text: 'go tool task',
text: 'GitHub SOSF',
link: '/blog/github-secure-open-source-program'
},
{
text: 'Using `go tool task`',
link: '/blog/go-tool-task'
},
},
{
text: 'New "if:" Control and Variable Prompt',
text: 'Conditionals Statements',
link: '/blog/if-and-variable-prompt'
}
]
Expand Down
53 changes: 53 additions & 0 deletions website/src/blog/github-secure-open-source-program.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
title: GitHub Secure Open Source Fund
description:
Task participated in the session 4 of the GitHub Secure Open Source program.
author: andreynering
date: 2026-08-15
outline: deep
editLink: false
---

# GitHub Secure Open Source Fund

<AuthorCard author="andreynering" />
<AuthorCard author="pd93" />
<AuthorCard author="vmaerten" />

Did you know that GitHub has a special program to fund security in open source?
It's the [GitHub Secure Open Source Fund][fund]. We were selected to participate
in session 4 that happened in May 2026 and it was really special for us.

71 maintainers from 50 different open source projects and across 22 countries
were selected to participate in the program. It was amazing to meet so many
maintainers from other critical open source projects to learn how to make the
open source software ecosystem more secure. We really acquired a meaningful
amount of knowledge about security and had the enjoyed opportunity to ask
questions and interact with both the GitHub Security Lab team and the other
maintainers.

Some of the topics we learned about:

- How to make CI and GitHub Actions more secure
- How to handle dependency updates in a secure way
- How to handle vulnerability reports
- How to use tools like CodeQL to make code more secure
- How to better review code contributions to avoid introducing security issues
- Many more...

During the program we took action to make Task more secure, especially with
regard to CI. Since then, we also handled a few different vulnerability reports,
and having the knowledge to do that definitely helped us in the process.

We also formalized our security policies and documented them in a new security
section of our website. See both our [incident response
plan][incident-response-plan] and our [threat model][threat-model].

Many thanks to the GitHub Security Lab for this opportunity! Want to read more?
GitHub wrote a blog post about session 4 that [you can read here][ghblog].

[fund]: https://github.com/open-source/github-secure-open-source-fund
[incident-response-plan]:
https://taskfile.dev/docs/security/incident-response-plan
[threat-model]: https://taskfile.dev/docs/security/threat-model
[ghblog]: https://github.blog/open-source/maintainers/what-50-open-source-projects-taught-us-about-security-in-the-ai-era/
10 changes: 5 additions & 5 deletions website/src/blog/go-tool-task.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ outline: deep
editLink: false
---

# `go tool task`
# Using `go tool task`

<AuthorCard :author="$frontmatter.author" />

Do you know that you can use Task without really needing to install it?

If you work with Go, you probably depend on external binaries like linters,
code generators and... Task.
If you work with Go, you probably depend on external binaries like linters, code
generators and... Task.

But asking your coworkers or contributors to install dependencies can be messy.
Everyone is on a different operating system, use a different package manager,
Expand Down Expand Up @@ -43,8 +43,8 @@ go tool task {arguments...}

That's all!

Go will compile the specified Task version on demand when calling `go tool task`.
Don't worry, Go caches the tool, so subsequent calls are faster.
Go will compile the specified Task version on demand when calling
`go tool task`. Don't worry, Go caches the tool, so subsequent calls are faster.

This is useful when running Task on CI, as you don't need to stress about having
to install it. It also means it'll be pinned to a specific Task version (but
Expand Down
36 changes: 21 additions & 15 deletions website/src/blog/if-and-variable-prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ outline: deep
editLink: false
---

# New `if:` Control and Variable Prompt
# Conditional Statements and Variable Prompts

<AuthorCard :author="$frontmatter.author" />

Expand Down Expand Up @@ -46,16 +46,16 @@ version: '3'
tasks:
conditional:
vars:
ENABLE_FEATURE: "true"
ENABLE_FEATURE: 'true'
cmds:
- cmd: echo "Feature is enabled"
if: '{{eq .ENABLE_FEATURE "true"}}'
- cmd: echo "Feature is disabled"
if: '{{ne .ENABLE_FEATURE "true"}}'
```

For more details, please check out the [documentation][if-docs].
The [examples][if-examples] from the test suite may be useful too.
For more details, please check out the [documentation][if-docs]. The
[examples][if-examples] from the test suite may be useful too.

::: info

Expand All @@ -68,9 +68,9 @@ but this would halt the execution of the task instead of skipping it.

## Prompt for Required Variables

For backward-compatibility reasons, this feature is disabled by default.
To enable it, either pass `--interactive` flag or add `interactive: true` to
your `.taskrc.yml`.
For backward-compatibility reasons, this feature is disabled by default. To
enable it, either pass `--interactive` flag or add `interactive: true` to your
`.taskrc.yml`.

Once you do that, Task will basically starting prompting you in runtime for any
required variables. In the example below, `NAME` will be prompted at runtime:
Expand Down Expand Up @@ -112,16 +112,22 @@ Once again, check out the [documentation][prompt-docs] for more details, and the

## Feedback

Let's us know if you have any feedback! You can find us on our
[Discord server][discord].
Let's us know if you have any feedback! You can find us on our [Discord
server][discord].

[release]: https://github.com/go-task/task/releases/tag/v3.47.0
[vmaerten]: https://github.com/vmaerten
[sources]: https://taskfile.dev/docs/guide#by-fingerprinting-locally-generated-files-and-their-sources
[status]: https://taskfile.dev/docs/guide#using-programmatic-checks-to-indicate-a-task-is-up-to-date
[preconditions]: https://taskfile.dev/docs/guide#using-programmatic-checks-to-cancel-the-execution-of-a-task-and-its-dependencies
[sources]:
https://taskfile.dev/docs/guide#by-fingerprinting-locally-generated-files-and-their-sources
[status]:
https://taskfile.dev/docs/guide#using-programmatic-checks-to-indicate-a-task-is-up-to-date
[preconditions]:
https://taskfile.dev/docs/guide#using-programmatic-checks-to-cancel-the-execution-of-a-task-and-its-dependencies
[if-docs]: https://taskfile.dev/docs/guide#conditional-execution-with-if
[if-examples]: https://github.com/go-task/task/blob/main/testdata/if/Taskfile.yml
[prompt-docs]: https://taskfile.dev/docs/guide#prompting-for-missing-variables-interactively
[prompt-examples]: https://github.com/go-task/task/blob/main/testdata/interactive_vars/Taskfile.yml
[if-examples]:
https://github.com/go-task/task/blob/main/testdata/if/Taskfile.yml
[prompt-docs]:
https://taskfile.dev/docs/guide#prompting-for-missing-variables-interactively
[prompt-examples]:
https://github.com/go-task/task/blob/main/testdata/interactive_vars/Taskfile.yml
[discord]: https://discord.com/invite/6TY36E39UK
13 changes: 11 additions & 2 deletions website/src/blog/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,16 @@ editLink: false
---

<BlogPost
title="go tool task"
title="GitHub Secure Open Source Fund"
url="/blog/github-secure-open-source-program"
date="2026-04-14"
author="andreynering"
description='Task participated in the fourth session of the GitHub Secure Open Source program.'
:tags="['github', 'security']"
/>

<BlogPost
title="Using `go tool task`"
url="/blog/go-tool-task"
date="2026-04-14"
author="andreynering"
Expand All @@ -14,7 +23,7 @@ description='How to use Task using "go tool".'
/>

<BlogPost
title='New "if:" Control and Variable Prompt'
title='Conditional Statements and Variable Prompts'
url="/blog/if-and-variable-prompt"
date="2026-01-24"
author="vmaerten"
Expand Down