{ "info": { "author": "Joseph C. Pietras", "author_email": "joseph.pietras@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Information Technology", "License :: OSI Approved :: Apache Software License", "Natural Language :: English" ], "description": "THIS PYTHON PACKAGE IS A hook FOR subversion AND IS NOT MEANT TO BE RUN\nFROM THE COMMAND LINE UNDER NORMAL USAGE.\n\nVery configurable, very easy to install.\n\nPrerequisites:\n python2.7\n subversion\n apache/httpd - optional\n mod_dav_svn - optional if apache is installed\nEssentially you must have a working, accessible, subversion repository\nand python installed including pip.\n\nInstall in 3 steps:\n 1. pip install svnplus\n 2. install the subversion pre-commit \"hook\"\n 2.1 cd to /path/to/subversion/repo//hooks\n 2.2 put the file named \"pre-commit\", included with the module, there\n 2.2.1 do not add a \".py\" extension or subversion will not\n run it.\n 2.3 chown apache:apache pre-commit (or the user/group running\n subversion server daemon)\n 2.4 chmod 750 pre-commit\n 3. auto generate a default pre-commit.conf file (which you can then edit\n as you like).\n 3.1 cd to /path/to/subversion/repo//hooks\n 3.2 ./pre-commit --generate > pre-commit.conf\n 3.3 chown apache:apache pre-commit.conf (or the user/group running\n subversion server daemon)\n 3.4 chmod 640 pre-commit.conf\n 3.5 edit pre-commit.conf and follow the comments''')\n\nSVNPlus TagProtect provides immutability (write once) protection for\nthe \"/tags\" directory of a subversion repository. This is the default\nprotected directory and everything is configurable.\n\nThere are two parts included with to this package, a subversion python\nscript named \"pre-commit\" and the svnplus python package. Subversion\nrequires that this software be invoked with the name \"pre-commit\",\nthis is not changeable.\n\nThe \"pre-commit\" script can, and should, be run from the command line\nfor configuration testing and configuration debugging.\n\nInstallation of this subversion hook is trivial, simply put \"pre-commit\"\ninto the directory named hooks found under the directory where you\nhave built the subversion repository. Make sure \"pre-commit\" is owned\nand executable by the owner of the httpd process or whatever daemon is\nserving subversion.\n\nThe subversion administrator - or anyone with write permission on the\nsubversion installation directory - can change the configuration.\n\n################################################################################\n# debug value and where svn, and svnlook, have been installed\n DEBUG = 0\n SVNPATH = \"/usr/bin/svn\"\n SVNLOOK = \"/usr/bin/svnlook\"\n\n# The remaining configuration variables comprise an N-Tuple\n# and this set can be repeated as many times as wanted.\n PROTECTED_PARENT = \"/tags\" # a literal path\n PROTECTED_PRJDIRS = \"/tags/*\" # literal, glob, or blank\n PRJDIR_CREATORS = \"*\" # or comma list, or blank\n ARCHIVE_DIRECTORY = \"Archive\" # directory name\n################################################################################\n\nDo not configure directories with trailing slash characters, if you do\nthey will simply be discarded anyway but to avoid confusion don't add\nthem. The configuration of the protected project directories variable,\nPROTECTED_PRJDIRS, must start with the exact same path as its associated\nprotected parent configuration, namely PROTECTED_PARENT. This is for\nsecurity. Also for security any instances of /../ (or the like) found\nin the PROTECTED_PRJDIRS variable will be discarded.\n\nEach TAG_FOLDER value must be unique and two(2) or more of them cannot\nbe subdirectories of each other. For example:\n\n PROTECTED_PARENT = \"/tags\"\n PROTECTED_PARENT = \"/tags/foobar\"\n\nwill not be allowed.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ossCare/svnPlus", "keywords": "subversion hook tagprotect immutable", "license": "Apache Software License 2.0", "maintainer": "", "maintainer_email": "", "name": "svnplus", "package_url": "https://pypi.org/project/svnplus/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/svnplus/", "project_urls": { "Homepage": "https://github.com/ossCare/svnPlus" }, "release_url": "https://pypi.org/project/svnplus/3.19.1/", "requires_dist": null, "requires_python": "", "summary": "This is a subversion hook. It provides a protection mechanism for subversion repositories so that previously committed \"tags\" are immutable.", "version": "3.19.1" }, "last_serial": 2588626, "releases": { "3.19.1": [ { "comment_text": "", "digests": { "md5": "ef993a670234e479e1d26e61d85d8e50", "sha256": "6b2278949a2e924ed60e4947bc78a623e9ee05f8ad1d6180a2f0ffa86ddd51f5" }, "downloads": -1, "filename": "svnplus-3.19.1.tar.gz", "has_sig": false, "md5_digest": "ef993a670234e479e1d26e61d85d8e50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31186, "upload_time": "2017-01-20T22:40:21", "url": "https://files.pythonhosted.org/packages/89/e1/49d7977f98b7fd5bb3753734d0d9dd74aff5ad6d0fe530ef5e73f2090cc1/svnplus-3.19.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ef993a670234e479e1d26e61d85d8e50", "sha256": "6b2278949a2e924ed60e4947bc78a623e9ee05f8ad1d6180a2f0ffa86ddd51f5" }, "downloads": -1, "filename": "svnplus-3.19.1.tar.gz", "has_sig": false, "md5_digest": "ef993a670234e479e1d26e61d85d8e50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31186, "upload_time": "2017-01-20T22:40:21", "url": "https://files.pythonhosted.org/packages/89/e1/49d7977f98b7fd5bb3753734d0d9dd74aff5ad6d0fe530ef5e73f2090cc1/svnplus-3.19.1.tar.gz" } ] }