AzkabanCLI: a lightweight command line interface for Azkaban.
Project description
# AzkabanCLI [](https://travis-ci.org/mtth/azkaban) [](https://pypi.python.org/pypi/azkaban/) [](https://pypistats.org/packages/azkaban)
A lightweight [Azkaban][] client providing:
* A command line interface to run workflows, upload projects, etc.
* A convenient and extensible way for building projects.
## Sample
Below is a simple configuration file for a project containing a workflow with
three jobs:
```python
from azkaban import Job, Project
from getpass import getuser
PROJECT = Project('sample')
# properties available to all jobs
PROJECT.properties = {
'user.to.proxy': getuser(),
}
# dictionary of jobs
JOBS = {
'first': Job({'type': 'command', 'command': 'echo "Hello"'}),
'second': Job({'type': 'command', 'command': 'echo "World"'}),
'third': Job({'type': 'noop', 'dependencies': 'first,second'}),
}
for name, job in JOBS.items():
PROJECT.add_job(name, job)
```
The [examples][] directory contains another sample project that uses Azkaban
properties to build a project with two configurations: production and test,
without any job duplication.
## Documentation
The full documentation can be found [here][doc].
## Installation
Using [pip][]:
```sh
$ pip install azkaban
```
## Development
Run tests:
```sh
$ nosetests
```
To also run the integration tests against an Azkaban server, create
`~/.azkabanrc` that includes at least:
```cfg
[azkaban]
test.alias = local
[alias.local]
url = azkaban:azkaban@http://localhost:8081
```
[Azkaban]: http://data.linkedin.com/opensource/azkaban
[doc]: http://azkabancli.readthedocs.org/
[examples]: https://github.com/mtth/azkaban/tree/master/examples
[pip]: http://www.pip-installer.org/en/latest/
A lightweight [Azkaban][] client providing:
* A command line interface to run workflows, upload projects, etc.
* A convenient and extensible way for building projects.
## Sample
Below is a simple configuration file for a project containing a workflow with
three jobs:
```python
from azkaban import Job, Project
from getpass import getuser
PROJECT = Project('sample')
# properties available to all jobs
PROJECT.properties = {
'user.to.proxy': getuser(),
}
# dictionary of jobs
JOBS = {
'first': Job({'type': 'command', 'command': 'echo "Hello"'}),
'second': Job({'type': 'command', 'command': 'echo "World"'}),
'third': Job({'type': 'noop', 'dependencies': 'first,second'}),
}
for name, job in JOBS.items():
PROJECT.add_job(name, job)
```
The [examples][] directory contains another sample project that uses Azkaban
properties to build a project with two configurations: production and test,
without any job duplication.
## Documentation
The full documentation can be found [here][doc].
## Installation
Using [pip][]:
```sh
$ pip install azkaban
```
## Development
Run tests:
```sh
$ nosetests
```
To also run the integration tests against an Azkaban server, create
`~/.azkabanrc` that includes at least:
```cfg
[azkaban]
test.alias = local
[alias.local]
url = azkaban:azkaban@http://localhost:8081
```
[Azkaban]: http://data.linkedin.com/opensource/azkaban
[doc]: http://azkabancli.readthedocs.org/
[examples]: https://github.com/mtth/azkaban/tree/master/examples
[pip]: http://www.pip-installer.org/en/latest/
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
azkaban-0.9.11.tar.gz
(36.3 kB
view details)
File details
Details for the file azkaban-0.9.11.tar.gz.
File metadata
- Download URL: azkaban-0.9.11.tar.gz
- Upload date:
- Size: 36.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/2.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
caffaa2a44f0c767e728cb0ef7474e83a70a819d595ce7da05f20944abe1f814
|
|
| MD5 |
3e3321b5e50e2000f34580bfce091eb5
|
|
| BLAKE2b-256 |
8aefc085ea43a98ab6e03730b55af07e3be5df62122213cdd8ad1bafb48388fb
|