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


       
          







                    

                                 
                           
                       



              
                   





                                                     
                                                                                                                                                                                                                      


                        



                     
 
                   







                                           



                     
 








                                           



                     









                                           



                     
 








                                           



                     
 








                                           



                     
 








                                           



                     









                                           



                     
 
                  

             
                     
                                          
           




                                                     
                                                                                                                                                                                                                      
                                    
                      

                



                     
 
                     














                                                                                                                                                                                                                      



                     
 
                          

             
                     
                                          
           




                                                     
                                                                                                                                                                                                                      
                                      
                      

                  



                     
 















                                                                                                                                                                                                                      



                     
















                                                                                                                                                                                                                      



                     
















                                                                                                                                                                                                                      



                     
















                                                                                                                                                                                                                      



                     
 
                           

                 
                   







                                                    
                                                                                                                                                                
                                            
                       

                



                     
 







                                          
                                                      




                                                                                                                                                                
                       

             



                     
 


                            
                   



                                          
                                                      


                                   
                                                                                                                                                                
                                              
                       
           
                  



                     
 





                           

                      






                           

                      
stages:
- build
- test
- valgrind
- fail
- ok

before_script:
  - uname -a
image: debian:stable

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

build_test:
  stage: build
  script:
  - export CC=gcc-6
  - ./.tools/jobs/install.sh "mysql-client
    gcc-6
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.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"
  image: debian:unstable
  services:
  - mysql:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

.mysql_init_latest:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mysql
  image: debian:unstable
  services:
  - mysql:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mysql_init_5.5:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mysql
  image: debian:unstable
  services:
  - mysql:5.5
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mysql_init_5.6:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mysql
  image: debian:unstable
  services:
  - mysql:5.6
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mysql_init_5.7:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mysql
  image: debian:unstable
  services:
  - mysql:5.7
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_init_latest:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mariadb
  image: debian:unstable
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_init_10.0:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mariadb
  image: debian:unstable
  services:
  - mariadb:10.0
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_init_5.5:
  stage: build
  script:
  - ./.tools/jobs/install.sh "mysql-client"
  - ./.tools/jobs/clonedata.sh
  - ./.tools/jobs/initdb.sh mariadb
  image: debian:unstable
  services:
  - mariadb:5.5
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

.mysql_run_latest:
  stage: test
  script:
  - export CC=gcc-4.9
  - ./.tools/jobs/install.sh "mysql-client
    gcc-4.9
    git-core
    make autoconf automake autopoint
    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: debian:jessie
  services:
  - mysql:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mysql_run_5.7_gcc4.9:
  stage: test
  script:
  - export CC=gcc-4.9
  - ./.tools/jobs/install.sh "mysql-client
    gcc-4.9
    git-core
    make autoconf automake autopoint
    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: debian:jessie
  services:
  - mysql:5.7
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_run_latest_gcc4.9:
  stage: test
  script:
  - export CC=gcc-4.9
  - ./.tools/jobs/install.sh "mysql-client
    gcc-4.9
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mariadb
  - ./.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 mariadb
  image: debian:jessie
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_run_latest_gcc5:
  stage: test
  script:
  - export CC=gcc-5
  - ./.tools/jobs/install.sh "mysql-client
    gcc-5
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mariadb
  - ./.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 mariadb
  image: debian:unstable
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_run_latest_gcc6:
  stage: test
  script:
  - export CC=gcc-6
  - ./.tools/jobs/install.sh "mysql-client
    gcc-6
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mariadb
  - ./.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 mariadb
  image: debian:unstable
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_run_latest_gcc7:
  stage: test
  script:
  - export CC=gcc-7
  - ./.tools/jobs/install.sh "mysql-client
    gcc-7
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mariadb
  - ./.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 mariadb
  image: debian:unstable
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_run_latest_gcc8:
  stage: test
  script:
  - export CC=gcc-8
  - ./.tools/jobs/install.sh "mysql-client
    gcc-8
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mariadb
  - ./.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 mariadb
  image: debian:unstable
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

.mysql_run_valgrind_latest:
  stage: valgrind
  script:
  - export CC=gcc-6
  - ./.tools/jobs/install.sh "mysql-client
    gcc-6
    git-core
    make autoconf automake autopoint
    libtool libmysqlclient-dev libz-dev libpcre3-dev
    valgrind"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mysql
  - ./.tools/jobs/build.sh "--enable-packetver=${packetver} --enable-epoll --enable-debug --disable-manager --enable-Werror --enable-buildbot" "--enable-werror"
  - ./.tools/jobs/runservervalgrind.sh mysql
  image: debian:stretch
  services:
  - mysql:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mysql_run_valgrind_5.7:
  stage: valgrind
  script:
  - export CC=gcc-6
  - ./.tools/jobs/install.sh "mysql-client
    gcc-6
    git-core
    make autoconf automake autopoint
    libtool libmariadbclient-dev libz-dev libpcre3-dev
    valgrind"
  - ./.tools/jobs/cloneall.sh
  - ./.tools/jobs/initdb.sh mysql
  - ./.tools/jobs/build.sh "--enable-packetver=${packetver} --enable-epoll --enable-debug --disable-manager --enable-Werror --enable-buildbot" "--enable-werror"
  - ./.tools/jobs/runservervalgrind.sh mysql
  image: debian:stretch
  services:
  - mysql:5.7
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

mariadb_run_valgrind_latest:
  stage: valgrind
  script:
  - export CC=gcc-6
  - ./.tools/jobs/install.sh "mysql-client
    gcc-6
    git-core
    make autoconf automake autopoint
    libtool libmariadbclient-dev libz-dev libpcre3-dev
    valgrind"
  - ./.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: debian:stretch
  services:
  - mariadb:latest
  artifacts:
    untracked: true
    when: always
    expire_in: 3 week

ok_job:
  stage: ok
  script:
  - pwd
  - echo $CI_BUILD_REF_NAME
  when: on_success
  variables:
    GIT_STRATEGY: none

fail_job:
  stage: fail
  script:
  - pwd
  - echo $CI_BUILD_REF_NAME
  when: on_failure
  variables:
    GIT_STRATEGY: none