This repository has been archived by the owner on Jan 6, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
/
build.py
78 lines (65 loc) · 2.89 KB
/
build.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
from pybuilder.core import use_plugin, init, Author
from pybuilder.vcs import VCSRevision
use_plugin('python.core')
use_plugin('python.install_dependencies')
use_plugin('python.distutils')
use_plugin('python.flake8')
use_plugin('python.unittest')
use_plugin('python.coverage')
use_plugin('copy_resources')
use_plugin('python.pytddmon')
use_plugin('python.integrationtest')
default_task = ['analyze', 'publish']
name = 'aws-monocyte'
version = '0.3'
summary = 'Monocyte - Search and Destroy unwanted AWS Resources relentlessly.'
description = """
Monocyte is a bot for destroying AWS resources in non-EU regions written in Python using Boto.
It is especially useful for companies that are bound to European privacy laws
and for that reason don't want to process user data in non-EU regions.
"""
authors = [Author('Jan Brennenstuhl', '[email protected]'),
Author('Arne Hilmann', '[email protected]')]
url = 'https://github.com/ImmobilienScout24/aws-monocyte'
license = 'Apache License 2.0'
@init
def set_properties(project):
project.set_property("verbose", True)
project.depends_on("docopt")
project.depends_on("boto")
project.depends_on("boto3")
project.depends_on("python-cloudwatchlogs-logging")
project.depends_on("yamlreader")
project.depends_on("pils")
project.depends_on("mock")
project.build_depends_on("unittest2>=0.7")
project.build_depends_on("moto>=0.4.31")
project.set_property("flake8_include_test_sources", True)
project.set_property('coverage_break_build', False)
project.set_property("install_dependencies_upgrade", True)
project.set_property('copy_resources_target', '$dir_dist')
project.get_property('copy_resources_glob').append('setup.cfg')
project.set_property('dir_dist_scripts', 'scripts')
project.set_property('integrationtest_inherit_environment', True)
project.set_property('integrationtest_always_verbose', True)
project.set_property('integrationtest_parallel', True)
project.set_property('distutils_classifiers', [
'Development Status :: 4 - Beta',
'Environment :: Console',
'Intended Audience :: Developers',
'Intended Audience :: System Administrators',
'Programming Language :: Python',
'Topic :: System :: Networking',
'Topic :: System :: Software Distribution',
'Topic :: System :: Systems Administration'
])
@init(environments='teamcity')
def set_properties_for_teamcity_builds(project):
import os
project.version = '%s.%s-%s' % (
project.version, VCSRevision().get_git_revision_count(), os.environ.get('BUILD_NUMBER', 0))
project.default_task = ['install_build_dependencies', 'publish']
project.set_property(
'install_dependencies_index_url', os.environ.get('PYPIPROXY_URL'))
project.set_property('install_dependencies_use_mirrors', False)
project.set_property('teamcity_output', True)