{"id":20989118,"url":"https://github.com/go-crzy/crzy","last_synced_at":"2025-05-14T18:31:38.418Z","repository":{"id":48797065,"uuid":"361157149","full_name":"go-crzy/crzy","owner":"go-crzy","description":"Update your development environment in 3 seconds","archived":false,"fork":false,"pushed_at":"2021-07-11T20:21:36.000Z","size":151,"stargazers_count":4,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-06-19T10:11:13.030Z","etag":null,"topics":["deployment","development","test","tool"],"latest_commit_sha":null,"homepage":"https://crzy.sh","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/go-crzy.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}},"created_at":"2021-04-24T12:32:40.000Z","updated_at":"2024-06-19T10:11:13.031Z","dependencies_parsed_at":"2022-09-26T19:31:02.687Z","dependency_job_id":null,"html_url":"https://github.com/go-crzy/crzy","commit_stats":null,"previous_names":["carnage-sh/crzy"],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-crzy%2Fcrzy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-crzy%2Fcrzy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-crzy%2Fcrzy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-crzy%2Fcrzy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/go-crzy","download_url":"https://codeload.github.com/go-crzy/crzy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225304913,"owners_count":17453237,"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":["deployment","development","test","tool"],"created_at":"2024-11-19T06:23:52.345Z","updated_at":"2024-11-19T06:23:52.649Z","avatar_url":"https://github.com/go-crzy.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# crzy [![CircleCI](https://circleci.com/gh/go-crzy/crzy.svg?style=shield)](https://circleci.com/gh/go-crzy/crzy)\n\nUpdate your test environments in 3 seconds\n\n## working principle\n\n`crzy` is mainly 2 things: (1) a GIT server that triggers a `test`, `build` and\n`run` on a receive; (2) an HTTP proxy that rollout the new version of your API.\n\n## a simple example\n\nThe best way to understand how it works is to use it. You can check\n[go-crzy/color](https://github.com/go-crzy/color) as an example. First\ninstall and run `crzy`:\n\n```shell\ngo get github.com/go-crzy/crzy\ncrzy -server -repository color.git\n```\n\n\u003e Note: we assume you are working on the `main` branch, if that is not the\n\u003e case, add the `-head` flag with the name of your branch to the `crzy`\n\u003e command.\n\nThis commands above starts the GIT server that can be used to push you\nprogram to the `http://localhost:8080/color.git` URL. It also creates\na proxy server on `http://localhost:8081`. You can then push your project\nthe to `crzy`, with a simple `git push` command. Here is a complete example\nthat includes the setup:\n\n```shell\ngit clone https://github.com/go-crzy/color.git color\ncd color\ngit remote add server http://localhost:8080/color.git\ngit push server\n```\n\nThe API is now proxied and the next push will perform a blue/green update\nof your test environment...\n\n## the secret sauce\n\n`crzy` is not magic and there is a few assumptions for your program to work\nwith it:\n\n- We depend on `go` and `git` on the server\n- We assume your program is using Go and can be build from a simple\n  `go build` on the root of your repository. You should rely on `go mod`\n- We assume the program relies on HTTP and we can change its listening port\n  with the `PORT` environment variable\n- We are running the `main` branch of your project\n\n`crzy` will be improved to manage broader use cases. If you like the idea,\nneed support for another programming language or protocol or simply cannot\nfigure out how to make it work, do not hesitate to open an\n[issue](https://github.com/go-crzy/crzy/issues).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgo-crzy%2Fcrzy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgo-crzy%2Fcrzy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgo-crzy%2Fcrzy/lists"}