Applications for the Djeese Application Store must provide a configuration file describing the properties and settings of an application.
Djeese Application Configurations are written in the INI file format as understood by Python’s ConfigParser module. While not required we recommend you use the .ini extension for those files.
Note
We decided to use file-based configurations over a web form so you can use your favorite version control system to version the configurations if you want to. This is optional of course. Further it keeps some options open for our command line tool in the future.
The Djeese Application Configuration file must have an app section and can optionally have a templates section as well as a section for each setting defined in the settings option in the app section.
The app section is the main (and only required) section in your Djeese Application Configuration file. It has following required options:
name: The (unique) verbose name of your application.
packagename: The package name of your application.
describes. This does not have to be a version available on PyPI but rather is an internal version for djeese.
have in Django’s INSTALLED_APPS setting.
description: A description of your application. May be multiple lines.
license: The license type of this application (BSD, MIT, proprietary, ...).
running uploadapp.
url: The URL to your applications project page.
It may further have following optional options:
here do not have to be the actual setting names, but are merely references to a section with the same name in this file.
author: The name of the author of this application.
author-url: The URL to the authors website.
example the transifex page.
Required for successful uninstallations.
Required for successful uninstallations.
The templates section defines templates that should be editable through djeese by the users. For CMS Plugins this should include the template that gets rendered by the plugin. Admin templates can and probably should be omitted.
The keys to this section are the template paths as used by Django’s template system. The values are paths to the template source code, which must be accessible when running uploadapp.
For each setting defined in the settings option of the app section, you must create a section with the same name. This section has following required options:
name: The name of this setting. This is the name used in Python.
when the user is prompted to configure this setting.
stringlist, stringtuplelist, :boolean, staticfile and choices.
It may also include the following optional options:
string type at the moment.
settings defined are required.
requires the setting to have a default set. This option should be avoided if possible.
The staticfile type also has following optional option:
any file type that can be uploaded using pushstatic can be used.
The choices type also has following required option:
That section must exist. The sections keys are the values to be saved to the setting, the sections values are the labels to display in the forms.
This is an example Djeese Application Configuration for the CMSPlugin Disqus.
[app]
name = CMSPlugin disqus
packagename = cmsplugin-disqus
private = false
url = https://github.com/djeese/cmsplugin-disqus
author = Djeese Factory GmbH
author-url = https://github.com/djeese
installed-apps =
cmsplugin_disqus
version = 1.0.0.2
description = Disqus plugin for django CMS
license = BSD
license-path = LICENSE.txt
translation-url = https://raw.github.com/djeese/cmsplugin-disqus/master/LICENSE.txt
settings =
shortname
plugins =
DisqusPlugin
[shortname]
name = DISQUS_SHORTNAME
verbose-name = Disqus Site Shortname
type = string
required = true
[templates]
cmsplugin_disqus/disqus_plugin.html = cmsplugin_disqus/templates/cmsplugin_disqus/disqus_plugin.html