Skip to content

Commit

Permalink
Task: Initial commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
boykoc committed Jun 19, 2018
0 parents commit 029f90a
Show file tree
Hide file tree
Showing 22 changed files with 1,143 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[report]
omit =
*/site-packages/*
*/python?.?/*
ckan/*
42 changes: 42 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
.ropeproject
node_modules
bower_components

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]

# C extensions
*.so

# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
sdist/
*.egg-info/
.installed.cfg
*.egg

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.cache
nosetests.xml
coverage.xml

# Sphinx documentation
docs/_build/
11 changes: 11 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
language: python
sudo: required
python:
- "2.7"
env: PGVERSION=9.1
install:
- bash bin/travis-build.bash
- pip install coveralls
script: sh bin/travis-run.sh
after_success:
- coveralls
661 changes: 661 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
include README.rst
include LICENSE
include requirements.txt
recursive-include ckanext/ontario_theme *.html *.json *.js *.less *.css *.mo
166 changes: 166 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
.. You should enable this project on travis-ci.org and coveralls.io to make
these badges work. The necessary Travis and Coverage config files have been
generated for you.
.. image:: https://travis-ci.org/boykoc/ckanext-ontario_theme.svg?branch=master
:target: https://travis-ci.org/boykoc/ckanext-ontario_theme

.. image:: https://coveralls.io/repos/boykoc/ckanext-ontario_theme/badge.svg
:target: https://coveralls.io/r/boykoc/ckanext-ontario_theme

.. image:: https://pypip.in/download/ckanext-ontario_theme/badge.svg
:target: https://pypi.python.org/pypi//ckanext-ontario_theme/
:alt: Downloads

.. image:: https://pypip.in/version/ckanext-ontario_theme/badge.svg
:target: https://pypi.python.org/pypi/ckanext-ontario_theme/
:alt: Latest Version

.. image:: https://pypip.in/py_versions/ckanext-ontario_theme/badge.svg
:target: https://pypi.python.org/pypi/ckanext-ontario_theme/
:alt: Supported Python versions

.. image:: https://pypip.in/status/ckanext-ontario_theme/badge.svg
:target: https://pypi.python.org/pypi/ckanext-ontario_theme/
:alt: Development Status

.. image:: https://pypip.in/license/ckanext-ontario_theme/badge.svg
:target: https://pypi.python.org/pypi/ckanext-ontario_theme/
:alt: License

=============
ckanext-ontario_theme
=============

.. Put a description of your extension here:
What does it do? What features does it have?
Consider including some screenshots or embedding a video!
------------
Requirements
------------

For example, you might want to mention here which versions of CKAN this
extension works with.


------------
Installation
------------

.. Add any additional install steps to the list below.
For example installing any non-Python dependencies or adding any required
config settings.
To install ckanext-ontario_theme:

1. Activate your CKAN virtual environment, for example::

. /usr/lib/ckan/default/bin/activate

2. Install the ckanext-ontario_theme Python package into your virtual environment::

pip install ckanext-ontario_theme

3. Add ``ontario_theme`` to the ``ckan.plugins`` setting in your CKAN
config file (by default the config file is located at
``/etc/ckan/default/production.ini``).

4. Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu::

sudo service apache2 reload


---------------
Config Settings
---------------

Document any optional config settings here. For example::

# The minimum number of hours to wait before re-checking a resource
# (optional, default: 24).
ckanext.ontario_theme.some_setting = some_default_value


------------------------
Development Installation
------------------------

To install ckanext-ontario_theme for development, activate your CKAN virtualenv and
do::

git clone https://github.com/boykoc/ckanext-ontario_theme.git
cd ckanext-ontario_theme
python setup.py develop
pip install -r dev-requirements.txt


-----------------
Running the Tests
-----------------

To run the tests, do::

nosetests --nologcapture --with-pylons=test.ini

To run the tests and produce a coverage report, first make sure you have
coverage installed in your virtualenv (``pip install coverage``) then run::

nosetests --nologcapture --with-pylons=test.ini --with-coverage --cover-package=ckanext.ontario_theme --cover-inclusive --cover-erase --cover-tests


---------------------------------
Registering ckanext-ontario_theme on PyPI
---------------------------------

ckanext-ontario_theme should be availabe on PyPI as
https://pypi.python.org/pypi/ckanext-ontario_theme. If that link doesn't work, then
you can register the project on PyPI for the first time by following these
steps:

1. Create a source distribution of the project::

python setup.py sdist

2. Register the project::

python setup.py register

3. Upload the source distribution to PyPI::

python setup.py sdist upload

4. Tag the first release of the project on GitHub with the version number from
the ``setup.py`` file. For example if the version number in ``setup.py`` is
0.0.1 then do::

git tag 0.0.1
git push --tags


----------------------------------------
Releasing a New Version of ckanext-ontario_theme
----------------------------------------

ckanext-ontario_theme is availabe on PyPI as https://pypi.python.org/pypi/ckanext-ontario_theme.
To publish a new version to PyPI follow these steps:

1. Update the version number in the ``setup.py`` file.
See `PEP 440 <http://legacy.python.org/dev/peps/pep-0440/#public-version-identifiers>`_
for how to choose version numbers.

2. Create a source distribution of the new version::

python setup.py sdist

3. Upload the source distribution to PyPI::

python setup.py sdist upload

4. Tag the new release of the project on GitHub with the version number from
the ``setup.py`` file. For example if the version number in ``setup.py`` is
0.0.2 then do::

git tag 0.0.2
git push --tags
43 changes: 43 additions & 0 deletions bin/travis-build.bash
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#!/bin/bash
set -e

echo "This is travis-build.bash..."

echo "Installing the packages that CKAN requires..."
sudo apt-get update -qq
sudo apt-get install postgresql-$PGVERSION solr-jetty libcommons-fileupload-java:amd64=1.2.2-1

echo "Installing CKAN and its Python dependencies..."
git clone https://github.com/ckan/ckan
cd ckan
export latest_ckan_release_branch=`git branch --all | grep remotes/origin/release-v | sort -r | sed 's/remotes\/origin\///g' | head -n 1`
echo "CKAN branch: $latest_ckan_release_branch"
git checkout $latest_ckan_release_branch
python setup.py develop
pip install -r requirements.txt --allow-all-external
pip install -r dev-requirements.txt --allow-all-external
cd -

echo "Creating the PostgreSQL user and database..."
sudo -u postgres psql -c "CREATE USER ckan_default WITH PASSWORD 'pass';"
sudo -u postgres psql -c 'CREATE DATABASE ckan_test WITH OWNER ckan_default;'

echo "SOLR config..."
# Solr is multicore for tests on ckan master, but it's easier to run tests on
# Travis single-core. See https://github.com/ckan/ckan/issues/2972
sed -i -e 's/solr_url.*/solr_url = http:\/\/127.0.0.1:8983\/solr/' ckan/test-core.ini

echo "Initialising the database..."
cd ckan
paster db init -c test-core.ini
cd -

echo "Installing ckanext-ontario_theme and its requirements..."
python setup.py develop
pip install -r dev-requirements.txt

echo "Moving test.ini into a subdir..."
mkdir subdir
mv test.ini subdir

echo "travis-build.bash is done."
14 changes: 14 additions & 0 deletions bin/travis-run.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/sh -e

echo "NO_START=0\nJETTY_HOST=127.0.0.1\nJETTY_PORT=8983\nJAVA_HOME=$JAVA_HOME" | sudo tee /etc/default/jetty
sudo cp ckan/ckan/config/solr/schema.xml /etc/solr/conf/schema.xml
sudo service jetty restart

nosetests --ckan \
--nologcapture \
--with-pylons=subdir/test.ini \
--with-coverage \
--cover-package=ckanext.ontario_theme \
--cover-inclusive \
--cover-erase \
--cover-tests
9 changes: 9 additions & 0 deletions ckanext/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# encoding: utf-8

# this is a namespace package
try:
import pkg_resources
pkg_resources.declare_namespace(__name__)
except ImportError:
import pkgutil
__path__ = pkgutil.extend_path(__path__, __name__)
Empty file.
Empty file.
Empty file.
13 changes: 13 additions & 0 deletions ckanext/ontario_theme/plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import ckan.plugins as plugins
import ckan.plugins.toolkit as toolkit


class OntarioThemePlugin(plugins.SingletonPlugin):
plugins.implements(plugins.IConfigurer)

# IConfigurer

def update_config(self, config_):
toolkit.add_template_directory(config_, 'templates')
toolkit.add_public_directory(config_, 'public')
toolkit.add_resource('fanstatic', 'ontario_theme')
Empty file.
Empty file.
Empty file.
5 changes: 5 additions & 0 deletions ckanext/ontario_theme/tests/test_plugin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
"""Tests for plugin.py."""
import ckanext.ontario_theme.plugin as plugin

def test_plugin():
pass
Empty file added dev-requirements.txt
Empty file.
Empty file added requirements.txt
Empty file.
21 changes: 21 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[extract_messages]
keywords = translate isPlural
add_comments = TRANSLATORS:
output_file = ckanext/ontario_theme/i18n/ckanext-ontario_theme.pot
width = 80

[init_catalog]
domain = ckanext-ontario_theme
input_file = ckanext/ontario_theme/i18n/ckanext-ontario_theme.pot
output_dir = ckanext/ontario_theme/i18n

[update_catalog]
domain = ckanext-ontario_theme
input_file = ckanext/ontario_theme/i18n/ckanext-ontario_theme.pot
output_dir = ckanext/ontario_theme/i18n
previous = true

[compile_catalog]
domain = ckanext-ontario_theme
directory = ckanext/ontario_theme/i18n
statistics = true
Loading

0 comments on commit 029f90a

Please sign in to comment.