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.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

tina-0.6-py2.7.egg (22.2 kB view hashes)

Uploaded Source

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