{"id":36584468,"url":"https://github.com/daltcore/releasetools-go","last_synced_at":"2026-01-12T08:01:45.273Z","repository":{"id":153377237,"uuid":"105123843","full_name":"DALTCORE/ReleaseTools-go","owner":"DALTCORE","description":"Golang version of Releasetools! ","archived":false,"fork":false,"pushed_at":"2019-09-06T12:43:24.000Z","size":6115,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-04-17T21:20:55.510Z","etag":null,"topics":["fossa-status","golang","linux","macos","playbook","releasetool","releasetool-environment","stub","stubs"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DALTCORE.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":"2017-09-28T08:40:24.000Z","updated_at":"2024-06-19T10:12:35.034Z","dependencies_parsed_at":null,"dependency_job_id":"27080d97-6168-45e5-96d4-695ccff58cd7","html_url":"https://github.com/DALTCORE/ReleaseTools-go","commit_stats":null,"previous_names":[],"tags_count":38,"template":null,"template_full_name":null,"purl":"pkg:github/DALTCORE/ReleaseTools-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DALTCORE%2FReleaseTools-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DALTCORE%2FReleaseTools-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DALTCORE%2FReleaseTools-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DALTCORE%2FReleaseTools-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DALTCORE","download_url":"https://codeload.github.com/DALTCORE/ReleaseTools-go/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DALTCORE%2FReleaseTools-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28336967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T06:09:07.588Z","status":"ssl_error","status_checked_at":"2026-01-12T06:05:18.301Z","response_time":98,"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":["fossa-status","golang","linux","macos","playbook","releasetool","releasetool-environment","stub","stubs"],"created_at":"2026-01-12T08:00:47.687Z","updated_at":"2026-01-12T08:01:45.261Z","avatar_url":"https://github.com/DALTCORE.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"ReleaseTools Golang version\n=========\n\nReleaseTools in golang version. Binary compatible with:\n - Linux   amd64\n - MacOS   amd64\n - Windows amd64\n\n# Installation\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FDALTCORE%2FReleaseTools-go.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2FDALTCORE%2FReleaseTools-go?ref=badge_shield)\n\n\n## MacOS\nOne-line install for lazy MacOS users:\n\n```console\n$ mkdir -p ~/bin \\\n  \u0026\u0026 curl -L -o ~/bin/release-tool-darwin-amd64 \\\n  https://github.com/DALTCORE/ReleaseTools-go/releases/download/1.2.6/release-tool-darwin-amd64 \\\n  \u0026\u0026 chmod +x ~/bin/release-tool-darwin-amd64 \\\n  \u0026\u0026 ln -sfv ~/bin/release-tool-darwin-amd64 ~/bin/rt\n```\n\nMake sure that you have pointed `~/bin` in your `$PATH`.\n\n## Linux\nOne-line install for lazy Linux users:\n\n```console\n$ mkdir -p ~/bin \\\n  \u0026\u0026 curl -L -o ~/bin/release-tool-linux-amd64 \\\n  https://github.com/DALTCORE/ReleaseTools-go/releases/download/1.2.6/release-tool-linux-amd64 \\\n  \u0026\u0026 chmod +x ~/bin/release-tool-linux-amd64 \\\n  \u0026\u0026 ln -sfv ~/bin/release-tool-linux-amd64 ~/bin/rt\n```\n\nMake sure that you have pointed `~/bin` in your `$PATH`.\n\n## Windows\n1. Download [release-tool-windows-amd64.exe](https://github.com/DALTCORE/ReleaseTools-go/releases/download/1.2.6/release-tool-windows-amd64.exe)\nand copy it to `C:\\Users\\\u003cname\u003e\\bin` (create if directory does not exist yet!)  \n\n2. Rename the file to `release-tool.exe` or `rt.exe` \n\n3. Open CMD as administrator and run:\n```cmd\nSETX path \"%path%;%userprofile%\\bin\"\n```\nThis migth take a while / hang. You can just close it after a couple of seconds.\n\n4. Restart your terminal and run `release-tool help` or `rt help`\n\n# Usage\n\n## Commands\n### Show help\n```terminal\n$ rt help\nNAME:\n   ReleaseTools - Releasing made easy\n\nUSAGE:\n   release-tool [global options] command [command options] [arguments...]\n\nVERSION:\n   {{VERSION}}\n\nCOMMANDS:\n     manager:prepare, mp    Prepare a new release\n     manager:setup, ms      Setup a new Repo and Intothetest/accept environment\n     manager:changelog, mc  Build all changelog entries to CHANGELOG.md\n     init, i                Initialize a ReleaseTools environment\n     status, s              Get ReleaseTools environment status\n     playbook, p            Run a playbook\n     changelog, c           Make a changelog entry\n     help, h                Shows a list of commands or help for one command\n\nGLOBAL OPTIONS:\n   --help, -h     show help\n   --version, -v  print the version \n```\n\n### Manager prepare\n```terminal\n$ release-tool manager:prepare (?1.0.0)\n$ rt mp (?1.0.0)\n```\n\nPrepare a new release issue into Gitlab.\n\n### Manager setup\n```terminal\n$ release-tool manager:setup\n$ rt ms\n```\n \nCreate a new repository in a group with the preferred permissions\n\n### Manager changelog list\n```terminal\n$ release-tool manager:changelog:list\n$ rt mcl\n```\n\nList all the changelogs in `changelog/unreleased` in a table.\n\n### Manager changelog\n```terminal\n$ release-tool manager:changelog (?1.0.0)\n$ rt mc (?1.0.0)\n```\n\nBuild the CHANGELOG.md file from all the changelogs in `changelog/unreleased`.\n\n### Init\n```terminal\n$ release-tool init\n$ rt i\n```\n\nInitialize a fresh ReleaseTool environment for usage with projects.\n\n### Status\n```terminal\n$ release-tool status\n$ rt s\n```\n\nDisplay the status of the current ReleaseTool environment.\n\n### Playbook\n```terminal\n$ release-tool playbook \u003cplaybook-name\u003e (?1.0.0)\n$ rt p \u003cplaybook-name\u003e (?1.0.0)\n```\n\n\u003c!-- Run a playbook based on playbook name with optional parameter for versions.\n\n### Auto update\n```terminal\n$ release-tool auto-update (?--force)\n$ rt au (?--force)\n``` --\u003e\n\nUpdates the ReleaseTool environment. \n\n### Changelog\n```terminal\n$ release-tool changelog (?--dry-run) (?--force)\n$ rt c (?--dry-run) (?--force)\n```\n\nCreate a changelog for the current merge request.\n\n### Help\n```terminal\n$ release-tool help\n$ rt help\n```\n\nShows help for ReleaseTool\n\n## Playbooks\nPlaybooks are just simple scripts written in the YAML language to be parsed by the ReleaseTool\n```yaml\nplaybook:                                                   # Definition for ReleaseTool \n  version: 1.1                                              # Select Playbook Parser version\n\n  mattermost:                                               # Select subject Mattermost for the playbook parser\n    notify:                                                 # Select method Notify for the playbook parser\n      channel: Townsquare                                   # Set Mattermost channel\n      message: \"Foobar with :url and :version and :repo\"    # Set Message to be send to the channel\n      \n  gitlab:                                                   # Select subject Gitlab for the playbook parser\n    merge_request:                                          # Select method MergeRequest for the playbook parser\n      title: \"Release v:version to :to from :from\"          # Set merge request title \n      from: develop                                         # Set the branch/ref/source where this MR is coming from\n      to: master                                            # Set the name of the new branch\n      \n    make_branch:                                            # Select method MakeBranch for the playbook parser\n      from: develop                                         # Set the branch/ref/source for the new branch\n      to: v:version                                         # Set the new branch name\n      \n    create_tag:                                             # Select method CreateTag for the playbook parser\n      from: master                                          # Set the branch/ref/source for the new branch\n      to: v:version                                         # Set the new tag name.\n```\n\n## Stubs\n**prepare.stub**\n```text\n**Release `:repo` version `:version`**  \n- [X] Create issue  \n- [ ] Notify in Mattermost `rt p notify-upcoming-release :version`  \n- [ ] Merge request *develop \u003e releases/v:version* `rt p develop-to-release :version`  \n- [ ] Checkout releases/v:version `git fetch --all; git checkout releases/v:version`  \n- [ ] Generate changelog `rt mp :version`  \n- [ ] Create merge request *releases/v:version \u003e staging* `rt p release-to-staging :version`  \n- [ ] Wait for merge request *releases/v:version \u003e staging* to be merged  \n- [ ] Merge request *staging \u003e master* `rt p staging-to-master :version`  \n- [ ] Wait for merge request *staging \u003e master* to be merged  \n- [ ] Create tag v:version `rt p create-tag :version`  \n- [ ] Merge request *master \u003e develop* `rt p master-backport`  \n- [ ] Wait for merge request *master \u003e develop* to be merged  \n- [ ] Notify in Mattermost `rt p release-done`  \n- [ ] Close issue  \n```\n\n## Useful information\n\n### Global and local release tool information\nThe [`release-tool init`](#init) command creates a local `.release-tool` file in the directory you're calling it from.  \nIf you fill this document with the correct information, and remove the \"repo\" key then you can place it in \nyou're home directory. ReleaseTool will merge the information from the home file to the local file on the fly\n\nLocal file example:\n```yaml\nrepo: namespace/repo\n```\n\nHome file example:\n```yaml\ngitlab_url: #https://git.server.com (no slash at the end)\ngroup: #namespace\napi_url: #Gitlab.com/api/v4\napi_key: #RandomKey\nmattermost_webhook: #MattermostWebhookUrl\ngithub_token: \n```\n[Create new Github Token here](https://github.com/settings/tokens/new?scopes=repo\u0026description=ReleaseTools-Go)  \nThis setup minimizes the risk of you committing and sharing your private keys and tokens.\n\n\n## License\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FDALTCORE%2FReleaseTools-go.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2FDALTCORE%2FReleaseTools-go?ref=badge_large)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaltcore%2Freleasetools-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaltcore%2Freleasetools-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaltcore%2Freleasetools-go/lists"}