docker / docker-credential-helpers

Programs to keep Docker login credentials safe by storing in platform keystores
MIT License
1.06k stars 169 forks source link

Release target with checksums #237

Closed crazy-max closed 2 years ago

crazy-max commented 2 years ago

Merge release targets in Makefile to a single one called release. Also create checksums and update build workflow to publish artifacts to GitHub Release on push tag.

Also adds extra commit to remove CHANGELOG as it's outdated and now part of GitHub Releases.

Signed-off-by: CrazyMax crazy-max@users.noreply.github.com

codecov-commenter commented 2 years ago

Codecov Report

Merging #237 (d4880de) into master (da1d534) will not change coverage. The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #237   +/-   ##
=======================================
  Coverage   55.25%   55.25%           
=======================================
  Files           9        9           
  Lines         666      666           
=======================================
  Hits          368      368           
  Misses        255      255           
  Partials       43       43           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

thaJeztah commented 2 years ago

One difference with the previous releases is that previously we used a tgz to bundle the binary; advantage of that was that;

ls -la docker-credential-*
-rw-r--r-x 1 root root 2818053 Jun  7  2021 docker-credential-pass
-rw-r--r-- 1 root root 1781760 Aug 29 13:26 docker-credential-pass-v0.7.0-beta.1.linux-amd64
-rwxr-xr-x 1 root root 2495464 Jun  7  2021 docker-credential-secretservice
-rw-r--r-- 1 root root 1578552 Aug 29 13:32 docker-credential-secretservice-v0.7.0-beta.1.linux-amd64

I wasn't sure it the old ones were dynamically linked, but looks like pass static, but secretservice is dynamic (both previous release and new one);

ldd docker-credential-pass
    not a dynamic executable
ldd docker-credential-pass-v0.7.0-beta.1.linux-amd64
    not a dynamic executable

On debian:bullseye;

ldd docker-credential-secretservice
    linux-vdso.so.1 (0x00007ffd5b7da000)
    libsecret-1.so.0 => not found
    libgobject-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f63c677e000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f63c65b9000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f63c67a4000)
ldd docker-credential-secretservice-v0.7.0-beta.1.linux-amd64
    linux-vdso.so.1 (0x00007ffcf137e000)
    libsecret-1.so.0 => not found
    libgio-2.0.so.0 => not found
    libgobject-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libintl.so.8 => not found
    libc.musl-x86_64.so.1 => not found

On debian:buster;

ldd docker-credential-secretservice
    linux-vdso.so.1 (0x00007ffc289d4000)
    libsecret-1.so.0 => not found
    libgobject-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f113bbbc000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f113b9fc000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f113bbe1000)

ldd docker-credential-secretservice-v0.7.0-beta.1.linux-amd64
    linux-vdso.so.1 (0x00007ffeff9f1000)
    libsecret-1.so.0 => not found
    libgio-2.0.so.0 => not found
    libgobject-2.0.so.0 => not found
    libglib-2.0.so.0 => not found
    libintl.so.8 => not found
    libc.musl-x86_64.so.1 => not found

There is a difference in both though on what it's linked against; what distro and libc does it require?