diff --git a/.circleci/config.yml b/.circleci/config.yml index 41817508..37e627f7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -23,12 +23,33 @@ jobs: solr_config_path: type: string default: '.internal_test_app/solr/conf' + ruby_type: + type: string + default: 'ruby' + solr_port: + type: string + default: '8985' + fcrepo_version: + type: string + default: "4.7.5" + solr_version: + type: string + default: "9" + + docker: + - image: cimg/<< parameters.ruby_type >>:<< parameters.ruby_version >>-browsers + - image: samvera/fcrepo4:<< parameters.fcrepo_version >> + environment: + CATALINA_OPTS: "-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC" + - image: zookeeper:3.9 + environment: + ZOO_ADMINSERVER_ENABLED: false + - image: solr:<< parameters.solr_version >> + environment: + VERBOSE: yes + SECURITY_JSON: '{"authentication":{"blockUnknown": false, "class":"solr.BasicAuthPlugin", "credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="}, "realm":"My Solr users", "forwardCredentials": false}, "authorization":{ "class":"solr.RuleBasedAuthorizationPlugin", "permissions":[{"name":"security-edit", "role":"admin"}], "user-role":{"solr":"admin"}}}' + command: sh -c "server/scripts/cloud-scripts/zkcli.sh -zkhost localhost:2181 -cmd put /security.json \"${SECURITY_JSON}\" && solr-fg -cloud -noprompt -p << parameters.solr_port >> -z localhost:2181" - executor: - name: 'samvera/ruby_fcrepo_solr' - ruby_version: << parameters.ruby_version >> - solr_port: << parameters.solr_port >> - solr_version: "9" working_directory: ~/project environment: @@ -37,6 +58,14 @@ jobs: SOLR_TEST_PORT: << parameters.solr_port >> ACTIVE_FEDORA_VERSION: << parameters.active_fedora_version >> BLACKLIGHT_VERSION: << parameters.blacklight_version >> + BUNDLE_PATH: vendor/bundle + BUNDLE_JOBS: 4 + BUNDLE_RETRY: 3 + RAILS_ENV: test + RACK_ENV: test + FCREPO_TEST_PORT: 8080 + SPEC_OPTS: --profile 10 --format RspecJunitFormatter --out /tmp/test-results/rspec.xml --format progress + steps: # Explicitly install sqlite3 since it isn't included in the cimg/ruby:2.5 image - run: sudo apt-get update && sudo apt-get install -y sqlite3 libsqlite3-dev