Commit Graph

55 Commits

Author SHA1 Message Date
Matt-Yorkley
94e476d21f Run system tests in their own action 2021-07-21 18:58:28 +01:00
Matt-Yorkley
99035a250b Move Rspec retries count to CI config and remove in local environment
When running tests locally we want them to fail immediately

Reference: https://github.com/NoRedInk/rspec-retry#environment-variables
2021-06-21 11:21:11 +01:00
Maikel Linke
5ccaa521cf Stop Codecov failing good pull requests
Something doesn't quite work with our Codecov setup. It somehow thinks
that the coverage is decreasing even though it's either not changing or
even increasing.

Until those problems are resolved, let's not mark pull requests as
failed so that we can rely on the pull's overall status report.
2021-05-20 14:18:43 +10:00
Maikel Linke
90bb9870ab Bump Codecov from 1.3.1 to 1.5.0 2021-05-20 14:17:36 +10:00
Matt-Yorkley
c702b398d6 Add warning comment on migration test isolation 2021-04-04 19:19:06 +01:00
Matt-Yorkley
3092397346 Isolate migration tests 2021-04-04 19:19:06 +01:00
Pau Perez
b2840aaebf Enable coverage in CI and use Codecov formatter 2021-03-31 10:02:50 +02:00
Pau Perez
756b3a6ee5 Upload coverage report after every CI job 2021-03-31 08:56:58 +02:00
Andy Brett
2fbc5afce6 add rake task to catch all subfolders under /spec 2021-03-22 16:18:19 -07:00
Andy Brett
f021e5e074 add --profile to all jobs 2021-03-22 09:37:03 -07:00
Andy Brett
8cc6e60ed1 include specs that start with numbers 2021-03-22 09:31:52 -07:00
Andy Brett
5cbd37f112 reorder jobs and move to 7 jobs 2021-03-21 14:55:53 -07:00
Andy Brett
c298aa19fa rebalance CI jobs 2021-03-19 10:48:18 -07:00
Andy Brett
f9f1bf8331 specify UTC explicitly 2021-03-16 12:00:20 -07:00
Pau Perez
e952664a14 Run build on pull_request event
As is, we're seeing builds almost only on merge commits and not on
others. Also, the build status is not displayed at the bottom of the
PR.

Once we see this fixed and have a better understanding, we can decide
whether or not we remove the `push` event. I guess both we'll be needed.
2021-03-15 20:06:15 +01:00
Andy Brett
89e0fd8f0a combine model jobs 2021-03-13 10:30:15 -08:00
Pau Perez
8301f2d550 Output RSpec profiling data
This shows things like:

```
Top 10 slowest examples (32.34 seconds, 87.1% of total time):

  As a site administrator
  I want to configure the site content
 fills in a setting shows the result on the home page
    19.12 seconds ./spec/features/admin/configuration/content_spec.rb:17
  States creating and editing states should allow an admin to edit existing states
    7.36 seconds ./spec/features/admin/configuration/states_spec.rb:40
  Tax Rates while editing can be deleted
    1.22 seconds ./spec/features/admin/configuration/tax_rates_spec.rb:58
  States creating and editing states should allow an admin to create states for non default countries
    1.16 seconds ./spec/features/admin/configuration/states_spec.rb:52
  States creating and editing states should show validation errors
    1 seconds ./spec/features/admin/configuration/states_spec.rb:68
  Zones edit existing zone
    0.90067 seconds ./spec/features/admin/configuration/zones_spec.rb:42
```

and

```
Top 8 slowest example groups:

  As a site administrator
  I want to configure the site content
    6.64 seconds average (19.93 seconds / 3 examples) ./spec/features/admin/configuration/content_spec.rb:5
  States
    2.42 seconds average (9.68 seconds / 4 examples) ./spec/features/admin/configuration/states_spec.rb:5
  Tax Rates
    0.51138 seconds average (2.56 seconds / 5 examples) ./spec/features/admin/configuration/tax_rates_spec.rb:4
  Zones
    0.49488 seconds average (1.48 seconds / 3 examples) ./spec/features/admin/configuration/zones_spec.rb:5
  Tax Categories
    0.32438 seconds average (1.3 seconds / 4 examples) ./spec/features/admin/configuration/tax_categories_spec.rb:5
  Taxonomies
    0.30578 seconds average (1.22 seconds / 4 examples) ./spec/features/admin/configuration/taxonomies_spec.rb:5
  General Settings
    0.28868 seconds average (0.57737 seconds / 2 examples) ./spec/features/admin/configuration/general_settings_spec.rb:5
  Mail Methods
    0.26415 seconds average (0.26415 seconds / 1 example) ./spec/features/admin/configuration/mail_methods_spec.rb:5

Finished in 37.11 seconds (files took 6.27 seconds to load)
26 examples, 0 failures
```

which is essential to speed up our test suite.
2021-03-09 16:22:46 +01:00
Pau Perez
0e4f9d18d4 Fix browser's download path configuration
The CI build can't find the downloaded file and fails like:

```
2) enterprise fee summaries csv downloads smoke test for generation of report based on permissions when logged in as enterprise user generates file with data for the enterprise
     Failure/Error: sleep 0.1 until downloaded?

     Timeout::Error:
       execution expired
     # ./spec/support/downloads_helper.rb:34:in `sleep'
     # ./spec/support/downloads_helper.rb:34:in `block in wait_for_download'
     # ./spec/support/downloads_helper.rb:33:in `wait_for_download'
     # ./spec/support/downloads_helper.rb:11:in `downloaded_filename'
     # ./engines/order_management/spec/features/order_management/reports/enterprise_fee_summaries_spec.rb:119:in `block (5 levels) in <top (required)>'
     # ./engines/order_management/spec/features/order_management/reports/enterprise_fee_summaries_spec.rb:80:in `block (4 levels) in <top (required)>'
     # ./spec/support/downloads_helper.rb:22:in `with_empty_downloads_folder'
     # ./engines/order_management/spec/features/order_management/reports/enterprise_fee_summaries_spec.rb:80:in `block (3 levels) in <top (required)>'
```
2021-03-09 16:19:27 +01:00
Pau Perez
c61fc25e9f Disable Knapsack only to Github workflow 2021-03-09 16:19:27 +01:00
Pau Perez
1f0b597120 Run tests in a Github workflow
Things to be aware of:

  * Allows manually triggering GH workflow. See:
  https://docs.github.com/en/actions/reference/events-that-trigger-workflows#workflow_dispatch.
  * Installs versions in the yarn.lock and prevents updates to the yarn.lock.
  * Yarn and npm come pre-installed in Github's runner VMs. See
https://docs.github.com/en/actions/guides/building-and-testing-nodejs#installing-dependencies.
  * We use the latest LTS Node version so it can read ES6 syntax `let`.
  * Karma tests require RAILS_ENV. In lib/tasks/karma.rake we default to
  `test` so that means someone else is setting `RAILS_ENV` before that.
  We'll need to find out who so we can avoid this.
  * We run the CI build only on pushes to any branch. This the
  redundancy of all build jobs due to the `push` and `pull_request`
  events. I still don't see what's the exact difference between these
  two events. See:
  https://docs.github.com/en/actions/reference/events-that-trigger-workflows.
2021-03-09 16:18:04 +01:00
Pau Perez
e4c0fa5043 Add Github CI build workflow
based on
https://docs.github.com/en/actions/guides/building-and-testing-ruby#starting-with-the-ruby-workflow-template.

Things worth mentioning:

* ruby/setup-ruby reads `.ruby-version` by default. See:
https://github.com/ruby/setup-ruby#supported-version-syntax
* I chose to run on ubuntu-18.04 because that's what we use in
production. This should reduce potential "it runs on machine but fails
in CI" due to different system libraries versions and such.

We're temporarily running only `spec/queries/` specs because we want it
to finish quickly as we iterate on its configuration.
2021-02-17 12:37:11 +01:00
Luis Ramos
ab6f6c463a Fix problem in dependabot config, yarn is not a valid package-ecosystem, we can try npm 2020-12-08 20:00:19 +00:00
Luis Ramos
7a35fabb22 Move dependendabot config file to .github 2020-12-03 21:32:57 +00:00
Pau Perez
8c1e222788 Upgrade Ruby and Ubuntu to latest in GH action
It was asked for in
https://github.com/openfoodfoundation/openfoodnetwork/pull/6163/ to use
the latest stable Ruby version. It's also better to use Ubuntu's latest
as well.
2020-11-30 09:11:41 +01:00
Pau Pérez Fabregat
4ca930bdad Merge pull request #6163 from openfoodfoundation/luisramos0-patch-2
Add brakeman config
2020-11-30 09:08:32 +01:00
Luis Ramos
c664181266 Update PULL_REQUEST_TEMPLATE.md 2020-10-15 14:39:20 +01:00
Luis Ramos
dbd41e9d31 Use ruby 2.4 as github actions do not support ruby 2.3. 2020-10-13 10:31:26 +01:00
Luis Ramos
87327dcf57 Add brakeman config 2020-10-13 10:31:13 +01:00
Luis Ramos
559af5076d Make the release notes intructions a bit more clear so new contributors make them short 2020-10-08 10:37:39 +01:00
Arun Kumar Mohan
fd0a7971e9 Fix typo in the PR template 2020-09-15 20:30:23 -05:00
Maikel Linke
8be05e94bd Update release issue template 2020-09-11 15:25:24 +10:00
Luis Ramos
b367d4328e Remove spree upgrade section from the PR template ❤️ 2020-08-17 18:28:23 +01:00
Maikel
747be81aec Link to new release template 2020-02-05 15:21:26 +11:00
Maikel
fd124daf50 Add task to notify instance managers of upcoming changes 2020-02-05 14:58:57 +11:00
Maikel Linke
dfa3d40665 Create release task template recognised by Github 2019-11-28 15:58:14 +11:00
Maikel
00c2b95a0e Add issue template for release tasks 2019-11-28 15:53:34 +11:00
Matt-Yorkley
698210c849 Create release-template.md 2019-11-22 14:48:50 +01:00
Sigmund Petersen
c7db1b7fc0 Delete ISSUE_TEMPLATE.md
This ISSUE_TEMPLATE.md file is the old way of handling templates on Github. OFN is now using the new method for handling templates, so this file can be removed. 
This template still comes up as 'Default template' when opening an issue from the Zenhub board. This gives 2 almost equal template choices which is confusing.
2019-09-30 21:18:51 +02:00
Rachel Arnould
fa57d71a23 Merge pull request #4332 from openfoodfoundation/RachL-patch-2
Update story template
2019-09-30 20:06:12 +02:00
Rachel Arnould
375d4fbffd Add workaround item 2019-09-30 11:02:36 +02:00
Rachel Arnould
d604328bfb Update story template 2019-09-26 21:25:01 +02:00
Rachel Arnould
d0c77a8dc4 Update bug template 2019-09-26 21:20:50 +02:00
Danni M
5b880f7bfe Update issue templates
Fixed headings on the story template
2019-02-27 10:41:39 +11:00
Maikel
a36dc13192 Add issue templates for tech debt 2019-02-13 17:26:56 +11:00
Danni M
8ff5f9055b Update issue templates
I've created 3 types of templates based on those in the wiki and the default (bug) issue template. These can be edited or additional ones added at your leisure.

I also added the OFN software instance and version to the bugs template
2019-02-08 16:58:32 +11:00
Maikel
915531acc4 Add section about documentation updates
This should prevent issues like https://github.com/openfoodfoundation/openfoodnetwork/issues/2427.

Also converted comments into HTML syntax so that you don't have to delete them when creating a PR.
2018-07-30 14:44:07 +10:00
Maikel
8ecc786b99 Include bug severity in issue template
And formatted for easier reading and writing.
2018-07-30 14:28:01 +10:00
Matt-Yorkley
056df62359 Add changelog category to PR template 2018-07-11 18:03:45 +01:00
Pau Perez
fed60cf961 Ask devs to tell whether we should test on mobile 2018-06-08 10:01:04 +02:00
Pau Perez
b8d51ae0de Mention screenshot in the issue template
For things like translations it's enough sharing a screenshot when
reporting a bug. See
https://github.com/openfoodfoundation/openfoodnetwork/issues/1999
2017-12-20 10:16:53 +11:00