Source code for pyscaffold.templates

# -*- coding: utf-8 -*-
"""
Templates for all files of a project's scaffold
"""
from __future__ import absolute_import, print_function

import os.path
import string
from pkgutil import get_data

__author__ = "Florian Wilhelm"
__copyright__ = "Blue Yonder"
__license__ = "new BSD"

licenses = {"affero": "license_affero_3.0",
            "apache": "license_apache",
            "artistic": "license_artistic_2.0",
            "cc0": "license_cc0_1.0",
            "eclipse": "license_eclipse_1.0",
            "gpl2": "license_gpl_2.0",
            "gpl3": "license_gpl_3.0",
            "isc": "license_isc",
            "lgpl2": "license_lgpl_2.1",
            "lgpl3": "license_lgpl_3.0",
            "mit": "license_mit",
            "mozilla": "license_mozilla",
            "new-bsd": "license_new_bsd",
            "none": "license_none",
            "proprietary": "license_none",
            "public-domain": "license_public_domain",
            "simple-bsd": "license_simplified_bsd"}


[docs]def get_template(name): """ Retrieve the template by name :param name: name of template :return: template as :obj:`string.Template` """ pkg_name = __name__.split(".", 1)[0] file_name = "{name}.template".format(name=name) data = get_data(pkg_name, os.path.join("templates", file_name)) return string.Template(data.decode(encoding='utf8'))
[docs]def setup_py(opts): """ Template of setup.py :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("setup_py") return template.safe_substitute(opts)
[docs]def setup_cfg(opts): """ Template of setup.cfg :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("setup_cfg") return template.substitute(opts)
[docs]def gitignore(opts): """ Template of .gitignore :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("gitignore") return template.substitute(opts)
[docs]def gitignore_empty(opts): """ Template of empty .gitignore :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("gitignore_empty") return template.substitute(opts)
[docs]def sphinx_conf(opts): """ Template of conf.py :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("sphinx_conf") return template.substitute(opts)
[docs]def sphinx_index(opts): """ Template of index.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("sphinx_index") return template.substitute(opts)
[docs]def sphinx_license(opts): """ Template of license.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("sphinx_license") return template.substitute(opts)
[docs]def sphinx_authors(opts): """ Template of authors.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("sphinx_authors") return template.substitute(opts)
[docs]def sphinx_changes(opts): """ Template of changes.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("sphinx_changes") return template.substitute(opts)
[docs]def sphinx_makefile(opts): """ Template of Sphinx's Makefile :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("sphinx_makefile") return template.safe_substitute(opts)
[docs]def readme(opts): """ Template of README.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("readme") return template.substitute(opts)
[docs]def authors(opts): """ Template of AUTHORS.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("authors") return template.substitute(opts)
[docs]def requirements(opts): """ Template of requirements.txt :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("requirements") return template.substitute( requirements_str=',\n'.join(opts['requirements']), **opts)
[docs]def test_requirements(opts): """ Template of test-requirements.txt :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("test_requirements") return template.substitute(opts)
[docs]def license(opts): """ Template of LICENSE.txt :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template(licenses[opts['license']]) return template.substitute(opts)
[docs]def init(opts): """ Template of __init__.py :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("__init__") return template.substitute(opts)
[docs]def coveragerc(opts): """ Template of .coveragerc :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("coveragerc") return template.substitute(opts)
[docs]def tox(opts): """ Template of tox.ini :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("tox_ini") return template.substitute(opts)
[docs]def travis(opts): """ Template of .travis.yml :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("travis") return template.safe_substitute(opts)
[docs]def travis_install(opts): """ Template of travis_install.sh :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("travis_install") return template.safe_substitute(opts)
[docs]def pre_commit_config(opts): """ Template of .pre-commit-config.yaml :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("pre-commit-config") return template.safe_substitute(opts)
[docs]def namespace(opts): """ Template of __init__.py defining a namespace package :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("namespace") return template.substitute(opts)
[docs]def skeleton(opts): """ Template of skeleton.py defining a basic console script :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("skeleton") return template.substitute(opts)
[docs]def test_skeleton(opts): """ Template of unittest for skeleton.py :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("test_skeleton") return template.substitute(opts)
[docs]def changes(opts): """ Template of CHANGES.rst :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("changes") return template.substitute(opts)
[docs]def conftest_py(opts): """ Template of conftest.py :param opts: mapping parameters as dictionary :return: file content as string """ template = get_template("conftest_py") return template.substitute(opts)