Skip to main content

Monitor a git repository, execute a command when it changes. Basically a polling git-hook for pull.

Project description

Monitor a git repository, execute a command when it changes. Basically a polling git-hook for pull.

purpose

Execute a chain of command when a git-repository changes

use case

Run testsets and build docker container after commit [change detected] * Run a testset * Build a docker container * Push to registry

requirements

pip install -r requirements.txt

use

reposmon.py

Monitor a git repository, execute a command when it changes.

Usage:
    reposmon.py [options] [--] [<giturl> <command>]
    reposmon.py -h | --help

Options:
  -h --help                   Show this screen.
  -o --once                   Run only once.
  -v --verbose                Verbose mode.
  -w --write=<writeymlpath>   Write arguments yaml file.
  -l --load=<loadymlpath>     Load arguments yaml file.
  -i --interval=<interval>    Seconds between checks [default: 60].
  -g --gitfolder=<gitfolder>  Folder to check the git repos out [default: .].
  -c --cmdfolder=<cmdfolder>  Folder from where to run the command [default: .].

example

When in local directory or work-directory changes, execute the command in the local directory or command-directory.

python reposmon.py git@github.com:erikdejonge/reposmon.git "docker build ."

optional

bash alias

alias reposmon=”~/[…]/reposmon/reposmon.py

install alias with a workspace checkout of reposmon:

alias reposmon="/Users/rabshakeh/workspace/reposmon/reposmon.py"

commit and sort aliases on osx

On osx the sortalias command sorts all aliasses in .bash_profile

alias sortalias='cat ~/.bash_profile > ~/.bash_profile.backup; cat ~/.bash_profile | grep -v alias | grep -v '\''^$'\'' > ~/.bash_profile_without_alias; alias | grep -v '\''^$'\'' > ~/.bash_profile_only_alias; cat ~/.bash_profile_without_alias > ~/.bash_profile; echo -e '\''\n'\'' >>  ~/.bash_profile; cat ~/.bash_profile_only_alias >>  ~/.bash_profile; rm ~/.bash_profile_without_alias; rm ~/.bash_profile_only_alias'

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

reposmon-26.tar.gz (4.2 kB view details)

Uploaded Source

File details

Details for the file reposmon-26.tar.gz.

File metadata

  • Download URL: reposmon-26.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for reposmon-26.tar.gz
Algorithm Hash digest
SHA256 270185249ae1d11ff0bbe10bff6fa01505686ccc27a17dcc37f1172f036e3bcd
MD5 3c74e10bb1ce21a7dc7f3edfab5d8e90
BLAKE2b-256 ffe2cdbd405e0ad3e72ec4d6d9ef0f03254988f4bac993e9574e4a73d4a63864

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