Skip to main content

harvestcli - Harvest cli utility for running reports

Project description

harvest-reporting

Harvest Time tracking and reporting API implementation

Docs: Harvest Reporting Docs

Configration of Notifications

YAML Settings

There is an example yaml that shows how to set up every kind of integration.

Global Hooks

There are two types of global hooks. Emails and WebHooks.

Emails are in the block labeled globalEmails. All emails in this block receive all notifications. This includes client names and usage information. This should only be used for internal notification for project owners or business management.

globalEmails:
  - firstEmailAddress@example.com
  - secnodEmailAddress@example.com

Hooks are listed in the globalHooks. All hooks in this block will receive all notifications. This includes client names and usage information. This should only be used for internal notification for project owners or business management.

globalHooks:
  - https://hooks.slack.com/services/GlobalHooksForAllClients
  - https://hooks.slack.com/services/GlobalHookForProjects

Client Specific Hooks

Each client listed in the configuration has its own section. This section has two types of hooks that can be enabled.

All webhooks are to be listed under hooks: for the client. This list is provider agnostic and will auto-switch the formatting based on if MS Teams or Slack is detected. This hook will only send specific client data.

clients:
  - name: LotsOfHours
    hours: 160
    hooks:
      - https://hooks.slack.com/services/dude/what!
      - https://outlook.office.com/webhook/lotsOfhashes

All destination email addresses are to be listed under emails:

clients:
  - name: Email Only
    hours: 160
    emails:
      - primary@emailonly.com
      - secondary@emailonly.com

CLI

Installing as CLI

you can install this package off of pypi

pip install harvestcli

or you can clone the project install the project from that directory.

pip install .

Environment Variables

When using the cli Environment Variables can be used as an alternative to providing the input via command line flags.

Variable Option
BEARER_TOKEN -b, --bearer-token
HARVEST_ACCOUNT_ID --account-id
HARVEST_CONFIG --config-path
SENDGRID_API_KEY -s, --send-grid

Local Development

Create virtual env

pipenv shell

Install Dev dependencies

pipenv install --dev --skip-lock

Generate Docs

Install the devrequirements to install sphinx and its dependencies then run

sphinx-build .docs docs

Hosting the docs

cd docs && python -m http.server

This will host the docs locally on 8000

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

harvestcli-0.1.1.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

harvestcli-0.1.1-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file harvestcli-0.1.1.tar.gz.

File metadata

  • Download URL: harvestcli-0.1.1.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for harvestcli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 412d9ceecc6b1b59a57f49b68871d067b76279183c7992ffac8fbb38f2a77a79
MD5 997fe531544afca67d0085a813059e2f
BLAKE2b-256 2a35560b0824d5561eb0476cff861f44efda9e5d000fd71be53b958f824892a1

See more details on using hashes here.

File details

Details for the file harvestcli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: harvestcli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for harvestcli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8db8fd5cec05add4b390989f5eb97a913c0f4971d5db99825650f25505f1d9d6
MD5 33900ad9a70cad26b3f283fe084d6c01
BLAKE2b-256 391a5dbaf76413d97a21c838902b38ed2bb23589523194eaf8b07abae89139ab

See more details on using hashes here.

Supported by

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