git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Github actions failing

From
NSENGIYUMVA WILBERFORCE <nsengiyumvawilberforce@gmail.com>
Date
Jan 9, 2023, 13:01 UTC
Message-ID
<CA+PPyiGo=DVwsCxQdKQD=irR1-KiJwpbZZqAz5ib9UB4XxBgwQ@mail.gmail.com>
In-Reply-To
<CAP8UFD23ObbQaeQi2WsZ3oy0QTKiBxs3wExaHTU2QzJBPwKOmA@mail.gmail.com>
Show 41 quoted lines
> I think in general we prefer "test_cmp expected actual" over "test_cmp
> actual expected". I think it's easier to understand what happened with
> the former.
>
> Also most of the tests in t6300 are like "test_cmp expected actual":
>
> $ grep -c 'test_cmp expect' t6300-for-each-ref.sh
> 67
> $ grep -c 'test_cmp actual' t6300-for-each-ref.sh
> 1
>
> > > 1870 + test 2 -ne 2
> > > 1871 + eval diff -u "$@"
> > > 1872 + diff -u actual expected
> > > 1873 --- actual 2023-01-08 19:40:42.169214115 +0000
> > > 1874 +++ expected 2023-01-08 19:40:42.121213837 +0000
> > > 1875 @@ -1,4 +1,5 @@
> > > 1876 gpg: Signature made Sun Jan 8 19:40:42 2023 UTC
> > > 1877 gpg: using DSA key 13B6F51ECDDE430D
> > > 1878 +gpg: checking the trustdb
>
> The + before "gpg" means that the above line is in what we expect, but
> not in what we actually get.
>
> I think the reason might be that gpg's output could have changed
> between different versions of gpg and it might just not be possible
> and wise to rely on the exact output it emits.
>
> In both t7510-signed-commit.sh t7528-signed-commit-ssh.sh for example,
> we don't test the '%GG' format, and that might be the reason why.
>
> So I see the following possibilities to overcome this issue:
>
>   - just drop the test you added for the %(signature) format
>   - find a way to require a specific version of gpg for that test
> (unfortunately I don't think our test framework allows that, so you
> would have to add custom code to the test, and this is likely to
> bitrot as time passes and the required gpg version becomes unused)
>   - find a way to make the test independent of the gpg version (this
> might bitrot too as new gpg versions might further change their
> output)
From your suggestions, I will consider removing it for now

On Mon, Jan 9, 2023 at 4:22 AM Christian Couder <christian.couder@gmail.com> wrote:

Show 86 quoted lines
>
> On Mon, Jan 9, 2023 at 5:40 AM NSENGIYUMVA WILBERFORCE
> <nsengiyumvawilberforce@gmail.com> wrote:
>
> > Thanks, I missed the GPG flag. Now I get the following after forcing
> > the push. I have been looking for the problem but I can't figure it
> > out. I will be glad for any help
> > >
> > > git checkout -b signed &&
> > > 1840 echo 1 >file && git add file &&
> > > 1841 test_tick && git commit -S -m initial &&
> > > 1842 git verify-commit signed 2>out &&
> > > 1843 head -3 out >expected &&
> > > 1844 tail -1 out >>expected &&
> > > 1845 echo >>expected &&
> > > 1846 git for-each-ref refs/heads/signed --format="%(signature)" >actual &&
> > > 1847 test_cmp actual expected
> > > 1848
> > > 1849 + git checkout -b signed
> > > 1850 Switched to a new branch 'signed'
> > > 1851 + echo 1
> > > 1852 + git add file
> > > 1853 + test_tick
> > > 1854 + test -z set
> > > 1855 + test_tick=1112912113
> > > 1856 + GIT_COMMITTER_DATE=1112912113 -0700
> > > 1857 + GIT_AUTHOR_DATE=1112912113 -0700
> > > 1858 + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE
> > > 1859 + git commit -S -m initial
> > > 1860 [signed 4dc4b90] initial
> > > 1861 Author: A U Thor <author@example.com>
> > > 1862 1 file changed, 1 insertion(+)
> > > 1863 create mode 100644 file
> > > 1864 + git verify-commit signed
> > > 1865 + head -3 out
> > > 1866 + tail -1 out
> > > 1867 + echo
> > > 1868 + git for-each-ref refs/heads/signed --format=%(signature)
> > > 1869 + test_cmp actual expected
>
> I think in general we prefer "test_cmp expected actual" over "test_cmp
> actual expected". I think it's easier to understand what happened with
> the former.
>
> Also most of the tests in t6300 are like "test_cmp expected actual":
>
> $ grep -c 'test_cmp expect' t6300-for-each-ref.sh
> 67
> $ grep -c 'test_cmp actual' t6300-for-each-ref.sh
> 1
>
> > > 1870 + test 2 -ne 2
> > > 1871 + eval diff -u "$@"
> > > 1872 + diff -u actual expected
> > > 1873 --- actual 2023-01-08 19:40:42.169214115 +0000
> > > 1874 +++ expected 2023-01-08 19:40:42.121213837 +0000
> > > 1875 @@ -1,4 +1,5 @@
> > > 1876 gpg: Signature made Sun Jan 8 19:40:42 2023 UTC
> > > 1877 gpg: using DSA key 13B6F51ECDDE430D
> > > 1878 +gpg: checking the trustdb
>
> The + before "gpg" means that the above line is in what we expect, but
> not in what we actually get.
>
> I think the reason might be that gpg's output could have changed
> between different versions of gpg and it might just not be possible
> and wise to rely on the exact output it emits.
>
> In both t7510-signed-commit.sh t7528-signed-commit-ssh.sh for example,
> we don't test the '%GG' format, and that might be the reason why.
>
> So I see the following possibilities to overcome this issue:
>
>   - just drop the test you added for the %(signature) format
>   - find a way to require a specific version of gpg for that test
> (unfortunately I don't think our test framework allows that, so you
> would have to add custom code to the test, and this is likely to
> bitrot as time passes and the required gpg version becomes unused)
>   - find a way to make the test independent of the gpg version (this
> might bitrot too as new gpg versions might further change their
> output)
>
> > > 1879 gpg: Good signature from "C O Mitter <committer@example.com>"
> > > 1880
> > > 1881 error: last command exited with $?=1
> > > 1882 not ok 338 - test bare signature atom
Previous: Andreas Schwab
Message 7 of 7 in “Github actions failing”
  1. NSENGIYUMVA WILBERFORCEJan 8, 2023
  2. NSENGIYUMVA WILBERFORCEJan 8, 2023
  3. Christian CouderJan 8, 2023
  4. NSENGIYUMVA WILBERFORCEJan 9, 2023
  5. Christian CouderJan 9, 2023
  6. Andreas SchwabJan 9, 2023
  7. NSENGIYUMVA WILBERFORCEJan 9, 2023

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.