Skip to content

Commit

Permalink
release: update setup.py (aws#381)
Browse files Browse the repository at this point in the history
  • Loading branch information
koiker authored and brettstack committed Apr 18, 2018
1 parent 4c29f5a commit 67826f2
Show file tree
Hide file tree
Showing 8 changed files with 113 additions and 25 deletions.
3 changes: 3 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
include LICENSE
include requirements/base.txt
include requirements/dev.txt
purge tests
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ activate:

init:
$(info [*] Install requirements...)
@pip install -r requirements-dev.txt -r requirements.txt
@pip install -r requirements/dev.txt -r requirements/base.txt

test:
$(info [*] Run the unit test with minimum code coverage of $(CODE_COVERAGE)%...)
Expand Down
13 changes: 0 additions & 13 deletions requirements-dev.txt

This file was deleted.

4 changes: 2 additions & 2 deletions requirements.txt → requirements/base.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
boto3==1.6.2
botocore==1.9.2
boto3>=1.6.2
botocore>=1.9.2
docutils==0.14
enum34==1.1.6
functools32==3.2.3.post2
Expand Down
13 changes: 13 additions & 0 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
coverage==4.3.4
flake8>=3.3.0
tox>=2.2.1
pytest-cov>=2.4.0
pylint>=1.7.2

# Test requirements
pytest>=3.0.7
py>=1.4.33
mock>=2.0.0
nose>=1.3.7
parameterized>=0.6.1
requests>=2.11.1
1 change: 1 addition & 0 deletions samtranslator/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__version__ = '1.5.0'
76 changes: 67 additions & 9 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,25 +1,83 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# setup.py
#
# Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

"""
AWS SAM Serverless Application Model
"""
import io
import os
import re

from setuptools import setup, find_packages


with open('README.md') as f:
readme = f.read()
def read(*filenames, **kwargs):
encoding = kwargs.get('encoding', 'utf-8')
sep = kwargs.get('sep', os.linesep)
buf = []
for filename in filenames:
with io.open(filename, encoding=encoding) as f:
buf.append(f.read())
return sep.join(buf)


def read_version():
content = read(os.path.join(
os.path.dirname(__file__), 'samtranslator', '__init__.py'))
return re.search(r"__version__ = '([^']+)'", content).group(1)


def read_requirements(req='base.txt'):
content = read(os.path.join('requirements', req))
return [line for line in content.split(os.linesep)
if not line.strip().startswith('#')]

with open('LICENSE') as f:
license = f.read()

setup(
name='aws-sam-translator',
version='1.4.0',
version=read_version(),
description='AWS SAM Translator is a library that transform SAM templates into AWS CloudFormation templates',
long_description=readme,
long_description=read('README.md'),
author='Amazon Web Services',
author_email='[email protected]',
url='https://github.com/awslabs/serverless-application-model',
license=license,
license='Apache License 2.0',
# Exclude all but the code folders
packages=find_packages(exclude=('tests', 'docs', 'examples', 'versions')),
package_data={'': '*.yaml'},
install_requires=read_requirements('base.txt'),
extras_require={
'dev': read_requirements('dev.txt')
},
keywords="AWS SAM Serverless Application Model",
classifiers=[
'Development Status :: 4 - Beta',
'Environment :: Console',
'Environment :: Other Environment',
'Intended Audience :: Developers',
'Intended Audience :: Information Technology',
'License :: OSI Approved :: Apache Software License',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 2.7',
'Topic :: Internet',
'Topic :: Software Development :: Build Tools',
'Topic :: Utilities',
]
)

26 changes: 26 additions & 0 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
[tox]
envlist=py27, flake8

[flake8]
ignore = E126

[testenv]
# pytest parameters are included in the pytest.ini
commands=pytest
deps=
coverage
pylint
pytest
py
pytest-cov
mock
nose
parameterized
requests

[testenv:flake8]
basepython = python2.7
deps =
flake8
commands =
flake8 samtranslator tests --max-line-length=120

0 comments on commit 67826f2

Please sign in to comment.