rsb: git checkout 5 fails

Chris Johns chrisj at rtems.org
Tue Jul 3 03:07:06 UTC 2018


On 03/07/2018 12:37, Michael Davidsaver wrote:
> With a clean checkout of rtems-source-builder I attempted to build
> "5/rtems-powerpc.bset", but was eventually greeted with:
> 
>> git: checkout: git://git.rtems.org/rtems.git => 5
>> error: git command failed (/usr/bin/git): 1
> 
> With a little modification of source-builder/sb/git.py to print the _arguments_,
> I find that the failing command is:
> 
>> /usr/bin/git checkout 5
> 
> which is not surprising since the checkout has no '5' branch.
> 
>> $ cd sources/git/rtems.git
>> $ git branch -a
>> * master
>>   remotes/origin/4.10
>>   remotes/origin/4.11
>>   remotes/origin/4.8
>>   remotes/origin/4.9
>>   remotes/origin/HEAD -> origin/master
>>   remotes/origin/master
> 
> Is this meant to be 'git checkout origin/5',
> or do I need to create and manage this branch myself?
> 
> 
> 
>> ../source-builder/sb-set-builder --prefix /home/travis/.rtems --rtems-bsps=powerpc/mvme3100 --with-rtems --no-install --bset-tar-file --source-only-download 5/rtems-powerpc.bset
> 

This looks like something in the configuration is wrong. I must have broken it
with this change ...

https://git.rtems.org/rtems-source-builder/commit/?id=44ebcc517794a1634239cd2a5ccd387e86421669

If the `rtems_kernel_version` is not defined the kernel should default to the
HEAD and not a release branch. Something is wrong with this logic.

> diff --git a/source-builder/sb/git.py b/source-builder/sb/git.py                                                              
> index be23396..50aacae 100644                                                                                                 
> --- a/source-builder/sb/git.py
> +++ b/source-builder/sb/git.py
> @@ -34,9 +34,9 @@ import path
>  class repo:
>      """An object to manage a git repo."""
>  
> -    def _git_exit_code(self, ec):
> +    def _git_exit_code(self, ec, cmd):
>          if ec:
> -            raise error.general('git command failed (%s): %d' % (self.git, ec))
> +            raise error.general('git command failed (%s): %d' % (cmd, ec))
>  
>      def _run(self, args, check = False):
>          e = execute.capture_execution()
> @@ -49,7 +49,7 @@ class repo:
>          exit_code, proc, output = e.spawn(cmd, cwd = path.host(cwd))
>          log.trace(output)
>          if check:
> -            self._git_exit_code(exit_code)
> +            self._git_exit_code(exit_code, cmd)
>          return exit_code, output
>  
>      def __init__(self, _path, opts = None, macros = None):

Nice. Could you please raise a ticket and post a commit patch and I will push it.

Thanks
Chris



More information about the users mailing list