.gitlab-ci.yml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. stages:
  2. - build
  3. - test
  4. - deploy
  5. cache:
  6. paths:
  7. - vendor/
  8. before_script:
  9. - export PATH=$PATH:/etc/instantclient_19_9
  10. - if ! command -v composer &> /dev/null
  11. - then
  12. - sudo apt-get update -yqq
  13. #- if ! command -v vim &> /dev/null
  14. - sudo apt-get install vim -yqq
  15. #- fi
  16. #- if ! command -v unzip &> /dev/null
  17. - sudo apt-get install unzip -yqq
  18. #- fi
  19. #- if ! command -v php &> /dev/null
  20. - sudo apt-get install php -yqq
  21. - sudo apt-get install -yqq php-mbstring mcrypt php-pgsql php-curl php-json php-intl php-gd php-xml php-zip php-bz2 php7.4-opcache php-mysql php-xdebug composer php-bcmath php-pear php-dev
  22. - sudo pecl channel-update pecl.php.net
  23. #- fi
  24. - sudo php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
  25. - sudo php composer-setup.php
  26. - sudo php -r "unlink('composer-setup.php');"
  27. - sudo mv composer.phar /usr/bin/composer
  28. # install Oracle Support
  29. - phpIni=`php -i|grep "Loaded Configuration File"` && arr=(${phpIni//=>/}) && iniPath=${arr[3]}
  30. - sudo sed -i 's/^;\(extension=oci8_12c\)/\1/' ${arr[3]}
  31. - sudo wget https://download.oracle.com/otn_software/linux/instantclient/199000/instantclient-basic-linux.x64-19.9.0.0.0dbru.zip
  32. - sudo wget https://download.oracle.com/otn_software/linux/instantclient/199000/instantclient-sdk-linux.x64-19.9.0.0.0dbru.zip
  33. - sudo unzip instantclient-basic-linux.x64-19.9.0.0.0dbru.zip
  34. - sudo unzip instantclient-sdk-linux.x64-19.9.0.0.0dbru.zip
  35. - sudo mv instantclient_19_9 /etc -f
  36. - sudo rm instantclient-basic-linux.x64-19.9.0.0.0dbru.zip instantclient-sdk-linux.x64-19.9.0.0.0dbru.zip -f
  37. #- sudo echo /etc/instantclient_19_9/ > /etc/ld.so.conf.d/oracle-instantclient
  38. #- sudo ldconfig
  39. - sudo sed '$a\export ORACLE_HOME=/etc/instantclient_19_9\n' /etc/profile -i
  40. - source /etc/profile
  41. - printf "instantclient,/etc/instantclient_19_9\n" |sudo pecl install oci8
  42. - fi
  43. - composer update
  44. build:
  45. stage: build
  46. tags:
  47. - was
  48. script:
  49. - echo "build ....."
  50. test:
  51. stage: test
  52. tags:
  53. - was
  54. script:
  55. - echo "run test....."
  56. - vendor/bin/phpunit --testsuite=Unit
  57. deploy:
  58. stage: deploy
  59. tags:
  60. - was
  61. script:
  62. - echo "deploy ...."