{"id":22071083,"url":"https://github.com/vshn/docker-modulesync","last_synced_at":"2026-05-07T15:41:13.184Z","repository":{"id":72137598,"uuid":"135440845","full_name":"vshn/docker-modulesync","owner":"vshn","description":"Align your repository configuration files. Plain simple.","archived":false,"fork":false,"pushed_at":"2021-06-24T09:14:20.000Z","size":23,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2023-08-02T16:14:10.293Z","etag":null,"topics":["configuration-management","docker","git","repository-management"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/vshn/modulesync/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vshn.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-30T12:40:01.000Z","updated_at":"2023-08-02T16:14:10.293Z","dependencies_parsed_at":null,"dependency_job_id":"e62c0058-a82a-4da1-b5de-7641ab5a9b4c","html_url":"https://github.com/vshn/docker-modulesync","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vshn%2Fdocker-modulesync","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vshn%2Fdocker-modulesync/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vshn%2Fdocker-modulesync/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vshn%2Fdocker-modulesync/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vshn","download_url":"https://codeload.github.com/vshn/docker-modulesync/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245153894,"owners_count":20569408,"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":["configuration-management","docker","git","repository-management"],"created_at":"2024-11-30T20:23:15.747Z","updated_at":"2025-10-06T04:22:53.886Z","avatar_url":"https://github.com/vshn.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ModuleSync\n\n## Repository File Sync\n\nOriginally, a utility script to keep configuration files in sync for Puppet modules,\n[ModuleSync](https://github.com/voxpupuli/modulesync/) allows you to keep files in\nsync across your many repositories on your Git servers. Pulls your repositories,\napplies and commits changes based on the file templates you prepare, and pushes the\nchanges back to each repo. Support for creating GitHub PRs and GitLab MRs (since v2.0.0)\nin an automated fashion is included.\n\nThis Docker image runs ModuleSync with an unprivileged `msync` user in `/app`.\n\nSee [Concierge](https://github.com/vshn/docker-concierge/) if you want to sync\nmultiple configurations from a single configuration repository.\n\n## Usage\n\nIn a GitLab CI configuration file:\n\n```yaml\nimage: ghcr.io/vshn/modulesync\nscript:\n  - msync update\n```\n\nWith Docker on the command line:\n\n```sh\n$ docker run --rm -v \"$PWD\":/app ghcr.io/vshn/modulesync msync update\n```\n\n## Development\n\n- [Issue tracker](https://github.com/vshn/docker-modulesync/) (GitHub)\n\nTo add a new ModuleSync version tag:\n\n1. Renovate should automatically create a [Pull Request](https://github.com/vshn/docker-modulesync/pulls).\n1. After merging it, make sure you pulled the latest commits, and run `./tag.sh` to create an appropriate Git Tag.\n1. `git push --follow-tags` to push the tag. A new docker image is built automatically.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvshn%2Fdocker-modulesync","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvshn%2Fdocker-modulesync","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvshn%2Fdocker-modulesync/lists"}