git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* Github actions failing
@ 2023-01-08 10:02 NSENGIYUMVA WILBERFORCE
  2023-01-08 10:07 ` NSENGIYUMVA WILBERFORCE
  2023-01-08 18:17 ` Christian Couder
  0 siblings, 2 replies; 7+ messages in thread
From: NSENGIYUMVA WILBERFORCE @ 2023-01-08 10:02 UTC (permalink / raw)
  To: git

Hi,
So I wanted to send the next patch after review.  All the tests pass
when I run them on my PC but I get something like the following error
when I test from my git branch
>
> + git checkout -b signed
> 2283 Switched to a new branch 'signed'
> 2284 + echo 1
> 2285 + git add file
> 2286 + test_tick
> 2287 + test -z set
> 2288 + test_tick=1112912113
> 2289 + GIT_COMMITTER_DATE='1112912113 -0700'
> 2290 + GIT_AUTHOR_DATE='1112912113 -0700'
> 2291 + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE
> 2292 + git commit -S -m initial
> 2293 error: cannot run gpg: No such file or directory
> 2294 error: gpg failed to sign the data
> 2295 fatal: failed to write commit object
> 2296 error: last command exited with $?=128
> 2297 not ok 338 - test bare signature atom
What could be wrong?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Github actions failing
  2023-01-08 10:02 Github actions failing NSENGIYUMVA WILBERFORCE
@ 2023-01-08 10:07 ` NSENGIYUMVA WILBERFORCE
  2023-01-08 18:17 ` Christian Couder
  1 sibling, 0 replies; 7+ messages in thread
From: NSENGIYUMVA WILBERFORCE @ 2023-01-08 10:07 UTC (permalink / raw)
  To: git

Hi,
So I wanted to send the next patch after review.  All the tests pass
when I run them on my PC but I get something like the following error
when I test from my git branch
>
> + git checkout -b signed
> 2283 Switched to a new branch 'signed'
> 2284 + echo 1
> 2285 + git add file
> 2286 + test_tick
> 2287 + test -z set
> 2288 + test_tick=1112912113
> 2289 + GIT_COMMITTER_DATE='1112912113 -0700'
> 2290 + GIT_AUTHOR_DATE='1112912113 -0700'
> 2291 + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE
> 2292 + git commit -S -m initial
> 2293 error: cannot run gpg: No such file or directory
> 2294 error: gpg failed to sign the data
> 2295 fatal: failed to write commit object
> 2296 error: last command exited with $?=128
> 2297 not ok 338 - test bare signature atom
>
> What could be wrong?

This is the branch:
https://github.com/nsengiyumva-wilberforce/git/commits/signature10


On Sun, Jan 8, 2023 at 1:02 PM NSENGIYUMVA WILBERFORCE
<nsengiyumvawilberforce@gmail.com> wrote:
>
> Hi,
> So I wanted to send the next patch after review.  All the tests pass
> when I run them on my PC but I get something like the following error
> when I test from my git branch
> >
> > + git checkout -b signed
> > 2283 Switched to a new branch 'signed'
> > 2284 + echo 1
> > 2285 + git add file
> > 2286 + test_tick
> > 2287 + test -z set
> > 2288 + test_tick=1112912113
> > 2289 + GIT_COMMITTER_DATE='1112912113 -0700'
> > 2290 + GIT_AUTHOR_DATE='1112912113 -0700'
> > 2291 + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE
> > 2292 + git commit -S -m initial
> > 2293 error: cannot run gpg: No such file or directory
> > 2294 error: gpg failed to sign the data
> > 2295 fatal: failed to write commit object
> > 2296 error: last command exited with $?=128
> > 2297 not ok 338 - test bare signature atom
> What could be wrong?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Github actions failing
  2023-01-08 10:02 Github actions failing NSENGIYUMVA WILBERFORCE
  2023-01-08 10:07 ` NSENGIYUMVA WILBERFORCE
@ 2023-01-08 18:17 ` Christian Couder
  2023-01-09  4:40   ` NSENGIYUMVA WILBERFORCE
  1 sibling, 1 reply; 7+ messages in thread
From: Christian Couder @ 2023-01-08 18:17 UTC (permalink / raw)
  To: NSENGIYUMVA WILBERFORCE; +Cc: git

Hi,

On Sun, Jan 8, 2023 at 11:07 AM NSENGIYUMVA WILBERFORCE
<nsengiyumvawilberforce@gmail.com> wrote:
>
> Hi,
> So I wanted to send the next patch after review.  All the tests pass
> when I run them on my PC but I get something like the following error
> when I test from my git branch
> >
> > + git checkout -b signed
> > 2283 Switched to a new branch 'signed'
> > 2284 + echo 1
> > 2285 + git add file
> > 2286 + test_tick
> > 2287 + test -z set
> > 2288 + test_tick=1112912113
> > 2289 + GIT_COMMITTER_DATE='1112912113 -0700'
> > 2290 + GIT_AUTHOR_DATE='1112912113 -0700'
> > 2291 + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE
> > 2292 + git commit -S -m initial
> > 2293 error: cannot run gpg: No such file or directory
> > 2294 error: gpg failed to sign the data
> > 2295 fatal: failed to write commit object
> > 2296 error: last command exited with $?=128
> > 2297 not ok 338 - test bare signature atom
> What could be wrong?

There is the following in the above log:

> 2293 error: cannot run gpg: No such file or directory

so maybe gpg isn't installed on the test system.

It looks like the test you added doesn't have the "GPG" prerequisite. Compare:

-> test_expect_success 'test bare signature atom'

with:

-> test_expect_success GPG 'show good signature with custom format'

There is a "GPG" prerequisite in the latter but not the former.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Github actions failing
  2023-01-08 18:17 ` Christian Couder
@ 2023-01-09  4:40   ` NSENGIYUMVA WILBERFORCE
  2023-01-09  9:22     ` Christian Couder
  0 siblings, 1 reply; 7+ messages in thread
From: NSENGIYUMVA WILBERFORCE @ 2023-01-09  4:40 UTC (permalink / raw)
  To: Christian Couder; +Cc: git

> There is the following in the above log:
>
> > 2293 error: cannot run gpg: No such file or directory
>
> so maybe gpg isn't installed on the test system.
>
> It looks like the test you added doesn't have the "GPG" prerequisite. Compare:
>
> -> test_expect_success 'test bare signature atom'
>
> with:
>
> -> test_expect_success GPG 'show good signature with custom format'
>
> There is a "GPG" prerequisite in the latter but not the former.
>
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
> 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
> 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




On Sun, Jan 8, 2023 at 1:17 PM Christian Couder
<christian.couder@gmail.com> wrote:
>
> Hi,
>
> On Sun, Jan 8, 2023 at 11:07 AM NSENGIYUMVA WILBERFORCE
> <nsengiyumvawilberforce@gmail.com> wrote:
> >
> > Hi,
> > So I wanted to send the next patch after review.  All the tests pass
> > when I run them on my PC but I get something like the following error
> > when I test from my git branch
> > >
> > > + git checkout -b signed
> > > 2283 Switched to a new branch 'signed'
> > > 2284 + echo 1
> > > 2285 + git add file
> > > 2286 + test_tick
> > > 2287 + test -z set
> > > 2288 + test_tick=1112912113
> > > 2289 + GIT_COMMITTER_DATE='1112912113 -0700'
> > > 2290 + GIT_AUTHOR_DATE='1112912113 -0700'
> > > 2291 + export GIT_COMMITTER_DATE GIT_AUTHOR_DATE
> > > 2292 + git commit -S -m initial
> > > 2293 error: cannot run gpg: No such file or directory
> > > 2294 error: gpg failed to sign the data
> > > 2295 fatal: failed to write commit object
> > > 2296 error: last command exited with $?=128
> > > 2297 not ok 338 - test bare signature atom
> > What could be wrong?
>
> There is the following in the above log:
>
> > 2293 error: cannot run gpg: No such file or directory
>
> so maybe gpg isn't installed on the test system.
>
> It looks like the test you added doesn't have the "GPG" prerequisite. Compare:
>
> -> test_expect_success 'test bare signature atom'
>
> with:
>
> -> test_expect_success GPG 'show good signature with custom format'
>
> There is a "GPG" prerequisite in the latter but not the former.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Github actions failing
  2023-01-09  4:40   ` NSENGIYUMVA WILBERFORCE
@ 2023-01-09  9:22     ` Christian Couder
  2023-01-09 10:10       ` Andreas Schwab
  2023-01-09 13:01       ` NSENGIYUMVA WILBERFORCE
  0 siblings, 2 replies; 7+ messages in thread
From: Christian Couder @ 2023-01-09  9:22 UTC (permalink / raw)
  To: NSENGIYUMVA WILBERFORCE; +Cc: git

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Github actions failing
  2023-01-09  9:22     ` Christian Couder
@ 2023-01-09 10:10       ` Andreas Schwab
  2023-01-09 13:01       ` NSENGIYUMVA WILBERFORCE
  1 sibling, 0 replies; 7+ messages in thread
From: Andreas Schwab @ 2023-01-09 10:10 UTC (permalink / raw)
  To: Christian Couder; +Cc: NSENGIYUMVA WILBERFORCE, git

On Jan 09 2023, Christian Couder wrote:

>> > 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.

I think the "checking the trustdb" message is time-dependent, as the
trustdb is normally updated only after some interval has passed.
According to the gpg manpage, automatic trustdb checking can be
suppressed with --no-auto-check-trustdb.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Github actions failing
  2023-01-09  9:22     ` Christian Couder
  2023-01-09 10:10       ` Andreas Schwab
@ 2023-01-09 13:01       ` NSENGIYUMVA WILBERFORCE
  1 sibling, 0 replies; 7+ messages in thread
From: NSENGIYUMVA WILBERFORCE @ 2023-01-09 13:01 UTC (permalink / raw)
  To: Christian Couder; +Cc: git

> 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:
>
> 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

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-01-09 13:05 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-08 10:02 Github actions failing NSENGIYUMVA WILBERFORCE
2023-01-08 10:07 ` NSENGIYUMVA WILBERFORCE
2023-01-08 18:17 ` Christian Couder
2023-01-09  4:40   ` NSENGIYUMVA WILBERFORCE
2023-01-09  9:22     ` Christian Couder
2023-01-09 10:10       ` Andreas Schwab
2023-01-09 13:01       ` NSENGIYUMVA WILBERFORCE

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).