mirror of
https://github.com/Growstuff/growstuff.git
synced 2025-12-24 01:57:46 -05:00
This commit configures the sitemap generation process to upload the sitemap to an S3 bucket instead of the local filesystem. It introduces the `aws-sdk-s3` gem to handle the S3 communication. A new configuration file, `config/sitemap.rb`, has been added to define the S3 adapter and specify the models to be included in the sitemap. The S3 bucket, access keys, and region are configured via environment variables.
208 lines
4.5 KiB
Ruby
208 lines
4.5 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
source 'https://rubygems.org'
|
|
|
|
# Match ruby version in .ruby-version
|
|
ruby File.read('.ruby-version')
|
|
|
|
gem 'rails', '~> 7.2.0'
|
|
|
|
# Keeping old sprockets
|
|
# https://github.com/rails/sprockets-rails/issues/444#issuecomment-637817050
|
|
gem "sprockets", "<4"
|
|
|
|
gem 'bundler', '>= 2.4.22'
|
|
|
|
gem 'coffee-rails'
|
|
gem 'haml'
|
|
gem 'sassc-rails'
|
|
|
|
# API data
|
|
gem 'jsonapi-resources'
|
|
gem 'jsonapi-swagger'
|
|
gem 'rswag-api'
|
|
gem 'rswag-ui'
|
|
|
|
# CSS framework
|
|
gem "bootstrap", ">= 5.0.0"
|
|
gem 'material-sass', '4.1.1'
|
|
|
|
# Icons used by bootstrap/material-sass
|
|
gem 'material_icons'
|
|
|
|
# icons
|
|
gem 'font-awesome-sass'
|
|
|
|
gem 'terser'
|
|
|
|
gem 'oj' # Speeds up json
|
|
|
|
# planting and harvest predictions
|
|
# based on median values for the crop
|
|
gem 'active_median'
|
|
gem 'active_record_union'
|
|
|
|
gem 'flickraw'
|
|
gem 'jquery-rails'
|
|
gem 'jquery-ui-rails', github: 'jquery-ui-rails/jquery-ui-rails', tag: 'v7.0.0' # See https://github.com/jquery-ui-rails/jquery-ui-rails/issues/146
|
|
|
|
gem 'cancancan' # for checking member privileges
|
|
gem 'csv_shaper' # CSV export
|
|
gem 'gibbon', '~>1.2.0' # for Mailchimp newsletter subscriptions
|
|
|
|
# Maps
|
|
gem 'leaflet-rails', '>= 1.9.2'
|
|
gem 'rails-assets-leaflet.markercluster', source: 'https://rails-assets.org'
|
|
|
|
gem 'pg'
|
|
gem 'ruby-units' # for unit conversion
|
|
gem 'unicorn' # http server
|
|
|
|
gem "comfortable_mexican_sofa", git: "https://github.com/restarone/comfortable-mexican-sofa.git"
|
|
|
|
gem 'active_utils'
|
|
gem 'sidekiq'
|
|
|
|
# Markdown formatting for updates etc
|
|
gem 'bluecloth'
|
|
|
|
# Pagination
|
|
gem 'will_paginate'
|
|
gem 'will_paginate-bootstrap-style'
|
|
|
|
# user signup/login/etc
|
|
gem 'devise'
|
|
|
|
# nicely formatted URLs
|
|
gem 'friendly_id'
|
|
|
|
# validates URLs
|
|
gem "validate_url"
|
|
|
|
# gravatars
|
|
gem 'gravatar-ultimate'
|
|
|
|
# For geolocation
|
|
gem 'geocoder'
|
|
|
|
# For easy calendar selection
|
|
gem 'bootstrap-datepicker-rails'
|
|
|
|
# DRY-er easier bootstrap 4 forms
|
|
gem "bootstrap_form", ">= 4.5.0"
|
|
|
|
# For connecting to other services (eg Flickr)
|
|
gem 'omniauth', '~> 1.3'
|
|
gem 'omniauth-flickr', '>= 0.0.15'
|
|
|
|
# Pretty charts
|
|
gem "chartkick"
|
|
|
|
# clever elastic search
|
|
gem 'elasticsearch', '~> 7.0.0'
|
|
gem 'searchkick'
|
|
|
|
gem "hashie", ">= 3.5.3"
|
|
|
|
gem 'rake', '>= 10.0.0'
|
|
|
|
# locale based flash notices for controllers
|
|
gem "responders"
|
|
|
|
# allows soft delete. Used for members.
|
|
gem 'discard', '>= 1.2'
|
|
|
|
gem 'xmlrpc' # fixes rake error - can be removed if not needed later
|
|
|
|
gem 'puma'
|
|
|
|
gem 'loofah', '>= 2.19.1'
|
|
gem 'rack-protection', '>= 2.0.1'
|
|
|
|
# Member to member messaging system
|
|
gem 'mailboxer', '>= 0.15.1'
|
|
|
|
gem 'faraday'
|
|
|
|
gem 'rack-cors'
|
|
|
|
gem 'icalendar'
|
|
|
|
# for signups as requested by email service
|
|
gem 'recaptcha'
|
|
|
|
# External APIs for data
|
|
gem "gbifrb"
|
|
|
|
gem "msgpack"
|
|
|
|
group :production do
|
|
gem 'bonsai-elasticsearch-rails' # Integration with Bonsa-Elasticsearch on heroku
|
|
gem 'dalli'
|
|
gem 'memcachier'
|
|
gem 'rails_12factor' # supresses heroku plugin injection
|
|
|
|
gem 'scout_apm' # monitoring
|
|
end
|
|
|
|
group :development do
|
|
gem 'better_errors'
|
|
gem 'letter_opener'
|
|
gem 'listen'
|
|
end
|
|
|
|
group :development, :test do
|
|
gem 'bullet' # performance tuning by finding unnecesary queries
|
|
gem 'byebug' # debugging
|
|
gem 'capybara' # integration tests
|
|
gem 'capybara-email' # integration tests for email
|
|
gem 'capybara-screenshot' # for test debugging
|
|
gem 'database_cleaner'
|
|
gem 'factory_bot_rails' # for creating test data
|
|
gem 'faker'
|
|
gem 'haml-rails' # HTML templating language
|
|
gem 'pry'
|
|
gem 'query_diet'
|
|
gem 'rspec-activemodel-mocks'
|
|
gem 'rspec-rails' # unit testing framework
|
|
gem 'rswag-specs'
|
|
gem 'rubocop-capybara'
|
|
gem 'rubocop-factory_bot'
|
|
gem 'rubocop-rails'
|
|
gem 'rubocop-rake'
|
|
gem 'rubocop-rspec'
|
|
gem 'rubocop-rspec_rails'
|
|
gem 'webrat' # provides HTML matchers for view tests
|
|
|
|
gem 'crowdin-cli' # for translations
|
|
gem 'dotenv-rails'
|
|
|
|
# cli utils
|
|
gem 'haml_lint', '>= 0.25.1', require: false # Checks haml files for goodness
|
|
gem 'i18n-tasks', require: false # adds tests for finding missing and unused translations
|
|
gem 'rspectre', require: false # finds unused code in specs
|
|
gem 'rubocop', require: false
|
|
end
|
|
|
|
group :test do
|
|
gem 'axe-core-capybara'
|
|
gem 'axe-core-rspec'
|
|
gem "percy-capybara", "~> 5.0.0"
|
|
gem 'rails-controller-testing'
|
|
gem "rspec-rebound"
|
|
gem 'selenium-webdriver'
|
|
gem 'timecop'
|
|
gem 'vcr'
|
|
end
|
|
|
|
group :travis do
|
|
gem 'platform-api'
|
|
end
|
|
|
|
gem "i18n_data", "~> 1.1"
|
|
|
|
gem "paper_trail", "~> 17.0"
|
|
|
|
gem 'sitemap_generator'
|
|
gem 'aws-sdk-s3', '~> 1', '>= 1.114.0'
|