Skip to content

Commit

Permalink
Add actions workflow to run tests
Browse files Browse the repository at this point in the history
  • Loading branch information
tomhughes committed Dec 9, 2020
1 parent e027d5f commit efef674
Show file tree
Hide file tree
Showing 4 changed files with 84 additions and 0 deletions.
69 changes: 69 additions & 0 deletions .github/workflows/tests.yml
@@ -0,0 +1,69 @@
name: Tests
on:
- push
- pull_request
jobs:
tests:
name: Ubuntu ${{ matrix.ubuntu }}, Ruby ${{ matrix.ruby }}
strategy:
matrix:
ubuntu: [18.04, 20.04]
ruby: [2.5, 2.7]
runs-on: ubuntu-${{ matrix.ubuntu }}
env:
RAILS_ENV: test
OPENSTREETMAP_MEMCACHE_SERVERS: 127.0.0.1
steps:
- name: Checkout source
uses: actions/checkout@v1
- name: Setup ruby
uses: actions/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
- name: Cache gems
uses: actions/cache@v1
with:
path: vendor/bundle
key: bundle-ubuntu-${{ matrix.ubuntu }}-ruby-${{ matrix.ruby }}-${{ hashFiles('Gemfile.lock') }}
restore-keys: |
bundle-ubuntu-${{ matrix.ubuntu }}-ruby-${{ matrix.ruby }}-
- name: Cache node modules
uses: actions/cache@v1
with:
path: node_modules
key: yarn-ubuntu-${{ matrix.ubuntu }}-${{ hashFiles('yarn.lock') }}
restore-keys: |
yarn-ubuntu-${{ matrix.ubuntu }}-
- name: Install packages
run: |
sudo apt-get -yqq update
sudo apt-get -yqq install memcached
- name: Install gems
run: |
gem install bundler
bundle config set deployment true
bundle install --jobs 4 --retry 3
- name: Create database
run: |
sudo systemctl start postgresql
sudo -u postgres createuser -s $(id -un)
createdb openstreetmap
psql -c "CREATE EXTENSION btree_gist" openstreetmap
psql -f db/functions/functions.sql openstreetmap
- name: Configure rails
run: |
cp config/github.database.yml config/database.yml
cp config/example.storage.yml config/storage.yml
touch config/settings.local.yml
- name: Populate database
run: |
sed -f script/normalise-structure db/structure.sql > db/structure.expected
bundle exec rake db:migrate
sed -f script/normalise-structure db/structure.sql > db/structure.actual
diff -uw db/structure.expected db/structure.actual
- name: Export javascript strings
run: bundle exec rake i18n:js:export
- name: Install node modules
run: bundle exec rake yarn:install
- name: Run tests
run: bundle exec rake test:db
1 change: 1 addition & 0 deletions README.md
@@ -1,6 +1,7 @@
# "The Rails Port"

[![Lint](https://github.com/openstreetmap/openstreetmap-website/workflows/Lint/badge.svg?branch=master&event=push)](https://github.com/openstreetmap/openstreetmap-website/actions?query=workflow%3ALint%20branch%3Amaster%20event%3Apush)
[![Tests](https://github.com/openstreetmap/openstreetmap-website/workflows/Tests/badge.svg?branch=master&event=push)](https://github.com/openstreetmap/openstreetmap-website/actions?query=workflow%3ATests%20branch%3Amaster%20event%3Apush)
[![Build Status](https://travis-ci.org/openstreetmap/openstreetmap-website.svg?branch=master)](https://travis-ci.org/openstreetmap/openstreetmap-website)
[![Coverage Status](https://coveralls.io/repos/openstreetmap/openstreetmap-website/badge.svg?branch=master)](https://coveralls.io/r/openstreetmap/openstreetmap-website?branch=master)

Expand Down
4 changes: 4 additions & 0 deletions config/github.database.yml
@@ -0,0 +1,4 @@
test:
adapter: postgresql
database: openstreetmap
encoding: utf8
10 changes: 10 additions & 0 deletions script/normalise-structure
@@ -0,0 +1,10 @@
/^$/d
/^--/d
/^CREATE EXTENSION IF NOT EXISTS plpgsql /d
/^COMMENT ON EXTENSION plpgsql /d
/^SET default_with_oids /d
/^SET default_table_access_method /d
/^SET idle_in_transaction_session_timeout /d
/^ AS integer$/d

s/ IMMUTABLE / /

0 comments on commit efef674

Please sign in to comment.