announcer


Nameannouncer JSON
Version 6.0.1 PyPI version JSON
download
home_pageNone
SummaryAnnounce changes in keepachangelog-style CHANGELOG.md files to Slack and Microsoft Teams
upload_time2025-03-11 16:30:45
maintainerNone
docs_urlNone
authorMax Dymond
requires_python<4.0.0,>=3.9
licenseMIT
keywords slack teams
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![Github build](https://img.shields.io/github/actions/workflow/status/metaswitch/announcer/steps.yml?branch=main)](https://github.com/Metaswitch/announcer)
[![pypi version](https://img.shields.io/pypi/v/announcer)](https://pypi.org/project/announcer/)
[![docker pulls](https://img.shields.io/docker/pulls/metaswitch/announcer)](https://hub.docker.com/r/metaswitch/announcer)

# announcer

This tool:
* takes an [keepachangelog](https://keepachangelog.com/en/1.0.0/)-style CHANGELOG.md file
* extracts all changes for a particular version
* and sends a formatted message to a Slack or Microsoft Teams webhook.

It is available as a Python package, or as a Docker container for use in CI.

## Installation

Install this tool using pip:

```
pip install announcer
```

## Tool usage

```
usage: announce [-h] (--webhook WEBHOOK | --slackhook WEBHOOK) [--target {slack,teams}] --changelogversion CHANGELOGVERSION --changelogfile CHANGELOGFILE --projectname PROJECTNAME
                [--username USERNAME] [--compatibility-teams-sections] [--iconurl ICONURL | --iconemoji ICONEMOJI]

Announce CHANGELOG changes on Slack and Microsoft Teams

optional arguments:
  -h, --help            show this help message and exit
  --webhook WEBHOOK     The incoming webhook URL
  --slackhook WEBHOOK   The incoming webhook URL. (Deprecated)
  --target {slack,teams}
                        The type of announcement that should be sent to the webhook
  --changelogversion CHANGELOGVERSION
                        The changelog version to announce (e.g. 1.0.0)
  --changelogfile CHANGELOGFILE
                        The file containing changelog details (e.g. CHANGELOG.md)
  --projectname PROJECTNAME
                        The name of the project to announce (e.g. announcer)
  --username USERNAME   The username that the announcement will be made as (e.g. announcer). Valid for: Slack
  --compatibility-teams-sections
                        Compatibility option - sends Teams messages in multiple sections
  --iconurl ICONURL     A URL to use for the user icon in the announcement. Valid for: Slack
  --iconemoji ICONEMOJI
                        An emoji code to use for the user icon in the announcement (e.g. party_parrot). Valid for: Slack
```

## Gitlab Usage

Announcer builds and publishes a Docker image that you can integrate into your `.gitlab-ci.yml`:

```
announce:
  stage: announce
  image: metaswitch/announcer:5.0.0
  script:
   - announce --webhook <webhook address>
              --changelogversion $CI_COMMIT_REF_NAME
              --changelogfile <CHANGELOG.md file>
              --projectname <Project name>
              --iconemoji party_parrot
  only:
    - tags
```


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "announcer",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0.0,>=3.9",
    "maintainer_email": null,
    "keywords": "slack, teams",
    "author": "Max Dymond",
    "author_email": "max.dymond@metaswitch.com",
    "download_url": "https://files.pythonhosted.org/packages/66/e8/c3982251b44afa34be3a5f1ab86e438d353c16a078c9fe9ea8d41a9e5b48/announcer-6.0.1.tar.gz",
    "platform": null,
    "description": "[![Github build](https://img.shields.io/github/actions/workflow/status/metaswitch/announcer/steps.yml?branch=main)](https://github.com/Metaswitch/announcer)\n[![pypi version](https://img.shields.io/pypi/v/announcer)](https://pypi.org/project/announcer/)\n[![docker pulls](https://img.shields.io/docker/pulls/metaswitch/announcer)](https://hub.docker.com/r/metaswitch/announcer)\n\n# announcer\n\nThis tool:\n* takes an [keepachangelog](https://keepachangelog.com/en/1.0.0/)-style CHANGELOG.md file\n* extracts all changes for a particular version\n* and sends a formatted message to a Slack or Microsoft Teams webhook.\n\nIt is available as a Python package, or as a Docker container for use in CI.\n\n## Installation\n\nInstall this tool using pip:\n\n```\npip install announcer\n```\n\n## Tool usage\n\n```\nusage: announce [-h] (--webhook WEBHOOK | --slackhook WEBHOOK) [--target {slack,teams}] --changelogversion CHANGELOGVERSION --changelogfile CHANGELOGFILE --projectname PROJECTNAME\n                [--username USERNAME] [--compatibility-teams-sections] [--iconurl ICONURL | --iconemoji ICONEMOJI]\n\nAnnounce CHANGELOG changes on Slack and Microsoft Teams\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --webhook WEBHOOK     The incoming webhook URL\n  --slackhook WEBHOOK   The incoming webhook URL. (Deprecated)\n  --target {slack,teams}\n                        The type of announcement that should be sent to the webhook\n  --changelogversion CHANGELOGVERSION\n                        The changelog version to announce (e.g. 1.0.0)\n  --changelogfile CHANGELOGFILE\n                        The file containing changelog details (e.g. CHANGELOG.md)\n  --projectname PROJECTNAME\n                        The name of the project to announce (e.g. announcer)\n  --username USERNAME   The username that the announcement will be made as (e.g. announcer). Valid for: Slack\n  --compatibility-teams-sections\n                        Compatibility option - sends Teams messages in multiple sections\n  --iconurl ICONURL     A URL to use for the user icon in the announcement. Valid for: Slack\n  --iconemoji ICONEMOJI\n                        An emoji code to use for the user icon in the announcement (e.g. party_parrot). Valid for: Slack\n```\n\n## Gitlab Usage\n\nAnnouncer builds and publishes a Docker image that you can integrate into your `.gitlab-ci.yml`:\n\n```\nannounce:\n  stage: announce\n  image: metaswitch/announcer:5.0.0\n  script:\n   - announce --webhook <webhook address>\n              --changelogversion $CI_COMMIT_REF_NAME\n              --changelogfile <CHANGELOG.md file>\n              --projectname <Project name>\n              --iconemoji party_parrot\n  only:\n    - tags\n```\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Announce changes in keepachangelog-style CHANGELOG.md files to Slack and Microsoft Teams",
    "version": "6.0.1",
    "project_urls": null,
    "split_keywords": [
        "slack",
        " teams"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5a51e431092baa4478b5a9cc65ddeaaf49eda872b93a4b0942e300433b05fefa",
                "md5": "cee23ad2c13709bbaf3c3f08cb948912",
                "sha256": "4aef3bfaae804eba376a355d2a5999446c97b68524aa413f37f337b544d3d0ab"
            },
            "downloads": -1,
            "filename": "announcer-6.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "cee23ad2c13709bbaf3c3f08cb948912",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0.0,>=3.9",
            "size": 9481,
            "upload_time": "2025-03-11T16:30:43",
            "upload_time_iso_8601": "2025-03-11T16:30:43.668822Z",
            "url": "https://files.pythonhosted.org/packages/5a/51/e431092baa4478b5a9cc65ddeaaf49eda872b93a4b0942e300433b05fefa/announcer-6.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "66e8c3982251b44afa34be3a5f1ab86e438d353c16a078c9fe9ea8d41a9e5b48",
                "md5": "17fcf49ac98dae03ece5ac9de4f6bf0d",
                "sha256": "2248c536554c9914987f57d79e20db9d6ee2b6f218365b7de6fd7a27984aaf77"
            },
            "downloads": -1,
            "filename": "announcer-6.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "17fcf49ac98dae03ece5ac9de4f6bf0d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0.0,>=3.9",
            "size": 7027,
            "upload_time": "2025-03-11T16:30:45",
            "upload_time_iso_8601": "2025-03-11T16:30:45.422630Z",
            "url": "https://files.pythonhosted.org/packages/66/e8/c3982251b44afa34be3a5f1ab86e438d353c16a078c9fe9ea8d41a9e5b48/announcer-6.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-03-11 16:30:45",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "announcer"
}
        
Elapsed time: 0.42383s