Skip to content
Snippets Groups Projects
Commit c956a787 authored by Marek Chrastina's avatar Marek Chrastina
Browse files

Add install test, version check and deploy to CI

parent f9ca8aff
No related branches found
No related tags found
1 merge request!1Add py script
Pipeline #8569 failed
stages: stages:
- test - test
- build - build
- check
- deploy
mdcheck: mdcheck:
stage: test stage: test
...@@ -36,5 +38,36 @@ build: ...@@ -36,5 +38,36 @@ build:
- export PYTHONIOENCODING=UTF-8 - export PYTHONIOENCODING=UTF-8
- export LC_CTYPE=en_US.UTF-8 - export LC_CTYPE=en_US.UTF-8
script: script:
#- python setup.py --version
- python setup.py sdist - python setup.py sdist
Install test:
stage: check
image: it4innovations/docker-pypi:latest
script:
- pip install dist/pipdeps*tar.gz
- pipdeps -l || true
- pipdeps -u
versioncheck:
stage: check
image: it4innovations/docker-pypi:latest
script:
- export IT4I_FACTORY_PREBUILD=1
- python setup.py --version
- export BUILD_VERSION="$(python setup.py --version)"
- >-
export PUBLISHED_VERSION="$(pip install pipdeps== 2>&1 | grep -oE "\(from versions: .*)" | sed "s/(from versions: //" | sed "s/)//" | tr ", " "\n" | tail -n1)"
# - export EGG_VERSION=$(grep -E "^Version:" pipdeps.egg-info/PKG-INFO | grep -Eo "[0-9.]+")
# - CMP_VERSION="$(cmp-version $EGG_VERSION $PUBLISHED_VERSION)"
# - if [ $CMP_VERSION -eq 1 ]; then true; else echo "Egg info is older/same version as module already available from public pypi repository. Please run python setup.py egg_info and commit changes"; false; fi
- CMP_VERSION="$(cmp-version $BUILD_VERSION $PUBLISHED_VERSION)"
- if [ $CMP_VERSION -eq 1 ]; then true; else echo 'Git tag is older/same version as module already available from public pypi repository. Please run git tag -a <version> -m "<version>"'; false; fi
upload:
stage: deploy
image: it4innovations/docker-pypi:latest
script:
- twine upload -u "$PYPI_USERNAME" -p "$PYPI_PASSWORD" dist/pipdeps*tar.gz
# only:
# - master
when: manual
...@@ -82,10 +82,7 @@ def get_pip_list(): ...@@ -82,10 +82,7 @@ def get_pip_list():
""" """
pip list pip list
""" """
outdated_packages = subprocess.check_output( outdated_packages = subprocess.check_output(["pip", "list"])
["pip", "list"],
stderr=subprocess.STDOUT
)
return [line.split()[0] for line in outdated_packages.strip().split("\n")[2:]] return [line.split()[0] for line in outdated_packages.strip().split("\n")[2:]]
def file_download(url): def file_download(url):
...@@ -341,6 +338,8 @@ def main(): ...@@ -341,6 +338,8 @@ def main():
arguments = arg_parse() arguments = arg_parse()
pyver = get_pyver() pyver = get_pyver()
pkglist = get_pip_list() pkglist = get_pip_list()
if 'pipdeps' in pkglist:
pkglist.remove('pipdeps')
jsonpipdeptree = get_jsonpipdeptree() jsonpipdeptree = get_jsonpipdeptree()
packages_data = collect_packages(pkglist, jsonpipdeptree, pyver=pyver) packages_data = collect_packages(pkglist, jsonpipdeptree, pyver=pyver)
for pkg, pkg_data in sorted( for pkg, pkg_data in sorted(
......
...@@ -23,7 +23,7 @@ setup( ...@@ -23,7 +23,7 @@ setup(
packages=find_packages(), packages=find_packages(),
namespace_packages=['pipdeps'], namespace_packages=['pipdeps'],
zip_safe=False, zip_safe=False,
version='0.0.1', version='0.0.dev1',
# version_format='{tag}', # version_format='{tag}',
long_description_markdown_filename='README.md', long_description_markdown_filename='README.md',
setup_requires=['setuptools-markdown'], setup_requires=['setuptools-markdown'],
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment