.gitlab-ci.yml 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773
  1. variables:
  2. Z_LOCALES: "en-us:de-de"
  3. .artifacts_error_template: &artifacts_error
  4. artifacts:
  5. expire_in: 2 days
  6. when: on_failure
  7. paths:
  8. - tmp/screenshot*
  9. - log/*.log
  10. before_script:
  11. - ruby -v
  12. - which ruby
  13. - env
  14. - test -n "$RNAME" && script/build/test_db_config.sh
  15. - test -n "$RNAME" && bundle install -j $(nproc)
  16. stages:
  17. - pre
  18. - test
  19. - browser-core
  20. - browser-integration
  21. # pre stage
  22. pre:rubocop:
  23. stage: pre
  24. tags:
  25. - core
  26. script:
  27. - bundle exec rubocop
  28. pre:coffeelint:
  29. stage: pre
  30. tags:
  31. - core
  32. script:
  33. - coffeelint app/
  34. pre:bundle-audit:
  35. stage: pre
  36. tags:
  37. - core
  38. script:
  39. - gem install bundler-audit
  40. - bundle-audit update
  41. - bundle-audit
  42. pre:github:
  43. stage: pre
  44. tags:
  45. - deploy
  46. script:
  47. - script/build/sync_repo.sh git@github.com:zammad/zammad.git
  48. # test stage
  49. ## RSpec
  50. .script_rspec_template: &script_rspec_definition
  51. <<: *artifacts_error
  52. variables:
  53. RAILS_ENV: "test"
  54. script:
  55. - rake zammad:db:init
  56. - bundle exec rspec
  57. - rake db:drop
  58. test:rspec:mysql:
  59. stage: test
  60. tags:
  61. - core
  62. - mysql
  63. <<: *script_rspec_definition
  64. test:rspec:postgresql:
  65. stage: test
  66. tags:
  67. - core
  68. - postgresql
  69. <<: *script_rspec_definition
  70. ## Unit and Controller tests
  71. .script_unit_template: &script_unit_definition
  72. <<: *artifacts_error
  73. variables:
  74. RAILS_ENV: "test"
  75. script:
  76. - rake zammad:db:init
  77. - rake test:units
  78. - ruby -I test/ test/integration/object_manager_test.rb
  79. - ruby -I test/ test/integration/object_manager_attributes_controller_test.rb
  80. - ruby -I test/ test/integration/package_test.rb
  81. - ruby -I test/ test/integration/monitoring_controller_test.rb
  82. - rake db:drop
  83. test:unit:mysql:
  84. stage: test
  85. tags:
  86. - core
  87. - mysql
  88. <<: *script_unit_definition
  89. test:unit:postgresql:
  90. stage: test
  91. tags:
  92. - core
  93. - postgresql
  94. <<: *script_unit_definition
  95. ## Integration tests
  96. test:integration:email_helper_deliver:
  97. <<: *artifacts_error
  98. stage: test
  99. variables:
  100. RAILS_ENV: "test"
  101. tags:
  102. - core
  103. script:
  104. - rake zammad:db:unseeded
  105. - ruby -I test/ test/integration/email_helper_test.rb
  106. - ruby -I test/ test/integration/email_deliver_test.rb
  107. - ruby -I test/ test/integration/email_keep_on_server_test.rb
  108. - rake db:drop
  109. test:integration:twitter:
  110. <<: *artifacts_error
  111. stage: test
  112. variables:
  113. RAILS_ENV: "test"
  114. tags:
  115. - core-twitter
  116. script:
  117. - rake zammad:db:init
  118. - ruby -I test/ test/integration/twitter_test.rb
  119. - rake db:drop
  120. allow_failure: true
  121. test:integration:facebook:
  122. <<: *artifacts_error
  123. stage: test
  124. variables:
  125. RAILS_ENV: "test"
  126. tags:
  127. - core-facebook
  128. script:
  129. - rake zammad:db:init
  130. - ruby -I test/ test/integration/facebook_test.rb
  131. - rake db:drop
  132. allow_failure: true
  133. test:integration:geo:
  134. <<: *artifacts_error
  135. stage: test
  136. variables:
  137. RAILS_ENV: "test"
  138. tags:
  139. - core
  140. script:
  141. - rake zammad:db:unseeded
  142. - ruby -I test/ test/integration/geo_calendar_test.rb
  143. - ruby -I test/ test/integration/geo_location_test.rb
  144. - ruby -I test/ test/integration/geo_ip_test.rb
  145. - rake db:drop
  146. test:integration:user_agent:
  147. <<: *artifacts_error
  148. stage: test
  149. variables:
  150. RAILS_ENV: "test"
  151. tags:
  152. - core
  153. script:
  154. - rake zammad:db:unseeded
  155. - ruby -I test/ test/integration/user_agent_test.rb
  156. - export ZAMMAD_PROXY_TEST=true
  157. - ruby -I test/ test/integration/user_agent_test.rb
  158. - rake db:drop
  159. allow_failure: true
  160. test:integration:user_device:
  161. <<: *artifacts_error
  162. stage: test
  163. variables:
  164. RAILS_ENV: "test"
  165. tags:
  166. - core
  167. script:
  168. - rake zammad:db:unseeded
  169. - ruby -I test/ test/integration/user_device_controller_test.rb
  170. - rake db:drop
  171. test:integration:slack:
  172. <<: *artifacts_error
  173. stage: test
  174. variables:
  175. RAILS_ENV: "test"
  176. tags:
  177. - core
  178. script:
  179. - rake zammad:db:unseeded
  180. - echo "gem 'slack-api'" >> Gemfile.local
  181. - bundle install -j $(nproc)
  182. - ruby -I test test/integration/slack_test.rb
  183. - rake db:drop
  184. test:integration:clearbit:
  185. <<: *artifacts_error
  186. stage: test
  187. variables:
  188. RAILS_ENV: "test"
  189. tags:
  190. - core
  191. script:
  192. - rake zammad:db:unseeded
  193. - ruby -I test test/integration/clearbit_test.rb
  194. - rake db:drop
  195. allow_failure: true
  196. test:integration:telegram:
  197. <<: *artifacts_error
  198. stage: test
  199. variables:
  200. RAILS_ENV: "test"
  201. tags:
  202. - core
  203. script:
  204. - rake zammad:db:init
  205. - ruby -I test test/integration/telegram_controller_test.rb
  206. - rake db:drop
  207. test:integration:idoit:
  208. <<: *artifacts_error
  209. stage: test
  210. variables:
  211. RAILS_ENV: "test"
  212. tags:
  213. - core
  214. script:
  215. - rake zammad:db:init
  216. - ruby -I test test/integration/idoit_controller_test.rb
  217. - rake db:drop
  218. ### Elasticsearch
  219. .script_elasticsearch_template: &script_elasticsearch_definition
  220. <<: *artifacts_error
  221. stage: test
  222. variables:
  223. RAILS_ENV: "test"
  224. ES_INDEX_RAND: "true"
  225. ES_URL: "http://localhost:9200"
  226. script:
  227. - rake zammad:db:unseeded
  228. - ruby -I test/ test/integration/elasticsearch_active_test.rb
  229. - ruby -I test/ test/integration/elasticsearch_test.rb
  230. - ruby -I test/ test/integration/report_test.rb
  231. - bundle exec rspec --tag searchindex
  232. - rake db:drop
  233. test:integration:es_mysql:
  234. tags:
  235. - core
  236. - mysql
  237. <<: *script_elasticsearch_definition
  238. test:integration:es_postgresql:
  239. tags:
  240. - core
  241. - postgresql
  242. <<: *script_elasticsearch_definition
  243. ### Zendesk
  244. .script_integration_zendesk_template: &script_integration_zendesk_definition
  245. <<: *artifacts_error
  246. stage: test
  247. variables:
  248. RAILS_ENV: "test"
  249. script:
  250. - rake zammad:db:unseeded
  251. - ruby -I test/ test/integration/zendesk_import_test.rb
  252. - rake db:drop
  253. allow_failure: true
  254. test:integration:zendesk_mysql:
  255. tags:
  256. - core
  257. - mysql
  258. <<: *script_integration_zendesk_definition
  259. test:integration:zendesk_postgresql:
  260. tags:
  261. - core
  262. - postgresql
  263. <<: *script_integration_zendesk_definition
  264. ### OTRS
  265. .script_integration_otrs_template: &script_integration_otrs_definition
  266. <<: *artifacts_error
  267. stage: test
  268. script:
  269. - rake zammad:db:unseeded
  270. - ruby -I test/ test/integration/otrs_import_test.rb
  271. - rake db:drop
  272. .variables_integration_otrs_6_template: &variables_integration_otrs_6_definition
  273. variables:
  274. RAILS_ENV: "test"
  275. IMPORT_OTRS_ENDPOINT: "https://vz1185.test.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  276. test:integration:otrs_6_mysql:
  277. tags:
  278. - core
  279. - mysql
  280. <<: *script_integration_otrs_definition
  281. <<: *variables_integration_otrs_6_definition
  282. test:integration:otrs_6_postgresql:
  283. tags:
  284. - core
  285. - postgresql
  286. <<: *script_integration_otrs_definition
  287. <<: *variables_integration_otrs_6_definition
  288. test:integration:otrs_5:
  289. tags:
  290. - core
  291. variables:
  292. RAILS_ENV: "test"
  293. IMPORT_OTRS_ENDPOINT: "http://vz1109.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  294. <<: *script_integration_otrs_definition
  295. test:integration:otrs_4:
  296. tags:
  297. - core
  298. variables:
  299. RAILS_ENV: "test"
  300. IMPORT_OTRS_ENDPOINT: "http://vz383.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  301. <<: *script_integration_otrs_definition
  302. test:integration:otrs_33:
  303. tags:
  304. - core
  305. variables:
  306. RAILS_ENV: "test"
  307. IMPORT_OTRS_ENDPOINT: "http://vz305.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  308. <<: *script_integration_otrs_definition
  309. test:integration:otrs_32:
  310. tags:
  311. - core
  312. variables:
  313. RAILS_ENV: "test"
  314. IMPORT_OTRS_ENDPOINT: "http://vz382.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  315. <<: *script_integration_otrs_definition
  316. test:integration:otrs_31:
  317. tags:
  318. - core
  319. variables:
  320. RAILS_ENV: "test"
  321. IMPORT_OTRS_ENDPOINT: "http://vz381.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  322. <<: *script_integration_otrs_definition
  323. # Browser tests
  324. ## preparation (asset precompile)
  325. browser:build:
  326. stage: test
  327. tags:
  328. - core
  329. variables:
  330. RAILS_ENV: "production"
  331. script:
  332. - rake zammad:db:unseeded
  333. - rake assets:precompile
  334. - rake db:drop
  335. artifacts:
  336. expire_in: 1 week
  337. paths:
  338. - public/assets/.sprockets-manifest*
  339. - public/assets/application-*
  340. - public/assets/print-*
  341. ## Browser core tests
  342. .variables_browser_template: &variables_browser_definition
  343. RAILS_SERVE_STATIC_FILES: "true"
  344. RAILS_ENV: "production"
  345. BROWSER_URL: "http://$IP:$BROWSER_PORT"
  346. APP_RESTART_CMD: "rake zammad:ci:app:restart"
  347. .test_browser_core_template: &test_browser_core_definition
  348. <<: *artifacts_error
  349. stage: browser-core
  350. dependencies:
  351. - browser:build
  352. ### API clients
  353. test:browser:integration:api_client_ruby:
  354. <<: *test_browser_core_definition
  355. variables:
  356. <<: *variables_browser_definition
  357. TEST_URL: "http://$IP:$BROWSER_PORT/"
  358. tags:
  359. - browser
  360. script:
  361. - RAILS_ENV=test rake db:create
  362. - cp contrib/auto_wizard_test.json auto_wizard.json
  363. - rake zammad:ci:test:start
  364. - git clone git@github.com:zammad/zammad-api-client-ruby.git || rake zammad:ci:test:fail
  365. - cd zammad-api-client-ruby
  366. - bundle install -j $(nproc)
  367. - bundle exec rspec || (cd .. && rake zammad:ci:test:fail)
  368. - cd .. && rake zammad:ci:test:stop
  369. test:browser:integration:api_client_php:
  370. <<: *test_browser_core_definition
  371. variables:
  372. <<: *variables_browser_definition
  373. ZAMMAD_PHP_API_CLIENT_UNIT_TESTS_URL: "http://$IP:$BROWSER_PORT"
  374. ZAMMAD_PHP_API_CLIENT_UNIT_TESTS_USERNAME: "master@example.com"
  375. ZAMMAD_PHP_API_CLIENT_UNIT_TESTS_PASSWORD: "test"
  376. tags:
  377. - browser
  378. script:
  379. - RAILS_ENV=test rake db:create
  380. - rake zammad:ci:test:start zammad:setup:auto_wizard
  381. - git clone git@github.com:zammad/zammad-api-client-php || rake zammad:ci:test:fail
  382. - cd zammad-api-client-php
  383. - composer install
  384. - vendor/bin/phpunit || (cd .. && rake zammad:ci:test:fail)
  385. - cd .. && rake zammad:ci:test:stop
  386. ### Browser test slices
  387. #### Templates
  388. .script_browser_slice_template: &script_browser_slice_definition
  389. stage: browser-core
  390. dependencies:
  391. - browser:build
  392. script:
  393. # temporary workaround to check Yahoo! mailbox only in test:browser:core:ff_3_* tests
  394. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_AUTO1 ; fi
  395. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_AUTO2 ; fi
  396. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_MANUAL1 ; fi
  397. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_MANUAL2 ; fi
  398. - env
  399. - script/build/test_slice_tests.sh $TEST_SLICE
  400. - RAILS_ENV=test rake db:create
  401. - rake zammad:ci:test:start[with_elasticsearch]
  402. - rake test:browser || rake zammad:ci:test:fail
  403. - rake zammad:ci:test:stop
  404. .test_browser_core_postgresql_template: &test_browser_core_postgresql_definition
  405. <<: *test_browser_core_definition
  406. tags:
  407. - browser
  408. - postgresql
  409. <<: *script_browser_slice_definition
  410. .test_browser_core_mysql_template: &test_browser_core_mysql_definition
  411. <<: *test_browser_core_definition
  412. tags:
  413. - browser
  414. - mysql
  415. <<: *script_browser_slice_definition
  416. #### Firefox
  417. test:browser:core:ff_1_mysql:
  418. <<: *test_browser_core_mysql_definition
  419. variables:
  420. <<: *variables_browser_definition
  421. BROWSER: "firefox"
  422. TEST_SLICE: "1"
  423. test:browser:core:ff_2_mysql:
  424. <<: *test_browser_core_mysql_definition
  425. variables:
  426. <<: *variables_browser_definition
  427. BROWSER: "firefox"
  428. TEST_SLICE: "2"
  429. test:browser:core:ff_3_mysql:
  430. <<: *test_browser_core_mysql_definition
  431. variables:
  432. <<: *variables_browser_definition
  433. BROWSER: "firefox"
  434. TEST_SLICE: "3"
  435. test:browser:core:ff_4_mysql:
  436. <<: *test_browser_core_mysql_definition
  437. variables:
  438. <<: *variables_browser_definition
  439. BROWSER: "firefox"
  440. TEST_SLICE: "4"
  441. test:browser:core:ff_5_mysql:
  442. <<: *test_browser_core_mysql_definition
  443. variables:
  444. <<: *variables_browser_definition
  445. BROWSER: "firefox"
  446. TEST_SLICE: "5"
  447. test:browser:core:ff_6_mysql:
  448. <<: *test_browser_core_mysql_definition
  449. variables:
  450. <<: *variables_browser_definition
  451. BROWSER: "firefox"
  452. TEST_SLICE: "6"
  453. test:browser:core:ff_1_postgresql:
  454. <<: *test_browser_core_postgresql_definition
  455. variables:
  456. <<: *variables_browser_definition
  457. BROWSER: "firefox"
  458. TEST_SLICE: "1"
  459. test:browser:core:ff_2_postgresql:
  460. <<: *test_browser_core_postgresql_definition
  461. variables:
  462. <<: *variables_browser_definition
  463. BROWSER: "firefox"
  464. TEST_SLICE: "2"
  465. test:browser:core:ff_3_postgresql:
  466. <<: *test_browser_core_postgresql_definition
  467. variables:
  468. <<: *variables_browser_definition
  469. BROWSER: "firefox"
  470. TEST_SLICE: "3"
  471. test:browser:core:ff_4_postgresql:
  472. <<: *test_browser_core_postgresql_definition
  473. variables:
  474. <<: *variables_browser_definition
  475. BROWSER: "firefox"
  476. TEST_SLICE: "4"
  477. test:browser:core:ff_5_postgresql:
  478. <<: *test_browser_core_postgresql_definition
  479. variables:
  480. <<: *variables_browser_definition
  481. BROWSER: "firefox"
  482. TEST_SLICE: "5"
  483. test:browser:core:ff_6_postgresql:
  484. <<: *test_browser_core_postgresql_definition
  485. variables:
  486. <<: *variables_browser_definition
  487. BROWSER: "firefox"
  488. TEST_SLICE: "6"
  489. ### Chrome
  490. test:browser:core:chrome_1_mysql:
  491. <<: *test_browser_core_mysql_definition
  492. variables:
  493. <<: *variables_browser_definition
  494. BROWSER: "chrome"
  495. TEST_SLICE: "1"
  496. test:browser:core:chrome_2_mysql:
  497. <<: *test_browser_core_mysql_definition
  498. variables:
  499. <<: *variables_browser_definition
  500. BROWSER: "chrome"
  501. TEST_SLICE: "2"
  502. test:browser:core:chrome_3_mysql:
  503. <<: *test_browser_core_mysql_definition
  504. variables:
  505. <<: *variables_browser_definition
  506. BROWSER: "chrome"
  507. TEST_SLICE: "3"
  508. test:browser:core:chrome_4_mysql:
  509. <<: *test_browser_core_mysql_definition
  510. variables:
  511. <<: *variables_browser_definition
  512. BROWSER: "chrome"
  513. TEST_SLICE: "4"
  514. test:browser:core:chrome_5_mysql:
  515. <<: *test_browser_core_mysql_definition
  516. variables:
  517. <<: *variables_browser_definition
  518. BROWSER: "chrome"
  519. TEST_SLICE: "5"
  520. test:browser:core:chrome_6_mysql:
  521. <<: *test_browser_core_mysql_definition
  522. variables:
  523. <<: *variables_browser_definition
  524. BROWSER: "chrome"
  525. TEST_SLICE: "6"
  526. test:browser:core:chrome_1_postgresql:
  527. <<: *test_browser_core_postgresql_definition
  528. variables:
  529. <<: *variables_browser_definition
  530. BROWSER: "chrome"
  531. TEST_SLICE: "1"
  532. test:browser:core:chrome_2_postgresql:
  533. <<: *test_browser_core_postgresql_definition
  534. variables:
  535. <<: *variables_browser_definition
  536. BROWSER: "chrome"
  537. TEST_SLICE: "2"
  538. test:browser:core:chrome_3_postgresql:
  539. <<: *test_browser_core_postgresql_definition
  540. variables:
  541. <<: *variables_browser_definition
  542. BROWSER: "chrome"
  543. TEST_SLICE: "3"
  544. test:browser:core:chrome_4_postgresql:
  545. <<: *test_browser_core_postgresql_definition
  546. variables:
  547. <<: *variables_browser_definition
  548. BROWSER: "chrome"
  549. TEST_SLICE: "4"
  550. test:browser:core:chrome_5_postgresql:
  551. <<: *test_browser_core_postgresql_definition
  552. variables:
  553. <<: *variables_browser_definition
  554. BROWSER: "chrome"
  555. TEST_SLICE: "5"
  556. test:browser:core:chrome_6_postgresql:
  557. <<: *test_browser_core_postgresql_definition
  558. variables:
  559. <<: *variables_browser_definition
  560. BROWSER: "chrome"
  561. TEST_SLICE: "6"
  562. ### Auto wizard
  563. .test_browser_integration_template: &test_browser_integration_definition
  564. <<: *artifacts_error
  565. stage: browser-integration
  566. dependencies:
  567. - browser:build
  568. .script_integration_auto_wizard_template: &script_integration_auto_wizard_definition
  569. script:
  570. - RAILS_ENV=test rake db:create
  571. - cp $AUTO_WIZARD_FILE auto_wizard.json
  572. - rake zammad:ci:test:start[with_elasticsearch]
  573. - ruby -I test/ $TEST_FILE || rake zammad:ci:test:fail
  574. - rake zammad:ci:test:stop
  575. .browser_core_auto_wizard_template: &browser_core_auto_wizard_definition
  576. <<: *test_browser_core_definition
  577. <<: *script_integration_auto_wizard_definition
  578. test:browser:autowizard_chrome:
  579. <<: *browser_core_auto_wizard_definition
  580. tags:
  581. - browser
  582. variables:
  583. <<: *variables_browser_definition
  584. BROWSER: "chrome"
  585. AUTO_WIZARD_FILE: "contrib/auto_wizard_example.json"
  586. TEST_FILE: "test/integration/auto_wizard_browser_test.rb"
  587. test:browser:autowizard_ff:
  588. <<: *browser_core_auto_wizard_definition
  589. tags:
  590. - browser
  591. variables:
  592. <<: *variables_browser_definition
  593. BROWSER: "firefox"
  594. AUTO_WIZARD_FILE: "contrib/auto_wizard_example.json"
  595. TEST_FILE: "test/integration/auto_wizard_browser_test.rb"
  596. ### Browser integration tests
  597. .browser_integration_auto_wizard_template: &browser_integration_auto_wizard_definition
  598. <<: *test_browser_integration_definition
  599. <<: *script_integration_auto_wizard_definition
  600. test:browser:integration:twitter_chrome:
  601. <<: *browser_integration_auto_wizard_definition
  602. tags:
  603. - browser
  604. - twitter
  605. variables:
  606. <<: *variables_browser_definition
  607. BROWSER: "chrome"
  608. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  609. TEST_FILE: "test/integration/twitter_browser_test.rb"
  610. test:browser:integration:twitter_ff:
  611. <<: *browser_integration_auto_wizard_definition
  612. tags:
  613. - browser
  614. - twitter
  615. variables:
  616. <<: *variables_browser_definition
  617. BROWSER: "firefox"
  618. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  619. TEST_FILE: "test/integration/twitter_browser_test.rb"
  620. test:browser:integration:facebook_chrome:
  621. <<: *browser_integration_auto_wizard_definition
  622. tags:
  623. - browser
  624. - facebook
  625. variables:
  626. <<: *variables_browser_definition
  627. BROWSER: "chrome"
  628. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  629. TEST_FILE: "test/integration/facebook_browser_test.rb"
  630. test:browser:integration:facebook_ff:
  631. <<: *browser_integration_auto_wizard_definition
  632. tags:
  633. - browser
  634. - facebook
  635. variables:
  636. <<: *variables_browser_definition
  637. BROWSER: "firefox"
  638. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  639. TEST_FILE: "test/integration/facebook_browser_test.rb"
  640. test:browser:integration:idoit_chrome:
  641. <<: *browser_integration_auto_wizard_definition
  642. variables:
  643. <<: *variables_browser_definition
  644. BROWSER: "chrome"
  645. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  646. TEST_FILE: "test/integration/idoit_browser_test.rb"
  647. ### Browser integration tests
  648. .variables_browser_import_template: &variables_browser_import_definition
  649. BROWSER: "chrome"
  650. BROWSER_URL: "http://$IP:$BROWSER_PORT"
  651. .browser_integration_import_template: &browser_integration_import_definition
  652. <<: *test_browser_integration_definition
  653. tags:
  654. - browser
  655. script:
  656. - RAILS_ENV=test rake db:create
  657. - rake zammad:ci:test:start
  658. - ruby -I test/ $TEST_FILE
  659. - rake zammad:ci:test:stop
  660. test:browser:integration:otrs_chrome:
  661. <<: *browser_integration_import_definition
  662. variables:
  663. <<: *variables_browser_import_definition
  664. TEST_FILE: "test/integration/otrs_import_browser_test.rb"
  665. test:browser:integration:zendesk_chrome:
  666. <<: *browser_integration_import_definition
  667. variables:
  668. <<: *variables_browser_import_definition
  669. TEST_FILE: "test/integration/zendesk_import_browser_test.rb"