Git Product home page Git Product logo

tibian's Introduction

Tibian

Project 'tibian', also known as the 'TIcket Birthday Announcer', is a project to announce tickets that it's birthday today. That means it announces ticket titles and summaries that were created a few years ago and are still open to a number of channels that you specified before. For example, the Jira tickets of a project can be published to a Teams channel regularly and make some people happy (or angry).

Right now, the project is in a very early stage and it's not fully functional.

Installation + Usage

To install the package, simply do:

pip install tibian

which will install the package locally.

Then, configure the credentials and endpoints for your ticket and announcement system as described in Configuration.

Afterwards, you can start the project by running the tibian command:

tibian

Afterwards, it should announce the birthdays of tickets of the current date as specified.

Configuration

The configuration file for the project must be located in the working directory of the executed command. A short (any maybe not complete) description of the configuration file is given in config.example.yaml on GitHub.

Copy this to a file config.yaml in the current directory, add your credentials and remove parts you don't need.

Detailed information about all config options will be given soon, but for this version most of the configuration should be self-explanatory.

'type' is the type of source or target you have, 'name' is an internal used name for the source/target, and 'config' is a type-dependant dictionary of types as shown.

Versioning

We use semantic versioning to version the project. As we are in some sort of 'beta', we may (but try not to) do some breaking changes between minor versions to fix some obvious misbehavior of the project. For example, we may change the configuration file format or add new options to the configuration file. As we try to prevent this and add a backlog how to upgrade to newer versions, you maybe want to check the changelog before updating to new versions.

Development

We are always happy about active support. If you want to actively develop on tibian, follow the next few commands. We use poetry for the development of tibian. You can install it with the following command:

pip install poetry

To install all development dependencies, run:

poetry install --with dev

Afterwards, you have all dependencies (including dev dependencies) installed in a virtualenv, and are able to develop.

To add new dependencies, run:

poetry add <package>

To activate your virtualenv, run:

poetry shell

Afterwards, you can run all following commands in the virtualenv. In case you don't, you have to add 'poetry run' before each of the next commands to execute it in the virtualenv, or you will get missing requirements errors.

Additionally, we use pre-commit as our tool to enforce some styling and lint rules. To install pre-commit, run:

pre-commit install

This will install all hooks and run them automatically on a commit. You can also run these rules manually by doing:

pre-commit run --all

To run the tests and get some coverage information, run:

./scripts/run_tests.sh

tibian's People

Contributors

alicipy avatar dependabot[bot] avatar

Stargazers

 avatar

Watchers

 avatar

tibian's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.