Add license and fix some substitutions
This commit is contained in:
parent
4d90d26087
commit
72c2ac2d9f
5 changed files with 62 additions and 3 deletions
36
deploy_new_python_project.sh
Normal file → Executable file
36
deploy_new_python_project.sh
Normal file → Executable file
|
@ -12,11 +12,14 @@ function usage() {
|
||||||
echo " --author-email Email address of the author."
|
echo " --author-email Email address of the author."
|
||||||
echo " --url URL of the project."
|
echo " --url URL of the project."
|
||||||
echo " --license License name."
|
echo " --license License name."
|
||||||
|
echo " --license-url License URL to fetch in plain text and save in your project folder."
|
||||||
|
echo " --description Description."
|
||||||
if [ -e "$(dirname "${0}")/defaults" ]
|
if [ -e "$(dirname "${0}")/defaults" ]
|
||||||
then
|
then
|
||||||
echo "Defaults:"
|
echo "Defaults:"
|
||||||
cat "$(dirname "${0}")/defaults"
|
cat "$(dirname "${0}")/defaults"
|
||||||
fi
|
fi
|
||||||
|
echo ""
|
||||||
}
|
}
|
||||||
# shellcheck disable=SC1090
|
# shellcheck disable=SC1090
|
||||||
if [ -e "$(dirname "${0}")/defaults" ]
|
if [ -e "$(dirname "${0}")/defaults" ]
|
||||||
|
@ -75,17 +78,49 @@ do
|
||||||
LICENSE="${1}"
|
LICENSE="${1}"
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
"--license-url"|"-U")
|
||||||
|
shift
|
||||||
|
license_url="${1}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
"--description")
|
||||||
|
shift
|
||||||
|
DESCRIPTION="${1}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Ignoring unknwon parameter '${1}'"
|
echo "Ignoring unknwon parameter '${1}'"
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
if [ -z ${DESCRIPTION} ]; then
|
||||||
|
DESCRIPTION=${PROJECT_NAME}
|
||||||
|
fi
|
||||||
|
|
||||||
destination_path="${DEPLOYMENT_PATH}/${PROJECT_CODENAME}"
|
destination_path="${DEPLOYMENT_PATH}/${PROJECT_CODENAME}"
|
||||||
mkdir -p "${DEPLOYMENT_PATH}"
|
mkdir -p "${DEPLOYMENT_PATH}"
|
||||||
script_path=$(dirname "${0}")
|
script_path=$(dirname "${0}")
|
||||||
cp "${script_path}/skeleton" "${destination_path}" -rfp
|
cp "${script_path}/skeleton" "${destination_path}" -rfp
|
||||||
|
if [ -z "${license_url}" ]; then
|
||||||
|
case "${license}" in
|
||||||
|
"GPLv3")
|
||||||
|
license_url="https://www.gnu.org/licenses/gpl-3.0.txt"
|
||||||
|
;;
|
||||||
|
"GPLv2")
|
||||||
|
license_url="https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt"
|
||||||
|
;;
|
||||||
|
"GPLv1"|"GPL")
|
||||||
|
licence_url="https://www.gnu.org/licenses/old-licenses/gpl-1.0.txt"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Warning! Put the license text in the file ${destination_path}/LICENSE or pass the URL with the --license-url option"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
if [ -n "${licence_url}" ]; then
|
||||||
|
curl -s "${license_url}" > "${destination_path}/LICENSE"
|
||||||
|
fi
|
||||||
mv "${destination_path}/project_codename" "${destination_path}/${PROJECT_CODENAME}"
|
mv "${destination_path}/project_codename" "${destination_path}/${PROJECT_CODENAME}"
|
||||||
mv "${destination_path}/${PROJECT_CODENAME}/project_codename.py" "${destination_path}/${PROJECT_CODENAME}/${PROJECT_CODENAME}.py"
|
mv "${destination_path}/${PROJECT_CODENAME}/project_codename.py" "${destination_path}/${PROJECT_CODENAME}/${PROJECT_CODENAME}.py"
|
||||||
while read -r file
|
while read -r file
|
||||||
|
@ -98,4 +133,5 @@ do
|
||||||
sed -i "s/__version__/${VERSION}/g" "${file}"
|
sed -i "s/__version__/${VERSION}/g" "${file}"
|
||||||
sed -i "s/__url__/${URL}/g" "${file}"
|
sed -i "s/__url__/${URL}/g" "${file}"
|
||||||
sed -i "s/__license__/${LICENSE}/g" "${file}"
|
sed -i "s/__license__/${LICENSE}/g" "${file}"
|
||||||
|
sed -i "s/__description__/${DESCRIPTION}/g" "${file}"
|
||||||
done <<< "$(find "${destination_path}/" -type f)"
|
done <<< "$(find "${destination_path}/" -type f)"
|
0
skeleton/LICENSE
Normal file
0
skeleton/LICENSE
Normal file
|
@ -64,8 +64,7 @@ class __project_codename__:
|
||||||
#@click.option("--dummy","-n" is_flag=True, help="Don't do anything, just show what would be done.") # Don't forget to add dummy to parameters of main function
|
#@click.option("--dummy","-n" is_flag=True, help="Don't do anything, just show what would be done.") # Don't forget to add dummy to parameters of main function
|
||||||
@click_config_file.configuration_option()
|
@click_config_file.configuration_option()
|
||||||
def __main__(debug_level, log_file):
|
def __main__(debug_level, log_file):
|
||||||
object = __project_codename__(debug_level, log_file)
|
return __project_codename__(debug_level, log_file)
|
||||||
object._log.info('Initialized __project_codename__')
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
__main__()
|
__main__()
|
||||||
|
|
|
@ -1,3 +1,25 @@
|
||||||
[build-system]
|
[build-system]
|
||||||
requires = ["setuptools", "wheel"]
|
requires = ["setuptools", "wheel"]
|
||||||
build-backend = "setuptools.build_meta"
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
|
[project.urls]
|
||||||
|
Homepage = "__url__"
|
||||||
|
|
||||||
|
[project]
|
||||||
|
name = "__project_codename__"
|
||||||
|
version = "__version__"
|
||||||
|
description = "__description__"
|
||||||
|
readme = "README.md"
|
||||||
|
authors = [{ name = "__author__", email = "__author_email__" }]
|
||||||
|
license = { file = "LICENSE" }
|
||||||
|
classifiers = [
|
||||||
|
"License :: OSI Approved :: __license__ License",
|
||||||
|
"Programming Language :: Python",
|
||||||
|
"Programming Language :: Python :: 3",
|
||||||
|
]
|
||||||
|
#keywords = ["vCard", "contacts", "duplicates"]
|
||||||
|
dependencies = [
|
||||||
|
"click",
|
||||||
|
"click_config_file",
|
||||||
|
]
|
||||||
|
requires-python = ">=3"
|
|
@ -3,10 +3,12 @@ setuptools.setup(
|
||||||
scripts=['__project_codename__/__project_codename__.py'],
|
scripts=['__project_codename__/__project_codename__.py'],
|
||||||
author="__author__",
|
author="__author__",
|
||||||
version='__version__',
|
version='__version__',
|
||||||
name='__project_codenane__',
|
name='__project_codename__',
|
||||||
author_email="__author_email__",
|
author_email="__author_email__",
|
||||||
url="__url__",
|
url="__url__",
|
||||||
description="__description__",
|
description="__description__",
|
||||||
|
long_description="README.md",
|
||||||
|
long_description_content_type="text/markdown",
|
||||||
license="__license__",
|
license="__license__",
|
||||||
#keywords=["my", "script", "does", "things"]
|
#keywords=["my", "script", "does", "things"]
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue