skip to navigation
skip to content

ocdev 0.0.7

ownCloud development tool

Latest Version: 0.2.2

ownCloud developer tools
This is a Python 3 library. Every pip and python command in the following code
samples should be, if needed, replaced by the appropriate command on your system (e.g. python3, pip3)

You will need **Python >=3.3** because jinja2 depends on that version. If you run Ubuntu 12.04 you can circumvent that by install jinja2 before installing the tool::

sudo apt-get install python3-jinja2


To install it run::

sudo pip3 install -r requirements.txt
sudo python3 install

You can also install it from pypi by running::

sudo pip3 install ocdev

To update the library run::

sudo pip3 --upgrade install ocdev

Setting up a development environment
To set up your development environment run::

ocdev setup core


ocdev setup base

If you use **base** the following additional apps will be installed:

* calendar
* contacts
* gallery
* music
* notes
* news
* chat
* bookmarks
* documents

The following optional commandline options are available:

* **--dir**: sets the name of the owncloud directory, defaults to core/
* **--branch**: sets the branch which should be cloned, defaults to master
* **--type**: sets the type that should be cloned, ssh or https. Defaults to https since you need access to the repository to use ssh

For a more verbose output run::

ocdev setup -h

Creating apps

To create an app in the current directory::

ocdev startapp --author "Bernhard Posselt" --mail MyApp

The following optional commandline options are available:

* **--version**: defaults to 0.0.1
* **--description**: sets the app description in the appinfo/info.xml
* **--homepage**: sets the author's homepage in the file
* **--license**: agpl or mit, defaults to agpl
* **--owncloud**: the minimum ownCloud version, defaults to 6.0.3

For a more verbose output run::

ocdev startapp -h

Setting up a test instance for continous integration
To set up a test instance for continous integration (e.g. on Travis-CI) run::

ocdev setup core
cd core
ocdev ci mysql

The following databases can be chosen:

* **mysql**
* **sqlite**
* **postgresql**

The script requires php to be available from commandline.

Interfacing with the app generator
To use the app generator in your python app use::

Setting up development environment

.. code:: python

from ocdev.plugins.setup.setup import SetUp, Arguments

arguments = Arguments(level='base', # defaults to 'core'
branch='stable6', # defaults to 'master'
type='ssh', # defaults to 'https'
directory='owncloud' # defaults to 'core'

write_directory = '/srv/http/owncloud/apps/'

app = SetUp(), write_directory)

Creating apps

.. code:: python

from ocdev.plugins.startapp.startapp import StartApp, Author, Arguments

author = Author(name='Bernhard Posselt', email='',

arguments = Arguments(name='MyApp',
description='My App Yeah!', # defaults to ''
license='mit', # defaults to 'agpl'
owncloud='6.0.3', # defaults to '6.0.3'
version='0.0.1', # defaults to '0.0.1'
authors=[author], # defaults to []

write_directory = '/srv/http/owncloud/apps/'

app = StartApp(), write_directory)

Setting up a test instance for continous integration

.. code:: python

from import ContinousIntegration, Arguments

arguments = Arguments(db='sqlite') # 'mysql', 'postgresql', 'sqlite'

write_directory = '/srv/http/owncloud/apps/'

app = ContinousIntegration(), write_directory)  
File Type Py Version Uploaded on Size
ocdev-0.0.7.tar.gz (md5) Source 2014-05-16 37KB