{"id":20231727,"url":"https://github.com/jnewland/yamsplode","last_synced_at":"2026-04-12T07:36:28.349Z","repository":{"id":66305159,"uuid":"116166161","full_name":"jnewland/yamsplode","owner":"jnewland","description":"🍠 💥 | Explodes multi-document Kubernetes YAML files into multiple files","archived":false,"fork":false,"pushed_at":"2019-02-12T19:53:47.000Z","size":15,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-03-29T17:26:28.982Z","etag":null,"topics":["kubernetes","yaml"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jnewland.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2018-01-03T17:54:49.000Z","updated_at":"2019-02-12T19:50:40.000Z","dependencies_parsed_at":"2023-02-20T21:00:36.829Z","dependency_job_id":null,"html_url":"https://github.com/jnewland/yamsplode","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/jnewland/yamsplode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jnewland%2Fyamsplode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jnewland%2Fyamsplode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jnewland%2Fyamsplode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jnewland%2Fyamsplode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jnewland","download_url":"https://codeload.github.com/jnewland/yamsplode/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jnewland%2Fyamsplode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31707953,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T06:22:27.080Z","status":"ssl_error","status_checked_at":"2026-04-12T06:21:52.710Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["kubernetes","yaml"],"created_at":"2024-11-14T07:49:10.007Z","updated_at":"2026-04-12T07:36:28.331Z","avatar_url":"https://github.com/jnewland.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# YAM(L)splode\n\nExplodes multi-document Kubernetes YAML files into multiple files, each containing a single YAML document.\n\n#### Motivation\n\nFor all sorts of valid reasons, folks seem to like distributing Kubernetes applications as one large file containing multiple YAML documents. I prefer to read (and sometimes edit) these sorts of files before blindly passing them to `kubectl`, and also generally prefer to store them in source control. Both of those things are way easier with a bunch of YAML files containing single documents rather than one large file. Thus, this tool.\n\n# Usage\n\n`yamsplode` is distributed as a Docker image that expects a single YAML file at `in.yaml`, and a directory at `/out`.\n\n    docker run --rm \\\n      -v ~/Downloads/istio-0.4.0/install/kubernetes/istio-auth.yaml:/in.yaml \\\n      -v ~/src/kubernetes-config/istio:/out \\\n      jnewland/yamsplode\n\n    Writing /out/namespaces/istio-system.yaml ...\n    Writing /out/clusterroles/istio-pilot-istio-system.yaml ...\n    Writing /out/clusterroles/istio-initializer-istio-system.yaml ...\n    Writing /out/clusterroles/istio-mixer-istio-system.yaml ...\n    Writing /out/clusterroles/istio-ca-istio-system.yaml ...\n    Writing /out/clusterroles/istio-sidecar-istio-system.yaml ...\n\nYou can also use `-` as an argument to denote that input has been provided via STDIN:\n\n    helm template stable/openvpn | docker run --rm -i -v path/to/kustomize/base:/out jnewland/yamsplode -\n    Writing /out/configmaps/release-name-openvpn.yaml ...\n    Writing /out/persistentvolumeclaims/release-name-openvpn.yaml ...\n    Writing /out/services/release-name-openvpn.yaml ...\n    Writing /out/deployments/release-name-openvpn.yaml ..\n\nThat's it!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjnewland%2Fyamsplode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjnewland%2Fyamsplode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjnewland%2Fyamsplode/lists"}