.gitlab-ci.yml 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660
  1. image: registry.znuny.com/docker/zammad-ruby:2.5.5
  2. # Global variables added to the ENV of each job
  3. variables:
  4. # for faster translation loading
  5. Z_LOCALES: "en-us:de-de"
  6. # Browser tests and variables
  7. RAILS_SERVE_STATIC_FILES: "true"
  8. REMOTE_URL: "http://selenium:24444/wd/hub"
  9. TZ: "Europe/London"
  10. # docker elgalu/selenium variables for parallel browser instance creation
  11. MAX_INSTANCES: "50"
  12. MAX_SESSIONS: "50"
  13. # docker-imap-devel variables required for browser tests
  14. MAILNAME: "mail.test.dc.zammad.com"
  15. MAILBOX_INIT: "zammad@mail.test.dc.zammad.com:zammad"
  16. MAIL_ADDRESS: "zammad@mail.test.dc.zammad.com"
  17. MAIL_PASS: "zammad"
  18. # Artifacts are stored for failed jobs for 2 days
  19. .artifacts_error_template: &artifacts_error
  20. artifacts:
  21. expire_in: 2 days
  22. when: on_failure
  23. paths:
  24. - tmp/screenshot*
  25. - tmp/screenshots/*
  26. - log/*.log
  27. # Workaround to enable usage of mixed SSH and Docker GitLab CI runners
  28. .docker_env_template: &docker_env
  29. tags:
  30. - docker
  31. # Workaround for blocked port 25 access on cloud provider infrastructure
  32. .requires_mail_port_access_template: &requires_mail_port_access
  33. tags:
  34. - mail
  35. .base_env_template: &base_env
  36. <<: *docker_env
  37. <<: *artifacts_error
  38. # General required Docker services for different/random DB envs
  39. .services_mysql_template: &services_mysql
  40. services:
  41. - name: registry.znuny.com/docker/zammad-mysql:latest
  42. alias: mysql
  43. .services_postgresql_template: &services_postgresql
  44. services:
  45. - name: registry.znuny.com/docker/zammad-postgresql:latest
  46. alias: postgresql
  47. .services_random_db_template: &services_random_db
  48. services:
  49. - name: registry.znuny.com/docker/zammad-mysql:latest
  50. alias: mysql
  51. - name: registry.znuny.com/docker/zammad-postgresql:latest
  52. alias: postgresql
  53. # Cache gems in between jobs and pipelines
  54. cache:
  55. key: "ruby25"
  56. paths:
  57. - vendor/ruby
  58. # Initialize application env
  59. before_script:
  60. - bundle install -j $(nproc) --path vendor
  61. - bundle exec ruby script/build/database_config.rb
  62. # Stages
  63. stages:
  64. - pre
  65. - test
  66. - browser-core
  67. - browser-integration
  68. # pre stage
  69. # Workaround to enable usage of mixed SSH and Docker GitLab CI runners
  70. .pre_stage_template: &pre_stage
  71. <<: *docker_env
  72. stage: pre
  73. before_script:
  74. - '' # disable before_script for pre "non-application" env
  75. pre:rubocop:
  76. <<: *pre_stage
  77. script:
  78. - bundle install -j $(nproc) --path vendor
  79. - bundle exec rubocop
  80. pre:coffeelint:
  81. <<: *pre_stage
  82. script:
  83. - coffeelint app/
  84. pre:bundle-audit:
  85. <<: *pre_stage
  86. script:
  87. - gem install bundler-audit
  88. - bundle-audit update
  89. - bundle-audit --ignore CVE-2015-9284
  90. pre:github:
  91. <<: *pre_stage
  92. tags:
  93. - deploy
  94. script:
  95. - script/build/sync_repo.sh git@github.com:zammad/zammad.git
  96. # test stage
  97. ## RSpec
  98. .script_rspec_template: &script_rspec_definition
  99. <<: *base_env
  100. variables:
  101. RAILS_ENV: "test"
  102. script:
  103. - bundle exec rake zammad:db:init
  104. - bundle exec rspec -t ~type:system -t ~searchindex
  105. test:rspec:mysql:
  106. stage: test
  107. <<: *services_mysql
  108. <<: *script_rspec_definition
  109. test:rspec:postgresql:
  110. stage: test
  111. <<: *services_postgresql
  112. <<: *script_rspec_definition
  113. ## Unit and Controller tests
  114. .script_unit_template: &script_unit_definition
  115. <<: *base_env
  116. variables:
  117. RAILS_ENV: "test"
  118. script:
  119. - bundle exec rake zammad:db:init
  120. - bundle exec rake test:units
  121. - bundle exec rails test test/integration/object_manager_test.rb
  122. - bundle exec rails test test/integration/package_test.rb
  123. test:unit:mysql:
  124. stage: test
  125. <<: *services_mysql
  126. <<: *script_unit_definition
  127. test:unit:postgresql:
  128. stage: test
  129. <<: *services_postgresql
  130. <<: *script_unit_definition
  131. ## Integration tests
  132. .test_integration_template: &test_integration_definition
  133. <<: *base_env
  134. <<: *services_random_db
  135. stage: test
  136. variables:
  137. RAILS_ENV: "test"
  138. test:integration:email_helper_deliver:
  139. <<: *test_integration_definition
  140. <<: *requires_mail_port_access
  141. script:
  142. - bundle exec rake zammad:db:unseeded
  143. - bundle exec rails test test/integration/email_helper_test.rb
  144. - bundle exec rails test test/integration/email_deliver_test.rb
  145. - bundle exec rails test test/integration/email_keep_on_server_test.rb
  146. - bundle exec rails test test/integration/email_postmaster_to_sender.rb
  147. test:integration:facebook:
  148. <<: *test_integration_definition
  149. script:
  150. - bundle exec rake zammad:db:init
  151. - bundle exec rails test test/integration/facebook_test.rb
  152. allow_failure: true
  153. test:integration:geo:
  154. <<: *test_integration_definition
  155. script:
  156. - bundle exec rake zammad:db:unseeded
  157. - bundle exec rails test test/integration/geo_calendar_test.rb
  158. - bundle exec rails test test/integration/geo_location_test.rb
  159. - bundle exec rails test test/integration/geo_ip_test.rb
  160. test:integration:user_agent:
  161. <<: *test_integration_definition
  162. script:
  163. - bundle exec rake zammad:db:unseeded
  164. - bundle exec rails test test/integration/user_agent_test.rb
  165. - export ZAMMAD_PROXY_TEST=true
  166. - bundle exec rails test test/integration/user_agent_test.rb
  167. allow_failure: true
  168. test:integration:slack:
  169. <<: *test_integration_definition
  170. script:
  171. - bundle exec rake zammad:db:unseeded
  172. - echo "gem 'slack-api'" >> Gemfile.local
  173. - bundle install -j $(nproc)
  174. - bundle exec rails test test/integration/slack_test.rb
  175. test:integration:clearbit:
  176. <<: *test_integration_definition
  177. script:
  178. - bundle exec rake zammad:db:unseeded
  179. - bundle exec rails test test/integration/clearbit_test.rb
  180. allow_failure: true
  181. ### Elasticsearch
  182. .script_integration_es_variables: &script_integration_es_variables
  183. ES_INDEX_RAND: "true"
  184. ES_URL: "http://elasticsearch:9200"
  185. .script_integration_es_template: &script_integration_es_definition
  186. <<: *base_env
  187. stage: test
  188. variables:
  189. <<: *script_integration_es_variables
  190. RAILS_ENV: "test"
  191. script:
  192. - bundle exec rake zammad:db:unseeded
  193. - bundle exec rails test test/integration/elasticsearch_active_test.rb
  194. - bundle exec rails test test/integration/elasticsearch_test.rb
  195. - bundle exec rspec --tag searchindex --tag ~type:system
  196. - bundle exec rails test test/integration/report_test.rb
  197. test:integration:es:5.6:
  198. <<: *script_integration_es_definition
  199. services:
  200. - name: registry.znuny.com/docker/zammad-mysql:latest
  201. alias: mysql
  202. - name: registry.znuny.com/docker/zammad-postgresql:latest
  203. alias: postgresql
  204. - name: registry.znuny.com/docker/zammad-elasticsearch:5.6
  205. alias: elasticsearch
  206. test:integration:es:6:
  207. <<: *script_integration_es_definition
  208. services:
  209. - name: registry.znuny.com/docker/zammad-mysql:latest
  210. alias: mysql
  211. - name: registry.znuny.com/docker/zammad-postgresql:latest
  212. alias: postgresql
  213. - name: registry.znuny.com/docker/zammad-elasticsearch:6
  214. alias: elasticsearch
  215. test:integration:es:7:
  216. <<: *script_integration_es_definition
  217. services:
  218. - name: registry.znuny.com/docker/zammad-mysql:latest
  219. alias: mysql
  220. - name: registry.znuny.com/docker/zammad-postgresql:latest
  221. alias: postgresql
  222. - name: registry.znuny.com/docker/zammad-elasticsearch:7
  223. alias: elasticsearch
  224. ### Zendesk
  225. test:integration:zendesk:
  226. <<: *base_env
  227. <<: *services_random_db
  228. stage: test
  229. variables:
  230. RAILS_ENV: "test"
  231. script:
  232. - bundle exec rake zammad:db:unseeded
  233. - bundle exec rails test test/integration/zendesk_import_test.rb
  234. allow_failure: true
  235. ### OTRS
  236. .script_integration_otrs_template: &script_integration_otrs_definition
  237. <<: *base_env
  238. <<: *services_random_db
  239. stage: test
  240. script:
  241. - bundle exec rake zammad:db:unseeded
  242. - bundle exec rails test test/integration/otrs_import_test.rb
  243. test:integration:otrs_6:
  244. <<: *script_integration_otrs_definition
  245. variables:
  246. RAILS_ENV: "test"
  247. IMPORT_OTRS_ENDPOINT: "https://vz1185.test.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  248. test:integration:otrs_5:
  249. <<: *script_integration_otrs_definition
  250. variables:
  251. RAILS_ENV: "test"
  252. IMPORT_OTRS_ENDPOINT: "http://vz1109.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  253. test:integration:otrs_4:
  254. <<: *script_integration_otrs_definition
  255. variables:
  256. RAILS_ENV: "test"
  257. IMPORT_OTRS_ENDPOINT: "http://vz383.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  258. test:integration:otrs_33:
  259. <<: *script_integration_otrs_definition
  260. variables:
  261. RAILS_ENV: "test"
  262. IMPORT_OTRS_ENDPOINT: "http://vz305.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  263. test:integration:otrs_32:
  264. <<: *script_integration_otrs_definition
  265. variables:
  266. RAILS_ENV: "test"
  267. IMPORT_OTRS_ENDPOINT: "http://vz382.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  268. test:integration:otrs_31:
  269. <<: *script_integration_otrs_definition
  270. variables:
  271. RAILS_ENV: "test"
  272. IMPORT_OTRS_ENDPOINT: "http://vz381.demo.znuny.com/otrs/public.pl?Action=ZammadMigrator"
  273. # Browser tests
  274. ## preparation (asset precompile)
  275. browser:build:
  276. <<: *base_env
  277. <<: *services_postgresql
  278. stage: test
  279. variables:
  280. RAILS_ENV: "production"
  281. script:
  282. - bundle exec rake zammad:db:unseeded
  283. - bundle exec rake assets:precompile
  284. artifacts:
  285. expire_in: 1 week
  286. paths:
  287. - public/assets/.sprockets-manifest*
  288. - public/assets/application-*
  289. - public/assets/knowledge_base*
  290. - public/assets/print-*
  291. .services_browser_template: &services_browser_definition
  292. services:
  293. - name: registry.znuny.com/docker/zammad-mysql:latest
  294. alias: mysql
  295. - name: registry.znuny.com/docker/zammad-postgresql:latest
  296. alias: postgresql
  297. - name: registry.znuny.com/docker/zammad-elasticsearch:stable
  298. alias: elasticsearch
  299. - name: docker.io/elgalu/selenium:3.14.0-p17
  300. alias: selenium
  301. - name: registry.znuny.com/docker/docker-imap-devel:latest
  302. alias: mail
  303. ## Browser core tests
  304. .variables_browser_template: &variables_browser_definition
  305. RAILS_ENV: "production"
  306. APP_RESTART_CMD: "bundle exec rake zammad:ci:app:restart"
  307. .test_browser_core_template: &test_browser_core_definition
  308. <<: *base_env
  309. stage: browser-core
  310. dependencies:
  311. - browser:build
  312. ## Capybara
  313. .test_capybara_template: &test_capybara_definition
  314. <<: *test_browser_core_definition
  315. script:
  316. - bundle exec rake zammad:ci:test:prepare[with_elasticsearch]
  317. - bundle exec rspec --fail-fast -t type:system
  318. .variables_capybara_chrome_template: &variables_capybara_chrome_definition
  319. <<: *test_capybara_definition
  320. variables:
  321. <<: *script_integration_es_variables
  322. RAILS_ENV: "test"
  323. BROWSER: "chrome"
  324. .variables_capybara_ff_template: &variables_capybara_ff_definition
  325. <<: *test_capybara_definition
  326. variables:
  327. <<: *script_integration_es_variables
  328. RAILS_ENV: "test"
  329. BROWSER: "firefox"
  330. test:browser:core:capybara_chrome:
  331. <<: *variables_capybara_chrome_definition
  332. <<: *services_browser_definition
  333. test:browser:core:capybara_ff:
  334. <<: *variables_capybara_ff_definition
  335. <<: *services_browser_definition
  336. ### API clients
  337. test:browser:integration:api_client_ruby:
  338. <<: *test_browser_core_definition
  339. <<: *services_random_db
  340. variables:
  341. <<: *variables_browser_definition
  342. script:
  343. - RAILS_ENV=test bundle exec rake db:create
  344. - cp contrib/auto_wizard_test.json auto_wizard.json
  345. - bundle exec rake zammad:ci:test:start
  346. - git clone https://github.com/zammad/zammad-api-client-ruby.git
  347. - cd zammad-api-client-ruby
  348. - bundle install -j $(nproc)
  349. - bundle exec rspec
  350. test:browser:integration:api_client_php:
  351. <<: *test_browser_core_definition
  352. <<: *services_random_db
  353. variables:
  354. <<: *variables_browser_definition
  355. ZAMMAD_PHP_API_CLIENT_UNIT_TESTS_URL: "http://localhost:3000"
  356. ZAMMAD_PHP_API_CLIENT_UNIT_TESTS_USERNAME: "master@example.com"
  357. ZAMMAD_PHP_API_CLIENT_UNIT_TESTS_PASSWORD: "test"
  358. script:
  359. - RAILS_ENV=test bundle exec rake db:create
  360. - RAILS_ENV=test bundle exec rake zammad:ci:test:start zammad:setup:auto_wizard
  361. - git clone https://github.com/zammad/zammad-api-client-php.git
  362. - php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  363. - php composer-setup.php --install-dir=/usr/local/bin
  364. - ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
  365. - cd zammad-api-client-php
  366. - composer install
  367. - vendor/bin/phpunit
  368. ### Browser test slices
  369. #### Templates
  370. .script_browser_slice_template: &script_browser_slice_definition
  371. script:
  372. # temporary workaround to check Yahoo! mailbox only in test:browser:core:ff_3_* tests
  373. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_AUTO1 ; fi
  374. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_AUTO2 ; fi
  375. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_MANUAL1 ; fi
  376. - if [[ $CI_JOB_NAME != test:browser:core:ff_3_* ]]; then unset MAILBOX_MANUAL2 ; fi
  377. - env
  378. - script/build/test_slice_tests.sh $TEST_SLICE
  379. - RAILS_ENV=test bundle exec rake db:create
  380. - bundle exec rake zammad:ci:test:start[with_elasticsearch]
  381. - time bundle exec rails test --fail-fast test/browser
  382. .test_browser_core_base_template: &test_browser_core_base_definition
  383. <<: *test_browser_core_definition
  384. <<: *script_browser_slice_definition
  385. <<: *services_browser_definition
  386. #### Firefox
  387. test:browser:core:ff_1:
  388. <<: *test_browser_core_base_definition
  389. variables:
  390. <<: *variables_browser_definition
  391. BROWSER: "firefox"
  392. TEST_SLICE: "1"
  393. test:browser:core:ff_2:
  394. <<: *test_browser_core_base_definition
  395. variables:
  396. <<: *variables_browser_definition
  397. BROWSER: "firefox"
  398. TEST_SLICE: "2"
  399. test:browser:core:ff_3:
  400. <<: *test_browser_core_base_definition
  401. <<: *requires_mail_port_access
  402. variables:
  403. <<: *variables_browser_definition
  404. BROWSER: "firefox"
  405. TEST_SLICE: "3"
  406. test:browser:core:ff_4:
  407. <<: *test_browser_core_base_definition
  408. variables:
  409. <<: *variables_browser_definition
  410. BROWSER: "firefox"
  411. TEST_SLICE: "4"
  412. test:browser:core:ff_5:
  413. <<: *test_browser_core_base_definition
  414. variables:
  415. <<: *variables_browser_definition
  416. BROWSER: "firefox"
  417. TEST_SLICE: "5"
  418. test:browser:core:ff_6:
  419. <<: *test_browser_core_base_definition
  420. variables:
  421. <<: *variables_browser_definition
  422. BROWSER: "firefox"
  423. TEST_SLICE: "6"
  424. ### Chrome
  425. test:browser:core:chrome_1:
  426. <<: *test_browser_core_base_definition
  427. variables:
  428. <<: *variables_browser_definition
  429. BROWSER: "chrome"
  430. TEST_SLICE: "1"
  431. test:browser:core:chrome_2:
  432. <<: *test_browser_core_base_definition
  433. variables:
  434. <<: *variables_browser_definition
  435. BROWSER: "chrome"
  436. TEST_SLICE: "2"
  437. test:browser:core:chrome_3:
  438. <<: *test_browser_core_base_definition
  439. variables:
  440. <<: *variables_browser_definition
  441. BROWSER: "chrome"
  442. TEST_SLICE: "3"
  443. test:browser:core:chrome_4:
  444. <<: *test_browser_core_base_definition
  445. variables:
  446. <<: *variables_browser_definition
  447. BROWSER: "chrome"
  448. TEST_SLICE: "4"
  449. test:browser:core:chrome_5:
  450. <<: *test_browser_core_base_definition
  451. variables:
  452. <<: *variables_browser_definition
  453. BROWSER: "chrome"
  454. TEST_SLICE: "5"
  455. test:browser:core:chrome_6:
  456. <<: *test_browser_core_base_definition
  457. variables:
  458. <<: *variables_browser_definition
  459. BROWSER: "chrome"
  460. TEST_SLICE: "6"
  461. ### Auto wizard
  462. .auto_wizard_services_template: &auto_wizard_services
  463. services:
  464. - name: registry.znuny.com/docker/zammad-postgresql:latest
  465. alias: postgresql
  466. - name: docker.io/elgalu/selenium:3.14.0-p17
  467. alias: selenium
  468. .test_browser_integration_template: &test_browser_integration_definition
  469. <<: *base_env
  470. <<: *auto_wizard_services
  471. stage: browser-integration
  472. dependencies:
  473. - browser:build
  474. .script_integration_auto_wizard_template: &script_integration_auto_wizard_definition
  475. script:
  476. - RAILS_ENV=test bundle exec rake db:create
  477. - cp $AUTO_WIZARD_FILE auto_wizard.json
  478. - bundle exec rake zammad:ci:test:start
  479. - bundle exec rails test $TEST_FILE
  480. .browser_core_auto_wizard_template: &browser_core_auto_wizard_definition
  481. <<: *test_browser_core_definition
  482. <<: *auto_wizard_services
  483. <<: *script_integration_auto_wizard_definition
  484. test:browser:autowizard_chrome:
  485. <<: *browser_core_auto_wizard_definition
  486. variables:
  487. <<: *variables_browser_definition
  488. BROWSER: "chrome"
  489. AUTO_WIZARD_FILE: "contrib/auto_wizard_example.json"
  490. TEST_FILE: "test/integration/auto_wizard_browser_test.rb"
  491. test:browser:autowizard_ff:
  492. <<: *browser_core_auto_wizard_definition
  493. variables:
  494. <<: *variables_browser_definition
  495. BROWSER: "firefox"
  496. AUTO_WIZARD_FILE: "contrib/auto_wizard_example.json"
  497. TEST_FILE: "test/integration/auto_wizard_browser_test.rb"
  498. ### Browser integration tests
  499. .browser_integration_auto_wizard_template: &browser_integration_auto_wizard_definition
  500. <<: *test_browser_integration_definition
  501. <<: *script_integration_auto_wizard_definition
  502. test:browser:integration:twitter_chrome:
  503. <<: *browser_integration_auto_wizard_definition
  504. variables:
  505. <<: *variables_browser_definition
  506. BROWSER: "chrome"
  507. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  508. TEST_FILE: "test/integration/twitter_browser_test.rb"
  509. test:browser:integration:twitter_ff:
  510. <<: *browser_integration_auto_wizard_definition
  511. variables:
  512. <<: *variables_browser_definition
  513. BROWSER: "firefox"
  514. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  515. TEST_FILE: "test/integration/twitter_browser_test.rb"
  516. test:browser:integration:facebook_chrome:
  517. <<: *browser_integration_auto_wizard_definition
  518. variables:
  519. <<: *variables_browser_definition
  520. BROWSER: "chrome"
  521. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  522. TEST_FILE: "test/integration/facebook_browser_test.rb"
  523. test:browser:integration:facebook_ff:
  524. <<: *browser_integration_auto_wizard_definition
  525. variables:
  526. <<: *variables_browser_definition
  527. BROWSER: "firefox"
  528. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  529. TEST_FILE: "test/integration/facebook_browser_test.rb"
  530. test:browser:integration:idoit_chrome:
  531. <<: *browser_integration_auto_wizard_definition
  532. variables:
  533. <<: *variables_browser_definition
  534. BROWSER: "chrome"
  535. AUTO_WIZARD_FILE: "contrib/auto_wizard_test.json"
  536. TEST_FILE: "test/integration/idoit_browser_test.rb"
  537. ### Browser integration tests
  538. .variables_browser_import_template: &variables_browser_import_definition
  539. BROWSER: "chrome"
  540. RAILS_SERVE_STATIC_FILES: "true"
  541. RAILS_ENV: "production"
  542. .browser_integration_import_template: &browser_integration_import_definition
  543. <<: *test_browser_integration_definition
  544. script:
  545. - RAILS_ENV=test bundle exec rake db:create
  546. - bundle exec rake zammad:ci:test:start
  547. - bundle exec rails test $TEST_FILE
  548. test:browser:integration:otrs_chrome:
  549. <<: *browser_integration_import_definition
  550. variables:
  551. <<: *variables_browser_import_definition
  552. TEST_FILE: "test/integration/otrs_import_browser_test.rb"
  553. test:browser:integration:zendesk_chrome:
  554. <<: *browser_integration_import_definition
  555. variables:
  556. <<: *variables_browser_import_definition
  557. TEST_FILE: "test/integration/zendesk_import_browser_test.rb"