Skip to main content

GitLab Google Chat Integration

Project description

Gitlab Google Chat Integration

A Python Flask web application that forwards webhook requests from GitLab to Google Chat.

GGCI showcase

Installation

ggci is available as a Python package on PyPI. It can be installed via standard package managers in Python, e.g. pip:

pip install ggci

Usage

ggci provides a standard Flask application factory create_app():

from ggci import create_app

app = create_app()

For how to use this application factory refer to the official Flask documentation.

Configuration

There are several ways how ggci can be configured.

YAML config (default)

By default create_app() looks for a YAML configuration file specified by GGCI_CONFIG environment variable. Example config:

ggci_secret: xxxxxxx

user_mappings:  # OPTIONAL, used for mentions; key: GitLab ID, val: Google Chat ID
  5894317: 120984893489384029908  # Gandalf
  4985120: 109238409842809234892  # Chuck Norris

Config Object

Alternatively, create_app() also accepts optional argument config of type ggci.Config.

from ggci import Config, create_app

config = Config(
    ggci_secret='xxxxxxx',
    user_mappings={
        5894317: 120984893489384029908,  # Gandalf
        4985120: 109238409842809234892,  # Chuck Norris
    },
)

app = create_app(config=config)

Features

Merge Request Events Notifications

Notifications for merge requests actions. All notifications for one MR are posted to the same thread (identified by merge request ID). Supported actions:

  • open: includes link with title, event author, mentions of assignees and description
  • approved: includes link and event author
  • unapproved: includes link and action author
  • update of assigness: includes link and mentions of current assignees
  • merged: includes link and action author
  • closed: includes link and action author
  • reopened: includes link and action author

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ggci-1.2.17.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ggci-1.2.17-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file ggci-1.2.17.tar.gz.

File metadata

  • Download URL: ggci-1.2.17.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.12 Linux/5.4.109+

File hashes

Hashes for ggci-1.2.17.tar.gz
Algorithm Hash digest
SHA256 e6a99dcce244b8a1b6c67387dd73254e22aee08eb33e9408fa68de514c8b474a
MD5 775615ebfc2055279240b2818e205ca1
BLAKE2b-256 ef051604834e0fbfbd0611a6bb50ff11d185019ad96b742e03c65a95691d680e

See more details on using hashes here.

File details

Details for the file ggci-1.2.17-py3-none-any.whl.

File metadata

  • Download URL: ggci-1.2.17-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.12 Linux/5.4.109+

File hashes

Hashes for ggci-1.2.17-py3-none-any.whl
Algorithm Hash digest
SHA256 d1e4664a147d3dcc459908a38c55c9a9c6bbaad2a2867ddc987cbf06962b2b29
MD5 1d59b2cc74a7d3ebd02c332ef80c25e4
BLAKE2b-256 1ab081b394a321769de7015a6cd4addf491f0c0bc6253052fc2523cdaae76c89

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page