[CentOS-devel] FYI: centos reproduceability

Mon Apr 20 16:27:14 UTC 2009
Jeff Johnson <n3npq at mac.com>

On Apr 20, 2009, at 11:57 AM, Farkas Levente wrote:
>
> - mysql test suit is failed with:
> Errors are (from
> /builddir/build/BUILD/mysql-5.0.45/mysql-test/var/log/mysqltest- 
> time) :
> mysqltest: Could not open connection 'default': 2026 SSL connection  
> error
>

There's a hack to disable the %check section (if needed):

Put this in some macro file (e.g. /etc/rpm/macros or ~/.rpmmacros)

	%check	%%check \\
	exit 0

One can also do on the CLI using --define, but multiline escaped
macro definitions are likely easier done in some macros file.

One can also disable %check (or any other section of a build)
by overloading the scriptlet templates to put "exit 0" into the
pre template.

E.g. here's the templates for %check (all stubbed with defaults):

%__spec_check_shell     %{___build_shell}
%__spec_check_args      %{___build_args}
%__spec_check_cmd       %{___build_cmd}
%__spec_check_pre       %{___build_pre}
%__spec_check_body      %{___build_body}
%__spec_check_post      %{___build_post}
%__spec_check_template  #!%{__spec_check_shell}\
%{__spec_check_pre}\
%{nil}

So one can bury an "exit 0" into the %check pre section with this  
config:

	%__spec_check_pre	exit 0

How a build system is configured (or rpmbuild arguments used when  
invoking)
is what makes the "reproducible build" lie pleasant.

If only 41 (~3.5%) package build failures, that's not too shabby.

hth

73 de Jeff