{"id":20557034,"url":"https://github.com/sharpvik/morty-cd","last_synced_at":"2026-04-16T16:32:36.430Z","repository":{"id":114206142,"uuid":"257605157","full_name":"sharpvik/morty-cd","owner":"sharpvik","description":"Simple Go tool for Continuous Integration and Continuous Deployment utilizing the power of GitHub webhooks.","archived":false,"fork":false,"pushed_at":"2020-07-23T13:41:12.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-05T21:46:37.317Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sharpvik.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2020-04-21T13:30:14.000Z","updated_at":"2024-06-19T06:33:48.809Z","dependencies_parsed_at":"2023-06-15T23:00:28.483Z","dependency_job_id":null,"html_url":"https://github.com/sharpvik/morty-cd","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/sharpvik/morty-cd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sharpvik%2Fmorty-cd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sharpvik%2Fmorty-cd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sharpvik%2Fmorty-cd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sharpvik%2Fmorty-cd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sharpvik","download_url":"https://codeload.github.com/sharpvik/morty-cd/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sharpvik%2Fmorty-cd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31894989,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T11:36:10.202Z","status":"ssl_error","status_checked_at":"2026-04-16T11:36:09.652Z","response_time":69,"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":[],"created_at":"2024-11-16T03:34:24.434Z","updated_at":"2026-04-16T16:32:36.401Z","avatar_url":"https://github.com/sharpvik.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Morty CD\n\nSimple Go tool for Continuous Integration and Continuous Deployment utilizing\nthe power of GitHub webhooks.\n\n\n\n## Prerequisites\n\n- Install *Go* programming language.\n\n\n\n## User Guide\n\n### Setup On Machine\n\n#### Get Source Code\n\n```bash\ngo get github.com/sharpvik/morty-cd\n```\n\n#### Add Config File\n\nThis is how my `config.go` looks (you can just `Copy + Paste`):\n\n```go\npackage main\n\nimport \"os\"\n\n// port is a string that represents the port at which server will be listening\n// for incoming requests.\nconst port = \":5050\"\n\n// logWriter implements the io.Writer interface and is used by the logr to\n// output the data it logs.\nvar logWriter = os.Stdout\n// var logWriter, _ = os.Create(\"/home/viktor/Public/Lisn/logs/morty-cd-lisn-web-app.log\")\n\n// logPrefix is a string that will be inserted before every log message.\nconst logPrefix = \"\"\n```\n\n#### Installation\n\nTo install this globally, you can do two things:\n\n1. Add your `$(go env GOPATH)/bin` folder to `$PATH` and run `go install`\n2. Run `go build` and then `mv morty-cd /usr/local/bin/` or to any other folder\nregistered within `$PATH`\n\n\n### GitHub Webhooks Setup\n\nLocate the GitHub repo you'd like to bind your `script` to. From there go\n**Settings \u003e Webhooks \u003e Add webhook**. For **Payload URL** use your server's IP\naddress and port like so: `http://155.13.12.5:5050/github`. You must include the\n`/github` at the end!\n\nSet **Content type** to `application/json` and select the events you want to\ntrigger webhook notifications. Confirm.\n\n\u003e If you don't see some of the events you want included in the `handlers.go`\n\u003e file, it means you'll have to include them yourself and then modify the switch\n\u003e statement in the main handler function called `github`.\n\u003e If you do create some additional handlers, please share them with us!\n\n\n### Run It\n\nWhen you've properly installed the app and setup webhooks, go to the project you\nwant to monitor and run `morty-cd ./deploy.sh`. This step *assumes* that some\ndeployment script called `deploy.sh` is present within that folder and has\nexecutive privileges.\n\n\u003e To give executive privileges to any script, specify its interpreter on the\n\u003e very first line by adding `#!/usr/bin/interpreter` add then run\n\u003e `chmod +x deploy.sh`. For example, if your script is a `bash` script, put\n\u003e `#!/usr/bin/bash` as your shebang.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsharpvik%2Fmorty-cd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsharpvik%2Fmorty-cd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsharpvik%2Fmorty-cd/lists"}