{"id":26096414,"url":"https://github.com/updatecli/releasepost","last_synced_at":"2025-04-12T11:50:40.242Z","repository":{"id":215629449,"uuid":"732958965","full_name":"updatecli/releasepost","owner":"updatecli","description":"Re-post release notes","archived":false,"fork":false,"pushed_at":"2025-04-07T09:31:35.000Z","size":187,"stargazers_count":2,"open_issues_count":9,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-07T10:30:25.853Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/updatecli.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},"funding":{"github":["olblak","dduportal"],"open_collective":"updatecli","liberapay":"updatecli"}},"created_at":"2023-12-18T08:49:48.000Z","updated_at":"2025-02-09T08:12:41.000Z","dependencies_parsed_at":"2024-01-23T17:07:42.322Z","dependency_job_id":"e024187d-bb66-4455-8d0f-82a930df2e8a","html_url":"https://github.com/updatecli/releasepost","commit_stats":{"total_commits":54,"total_committers":4,"mean_commits":13.5,"dds":0.4444444444444444,"last_synced_commit":"151ec8333d3dea2ff1c4d9086c7c17d6fc682151"},"previous_names":["updatecli/releasepost"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/updatecli%2Freleasepost","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/updatecli%2Freleasepost/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/updatecli%2Freleasepost/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/updatecli%2Freleasepost/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/updatecli","download_url":"https://codeload.github.com/updatecli/releasepost/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248564977,"owners_count":21125412,"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":[],"created_at":"2025-03-09T14:46:19.058Z","updated_at":"2025-04-12T11:50:40.221Z","avatar_url":"https://github.com/updatecli.png","language":"Go","funding_links":["https://github.com/sponsors/olblak","https://github.com/sponsors/dduportal","https://opencollective.com/updatecli","https://liberapay.com/updatecli"],"categories":[],"sub_categories":[],"readme":"# releasepost\n\n*Repost changelogs to your static website*\n\nReleasepost can generate json, markdown, and asciidoctor files.\n\nReleasepost creates one file per release note, plus one additional index file.\n\n## Config\n\nreleasepost relies on a configuration file to identify what release to monitor and where to repost it.\nThe configuration file uses the YAML format and accepts the following parameters:\n\n### Changelogs\n\n- `name` defines the changelog name to monitor. It is used to identify a changelog configuration among differentts ones.\n- `dir` defines the directory where to mirror the release note\n- `kind` defines the kind of changelog to mirror, for example `github`\n- `formats` defines a list of format parameters for the mirrored changelog.\n- `spec` defines specific parameters to a kind of mirror.\n\n\nThe following example can be used for a HUGO website\n\n**Command**\n```\nexport GITHUB_TOKEN=\u003cinsert read-only token\u003e\nreleasepost --config .releaserepost.yaml\n```\n\n**Configuration**\n\n.releaserepost.yaml\n```\nchangelogs:\n  - kind: github\n    dir: content/en/docs/changelogs/updatecli\n    formats:\n      - extension: asciidoc\n        indexfilename: _index\n      - extension: json\n        indexfilename: _index\n    spec:\n      owner: updatecli\n      repository: udash\n```\n\n### GitHub\n\n#### Credentials\n\nGitHub integration requires a read-only personal access token.\nThe token must have enough permission to read release information.\n\n#### Configuration\n\n```\nchangelogs:\n  - kind: github\n    spec:\n      # Define the GitHub owner\n      owner: updatecli\n      # Define the GitHub repository\n      repository: updatecli\n      # Define the release type to retrieve\n      typefilter:\n        draft: false\n        prerelease: false\n        release: true\n        latest: true\n      # Define the GitHub url\n      url: https://github.com\n      # Define the username used to authenticate\n      username: john\n      # Define the token used to authenticate\n      token: xxx\n```\n\nThe following environment variables will be used as a fallback\n\n* `GITHUB_REPOSITORY` used to set owner and repository\n* `GITHUB_TOKEN` used to set the token\n* `GITHUB_URL` used to set the GitHub url\n* `GITHUB_ACTOR` used to set the GitHub username\n\n## Integration\n\n### Updatecli\n\nReleasepost is designed to work with [Updatecli](https://github.com/updatecli/updatecli) where releasepost is responsible to generate the correct files based on third changelogs and Updatecli to automate the process of publishing them to a git repository.\n\nIt can be used with one of the two Updatecli policy:\n\n#### HUGO\n\nUsed by the Updatecli project to publish all release notes on [updatecli.io](https://www.updatecli.io/changelogs/updatecli/)\n\n* [ghcr.io/updatecli/policies/releasepost/releasepost](https://github.com/updatecli/policies/tree/main/updatecli/policies/releasepost/releasepost)\n* [releasepost.yaml](https://github.com/updatecli/website/blob/master/.releasepost.yaml)\n* [GitHub action](https://github.com/updatecli/website/blob/master/.github/workflows/updatecli.weekly.yaml)\n\n#### Docusaurus - rancher.fleet.io\n\nUsed by the Rancher Fleet project to publish all releast note associated to a MAJOR.MINOR version - [rancher.fleet.io](https://fleet.rancher.io/0.9/changelogs/changelogs/v0.9.3)\n\n* [ghcr.io/olblak/rancherlabs-policies/docusaurus/releasepost](https://github.com/olblak/rancherlabs-policies/tree/main/updatecli/policies/docusaurus/releasepost)\n* [releasepost.yaml](https://github.com/rancher/fleet-docs/blob/main/releasepost.yaml)\n* [GitHub action](https://github.com/rancher/fleet-docs/blob/main/.github/workflows/updatecli.yml)\n\n## Contributing\n\nThis project already solves our initial problem which was to republish Updatecli changelogs from GitHub release to a static website.\nThat being said, it was also built with extensibility in mind so we could monitor other sources than GitHub releases.\n\nAs a community-oriented project, all contributions are greatly appreciated!\n\nHere is a non-exhaustive list of possible contributions:\n\n* ⭐️ this repository.\n* Propose a new feature request.\n* Highlight an existing feature request with 👍.\n* Contribute to any repository in the updatecli organization\n* Share the love\n\n## FAQ\n\n**Can releasepost generate changelog?**\n\nNo, there are already great tools for doing that.\n\n* [Release Drafter](https://github.com/release-drafter/release-drafter) can automatically generate the next changelogs based on pullrequest labels. If the generated changelog is wrong, you can still update labels on already merged pullrequest and then retrigger release drafter to update the the generated changelog.\n\n* [Conventional Changelog](https://github.com/conventional-changelog/conventional-changelog) can automatically generate the next changelogs based on commit following conventional commit. If the generated changelog is wrong, you can still modify your git history...\n\n* [Changie](https://github.com/miniscruff/changie) is another great tool to generate changelog\n\nThe purpose of releasepost is to retrieve already published changelogs and to republish them, for example on a project website.\n\n\n**Why using _index instead of index on HUGO project?**\n\n[The difference between `index.md` and `_index.md`](https://gohugo.io/content-management/page-bundles/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupdatecli%2Freleasepost","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fupdatecli%2Freleasepost","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupdatecli%2Freleasepost/lists"}