diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ad8cca23e20ed68ef27d22f3f57b9c4808c92bcc..01df3a3f5300dca27ea1c5daab15d4c8fe225543 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ stages: - test - build + - publish variables: PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip" @@ -61,3 +62,37 @@ build-windows: tags: - docker-build + +build-pypi: + stage: build + image: python:3 + before_script: + - apt-get update + - pip install .[build-pypi] + script: + - python3 setup.py sdist bdist_wheel + tags: + - docker + artifacts: + paths: + - dist/* + expire_in: 1 week + only: + - tags@funkwhale/cli + + +publish: + stage: publish + image: python:3 + before_script: + - apt-get update + - pip install .[publish] + script: + - twine upload dist/* + tags: + - docker + dependencies: + - build-linux + - build-windows + only: + - tags@funkwhale/cli diff --git a/README.md b/README.md index e21a0fd26b4918555e6111914f73a890f76d9f57..02cfcbf681c8c8b13757043cc972e5028d515c4f 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,13 @@ A command line interface to interact with Funkwhale servers. # Installation -We provide some prebuilt binaries for Windows and Linux. +This package can be installed via pip: + +``` +pip install funkwhale-cli +``` + +We also provide some prebuilt binaries for Windows and Linux. On Linux: diff --git a/setup.cfg b/setup.cfg index 6cb64f211ba014e0aaef6369f6ac10a5adfa95ef..fc49852f37935c5397178d8188e611b883a601e3 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,24 +1,37 @@ [metadata] name = funkwhale-cli description = "A command line interface to interact with Funkwhale servers" -version = 0.1.dev0 +version = 0.1.2.dev0 author = The Funkwhale Collective author_email = contact@funkwhale.audio url = https://dev.funkwhale.audio/funkwhale/cli long_description = file: README.md +long_description_content_type = text/markdown license = AGPL3 keywords = cli classifiers = Development Status :: 3 - Alpha - License :: OSI Approved :: AGPL + Intended Audience :: End Users/Desktop + License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+) Natural Language :: English + Operating System :: MacOS :: MacOS X + Operating System :: POSIX + Operating System :: POSIX :: BSD + Operating System :: POSIX :: Linux + Operating System :: Microsoft :: Windows + Programming Language :: Python Programming Language :: Python :: 3 + Programming Language :: Python :: 3 :: Only Programming Language :: Python :: 3.6 + Programming Language :: Python :: 3.7 + Programming Language :: Python :: 3.8 + Programming Language :: Python :: 3.9 [options] zip_safe = True include_package_data = True packages = find: +python_requires = >=3.6 install_requires = aiofiles~=0.7.0 aiohttp~=3.7.4 @@ -51,7 +64,12 @@ test = build = pyinstaller~=4.3 +build-pypi = + setuptools~=56.0.0 + wheel~=0.36.2 +publish = + twine~=3.4.1 [options.packages.find] exclude =