{"id":23682876,"url":"https://github.com/yindia/iapetus","last_synced_at":"2026-05-07T05:33:47.341Z","repository":{"id":270105043,"uuid":"909348777","full_name":"yindia/iapetus","owner":"yindia","description":"Automate, test, and orchestrate anything that runs in a shell, container, or cloud. No YAML hell. No vendor lock-in. 100% open source.","archived":false,"fork":false,"pushed_at":"2025-06-22T11:33:29.000Z","size":9237,"stargazers_count":18,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-22T12:30:14.868Z","etag":null,"topics":["cicd","dag","golang","integration-testing","workflow-engine"],"latest_commit_sha":null,"homepage":"https://iapetus.readthedocs.io/en/latest/index.html","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yindia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-28T12:41:29.000Z","updated_at":"2025-06-22T12:11:23.000Z","dependencies_parsed_at":"2025-06-22T12:33:05.409Z","dependency_job_id":null,"html_url":"https://github.com/yindia/iapetus","commit_stats":null,"previous_names":["yindia/iapetus"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/yindia/iapetus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yindia%2Fiapetus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yindia%2Fiapetus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yindia%2Fiapetus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yindia%2Fiapetus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yindia","download_url":"https://codeload.github.com/yindia/iapetus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yindia%2Fiapetus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32724587,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cicd","dag","golang","integration-testing","workflow-engine"],"created_at":"2024-12-29T19:55:35.792Z","updated_at":"2026-05-07T05:33:47.334Z","avatar_url":"https://github.com/yindia.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# iapetus 🚀\n\n[![Go Reference](https://pkg.go.dev/badge/github.com/yindia/iapetus.svg)](https://pkg.go.dev/github.com/yindia/iapetus)\n[![Go Report Card](https://goreportcard.com/badge/github.com/yindia/iapetus)](https://goreportcard.com/report/github.com/yindia/iapetus)\n[![codecov](https://codecov.io/gh/yindia/iapetus/graph/badge.svg?token=6S99FUSPOC)](https://codecov.io/gh/yindia/iapetus)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n\n🚀 **Open-source workflow engine for DevOps, CI/CD, and automation**  \n⚡️ Automate, test, and orchestrate anything—shell, container, or cloud  \n\n---\n\n## ✨ Why iapetus?\n\n- ⚡️ **Lightning-fast**: Parallel, dependency-aware execution\n- 🔌 **Pluggable**: Bash, Docker, and custom backends\n- 🧪 **Assertions**: Output, exit code, JSON, regex, and more\n- 📝 **YAML or Go**: Use as config or code\n- 🛡️ **Battle-tested**: For CI/CD, DevOps, and E2E testing\n\n---\n\n## 🚀 Demo\n\n![demo](https://github.com/user-attachments/assets/521ce88d-609d-44bb-a605-244eb80429f9)\n\n---\n\n## ⚡️ Quickstart\n\n```sh\ngit clone https://github.com/yindia/iapetus.git\ncd iapetus/example/yaml\ngo run main.go\n```\n\n---\n\n## 📝 Example: YAML Workflow\n\n```yaml\nname: hello-world\nsteps:\n  - name: say-hello\n    command: echo\n    args: [\"Hello, iapetus!\"]\n    raw_asserts:\n      - output_contains: iapetus\n```\n\n---\n\n## 💻 Example: Go API\n\n```go\ntask := iapetus.NewTask(\"say-hello\", 2*time.Second, nil).\n    AddCommand(\"echo\").\n    AddArgs(\"Hello, iapetus!\").\n    AssertOutputContains(\"iapetus\")\nworkflow := iapetus.NewWorkflow(\"hello-world\", zap.NewNop()).AddTask(*task)\nworkflow.Run()\n```\n\n---\n\n## 🧩 Features\n\n- 🔄 **Parallel, dependency-aware execution**\n- ✅ **Built-in \u0026 custom assertions**\n- ⏱️ **Retries, timeouts, env vars, container images**\n- 🔌 **Plugin backends**: Bash, Docker, and more\n- 🪝 **Hooks for logging, metrics, and custom logic**\n- 📊 **Beautiful logs and error reporting**\n\n---\n\n## 🤝 Contributing\n\nWe welcome PRs, issues, and feedback! See [Contributing Guide](https://iapetus.readthedocs.io/en/latest/contributing.html).\n\n\n---\n\n🌟 **Star iapetus if you love it!**\n\n[![Star History Chart](https://api.star-history.com/svg?repos=yindia/iapetus\u0026type=Date)](https://www.star-history.com/#yindia/iapetus\u0026Date)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyindia%2Fiapetus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyindia%2Fiapetus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyindia%2Fiapetus/lists"}