Skip to content

Commit

Permalink
Project frame
Browse files Browse the repository at this point in the history
  • Loading branch information
amotl committed Jun 6, 2020
0 parents commit 351f5a7
Show file tree
Hide file tree
Showing 6 changed files with 139 additions and 0 deletions.
8 changes: 8 additions & 0 deletions .bumpversion.cfg
@@ -0,0 +1,8 @@
[bumpversion]
current_version = 0.0.0
files = setup.py imagecast/__init__.py
commit = True
tag = True
tag_name = {new_version}
allow_dirty = True

11 changes: 11 additions & 0 deletions .gitignore
@@ -0,0 +1,11 @@
.DS_Store
/.idea
/.venv*
/dist*
/build
*.pyc
*.egg-info
.pytest_cache
.pytest_results
.coverage
.tox
3 changes: 3 additions & 0 deletions Makefile
@@ -0,0 +1,3 @@
include util.mk

# make release bump=minor (major,minor,patch)
3 changes: 3 additions & 0 deletions requirements-release.txt
@@ -0,0 +1,3 @@
bump2version==0.5.10
twine==1.13.0
keyring==19.0.2
67 changes: 67 additions & 0 deletions setup.py
@@ -0,0 +1,67 @@
# -*- coding: utf-8 -*-
import os
from setuptools import setup, find_packages

here = os.path.abspath(os.path.dirname(__file__))
README = open(os.path.join(here, 'README.rst')).read()

setup(name='imagecast',
version='0.0.0',
description='Imagecast modifies images, optionally serving them via HTTP API',
long_description=README,
license="AGPL 3, EUPL 1.2",
classifiers=[
"Programming Language :: Python",
"License :: OSI Approved :: GNU Affero General Public License v3",
"License :: OSI Approved :: European Union Public Licence 1.2 (EUPL 1.2)",
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Environment :: Web Environment",
"Intended Audience :: Developers",
"Intended Audience :: Education",
"Intended Audience :: Information Technology",
"Intended Audience :: Manufacturing",
"Intended Audience :: Science/Research",
"Intended Audience :: System Administrators",
"Intended Audience :: Telecommunications Industry",
"Topic :: Communications",
"Topic :: Internet",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Scientific/Engineering :: Human Machine Interfaces",
"Topic :: Scientific/Engineering :: Information Analysis",
"Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator",
"Topic :: Software Development :: Embedded Systems",
"Topic :: Software Development :: Libraries",
"Topic :: System :: Archiving",
"Topic :: Utilities",
"Operating System :: POSIX",
"Operating System :: Unix",
"Operating System :: MacOS"
],
author='Andreas Motl',
author_email='andreas.motl@panodata.org',
url='https://github.com/panodata/imagecast',
keywords='image conversion http api proxy',
packages=find_packages(),
include_package_data=True,
package_data={
},
zip_safe=False,
install_requires=[
'docopt==0.6.2',
'munch==2.3.2',
'Pillow==7.1.2',
'requests==2.23.0',
],
extras_require={
'service': [
'fastapi==0.55.1',
'uvicorn==0.11.5',
],
},
entry_points={
'console_scripts': [
'imagecast = imagecast.cli:run',
],
},
)
47 changes: 47 additions & 0 deletions util.mk
@@ -0,0 +1,47 @@
# ============
# Main targets
# ============


# -------------
# Configuration
# -------------

$(eval venvpath := .venv_util)
$(eval pip := $(venvpath)/bin/pip)
$(eval python := $(venvpath)/bin/python)
$(eval bumpversion := $(venvpath)/bin/bumpversion)
$(eval twine := $(venvpath)/bin/twine)

# Setup Python virtualenv
setup-virtualenv:
@test -e $(python) || `command -v virtualenv` --python=python3 --no-site-packages $(venvpath)


# -------
# Release
# -------

# Release this piece of software
# Synopsis:
# make release bump=minor (major,minor,patch)
release: bumpversion push sdist pypi-upload


# ===============
# Utility targets
# ===============
bumpversion: install-releasetools
@$(bumpversion) $(bump)

push:
git push && git push --tags

sdist:
@$(python) setup.py sdist

pypi-upload: install-releasetools
twine upload --skip-existing --verbose dist/*.tar.gz

install-releasetools: setup-virtualenv
@$(pip) install --quiet --requirement requirements-release.txt --upgrade

0 comments on commit 351f5a7

Please sign in to comment.