New Upstream Release - docker-pycreds
Ready changes
Summary
Merged new upstream version: 0.4.0 (was: 0.3.0).
Resulting package
Built on 2022-04-24T04:40 (took 5m6s)
The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:
apt install -t fresh-releases python3-dockerpycreds
Lintian Result
Diff
diff --git a/PKG-INFO b/PKG-INFO
index 0cec3f7..31258f0 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,46 @@
Metadata-Version: 1.1
Name: docker-pycreds
-Version: 0.3.0
+Version: 0.4.0
Summary: Python bindings for the docker credentials store API
Home-page: https://github.com/shin-/dockerpy-creds
Author: UNKNOWN
Author-email: UNKNOWN
License: Apache License 2.0
-Description: UNKNOWN
+Description: # docker-pycreds
+
+ [![CircleCI](https://circleci.com/gh/shin-/dockerpy-creds/tree/master.svg?style=svg)](https://circleci.com/gh/shin-/dockerpy-creds/tree/master)
+
+ Python bindings for the docker credentials store API
+
+ ## Credentials store info
+
+ [Docker documentation page](https://docs.docker.com/engine/reference/commandline/login/#/credentials-store)
+
+ ## Requirements
+
+ On top of the dependencies in `requirements.txt`, the `docker-credential`
+ executable for the platform must be installed on the user's system.
+
+ ## API usage
+
+ ```python
+
+ import dockerpycreds
+
+ store = dockerpycreds.Store('secretservice')
+ store.store(
+ server='https://index.docker.io/v1/', username='johndoe',
+ secret='hunter2'
+ )
+
+ print(store.list())
+
+ print(store.get('https://index.docker.io/v1/'))
+
+
+ store.erase('https://index.docker.io/v1/')
+ ```
+
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Other Environment
diff --git a/README.md b/README.md
index 548c7fb..a1d3137 100644
--- a/README.md
+++ b/README.md
@@ -24,7 +24,11 @@ store.store(
server='https://index.docker.io/v1/', username='johndoe',
secret='hunter2'
)
-print store.get('https://index.docker.io/v1/')
+
+print(store.list())
+
+print(store.get('https://index.docker.io/v1/'))
+
store.erase('https://index.docker.io/v1/')
```
diff --git a/debian/changelog b/debian/changelog
index 559c4cb..9887f18 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+docker-pycreds (0.4.0-1) UNRELEASED; urgency=low
+
+ * New upstream release.
+
+ -- Debian Janitor <janitor@jelmer.uk> Sun, 24 Apr 2022 04:35:56 -0000
+
docker-pycreds (0.3.0-1.1) unstable; urgency=medium
* Non-maintainer upload.
diff --git a/debian/patches/Relax-test-dependencies.patch b/debian/patches/Relax-test-dependencies.patch
index 2c11eec..b7240f5 100644
--- a/debian/patches/Relax-test-dependencies.patch
+++ b/debian/patches/Relax-test-dependencies.patch
@@ -7,10 +7,10 @@ Otherwise setup.py will try to download them
test-requirements.txt | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
-diff --git a/test-requirements.txt b/test-requirements.txt
-index 9dc5b8b..fc72390 100644
---- a/test-requirements.txt
-+++ b/test-requirements.txt
+Index: docker-pycreds/test-requirements.txt
+===================================================================
+--- docker-pycreds.orig/test-requirements.txt
++++ docker-pycreds/test-requirements.txt
@@ -1,3 +1,3 @@
-pytest==3.0.2
-flake8==2.4.1
diff --git a/docker_pycreds.egg-info/PKG-INFO b/docker_pycreds.egg-info/PKG-INFO
index 0cec3f7..31258f0 100644
--- a/docker_pycreds.egg-info/PKG-INFO
+++ b/docker_pycreds.egg-info/PKG-INFO
@@ -1,12 +1,46 @@
Metadata-Version: 1.1
Name: docker-pycreds
-Version: 0.3.0
+Version: 0.4.0
Summary: Python bindings for the docker credentials store API
Home-page: https://github.com/shin-/dockerpy-creds
Author: UNKNOWN
Author-email: UNKNOWN
License: Apache License 2.0
-Description: UNKNOWN
+Description: # docker-pycreds
+
+ [![CircleCI](https://circleci.com/gh/shin-/dockerpy-creds/tree/master.svg?style=svg)](https://circleci.com/gh/shin-/dockerpy-creds/tree/master)
+
+ Python bindings for the docker credentials store API
+
+ ## Credentials store info
+
+ [Docker documentation page](https://docs.docker.com/engine/reference/commandline/login/#/credentials-store)
+
+ ## Requirements
+
+ On top of the dependencies in `requirements.txt`, the `docker-credential`
+ executable for the platform must be installed on the user's system.
+
+ ## API usage
+
+ ```python
+
+ import dockerpycreds
+
+ store = dockerpycreds.Store('secretservice')
+ store.store(
+ server='https://index.docker.io/v1/', username='johndoe',
+ secret='hunter2'
+ )
+
+ print(store.list())
+
+ print(store.get('https://index.docker.io/v1/'))
+
+
+ store.erase('https://index.docker.io/v1/')
+ ```
+
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Other Environment
diff --git a/docker_pycreds.egg-info/requires.txt b/docker_pycreds.egg-info/requires.txt
index e73dacc..3fd3941 100644
--- a/docker_pycreds.egg-info/requires.txt
+++ b/docker_pycreds.egg-info/requires.txt
@@ -1 +1 @@
-six >= 1.4.0
+six>=1.4.0
diff --git a/dockerpycreds/store.py b/dockerpycreds/store.py
index 269b9e0..7284512 100644
--- a/dockerpycreds/store.py
+++ b/dockerpycreds/store.py
@@ -65,6 +65,12 @@ class Store(object):
server = server.encode('utf-8')
self._execute('erase', server)
+ def list(self):
+ """ List stored credentials. Requires v0.4.0+ of the helper.
+ """
+ data = self._execute('list', None)
+ return json.loads(data.decode('utf-8'))
+
def _execute(self, subcmd, data_input):
output = None
env = create_environment_dict(self.environment)
diff --git a/dockerpycreds/version.py b/dockerpycreds/version.py
index 275c4ec..df0b6bb 100644
--- a/dockerpycreds/version.py
+++ b/dockerpycreds/version.py
@@ -1,2 +1,2 @@
-version = "0.3.0"
+version = "0.4.0"
version_info = tuple([int(d) for d in version.split("-")[0].split(".")])
diff --git a/setup.cfg b/setup.cfg
index 1c0622f..9b14936 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -7,5 +7,4 @@ description_file = README.md
[egg_info]
tag_build =
tag_date = 0
-tag_svn_revision = 0
diff --git a/setup.py b/setup.py
index aec8a93..e3ca11d 100644
--- a/setup.py
+++ b/setup.py
@@ -17,11 +17,16 @@ exec(open('dockerpycreds/version.py').read())
with open('./test-requirements.txt') as test_reqs_txt:
test_requirements = [line for line in test_reqs_txt]
+long_description = None
+with open('./README.md', 'r') as readme:
+ long_description = readme.read()
+
setup(
name="docker-pycreds",
version=version,
description="Python bindings for the docker credentials store API",
+ long_description=long_description,
url='https://github.com/shin-/dockerpy-creds',
license='Apache License 2.0',
packages=[
diff --git a/tests/store_test.py b/tests/store_test.py
index ba5fd7b..2f2088a 100644
--- a/tests/store_test.py
+++ b/tests/store_test.py
@@ -69,6 +69,16 @@ class TestStore(object):
with pytest.raises(CredentialsNotFound):
self.store.get(key)
+ def test_list(self):
+ names = (self.get_random_servername(), self.get_random_servername())
+ self.store.store(names[0], username='sakuya', secret='izayoi')
+ self.store.store(names[1], username='reimu', secret='hakurei')
+ data = self.store.list()
+ assert names[0] in data
+ assert data[names[0]] == 'sakuya'
+ assert names[1] in data
+ assert data[names[1]] == 'reimu'
+
def test_execute_with_env_override(self):
self.store.exe = 'env'
self.store.environment = {'FOO': 'bar'}
Debdiff
[The following lists of changes regard files as different if they have different names, permissions or owners.]
Files in second set of .debs but not in first
-rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/PKG-INFO -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/dependency_links.txt -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/not-zip-safe -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/requires.txt -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.4.0.egg-info/top_level.txt
Files in first set of .debs but not in second
-rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/PKG-INFO -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/dependency_links.txt -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/not-zip-safe -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/requires.txt -rw-r--r-- root/root /usr/lib/python3/dist-packages/docker_pycreds-0.3.0.egg-info/top_level.txt
No differences were encountered in the control files