{
"info": {
"author": "Aptivate",
"author_email": "info@aptivate.org",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
"Programming Language :: Python :: 2.6",
"Programming Language :: Python :: 2.7"
],
"description": "=================\nckanext-syndicate\n=================\n\nCKAN plugin to syndicate datasets to another CKAN instance.\n\nThis plugin provides a mechanism to syndicate datasets to another instance of\nCKAN. If a dataset has the ``syndicate`` flag set to ``True`` in its custom\nmetadata, any updates to the dataset will be reflected in the syndicated\nversion. Resources in the syndicated dataset are stored as the URLs of the\nresources in the original. You must have the API key of a user on the target\ninstance of CKAN. See the Config Settings section below.\n\nPlugins can modify data sent for syndication by implementing the action\n``update_dataset_for_syndication`` and modifying the ``dataset_dict``\nvalue. This is useful if the schemas are different between CKAN instances.\n\n------------\nRequirements\n------------\n\n* Tested with CKAN 2.5.2\n* Requires ``celery``\n* To work over SSL, requires ``pyOpenSSL``, ``ndg-httpsclient`` and ``pyasn1``\n* It may be useful to run Celery in a production environment through `supervisor `_\n\n------------\nInstallation\n------------\n\nTo install ckanext-syndicate:\n\n1. Activate your CKAN virtual environment, for example::\n\n . /usr/lib/ckan/default/bin/activate\n\n2. Install the ckanext-syndicate Python package into your virtual environment::\n\n pip install ckanext-syndicate\n\n3. Add ``syndicate`` to the ``ckan.plugins`` setting in your CKAN\n config file (by default the config file is located at\n ``/etc/ckan/default/production.ini``).\n\n4. Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu::\n\n sudo service apache2 reload\n\n5. You will also need to set up celery. In a development environment this can be done with the following paster command from within your virtual environment::\n\n paster --plugin=ckan celeryd run -c /etc/ckan/default/development.ini\n\n6. In a production environment, celery can be configured through supervisor, for example ``/etc/supervisor/conf.d/celery.conf``::\n\n [program:celery]\n autorestart=true\n autostart=true\n command=/usr/lib/ckan/default/bin/paster --plugin=ckan celeryd --config=/etc/ckan/default/production.ini\n numprocs=1\n priority=998\n redirect_stderr=true\n startsecs=10\n stderr_logfile=/var/log/celeryd.log\n stdout_logfile=/var/log/celeryd.log\n stopwaitsecs=600\n user=www-data\n\n---------------\nConfig Settings\n---------------\n\n::\n\n # The URL of the site to be syndicated to\n ckan.syndicate.ckan_url = https://data.humdata.org/\n\n # The API key of the user on the syndicated site\n ckan.syndicate.api_key = 9efdd954-c643-444a-97a1-c9c374cef861\n\n # The custom metadata flag used for syndication\n # (optional, default: syndicate).\n ckan.syndicate.flag = syndicate_to_hdx\n\n # The custom metadata field to store the syndicated dataset ID\n # on the original dataset\n # (optional, default: syndicated_id)\n ckan.syndicate.id = hdx_id\n\n # A prefix to apply to the name of the syndicated dataset\n # (optional, default: )\n ckan.syndicate.name_prefix = my-prefix\n\n # The name of the organization on the target CKAN to use when creating\n # the syndicated datasets\n # (optional, default: None)\n ckan.syndicate.organization = my-org-name\n\n\n------------------------\nDevelopment Installation\n------------------------\n\nTo install ckanext-syndicate for development, activate your CKAN virtualenv and\ndo::\n\n git clone https://github.com/aptivate/ckanext-syndicate.git\n cd ckanext-syndicate\n python setup.py develop\n pip install -r dev-requirements.txt\n\nSee also Installation\n\n\n-----------------\nRunning the Tests\n-----------------\n\nTo run the tests, do::\n\n nosetests --nologcapture --with-pylons=test.ini\n\nTo run the tests and produce a coverage report, first make sure you have\ncoverage installed in your virtualenv (``pip install coverage``) then run::\n\n nosetests --nologcapture --with-pylons=test.ini --with-coverage --cover-package=ckanext.syndicate --cover-inclusive --cover-erase --cover-tests\n\n\n-------------------------------------\nRegistering ckanext-syndicate on PyPI\n-------------------------------------\n\nckanext-syndicate should be availabe on PyPI as\nhttps://pypi.python.org/pypi/ckanext-syndicate. If that link doesn't work, then\nyou can register the project on PyPI for the first time by following these\nsteps:\n\n1. Create a source distribution of the project::\n\n python setup.py sdist\n\n2. Register the project::\n\n python setup.py register\n\n3. Upload the source distribution to PyPI::\n\n python setup.py sdist upload\n\n4. Tag the first release of the project on GitHub with the version number from\n the ``setup.py`` file. For example if the version number in ``setup.py`` is\n 0.0.1 then do::\n\n git tag 0.0.1\n git push --tags\n\n\n--------------------------------------------\nReleasing a New Version of ckanext-syndicate\n--------------------------------------------\n\nckanext-syndicate is availabe on PyPI as https://pypi.python.org/pypi/ckanext-syndicate.\nTo publish a new version to PyPI follow these steps:\n\n1. Update the version number in the ``setup.py`` file.\n See `PEP 440 `_\n for how to choose version numbers.\n\n2. Create a source distribution of the new version::\n\n python setup.py sdist\n\n3. Upload the source distribution to PyPI::\n\n python setup.py sdist upload\n\n4. Tag the new release of the project on GitHub with the version number from\n the ``setup.py`` file. For example if the version number in ``setup.py`` is\n 0.0.2 then do::\n\n git tag 0.0.2\n git push --tags",
"description_content_type": null,
"docs_url": null,
"download_url": "UNKNOWN",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/aptivate/ckanext-syndicate",
"keywords": "CKAN syndication replication",
"license": "AGPL",
"maintainer": null,
"maintainer_email": null,
"name": "ckanext-syndicate",
"package_url": "https://pypi.org/project/ckanext-syndicate/",
"platform": "UNKNOWN",
"project_url": "https://pypi.org/project/ckanext-syndicate/",
"project_urls": {
"Download": "UNKNOWN",
"Homepage": "https://github.com/aptivate/ckanext-syndicate"
},
"release_url": "https://pypi.org/project/ckanext-syndicate/1.0.1/",
"requires_dist": null,
"requires_python": null,
"summary": "Allows syndication (pushing) of datasets to another repository",
"version": "1.0.1"
},
"last_serial": 2213946,
"releases": {
"1.0.1": [
{
"comment_text": "",
"digests": {
"md5": "1d94eb9c0c453a93f96a355958100a39",
"sha256": "efb84c6c377dabff853b92f342a49553b9e9387b8b9f0af4f670ca5839736f49"
},
"downloads": -1,
"filename": "ckanext-syndicate-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "1d94eb9c0c453a93f96a355958100a39",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11560,
"upload_time": "2016-07-11T10:09:05",
"url": "https://files.pythonhosted.org/packages/35/c2/90463dc1f5da93e880194f7d1065c377ebdb3c6078450d41a45a70de9d6b/ckanext-syndicate-1.0.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "1d94eb9c0c453a93f96a355958100a39",
"sha256": "efb84c6c377dabff853b92f342a49553b9e9387b8b9f0af4f670ca5839736f49"
},
"downloads": -1,
"filename": "ckanext-syndicate-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "1d94eb9c0c453a93f96a355958100a39",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11560,
"upload_time": "2016-07-11T10:09:05",
"url": "https://files.pythonhosted.org/packages/35/c2/90463dc1f5da93e880194f7d1065c377ebdb3c6078450d41a45a70de9d6b/ckanext-syndicate-1.0.1.tar.gz"
}
]
}