Hi, I wonder if the missing package in question may be keyrings.cryptfile: https://pypi.org/project/keyrings.cryptfile/ I seem to recall ages ago that this resolved my issues with the github integration.
> On 11 Aug 2022, at 11:48, Jakob Schiøtz <[email protected]> wrote: > > Hi, > > It is a long time since I had a similar problem, in that case the problem was > a missing python package in the system Python installation used to handle > cryptographic tokens safely. Unfortunately, I cannot remember what package > it was, nor how I made EasyBuild print more details about what was wrong when > it tried to read the token. > > Best regards > > Jakob > > -- > Jakob Schiøtz, professor, Ph.D. > Department of Physics > Technical University of Denmark > DK-2800 Kongens Lyngby, Denmark > > > > >> On 9 Aug 2022, at 11.52, Loris Bennett <[email protected]> wrote: >> >> Loris Bennett <[email protected]> writes: >> >>> Loris Bennett <[email protected]> writes: >>> >>>> Hi Kenneth, >>>> >>>> Kenneth Hoste <[email protected]> writes: >>>> >>>>> Hi Loris, >>>>> >>>>> Two things are needed in order for --new-pr to work: >>>>> >>>>> 1) You need a GitHub token available, which allows EasyBuild to take care >>>>> of >>>>> actually opening the pull request for you (it basically avoids having to >>>>> use the >>>>> GitHub web interface for doing that); >>>>> >>>>> 2) You need to have an SSH key available that allows you to push a branch >>>>> in >>>>> your fork of the easybuild-easyconfigs GitHub repository. >>>>> >>>>> In your case, 2) is fine, 1) is not (as shown by --check-github). >>>>> >>>>> >>>>> There's a variety of reasons why the token may not be available: >>>>> >>>>> Do you have 'keyring' Python package installed? Check with "python -c >>>>> 'import >>>>> keyring'. >>>> >>>> This works. >>>> >>>>> Is the token installed in this account? (if not, use "eb >>>>> --install-github-token") >>>> >>>> Yes. >>>> >>>>> Is keyring able to access the saved token? >>>>> If your keyring installation is recent enough, you can try getting the >>>>> saved >>>>> token using: >>>>> >>>>> python -m keyring get github_token GITHUB_USER >>>>> >>>>> (where you replace GITHUB_USER_NAME with, you guessed it, your GitHub >>>>> user name) >>>> >>>> That gave the error >>>> >>>> /usr/bin/python: No module named keyring.__main__; 'keyring' is a package >>>> and cannot be directly executed >>>> >>>> but was able to do the following (which you sent me last time I was >>>> struggling with the Github integration): >>>> >>>> [build@admin ~]$ python >>>> Python 2.7.5 (default, Nov 16 2020, 22:23:17) >>>> [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux2 >>>> Type "help", "copyright", "credits" or "license" for more information. >>>>>>> import getpass, keyring >>>>>>> keyring.get_password("github_token", "tardigradus") >>>> Please enter password for encrypted keyring: >>>> u'my_secret_token' >>>> >>>>> Note: if you share the results of these tests, be careful to not >>>>> accidentally >>>>> share your GitHub token... ;) >>>> >>>> So everything seems to work. Even the new PR was created, but I just >>>> seem to be getting spurious error messages. Very odd. >>> >>> So I am still have problem that EasyBuild misleadingly claims that >>> GitLab integration is not set up. I had forgotten that this problem had >>> occurred quite recently and thought that GitHub had somehow disabled my >>> token. So I created a new one and registered it (which required me to >>> install 'keyring' and 'pycrypto' for Python 3). Registration went >>> fine, but --check-github says >>> >>> * GitHub user...tardigradus => OK >>> Please enter password for encrypted keyring: >>> * GitHub token...(no token found) => FAIL >>> * git command...OK ("git version 1.8.3.1; ") >>> * GitPython module...OK (GitPython version 1.0.2) >>> * push access to tardigradus/easybuild-easyconfigs repo @ GitHub...OK >>> * creating gists...FAIL (gist_url: None) >>> * location to Git working dirs... OK (/trinity/home/build/easyconfigs/~/git) >>> >>> However, --new-pr sort of works. I just had to log into GitHub and >>> click on a button labelled something like "Create pull request" to >>> actually complete the process. >>> >>> Is maybe the ancient version of Git to blame? >> >> Same error with a more recent versio: >> >> * GitHub token...(no token found) => FAIL >> * git command...OK ("git version 2.33.0; ") >> >>> Cheers, >>> >>> Loris >>> >>>> Cheers, >>>> >>>> Loris >>>> >>>>> >>>>> >>>>> regards, >>>>> >>>>> Kenneth >>>>> >>>>> On 08/06/2022 15:18, Loris Bennett wrote: >>>>>> Hi, >>>>>> In the past I have successfully submitted new PRs. However, when I tried >>>>>> today, I got: >>>>>> [build@admin ~]$ eb --new-pr --git-working-dirs-path=~/git >>>>>> --github-user=tardigradus --pr-commit-msg="{data}[foss-2021b] RStan >>>>>> v2.21.5 w/ >>>>>> R 4.1.2" ~/easyconfigs/RStan-2.21.5-foss-2021b-R-4.1.2.eb >>>>>> == Temporary log file in case of crash >>>>>> /tmp/eb-mp19jq6s/easybuild-_u_eolj6.log >>>>>> == found valid index for >>>>>> /trinity/shared/easybuild/software/EasyBuild/4.5.5/easybuild/easyconfigs, >>>>>> so using it... >>>>>> == found valid index for >>>>>> /trinity/shared/easybuild/software/EasyBuild/4.5.5/easybuild/easyconfigs, >>>>>> so using it... >>>>>> == fetching branch 'develop' from >>>>>> https://github.com/easybuilders/easybuild-easyconfigs.git>> == >>>>>> copying files to >>>>>> /tmp/eb-mp19jq6s/git-working-dir9yzypblw/easybuild-easyconfigs... >>>>>> == pushing branch '20220608140722_new_pr_RStan2215' to remote >>>>>> 'github_tardigradus_SbVOR' >>>>>> ([email protected]:tardigradus/easybuild-easyconfigs.git) >>>>>> ERROR: GitHub token for user 'tardigradus' must be available to open a >>>>>> pull request >>>>>> Running >>>>>> eb --check-github --github-user=tardigradus >>>>>> gave >>>>>> == Temporary log file in case of crash >>>>>> /tmp/eb-qoptphw6/easybuild-t_h6dk5i.log >>>>>> Checking status of GitHub integration... >>>>>> Making sure we're online...OK >>>>>> * GitHub user...tardigradus => OK >>>>>> * GitHub token...(no token found) => FAIL >>>>>> * git command...OK ("git version 1.8.3.1; ") >>>>>> * GitPython module...OK (GitPython version 1.0.2) >>>>>> * push access to tardigradus/easybuild-easyconfigs repo @ GitHub...OK >>>>>> * creating gists...FAIL (gist_url: None) >>>>>> * location to Git working dirs... not found (suboptimal) >>>>>> I thought the token was needed primarily for the push, which worked. To >>>>>> actually create the PR I had to press a button in Github, which I don't >>>>>> remember having done in the past. >>>>>> Does anyone know what the issue might be? >>>>>> Cheers, >>>>>> Loris >>>>>> >> -- >> Dr. Loris Bennett (Herr/Mr) >> ZEDAT, Freie Universität Berlin Email [email protected] > -- Terje Kvernes Head sysadmin Department of Mathematics University of Oslo

