mirror of
https://github.com/Growstuff/growstuff.git
synced 2026-07-30 09:17:44 -04:00
* Bump actions/cache from 5 to 6 Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/cache dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump axe-core-rspec from 4.11.3 to 4.12.0 Bumps [axe-core-rspec](https://github.com/dequelabs/axe-core-gems) from 4.11.3 to 4.12.0. - [Release notes](https://github.com/dequelabs/axe-core-gems/releases) - [Changelog](https://github.com/dequelabs/axe-core-gems/blob/develop/CHANGELOG.md) - [Commits](https://github.com/dequelabs/axe-core-gems/compare/v4.11.3...v4.12.0) --- updated-dependencies: - dependency-name: axe-core-rspec dependency-version: 4.12.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Merge pull request #4683 from Growstuff/refactor-harvests-remove-elasticsearch-14630838429921835504 Refactor harvests to remove Elasticsearch * Refactor Seeds to remove Elasticsearch dependency (#4684) * Refactor Seeds to remove Elasticsearch dependency This commit refactors the `SeedsController` and `Seed` model to remove dependency on Elasticsearch and Searchkick. Key changes: - Removed `SearchSeeds` concern from the `Seed` model. - Reimplemented `Seed.homepage_records` using ActiveRecord. - Refactored `SeedsController#index` to use ActiveRecord for filtering, eager loading, and pagination. - Deleted `app/models/concerns/search_seeds.rb`. - Updated relevant specs to remove Searchkick-specific tags and setup. Co-authored-by: CloCkWeRX <365751+CloCkWeRX@users.noreply.github.com> * Remove Seed.reindex * Remove trait * Fix tests --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> * Refactor Plantings to remove Elasticsearch dependency (#4686) * Refactor Plantings to remove Elasticsearch dependency This commit refactors the Plantings controller, model, and views to use ActiveRecord instead of Searchkick/Elasticsearch. Key changes: - Refactored `PlantingsController#index` to use an ActiveRecord-based `plantings` method. - Moved `homepage_records` logic from `SearchPlantings` concern to the `Planting` model using ActiveRecord scopes. - Removed `SearchPlantings` concern and deleted the file. - Updated `home/_plantings.html.haml` and `plantings/index.rss.haml` to use dot notation for `Planting` object attributes. - Updated specs to remove Searchkick-related setup and assertions. Co-authored-by: CloCkWeRX <365751+CloCkWeRX@users.noreply.github.com> * Fix Planting.reindex * Fix test * Mark test pending --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> * Fix plantings ICS feed regression and enable request spec (#4687) * Fix plantings ICS feed regression and enable request spec - Update `app/views/plantings/index.ics.erb` to use ActiveRecord method calls instead of hash bracket access. - Enable `spec/requests/plantings_spec.rb` and update it to account for mirrored harvest events. - Add `config/initializers/faraday_patch.rb` to fix Searchkick/Faraday 2.x compatibility issues. Co-authored-by: CloCkWeRX <365751+CloCkWeRX@users.noreply.github.com> * Delete config/initializers/faraday_patch.rb * Apply suggestion from @CloCkWeRX * Apply suggestions from code review Co-authored-by: Daniel O'Connor <daniel.oconnor@gmail.com> * Apply suggestion from @CloCkWeRX --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> * Block Semrush crawler in Rack Attack initializer Added a blocklist entry for the Semrush crawler to prevent abusive requests. * Bump sitemap_generator from 6.3.0 to 7.0.2 Bumps [sitemap_generator](https://github.com/kjvarga/sitemap_generator) from 6.3.0 to 7.0.2. - [Changelog](https://github.com/kjvarga/sitemap_generator/blob/master/CHANGES.md) - [Commits](https://github.com/kjvarga/sitemap_generator/compare/v6.3.0...v7.0.2) --- updated-dependencies: - dependency-name: sitemap_generator dependency-version: 7.0.2 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump carrierwave from 3.0.7 to 3.1.3 Bumps [carrierwave](https://github.com/carrierwaveuploader/carrierwave) from 3.0.7 to 3.1.3. - [Release notes](https://github.com/carrierwaveuploader/carrierwave/releases) - [Changelog](https://github.com/carrierwaveuploader/carrierwave/blob/master/CHANGELOG.md) - [Commits](https://github.com/carrierwaveuploader/carrierwave/compare/v3.0.7...v3.1.3) --- updated-dependencies: - dependency-name: carrierwave dependency-version: 3.1.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Bump rubocop from 1.88.0 to 1.88.1 (#4691) Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.88.0 to 1.88.1. - [Release notes](https://github.com/rubocop/rubocop/releases) - [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md) - [Commits](https://github.com/rubocop/rubocop/compare/v1.88.0...v1.88.1) --- updated-dependencies: - dependency-name: rubocop dependency-version: 1.88.1 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump sitemap_generator from 7.0.2 to 7.0.3 (#4692) Bumps [sitemap_generator](https://github.com/kjvarga/sitemap_generator) from 7.0.2 to 7.0.3. - [Changelog](https://github.com/kjvarga/sitemap_generator/blob/master/CHANGES.md) - [Commits](https://github.com/kjvarga/sitemap_generator/compare/v7.0.2...v7.0.3) --- updated-dependencies: - dependency-name: sitemap_generator dependency-version: 7.0.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump sitemap_generator from 7.0.3 to 7.1.0 Bumps [sitemap_generator](https://github.com/kjvarga/sitemap_generator) from 7.0.3 to 7.1.0. - [Changelog](https://github.com/kjvarga/sitemap_generator/blob/master/CHANGES.md) - [Commits](https://github.com/kjvarga/sitemap_generator/compare/v7.0.3...v7.1.0) --- updated-dependencies: - dependency-name: sitemap_generator dependency-version: 7.1.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump haml_lint from 0.74.0 to 0.75.0 (#4694) Bumps [haml_lint](https://github.com/sds/haml-lint) from 0.74.0 to 0.75.0. - [Release notes](https://github.com/sds/haml-lint/releases) - [Changelog](https://github.com/sds/haml-lint/blob/main/CHANGELOG.md) - [Commits](https://github.com/sds/haml-lint/compare/v0.74.0...v0.75.0) --- updated-dependencies: - dependency-name: haml_lint dependency-version: 0.75.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump rubocop from 1.88.1 to 1.88.2 Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.88.1 to 1.88.2. - [Release notes](https://github.com/rubocop/rubocop/releases) - [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md) - [Commits](https://github.com/rubocop/rubocop/compare/v1.88.1...v1.88.2) --- updated-dependencies: - dependency-name: rubocop dependency-version: 1.88.2 dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Cesy <cesy.avon@gmail.com> Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
118 lines
3.4 KiB
YAML
118 lines
3.4 KiB
YAML
name: CI Features
|
|
|
|
on: [pull_request]
|
|
|
|
jobs:
|
|
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: "noreply@test.growstuff.org"
|
|
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@v7
|
|
|
|
- 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@v6
|
|
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@v6
|
|
with:
|
|
node-version: '24'
|
|
|
|
- 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 (*_spec)
|
|
run: bundle exec rspec spec/features/*_spec.rb -fd
|
|
|
|
- name: Run rspec (percy/)
|
|
run: bundle exec rspec spec/features/percy/ -fd
|
|
|
|
- name: Run rspec (photos/)
|
|
run: bundle exec rspec spec/features/photos/ -fd
|
|
|
|
- name: Run rspec (rss/)
|
|
run: bundle exec rspec spec/features/rss/ -fd
|
|
|
|
- name: Upload screenshots
|
|
if: failure()
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: screenshots
|
|
path: tmp/screenshots |