summaryrefslogblamecommitdiff
path: root/.gitlab-ci.yml
blob: cbffeaef87829502b49fdea73e8882b3a616947a (plain) (tree)
1
2
3
4
5
6
7
8
9
       
      
       


              
                   

          

                                 
                           
                       
 
              
              















                                                                                                                                                                                                                      
                  
              

                   

                                                          


                                    
                                                                                






                                                                                                                                                                                                                      
 

                                       






                                          
                                                                         
             



                                                                       



                                                                                                                                                                
                     


                  
             
             

               

                                 
                     
 
         
             

               


                                                
                      




                     
       
             

               



                                           

                      




                     
 
stages:
- test
- build

before_script:
  - uname -a
image: ubuntu:18.04

variables:
  GET_SOURCES_ATTEMPTS: "5"
  ARTIFACT_DOWNLOAD_ATTEMPTS: "5"
  MYSQL_ROOT_PASSWORD: root
  packetver: "20170517"

mysql_run_8.0:
  stage: build
  script:
  - export CC=gcc-7
  - ./.tools/jobs/install.sh "mysql-client
    gcc-7
    git-core
    make autoconf automake autopoint
    libssl-dev libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mysql
  - ./.tools/jobs/build.sh "--enable-packetver=${packetver} --enable-epoll --enable-debug --enable-sanitize=full --disable-manager --enable-Werror --enable-buildbot" "--enable-werror --enable-lto --enable-sanitize"
  - ./.tools/jobs/runserver.sh mysql
  image: ubuntu:18.04
  services:
  - mysql:8.0
  allow_failure: true

.mysql_run_latest:
  stage: build
  script:
  - export CC=gcc-9
  - ./.tools/jobs/install.sh "mysql-client=8.0.28-0ubuntu4
    libmysqlclient21=8.0.28-0ubuntu4
    gcc-9
    git-core
    make autoconf automake autopoint
    libssl-dev libtool libmysqlclient-dev=8.0.28-0ubuntu4 libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mysql
  - ./.tools/jobs/build.sh "--enable-packetver=${packetver} --enable-epoll --enable-debug --enable-sanitize=full --disable-manager --enable-Werror --enable-buildbot" "--enable-werror --enable-lto --enable-sanitize"
  - ./.tools/jobs/runserver.sh mysql
  image: ubuntu:22.04
  services:
  - mysql:8.0

# I don't know what's up with Valgrind?
.mariadb_run_valgrind_latest:
  stage: test
  script:
  - export CC=gcc-6
  - ./.tools/jobs/install.sh "mysql-client
    gcc-6
    git-core
    make autoconf automake autopoint
    libssl-dev openssl libtool libmariadbclient-dev libz-dev libpcre3-dev
    valgrind"
  - grep -nR CRYPTO_new_ex_data /usr/include/openssl/
  - ls /usr/lib/x86_64-linux-gnu/ | grep libcrypto #locate libcrypto.so
  - nm /usr/lib/x86_64-linux-gnu/libcrypto.a | grep CRYPTO_new
  - ldd /usr/bin/openssl
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mariadb
  - ./.tools/jobs/build.sh "--enable-packetver=${packetver} --enable-epoll --enable-debug --disable-manager --enable-Werror --enable-buildbot" "--enable-werror"
  - ./.tools/jobs/runservervalgrind.sh mariadb
  image: ubuntu:18.04
  services:
  - mariadb:latest

licensecheck:
  stage: test
  tags:
  - lightweight
  script:
  - ./.tools/jobs/licensecheck.sh
  image: ubuntu:18.04

newlines:
  stage: test
  tags:
  - lightweight
  script:
  - ./.tools/jobs/install.sh "dos2unix git-core"
  - ./.tools/jobs/newlines.sh
  image: debian:buster
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

spaces:
  stage: test
  tags:
  - lightweight
  script:
  - ./.tools/jobs/install.sh "sed git-core"
  - cd npc
  - ../.tools/jobs/spaces.sh
  image: debian:buster
  allow_failure: true
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week