Generic job build specification parser
Project description
BuildParser
===========
A [specification](SPECIFICATION.md) and parser for project build configuration.
## Setup
### pip
```bash
pip install buildparser
````
### git
```bash
git clone git://github.com/brettlangdon/buildparser.git
cd ./buildparser
python setup.py install
```
## Basic Usage
```python
import buildparser
builds = buildparser.parse("./path/to/project")
for build in builds:
print build.env
print build.before_build
print build.build
print build.after_build
print build.after_success
print build.after_failure
```
## API
### Environment(object)
#### Properties
* `type` - string
* `options` - mixed
#### Methods
* `__init__(self, type, options)`
* `__repr__(self)`
* `as_dict(self)`
* `as_json(self)`
* `as_yaml(self)`
### Script(object)
#### Properties
* `commands` - list
#### Methods
* `__init__(self, commands)`
* `__repr__(self)`
* `as_dict(self)`
* `as_json(self)`
* `as_yaml(self)`
### Build(object)
#### Properties
* `env` - Environment
* `before_build` - Script
* `build` - Script
* `after_build` - Script
* `after_success` - Script
* `after_failure` - Script
#### Methods
* `__init__(self, env, before_build, build, after_build, after_success, after_failure)`
* `__repr__(self)`
* `as_dict(self)`
* `as_json(self)`
* `as_yaml(self)`
## UnknownExtensionException(Exception)
## parse(directory, name="build")
*returns*: list
Look for an appropriate `name` file or directory in the directory `directory`
and parse all possible build configurations found.
`parse` defaults to looking for the following files:
* `.build.yml`
* `.build.yaml`
* `.build.json`
* `.build.ini`
* `.build.cfg`
or for the directory `.build` which contains one or many configuration files
(name doesn't have to be "build").
## parse_directory(dir_name)
*returns*: list
Look for all appropriate files inside of `dir_name` and parse configurations found.
## parse_file(file_name)
*returns*: list
Parse any available build configurations from `file_name`
## parse_yaml(file_name)
*returns*: list
Parse any available build configurations from `file_name` as though it was yaml.
## parse_json(file_name)
*returns*: list
Parse any available build configurations from `file_name` as though it was json.
## parse_ini(file_name)
*returns*: list
Parse any available build configurations from `file_name` as though it was an ini file.
===========
A [specification](SPECIFICATION.md) and parser for project build configuration.
## Setup
### pip
```bash
pip install buildparser
````
### git
```bash
git clone git://github.com/brettlangdon/buildparser.git
cd ./buildparser
python setup.py install
```
## Basic Usage
```python
import buildparser
builds = buildparser.parse("./path/to/project")
for build in builds:
print build.env
print build.before_build
print build.build
print build.after_build
print build.after_success
print build.after_failure
```
## API
### Environment(object)
#### Properties
* `type` - string
* `options` - mixed
#### Methods
* `__init__(self, type, options)`
* `__repr__(self)`
* `as_dict(self)`
* `as_json(self)`
* `as_yaml(self)`
### Script(object)
#### Properties
* `commands` - list
#### Methods
* `__init__(self, commands)`
* `__repr__(self)`
* `as_dict(self)`
* `as_json(self)`
* `as_yaml(self)`
### Build(object)
#### Properties
* `env` - Environment
* `before_build` - Script
* `build` - Script
* `after_build` - Script
* `after_success` - Script
* `after_failure` - Script
#### Methods
* `__init__(self, env, before_build, build, after_build, after_success, after_failure)`
* `__repr__(self)`
* `as_dict(self)`
* `as_json(self)`
* `as_yaml(self)`
## UnknownExtensionException(Exception)
## parse(directory, name="build")
*returns*: list
Look for an appropriate `name` file or directory in the directory `directory`
and parse all possible build configurations found.
`parse` defaults to looking for the following files:
* `.build.yml`
* `.build.yaml`
* `.build.json`
* `.build.ini`
* `.build.cfg`
or for the directory `.build` which contains one or many configuration files
(name doesn't have to be "build").
## parse_directory(dir_name)
*returns*: list
Look for all appropriate files inside of `dir_name` and parse configurations found.
## parse_file(file_name)
*returns*: list
Parse any available build configurations from `file_name`
## parse_yaml(file_name)
*returns*: list
Parse any available build configurations from `file_name` as though it was yaml.
## parse_json(file_name)
*returns*: list
Parse any available build configurations from `file_name` as though it was json.
## parse_ini(file_name)
*returns*: list
Parse any available build configurations from `file_name` as though it was an ini file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
buildparser-0.1.1.tar.gz
(4.5 kB
view details)
File details
Details for the file buildparser-0.1.1.tar.gz
.
File metadata
- Download URL: buildparser-0.1.1.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 087acaeb9c0bc0ecdee3d416c1f65f6ca3758df97bf3608381f5e88e8058f3a7 |
|
MD5 | 682df479eb4358ca4f497afec03a8cac |
|
BLAKE2b-256 | c5e770bc098b267de7fa0d0761fa0123f178e358cc414749aa22e70b0e8def9d |