{"id":24518004,"url":"https://github.com/getdutchie/task-lib","last_synced_at":"2026-01-03T00:03:33.943Z","repository":{"id":188573836,"uuid":"679002752","full_name":"GetDutchie/task-lib","owner":"GetDutchie","description":"Taskfile tasks for reuse","archived":false,"fork":false,"pushed_at":"2023-11-03T16:24:29.000Z","size":68,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-01-22T01:37:10.418Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GetDutchie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-08-15T22:17:01.000Z","updated_at":"2023-08-15T22:17:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"89d7547b-7196-4289-8707-65276a5d63f9","html_url":"https://github.com/GetDutchie/task-lib","commit_stats":null,"previous_names":["getdutchie/task-lib"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetDutchie%2Ftask-lib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetDutchie%2Ftask-lib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetDutchie%2Ftask-lib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GetDutchie%2Ftask-lib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GetDutchie","download_url":"https://codeload.github.com/GetDutchie/task-lib/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243719398,"owners_count":20336607,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-22T01:37:28.554Z","updated_at":"2026-01-03T00:03:33.915Z","avatar_url":"https://github.com/GetDutchie.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# task-lib\n\nTask Lib is a collection of re-usable tasks that work with [taskfile.dev](https://taskfile.dev/).\n\n## Usage\n\nThere is currently no native way to include remote task files into your project, but you have a couple of options.\n\n### 1. Fetch updates\n\nYou can use [go-getter]() to pull updates as needed. You can even implement this as a task in your `Taskfile.yml`.\n\n```yaml\nupdate:\n  desc: Update task dependencies\n  cmds:\n    - for: [tilt, python, rancher, yamlfmt]\n      cmd: |\n        go-getter github.com/GetDutchie/task-lib/tools/{{.ITEM}} .task/lib/tools/{{.ITEM}}\n```\n\nThis task will loop throught the components listed and download them to `.task/lib/tools/\u003ccomponent\u003e`.\n\n#### OR Git Submodules\n\nDon't like fetching updates? Take a look at [Git Tools Submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules) for information on submodules for git. Then include this repo (or a fork) as a submodule at `.task` or `.task-lib`.\n\n### 2. Include the tasks\n\nNow that the library taskfiles have been fetched they can be used. Taskfiles can [include](https://taskfile.dev/usage/#including-other-taskfiles) other taskfiles.\n\n```yaml\nincludes:\n  tilt: \".task/lib/tools/tilt/task.yaml\"\n  python: \".task/lib/tools/python/task.yaml\"\n  rancher: \".task/lib/tools/rancher/task.yaml\"\n  yamlfmt: \".task/lib/tools/yamlfmt/task.yaml\"\n```\n\nYou can then call the includes taskfiles and their tasks with the `\u003cnamespace\u003e:\u003ctask\u003e` format. For example:\n\n```yaml\nsetup:\n  cmds:\n    - task: yamlfmt:install\n```\n\nThe setup task will now call the `yamlfmt` libraries `install` task.\n\n## Windows\n\nOn Windows by default tools get installed in `${HOME}/tools`. Make sure to add this to your path.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetdutchie%2Ftask-lib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgetdutchie%2Ftask-lib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetdutchie%2Ftask-lib/lists"}