├── .github └── workflows │ ├── ci.yml │ └── release.yml ├── .gitignore ├── .golangci.yaml ├── .goreleaser.yaml ├── .pre-commit-config.yaml ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md ├── assets ├── goplicate-run.gif └── logo.png ├── cmd └── goplicate │ └── main.go ├── examples ├── projects-simple-remote-git │ └── .goplicate-projects.yaml ├── projects-simple │ └── .goplicate-projects.yaml ├── simple-remote-git │ └── repo-1 │ │ ├── .eslintrc.js │ │ └── .goplicate.yaml ├── simple │ ├── repo-1 │ │ ├── .eslintrc.js │ │ └── .goplicate.yaml │ ├── repo-2 │ │ ├── .eslintrc.js │ │ └── .goplicate.yaml │ └── shared-configs-repo │ │ ├── .eslintrc.js │ │ └── params.yaml ├── sync-config │ ├── .goplicate.yaml │ ├── config.yaml │ └── shared │ │ ├── .goplicate.yaml │ │ ├── config.yaml │ │ └── new.yaml └── sync-initial │ ├── .goplicate.yaml │ └── shared │ └── config.yaml ├── go.mod ├── go.sum └── pkg ├── blocks.go ├── blocks_test.go ├── cmd ├── flags.go ├── root.go ├── run.go ├── run_test.go ├── sync.go ├── sync_test.go └── testutils │ └── test_utils.go ├── config ├── hooks.go ├── project_config.go ├── projects_config.go ├── source.go └── target.go ├── diff.go ├── git ├── cloner.go └── publisher.go ├── hook.go ├── mocks └── cloner_mock.go ├── run.go ├── run_test.go ├── shared └── shared_state.go ├── source.go ├── target.go ├── target_test.go ├── testdata └── blocks │ └── valid.yaml └── utils ├── cmd.go ├── command.go ├── file.go ├── interactive.go ├── os.go └── string.go /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/.gitignore -------------------------------------------------------------------------------- /.golangci.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/.golangci.yaml -------------------------------------------------------------------------------- /.goreleaser.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/.goreleaser.yaml -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/README.md -------------------------------------------------------------------------------- /assets/goplicate-run.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/assets/goplicate-run.gif -------------------------------------------------------------------------------- /assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/assets/logo.png -------------------------------------------------------------------------------- /cmd/goplicate/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/cmd/goplicate/main.go -------------------------------------------------------------------------------- /examples/projects-simple-remote-git/.goplicate-projects.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/projects-simple-remote-git/.goplicate-projects.yaml -------------------------------------------------------------------------------- /examples/projects-simple/.goplicate-projects.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/projects-simple/.goplicate-projects.yaml -------------------------------------------------------------------------------- /examples/simple-remote-git/repo-1/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple-remote-git/repo-1/.eslintrc.js -------------------------------------------------------------------------------- /examples/simple-remote-git/repo-1/.goplicate.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple-remote-git/repo-1/.goplicate.yaml -------------------------------------------------------------------------------- /examples/simple/repo-1/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple/repo-1/.eslintrc.js -------------------------------------------------------------------------------- /examples/simple/repo-1/.goplicate.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple/repo-1/.goplicate.yaml -------------------------------------------------------------------------------- /examples/simple/repo-2/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple/repo-2/.eslintrc.js -------------------------------------------------------------------------------- /examples/simple/repo-2/.goplicate.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple/repo-2/.goplicate.yaml -------------------------------------------------------------------------------- /examples/simple/shared-configs-repo/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple/shared-configs-repo/.eslintrc.js -------------------------------------------------------------------------------- /examples/simple/shared-configs-repo/params.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/simple/shared-configs-repo/params.yaml -------------------------------------------------------------------------------- /examples/sync-config/.goplicate.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/sync-config/.goplicate.yaml -------------------------------------------------------------------------------- /examples/sync-config/config.yaml: -------------------------------------------------------------------------------- 1 | oldKey: oldValue 2 | -------------------------------------------------------------------------------- /examples/sync-config/shared/.goplicate.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/sync-config/shared/.goplicate.yaml -------------------------------------------------------------------------------- /examples/sync-config/shared/config.yaml: -------------------------------------------------------------------------------- 1 | key: value 2 | -------------------------------------------------------------------------------- /examples/sync-config/shared/new.yaml: -------------------------------------------------------------------------------- 1 | newKey: newValue 2 | -------------------------------------------------------------------------------- /examples/sync-initial/.goplicate.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/examples/sync-initial/.goplicate.yaml -------------------------------------------------------------------------------- /examples/sync-initial/shared/config.yaml: -------------------------------------------------------------------------------- 1 | key: value 2 | -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/go.sum -------------------------------------------------------------------------------- /pkg/blocks.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/blocks.go -------------------------------------------------------------------------------- /pkg/blocks_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/blocks_test.go -------------------------------------------------------------------------------- /pkg/cmd/flags.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/flags.go -------------------------------------------------------------------------------- /pkg/cmd/root.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/root.go -------------------------------------------------------------------------------- /pkg/cmd/run.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/run.go -------------------------------------------------------------------------------- /pkg/cmd/run_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/run_test.go -------------------------------------------------------------------------------- /pkg/cmd/sync.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/sync.go -------------------------------------------------------------------------------- /pkg/cmd/sync_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/sync_test.go -------------------------------------------------------------------------------- /pkg/cmd/testutils/test_utils.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/cmd/testutils/test_utils.go -------------------------------------------------------------------------------- /pkg/config/hooks.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/config/hooks.go -------------------------------------------------------------------------------- /pkg/config/project_config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/config/project_config.go -------------------------------------------------------------------------------- /pkg/config/projects_config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/config/projects_config.go -------------------------------------------------------------------------------- /pkg/config/source.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/config/source.go -------------------------------------------------------------------------------- /pkg/config/target.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/config/target.go -------------------------------------------------------------------------------- /pkg/diff.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/diff.go -------------------------------------------------------------------------------- /pkg/git/cloner.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/git/cloner.go -------------------------------------------------------------------------------- /pkg/git/publisher.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/git/publisher.go -------------------------------------------------------------------------------- /pkg/hook.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/hook.go -------------------------------------------------------------------------------- /pkg/mocks/cloner_mock.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/mocks/cloner_mock.go -------------------------------------------------------------------------------- /pkg/run.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/run.go -------------------------------------------------------------------------------- /pkg/run_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/run_test.go -------------------------------------------------------------------------------- /pkg/shared/shared_state.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/shared/shared_state.go -------------------------------------------------------------------------------- /pkg/source.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/source.go -------------------------------------------------------------------------------- /pkg/target.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/target.go -------------------------------------------------------------------------------- /pkg/target_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/target_test.go -------------------------------------------------------------------------------- /pkg/testdata/blocks/valid.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/testdata/blocks/valid.yaml -------------------------------------------------------------------------------- /pkg/utils/cmd.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/utils/cmd.go -------------------------------------------------------------------------------- /pkg/utils/command.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/utils/command.go -------------------------------------------------------------------------------- /pkg/utils/file.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/utils/file.go -------------------------------------------------------------------------------- /pkg/utils/interactive.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/utils/interactive.go -------------------------------------------------------------------------------- /pkg/utils/os.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/utils/os.go -------------------------------------------------------------------------------- /pkg/utils/string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ilaif/goplicate/HEAD/pkg/utils/string.go --------------------------------------------------------------------------------