Skip to main content

TINA Is Not Arif: A tool for tagging chef cookbooks and their dependencies.

Project description

Overview

TINA (TINA Is Not Arif) is a tool for automatically tagging Chef cookbooks and their dependencies. It features proper dependency resolution, checks for clashing version constraints, and offers configurability when tagging.

Dependencies

TINA relies on [Berkshelf](http://berkshelf.com/) and the [GitPython library](https://pypi.python.org/pypi/GitPython). To install Berkshelf:

`bash $ gem install berkshelf `

To install GitPython:

`bash $ sudo easy_install gitpython `

Using TINA

TINA is only works with Python 2.6 and 2.7. To install TINA:

`bash $ sudo easy_install tina `

To use TINA to tag a cookbook, navigate to the cookbook’s directory and run tina.

` $ tina Running Berkshelf... Discovering dependent cookbooks... Checking for version conflicts... Resolving dependencies... REPOSITORY SUMMARY: 1. foo: v2.0.3 => v2.0.4 2. bar: unchanged 3. community_cookbook_1 will be pinned at 1.2.3 4. community_cookbook_2 will be pinned at 3.2.1 To commit these changes, re-run with --commit `

TINA gives an overview of how the cookbook, and its dependendent cookbooks, will be tagged. A temporary .tina directory is created in which each repository is cloned. The .tina directory also contains a Tinafile which keeps track of repository metadata between a dry-run and a commit. If the above overview generated by TINA is acceptable, simply run tina –commit to commit the changes. Each repository will be tagged and pushed without making modifications to the master branch.

To have more options during a dry-run (e.g., bumping the major build for a repo, or changing how a community cookbook is pinned), run tina -i and follow the instructions. To see all options, run tina -h.

Tests

To run the tests:

`bash $ sudo easy_install nosetests $ sudo easy_install coverage $ nosetests --with-coverage `

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
tina-0.6-py2.7.egg (22.2 kB) Copy SHA256 hash SHA256 Egg 2.7 May 30, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page