Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/diogenesc/shortcut-changelog-generator
https://github.com/diogenesc/shortcut-changelog-generator
shortcut telegram
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/diogenesc/shortcut-changelog-generator
- Owner: diogenesc
- License: mit
- Created: 2022-01-05T14:05:41.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-09-15T09:14:53.000Z (about 1 year ago)
- Last Synced: 2024-07-19T01:17:12.768Z (4 months ago)
- Topics: shortcut, telegram
- Language: Python
- Homepage:
- Size: 91.8 KB
- Stars: 6
- Watchers: 2
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Shortcut Changelog Generator
A Python script to generate changelog based on shortcut stories referenced in commit messages
## Dependencies
- Python 3.8+
- Poetry## Installation
```bash
poetry install
```## Usage/Examples
```bash
poetry run python src/main.py
```This app will search for commits with the pattern `\[sc-(.+)\]`, where `(.+)` is the story ID from Shortcut. Example: \[sc-12345\]
A changelog will be generated/updated at `$REPO_PATH` and
a diff will be sended to Telegram if configured.### Docker
```bash
docker container run -v repo_path/:/app --workdir /app --env-file=.env diogenesc/shortcut-changelog-generator
```
## Environment VariablesTo run this project, you will need to add the following environment variables to your .env file
| Variable | Required | Description | Default |
|-----------------------|----------|---------------------------------------------|--------------|
| DRY_RUN | no | Execute without save the file | false |
| REPO_PATH | yes | Git repository path | . |
| SHORTCUT_TOKEN | yes | Shortcut API Token | |
| SHORTCUT_IGNORE_LABEL | no | Shortcut story label to ignore in changelog | |
| TELEGRAM_CHAT_ID | no | Telegram chat ID | |
| TELEGRAM_BOT_TOKEN | no | Telegram Bot Token | |
| TELEGRAM_SEND_DIFF | no | Active telegram notifier | false |
| TELEGRAM_TITLE | no | Insert a title in the notify | |
| IGNORE_LAST_TAG | no | Use all commits until last commit | false |
| CHANGELOG_PATH | no | Changelog path | CHANGELOG.md |## Bitbucket Pipelines
This program can be used as a Bitbucket Pipe.
```yml
- pipe: docker://diogenesc/shortcut-changelog-generator
variables:
SHORTCUT_TOKEN: "XXXXXXXXXXXXXXX"
TELEGRAM_CHAT_ID: "0000000"
TELEGRAM_BOT_TOKEN: "XXXXXXXXXXXXXXX"
TELEGRAM_SEND_DIFF: "true"
TELEGRAM_TITLE: "CHANGELOG TITLE"
REPO_PATH: /opt/atlassian/pipelines/agent/build
```## Github Actions
This program can be used in Github Action.
```yml
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Generate release.md
uses: diogenesc/shortcut-changelog-generator@v1
env:
DRY_RUN: ${{ secrets.DRY_RUN }}
REPO_PATH: ${{ secrets.REPO_PATH }}
CHANGELOG_PATH: ${{ secrets.CHANGELOG_PATH }}
SHORTCUT_TOKEN: ${{ secrets.SHORTCUT_TOKEN }}
IGNORE_LAST_TAG: ${{ secrets.IGNORE_LAST_TAG }}
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
TELEGRAM_SEND_DIFF: ${{ secrets.TELEGRAM_SEND_DIFF }}
TELEGRAM_TITLE: ${{ secrets.TELEGRAM_TITLE }}
```