You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

102 lines
2.9 KiB

  1. language: generic
  2. os: linux
  3. dist: xenial
  4. branches:
  5. except:
  6. - ___TGS3TempBranch
  7. - ___TGSTempBranch
  8. jobs:
  9. include:
  10. - name: "Run Linters"
  11. addons:
  12. apt:
  13. packages:
  14. - python3
  15. - python3-pip
  16. - python3-setuptools
  17. - pcregrep
  18. - rustc
  19. - cargo
  20. cache:
  21. directories:
  22. - $HOME/SpacemanDMM
  23. install:
  24. - tools/travis/install_build_tools.sh
  25. - tools/travis/install_spaceman_dmm.sh dreamchecker
  26. script:
  27. - tools/travis/check_filedirs.sh tgstation.dme
  28. - tools/travis/check_changelogs.sh
  29. - find . -name "*.php" -print0 | xargs -0 -n1 php -l
  30. - find . -name "*.json" -not -path "*/node_modules/*" -print0 | xargs -0 python3 ./tools/json_verifier.py
  31. - tools/travis/build_tgui.sh
  32. - tools/travis/check_grep.sh
  33. - ~/dreamchecker
  34. - name: "Compile All Maps"
  35. addons:
  36. apt:
  37. packages:
  38. - libstdc++6:i386
  39. cache:
  40. directories:
  41. - $HOME/BYOND
  42. install:
  43. - tools/travis/install_byond.sh
  44. - source $HOME/BYOND/byond/bin/byondsetup
  45. before_script:
  46. - tools/travis/template_dm_generator.py
  47. script:
  48. - tools/travis/dm.sh -DTRAVISBUILDING -DTRAVISTESTING -DALL_MAPS tgstation.dme
  49. - name: "Compile and Run Tests"
  50. addons:
  51. mariadb: '10.2'
  52. apt:
  53. sources:
  54. - ubuntu-toolchain-r-test
  55. packages:
  56. - libstdc++6:i386
  57. - gcc-multilib
  58. - g++-7
  59. - g++-7-multilib
  60. - libmariadb-client-lgpl-dev:i386
  61. - libmariadbd-dev
  62. cache:
  63. directories:
  64. - $HOME/BYOND
  65. - $HOME/libmariadb
  66. install:
  67. - tools/travis/install_byond.sh
  68. - source $HOME/BYOND/byond/bin/byondsetup
  69. - tools/travis/install_libmariadb.sh
  70. - tools/travis/install_rust_g.sh
  71. before_script:
  72. - mysql -u root -e 'CREATE DATABASE tg_travis;'
  73. - mysql -u root tg_travis < SQL/tgstation_schema.sql
  74. - mysql -u root -e 'CREATE DATABASE tg_travis_prefixed;'
  75. - mysql -u root tg_travis_prefixed < SQL/tgstation_schema_prefixed.sql
  76. - tools/travis/build_bsql.sh
  77. script:
  78. - tools/travis/dm.sh -DTRAVISBUILDING tgstation.dme || travis_terminate 1
  79. - tools/travis/run_server.sh
  80. - name: "Generate Documentation"
  81. # Only run for non-PR commits to the real master branch.
  82. if: branch = master AND head_branch IS blank
  83. install:
  84. - tools/travis/install_spaceman_dmm.sh dmdoc
  85. before_script:
  86. # Travis checks out a hash, try to get back on a branch.
  87. - git checkout $TRAVIS_BRANCH || true
  88. script:
  89. - ~/dmdoc
  90. - touch dmdoc/.nojekyll
  91. deploy:
  92. provider: pages
  93. skip_cleanup: true
  94. local_dir: dmdoc
  95. token: $DMDOC_GITHUB_TOKEN
  96. fqdn: codedocs.tgstation13.org