Skip to content

Commit

Permalink
Strip back installation that isn't needed
Browse files Browse the repository at this point in the history
  • Loading branch information
CloCkWeRX committed Jan 21, 2024
1 parent 1f0cfa9 commit b2a1144
Show file tree
Hide file tree
Showing 2 changed files with 140 additions and 23 deletions.
122 changes: 122 additions & 0 deletions .github/workflows/ci-features.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
name: CI

on: [pull_request]

jobs:
contributors:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install ruby version specified in .ruby-version
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
- name: Install gem bundle
run: |
gem install bundler
bundle install
- name: Check contributors
run: |
bundle exec script/check_contributors_md.rb
rspec:
runs-on: ubuntu-latest
services:
db:
image: postgres
env:
##
# The Postgres service fails its docker health check unless you
# specify these environment variables
#
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: growstuff_test
ports: ['5432:5432']
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
APP_DOMAIN_NAME: localhost:3000
APP_PROTOCOL: http
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
DATABASE_URL: postgres://postgres:postgres@localhost:5432/growstuff_test
DEVISE_SECRET_KEY: secret
ELASTIC_SEARCH_VERSION: "7.5.1-amd64"
GROWSTUFF_EMAIL: "[email protected]"
GROWSTUFF_FLICKR_KEY: secretkey"
GROWSTUFF_FLICKR_SECRET: secretsecret
GROWSTUFF_SITE_NAME: "Growstuff (travis)"
RAILS_ENV: test
RAILS_SECRET_TOKEN: supersecret

steps:
- name: Checkout this repo
uses: actions/checkout@v4

- name: Configure sysctl limits
run: |
sudo swapoff -a
sudo sysctl -w vm.swappiness=1
sudo sysctl -w fs.file-max=262144
sudo sysctl -w vm.max_map_count=262144
- name: Start Elasticsearch
uses: elastic/elastic-github-actions/elasticsearch@master
with:
stack-version: 7.5.1

##
# Cache Yarn modules
#
# See https://github.com/actions/cache/blob/master/examples.md#node---yarn for details
#
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Setup yarn cache
uses: actions/cache@v4
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Install required OS packages
run: |
sudo apt-get -y install libpq-dev google-chrome-stable
- name: Install NodeJS
uses: actions/setup-node@v4
with:
node-version: '12'

- name: Install Ruby (version given by .ruby-version) and Bundler
uses: ruby/setup-ruby@v1
with:
bundler-cache: true

- name: Install required JS packages
run: yarn install

- name: install chrome
run: sudo apt-get install google-chrome-stable

- name: Prepare database for testing
run: bundle exec rails db:prepare

- name: precompile assets
run: bundle exec rails assets:precompile

- name: index into elastic search
run: bundle exec rails search:reindex

- name: Run rspec - features (report results to Percy.io and CodeClimate)
run: bundle exec rspec spec/features/ -fd --only-failures

- name: Report to code climate
run: |
gem install codeclimate-test-reporter
codeclimate-test-reporter
41 changes: 18 additions & 23 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,26 +67,9 @@ jobs:
with:
stack-version: 7.5.1

##
# Cache Yarn modules
#
# See https://github.com/actions/cache/blob/master/examples.md#node---yarn for details
#
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: Setup yarn cache
uses: actions/cache@v4
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Install required OS packages
run: |
sudo apt-get -y install libpq-dev google-chrome-stable
sudo apt-get -y install libpq-dev
- name: Install NodeJS
uses: actions/setup-node@v4
Expand All @@ -107,14 +90,26 @@ jobs:
- name: Prepare database for testing
run: bundle exec rails db:prepare

- name: precompile assets
run: bundle exec rails assets:precompile

- name: index into elastic search
run: bundle exec rails search:reindex

- name: Run rspec (report results to Percy.io and CodeClimate)
run: bundle exec rspec spec -fd
- name: Run rspec - spec/helpers
run: bundle exec rspec spec/helpers/ -fd --only-failures --fail-fast

- name: Run rspec - spec/models
run: bundle exec rspec spec/models/ -fd --only-failures --fail-fast

- name: Run rspec - spec/controllers
run: bundle exec rspec spec/controllers/ -fd --only-failures --fail-fast

- name: Run rspec - spec/views
run: bundle exec rspec spec/views/ -fd --only-failures --fail-fast

- name: Run rspec - spec/routes
run: bundle exec rspec spec/routes/ -fd --only-failures --fail-fast

- name: Run rspec - spec/services
run: bundle exec rspec spec/services/ -fd --only-failures --fail-fast

- name: Report to code climate
run: |
Expand Down

0 comments on commit b2a1144

Please sign in to comment.