SOFTWARE BILL OF MATERIALS#
1[metadata]
2name = victorykit-aws-myfa
3author = Tiara Rodney (victory-k.it)
4author_email = py-aws-mfa@victoryk.it
5description = Convenience wrapper for MFA-authenticated AWS STS sessions
6long_description = file: README.md
7long_description_content_type = text/markdown
8url = https://victorykit.bitbucket.io/py-aws-myfa
9project_urls =
10 Bug Tracker = https://bitbucket.org/victorykit/py-aws-myfa/jira
11classifiers =
12 Development Status :: 4 - Beta
13 Environment :: Other Environment
14 Intended Audience :: Developers
15 Topic :: Utilities
16 Topic :: Security
17 Programming Language :: Python :: 3.7
18 Programming Language :: Python :: 3.8
19 Programming Language :: Python :: 3.9
20 Operating System :: OS Independent
21 License :: Other/Proprietary License
22
23[options]
24zip_safe = true
25package_dir =
26 =src
27python_requires = >=3.7
28test_suite = test
29packages = find:
30
31[options.entry_points]
32console_scripts =
33 aws-myfa = aws_myfa.__main__:main
34
35[options.packages.find]
36where = src
1[[source]]
2url = 'https://pypi.python.org/simple'
3verify_ssl = true
4name = 'pypi'
5
6[requires]
7python_version = '3'
8
9[scripts]
10"docgen" = "tox"
11"htmldocgen" = "tox -e htmldocgen"
12"mddocgen" = "tox -e mddocgen"
13"pdfdocgen" = "tox -e pdfdocgen"
14
15[dev-packages]
16tox = '==3.23.0'
17
18[packages]
19aws-myfa = {editable = true, path = "."}
1[tox]
2skipsdist = true
3minversion = 3.7.0
4isolated_build = True
5envlist = lint, mddocgen, build, htmldocgen
6
7
8[testenv:lint]
9description = lint with pylint
10setenv = PYTHONPATH = {toxinidir}/src
11deps =
12 {toxinidir}
13 pylint >= 2.12.2, < 3
14commands =
15 python3 -m pylint {toxinidir}/src {posargs}
16
17
18[testenv:format]
19description = format code
20basepython = python3
21deps =
22 autopep8 >= 1.6.0, < 2
23commands =
24 python3 -m autopep8 -v src/ {posargs}
25
26
27[testenv:build]
28description = build and package
29basepython = python3
30setenv = PYTHONPATH = {toxinidir}/src
31deps =
32 build >= 0.5.1, < 1
33commands =
34 python3 -m build {posargs}
35
36
37[testenv:htmldocgen]
38description = build HTML documentation
39basepython = python3
40allowlist_externals =
41 sphinx-build
42deps =
43 sphinx >= 4.3.2, < 5
44 furo
45 sphinx-argparse
46 {toxinidir}
47setenv =
48 PLANTUML_LIMIT_SIZE=20000
49commands =
50 sphinx-build -d "{toxinidir}/build/docs/_tree/html" docs "build/docs/html" --color -W -bhtml {posargs}
51
52
53[testenv:mddocgen]
54description = build markdown repository documentation
55basepython = python3
56allowlist_externals =
57 sphinx-build
58deps =
59 sphinx >= 4.3.2, < 5
60 sphinx-markdown-builder >= 0.5.4, < 1
61 sphinx-argparse
62 {toxinidir}
63commands =
64 sphinx-build -d "{toxinidir}/build/docs/_tree/_" docs {toxinidir} --color -W -bmarkdown -treadme {posargs}
65
66
67[testenv:pdfdocgen]
68description = build single PDF document documentation
69basepython = python3
70allowlist_externals =
71 sphinx-build
72deps =
73 sphinx >= 4.3.2, < 5
74 furo
75 sphinx-argparse
76 rst2pdf >= 0.100, < 1
77 {toxinidir}
78commands =
79 sphinx-build -d "{toxinidir}/build/docs/_tree/_" docs "dist/docs/pdf" --color -W -bpdf -tpdf {posargs}
80
81
82[testenv:publish]
83description = publish to pypi repository
84passenv =
85 #https://twine.readthedocs.io/en/stable/#environment-variables
86 TWINE_USERNAME
87 TWINE_PASSWORD
88 TWINE_REPOSITORY
89 TWINE_REPOSITORY_URL
90 TWINE_CERT
91 TWINE_NON_INTERACTIVE
92deps =
93 twine
94commands =
95 python3 -m twine upload "dist/*"
96
97
98[testenv:publish-docs]
99description = publish documentation
100setenv =
101 tmppath = {envdir}/git/vicytorykit.bitbucket.io
102passenv =
103 #https://support.atlassian.com/bitbucket-cloud/docs/variables-and-secrets/
104 BITBUCKET_REPO_SLUG
105allowlist_externals =
106 /bin/sh
107 /bin/rm
108 /bin/cp
109 /bin/mkdir
110 /usr/bin/git
111commands =
112 python3 -c "exec('import os\nif \'BITBUCKET_REPO_SLUG\' not in os.environ.keys(): exit(1)')"
113 rm -rf {env:tmppath}
114 git clone git@bitbucket.org:victorykit/victorykit.bitbucket.io.git {env:tmppath}
115 mkdir -p "{env:tmppath}/{env:BITBUCKET_REPO_SLUG}"
116 cp -r build/docs/html/. "{env:tmppath}/{env:BITBUCKET_REPO_SLUG}"
117 sh -c "cd {env:tmppath}; git add {env:BITBUCKET_REPO_SLUG}"
118 sh -c "cd {env:tmppath}; git -c 'user.name=victoryk.it Bot' -c 'user.email=commits-noreply@victoryk.it' commit -m 'updated {env:BITBUCKET_REPO_SLUG}'"
119 sh -c "cd {env:tmppath}; git push"