mirror of
				https://github.com/Xahau/xahaud.git
				synced 2025-11-04 02:35:48 +00:00 
			
		
		
		
	Co-authored-by: Denis Angell <dangell@transia.co> Co-authored-by: Niq Dudfield <ndudfield@gmail.com>
		
			
				
	
	
		
			97 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/bin/bash -u
 | 
						|
# We use set -e and bash with -u to bail on first non zero exit code of any
 | 
						|
# processes launched or upon any unbound variable.
 | 
						|
# We use set -x to print commands before running them to help with
 | 
						|
# debugging.
 | 
						|
set -e
 | 
						|
 | 
						|
echo "START INSIDE CONTAINER - FULL"
 | 
						|
 | 
						|
echo "-- BUILD CORES:       $3"
 | 
						|
echo "-- GITHUB_REPOSITORY: $1"
 | 
						|
echo "-- GITHUB_SHA:        $2"
 | 
						|
echo "-- GITHUB_RUN_NUMBER: $4"
 | 
						|
 | 
						|
umask 0000;
 | 
						|
 | 
						|
####
 | 
						|
 | 
						|
cd /io;
 | 
						|
mkdir -p src/certs;
 | 
						|
curl --silent -k https://raw.githubusercontent.com/RichardAH/rippled-release-builder/main/ca-bundle/certbundle.h -o src/certs/certbundle.h;
 | 
						|
if [ "`grep certbundle.h src/ripple/net/impl/RegisterSSLCerts.cpp | wc -l`" -eq "0" ]
 | 
						|
then
 | 
						|
    cp src/ripple/net/impl/RegisterSSLCerts.cpp src/ripple/net/impl/RegisterSSLCerts.cpp.old
 | 
						|
    perl -i -pe "s/^{/{
 | 
						|
    #ifdef EMBEDDED_CA_BUNDLE
 | 
						|
    BIO *cbio = BIO_new_mem_buf(ca_bundle.data(), ca_bundle.size());
 | 
						|
    X509_STORE  *cts = SSL_CTX_get_cert_store(ctx.native_handle());
 | 
						|
    if(!cts || !cbio)
 | 
						|
        JLOG(j.warn())
 | 
						|
            << \"Failed to create cts\/cbio when loading embedded certs.\";
 | 
						|
    else
 | 
						|
    {
 | 
						|
        X509_INFO *itmp;
 | 
						|
        int i, count = 0, type = X509_FILETYPE_PEM;
 | 
						|
        STACK_OF(X509_INFO) *inf = PEM_X509_INFO_read_bio(cbio, NULL, NULL, NULL);
 | 
						|
 | 
						|
        if (!inf)
 | 
						|
        {
 | 
						|
            BIO_free(cbio);
 | 
						|
            JLOG(j.warn())
 | 
						|
                << \"Failed to read cbio when loading embedded certs.\";
 | 
						|
        }
 | 
						|
        else
 | 
						|
        {
 | 
						|
            for (i = 0; i < sk_X509_INFO_num(inf); i++)
 | 
						|
            {
 | 
						|
                itmp = sk_X509_INFO_value(inf, i);
 | 
						|
                if (itmp->x509)
 | 
						|
                {
 | 
						|
                      X509_STORE_add_cert(cts, itmp->x509);
 | 
						|
                      count++;
 | 
						|
                }
 | 
						|
                if (itmp->crl)
 | 
						|
                {
 | 
						|
                      X509_STORE_add_crl(cts, itmp->crl);
 | 
						|
                      count++;
 | 
						|
                }
 | 
						|
            }
 | 
						|
            sk_X509_INFO_pop_free(inf, X509_INFO_free);
 | 
						|
            BIO_free(cbio);
 | 
						|
        }
 | 
						|
    }
 | 
						|
    #endif/g" src/ripple/net/impl/RegisterSSLCerts.cpp &&
 | 
						|
    sed -i "s/#include <ripple\/net\/RegisterSSLCerts.h>/\0\n#include <certs\/certbundle.h>/g" src/ripple/net/impl/RegisterSSLCerts.cpp
 | 
						|
fi
 | 
						|
# Environment setup moved to Dockerfile in release-builder.sh
 | 
						|
source /opt/rh/gcc-toolset-11/enable
 | 
						|
export PATH=/usr/local/bin:$PATH
 | 
						|
export CC='ccache gcc' &&
 | 
						|
export CXX='ccache g++' &&
 | 
						|
echo "-- Build Rippled --" &&
 | 
						|
pwd &&
 | 
						|
 | 
						|
echo "MOVING TO [ build-core.sh ]";
 | 
						|
 | 
						|
printenv > .env.temp;
 | 
						|
cat .env.temp | grep '=' | sed s/\\\(^[^=]\\+=\\\)/\\1\\\"/g|sed s/\$/\\\"/g > .env;
 | 
						|
rm .env.temp;
 | 
						|
 | 
						|
echo "Persisting ENV:"
 | 
						|
cat .env
 | 
						|
 | 
						|
./build-core.sh "$1" "$2" "$3" "$4"
 | 
						|
 | 
						|
echo $?
 | 
						|
if [[ "$?" -ne "0" ]]; then
 | 
						|
  echo "ERR build-core.sh non 0 exit code"
 | 
						|
  exit 127
 | 
						|
fi
 | 
						|
 | 
						|
echo "END [ build-core.sh ]"
 | 
						|
 | 
						|
echo "END INSIDE CONTAINER - FULL"
 | 
						|
 | 
						|
echo "-- Built with env vars:"
 |