Files
grecia/.gitlab-ci.yml
Javi Martín e74eff217b Upgrade Ruby to version 3.1.4
Note we updated the `mail` gem in commit 103742847, which is necesary
for Ruby 3.1 because it adds the net-smtp dependency. The net-smtp
library was removed from Ruby in Ruby 3.1, and if we don't include it,
we get an error:

```
cannot load such file -- net/smtp (LoadError)
```

We're also updating the Bundler version in the Gemfile.lock so it's the
one included in Ruby 3.1. Without updating it, we get a warning:

```
Calling `DidYouMean::SPELL_CHECKERS.merge!(error_name => spell_checker)'
has been deprecated. Please call `DidYouMean.correct_error(error_nam e,
spell_checker)' instead.
```

Finally, in order to make Capistrano work, we need to add a couple more
changes:

* Make the net-ssh gem compatible with SSL 3.0; done in commit b2eec088b
* Explicitly allow aliases in the `deploy-secrets.yml` file because
  Psych 4.x (included in Ruby 3.1) doesn't load aliases without this
  option
2023-09-12 15:17:17 +02:00

50 lines
1.3 KiB
YAML

stages:
- test
- lint
tests:
image: "ruby:3.1.4"
stage: test
services:
- postgres:10.10
cache:
key: consul
paths:
- vendor/
variables:
POSTGRES_USER: consul
RAILS_ENV: test
TEST_COVERAGE: 1
parallel: 5
script:
- apt-get update && apt-get install -y nodejs chromium
- for i in config/*.example; do cp "$i" "${i/.example}"; done
- for i in config/*.gitlab; do cp "$i" "${i/.gitlab}"; done
- bundle --without development
- bundle exec rake db:setup
- bundle exec rake assets:precompile > /dev/null 2>&1
- bin/knapsack_pro_rspec
artifacts:
when: on_failure
paths:
- tmp/screenshots/
# To make this job work, create a Personal Access Token with permissions
# to comment on your repository and add a variable named
# PRONTO_GITLAB_API_PRIVATE_TOKEN to your repository CI/CD settings
# giving it the value of the Personal Access Token
linters:
image: "ruby:3.1.4"
stage: lint
cache:
key: consul
paths:
- vendor/
only:
- merge_requests
script:
- apt-get update && apt-get install -y nodejs cmake pkg-config
- bundle --without test
- git fetch origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
- bundle exec pronto run -f gitlab_mr -c origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME