No release in over 3 years
Low commit activity in last 3 years
Uploads lolcommits to a remote server, with optional key or HTTP based authentication.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

>= 0.14.2
>= 2.1.0
 Project Readme

Lolcommits Dotcom

Gem Travis Depfu Maintainability Test Coverage

lolcommits takes a snapshot with your webcam every time you git commit code, and archives a lolcat style image with it. Git blame has never been so much fun!

lolcommits.com is web app hosting lolcommits for multiple repositories! You can signup for free via GitHub. This plugin integrates your lolcommits gem with the website. The app itself has been open-sourced and lives on GitHub, pull-requests are welcome!

Requirements

Installation

After installing the lolcommits gem, install this plugin with:

$ gem install lolcommits-dotcom

Sign up (for free) here (via GitHub).

From the top menu, click 'New Repo' (give your repository a name). Then click 'Account Info' to see the keys you'll need to configure the gem.

Then configure to enable and set these keys:

$ lolcommits --config -p dotcom
# set enabled to `true`
# paste your api key, secret api and repo (external) id

That's it! Your next lolcommit will be sent to lolcommits.com. To disable use:

$ lolcommits --config -p dotcom
# and set enabled to `false`

Development

Check out this repo and run bin/setup, this will install all dependencies and generate docs. Use bundle exec rake to run all tests and generate a coverage report.

You can also run bin/console for an interactive prompt that will allow you to experiment with the gem code.

After capturing every lolcommit is uploaded to the /git_commits.json endpoint with the following multi-part POST body params (JSON encoded):

  • t - timestamp, seconds since epoch
  • token - hex digest of api_secret from plugin config and timestamp
  • key - api_key from plugin config
  • git_commit - a hash with these params:
    • sha - the commit sha
    • repo_external_id - the repo_id from plugin config
    • image - the lolcommit file (processed jpg, gif or mp4)

Tests

MiniTest is used for testing. Run the test suite with:

$ rake test

Docs

Generate docs for this gem with:

$ rake rdoc

Troubles?

If you think something is broken or missing, please raise a new issue. Take a moment to check it hasn't been raised in the past (and possibly closed).

Contributing

Bug reports and pull requests are welcome on GitHub.

When submitting pull requests, remember to add tests covering any new behaviour, and ensure all tests are passing on Travis CI. Read the contributing guidelines for more details.

This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct. See here for more details.

License

The gem is available as open source under the terms of LGPL-3.

Links