mricon/grokmirror

Runtime error: KeyError: 'reference'

Closed this issue · 2 comments

$ python --version
Python 2.7.16
$ cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
$ /usr/local/bin/grok-pull --verbose --verbose -p -c /etc/grokmirror/repos.conf
Checking [kernel.org]
Fetching remote manifest from http://git.kernel.org/manifest.js.gz
/home/mirror/kernel/manifest.js.gz not found, assuming initial run
Compared new manifest against 1089 repositories in 0.06s
No repositories need updating
Cloning 1089 repos from git://git.kernel.org
Traceback (most recent call last):
  File "/usr/local/bin/grok-pull", line 10, in <module>
    sys.exit(command())
  File "/usr/local/lib/python2.7/dist-packages/grokmirror/pull.py", line 1201, in command
    opts.forcepurge)
  File "/usr/local/lib/python2.7/dist-packages/grokmirror/pull.py", line 1185, in grok_pull
    noreuse, purge, pretty, forcepurge)
  File "/usr/local/lib/python2.7/dist-packages/grokmirror/pull.py", line 875, in pull_mirror
    clone_order(to_clone, manifest, to_clone_sorted, existing)
  File "/usr/local/lib/python2.7/dist-packages/grokmirror/pull.py", line 364, in clone_order
    reference = manifest[gitdir]['reference']
KeyError: 'reference'

Comparing: 100%|##################################################################| 1089/1089 [00:00<00:00, 17861.29 repos/s]

Additional debug shows that gitdir is equal /pub/scm/linux/kernel/git/holtmann/ktls.git and manifest[gitdir] is

{u'description': u'Kernel TLS testing tree', u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1440739766, u'fingerprint': u'4c6108657604c5bb55b238b898c835d309606393', u'owner': u'Marcel Holtmann', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/linux/kernel/git/gerg/uclinux.git
{u'head': u'ref: refs/heads/master', u'description': u'uClinux non-MMU changes', u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1362357307, u'fingerprint': u'9c25e554320c6acc6a6e08ca724ba208e7fb9d91', u'owner': u'Greg Ungerer', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/linux/kernel/git/djwong/xfsprogs-dev.git
{u'head': u'ref: refs/heads/master', u'description': u'Darrick J. Wong : XFS Tool Dev.', u'reference': u'/pub/scm/linux/kernel/git/ebiggers/xfsprogs-dev.git', u'modified': 1621611172, u'fingerprint': u'e707d92dafc46f513145d8c285c715de54ee0283', u'owner': u'Darrick J. Wong', u'forkgroup': u'96f91ae4-032d-4ab8-b6e1-6fb0e7199a2a'}
/pub/scm/linux/kernel/git/jmorris/linux-security.git
{u'head': u'ref: refs/heads/master', u'description': u'Linux Kernel Security Subsystem', u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1619565889, u'fingerprint': u'ec06d81750a4327e8d76bb374229ad8f3820e9a4', u'owner': u'James Morris', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw.git
{u'description': u'GFS2 next merge window tree', u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1423563971, u'fingerprint': u'9c1bb9bc9258d54b3c12bdd042ce7641ab658c78', u'owner': u'Steven Whitehouse', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/linux/kernel/git/krisman/unicode.git
{u'description': u"Gabriel Krisman Bertazi's fork of linux.git", u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1594280073, u'fingerprint': u'545bf1409e7d9c9abcd8b550716fdeed4fec57ec', u'owner': u'Gabriel Krisman Bertazi', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/linux/kernel/git/lee/backlight.git
{u'head': u'ref: refs/heads/master', u'description': u'Backlight Subsystem Tree - Next and Fixes', u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1621581517, u'fingerprint': u'e96c9de66e2ce5efec332abb7ffec0fa142f2782', u'owner': u'Lee Jones', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/linux/kernel/git/horms/renesas-bsp.git
{u'description': u'Kernel tree for Renesas R-Car BSP', u'reference': u'/pub/scm/linux/kernel/git/paulg/4.8-rt-patches.git', u'modified': 1562861958, u'fingerprint': u'ffbf02a73c59afc2069ae3034e66fe32c4b6d5db', u'owner': u'Simon Horman', u'forkgroup': u'af9f4487-d538-46e5-b148-e18dfb461f8a'}
/pub/scm/network/tftp/tftp-hpa.git
{u'owner': u'H. Peter Anvin', u'description': u'tftp-hpa official tree', u'modified': 1438973805, u'fingerprint': u'ddf890698962db6e3fb188080bb57e7ab28364f2'}

Maybe something like?

- reference = manifest[gitdir]['reference']
+ reference = manifest[gitdir].get('reference')

Update to the latest version solved the problem. Debian 10 uses outdated version.