Skip to main content

Python wrapper for Vearcity's command-line interface.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

Introduction

This library provides a Python wrapper for Veracity’s command-line interface. It includes objects for repositories, working copies, and other commonly-used items. The library also installs several command-line tools to work with Veracity’s distributed build tracking features.

Getting Started

Requirements

Dependencies

Installation

This package can be installed with pip or easy_install:

pip install python-veracity

or directly from source:

python setup.py install

After installation, the package is available under the name veracity:

>>> import veracity
>>> veracity.__version__

>>> from veracity import vv
>>> vv.version()
>>> vv.repos()

Scripting Interface

A sample script might look similar to the following:

#!/usr/bin/env python

from veracity import Repository, WorkingCopy, Item

# Clone a repo
repo = Repository('veracity', remote='http://public.veracity-scm.com/repos/veracity')

# Display Repository attributes
print repo.name
print repo.users
print repo.branches
print repo.tags

# Check out a working copy (from a Repository)
work = repo.checkout("~/v/veracity")
work.delete()

# Check out a working copy (by repo name)
work = WorkingCopy("~/v/veracity", repo='veracity')
work.update(branch='master')

# Change some files
item = Item('docs/GettingStarted.txt', work=work)
item.lock()

Build Tracking

This package also installs a set of command-line tools to work with Veracity’s Build Tracking feature: http://veracity-scm.com/qa/questions/123

Configuration

In your master branch, create a setup.cfg similar to the following:

[vv-tracking]

repositories = python-veracity series = N, C environments = W, M, L virtualenv = True

[vv-poller]

N_branches = * N_command = [ $( date “+%H” ) = 00 ] N_command-nt = if %TIME:~0,2%==00 (exit /b 0) else (exit /b 1) N_rebuild = True N_sleep = 60 * 30 N_start = Q

C_branches = master, develop, feature-, release-, hotfix-* C_command = C_rebuild = C_sleep = 60 C_start = Q

[vv-builder]

U_enter = Q U_path = . U_command = make depends U_fail = UF

B_enter = U B_path = . B_command = make install B_fail = BF

T_enter = B T_path = . T_command = make test T_fail = TF

C_enter = T C_path = . C_command = make check C_fail = CF C_exit = D

The series, environments, and statuses must match what is defined in your repository’s build configuration page: http://SERVER.com/repos/REPO/build-setup

Poller

To run one iteration of a poller for your repository:

vv-poller <repository names>

To run forever as a daemon:

vv-poller <repository names> --daemon

From within a working copy, the configuration can be tested using:

vv-poller --test

Builder

To run one iteration of a builder for your repository:

vv-builder <repository names> --env <environment alias>

To run forever as a daemon:

vv-builder <repository names> --env <environment alias> --daemon

From within a working copy, the configuration can be tested using:

vv-builder --test

Unit and Integration Tests

To run the unit and integration tests for the veracity package:

python setup.py test

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

python-veracity-0.0.5.tar.gz (40.6 kB view details)

Uploaded Source

File details

Details for the file python-veracity-0.0.5.tar.gz.

File metadata

File hashes

Hashes for python-veracity-0.0.5.tar.gz
Algorithm Hash digest
SHA256 be3176e79e392bbd0f301d6d382b6cbc6b9c4f46711592023081e7f7c89dcf2a
MD5 1f09bdb24aeeafbcc6ed9bf6ebdf61d7
BLAKE2b-256 0d817013313b08b4cd6c04402cf48ae08e5218f842a31ebc0b0b68b4658b910f

See more details on using hashes here.

Supported by

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