Commit Graph

279 Commits

Author SHA1 Message Date
Christophe Bliard 8b25e16864 Add rm -f db/structure.sql to reset the test database
When `db/structure.sql` exists, it's used when doing `rails db:migrate`
instead of running the migrations. When switching to a branch with less
migrations, the test database will be created with the
`db/structure.sql` file which contains the migrations of the previous
branch. They should not be there.

To have the correct database structure for tests, the `db/structure.sql`
file must be removed before running `db:migrate`.
2025-11-13 11:35:03 +01:00
Christophe Bliard c17e5a703b Fix some certificate checking issues with openssl 3.6.0
[skip ci]
2025-10-29 14:11:36 +01:00
Oliver Günther 259c1d4f74 Build workflows using the fixed next release branch
This reference is updated through devkit
2025-10-27 11:53:58 +01:00
Christophe Bliard 0108374bd3 Update script/github_pr_errors with better rerun instructions
The script now recommends using the commands from
`docs/development/testing/handling-flaky-tests/README.md` to be closer
to CI conditions.

[skip ci]
2025-10-21 16:26:49 +02:00
Christophe Bliard 04ec392d14 Add check for YAML header syntax in docs README files 2025-10-07 12:21:41 +02:00
Christophe Bliard 90751c5b9e Add check for README.md correct case in docs/ 2025-10-07 12:12:04 +02:00
Cyril Rohr b54931b783 Enable dev branch for scheduled docker builds 2025-09-18 11:18:40 +02:00
Cyril Rohr 8917c92fb5 Fix for matrix format in docker scheduled workflow (#20358) 2025-09-18 11:15:38 +02:00
Cyril Rohr 7ba86234aa Merge pull request #20248 from opf/maintenance/daily-docker-release-builds
Split docker workflow into release and scheduled
2025-09-17 17:01:47 +02:00
Oliver Günther f7e8e9a954 require cgi in github script 2025-09-17 14:22:25 +02:00
Christophe Bliard 4be455ef3b Print Pull Request base branch and SHA
I found it useful to know which branch the PR is based on to run it
locally.

[skip ci]
2025-08-29 11:17:49 +02:00
as-op f449570b42 rename default meeting PDF export
closes https://github.com/opf/openproject/pull/19720#discussion_r2273473849
2025-08-14 12:45:13 +02:00
Andrej Sandorf 0f43548ae7 Merge branch 'dev' into feature/65124-fitko-styling-pdf-export-of-meeting-minutes 2025-08-14 12:38:07 +02:00
as-op 5b5caaa186 [#65994] PDF export of project list
https://community.openproject.org/work_packages/65994
2025-07-31 14:59:03 +02:00
as-op 999e873a31 [#65124] FITKO styling "Föderales IT- Standardisierungsboard" of PDF export of meeting minutes
https://community.openproject.org/work_packages/65124
2025-07-29 16:26:48 +02:00
as-op 32ff7de6af obey rubocop 2025-07-22 14:32:48 +02:00
as-op 7166a79d77 chore(refactoring): move shared and entity-specific code out of models/work_package/pdf_export/ 2025-07-22 14:24:28 +02:00
Kabiru Mwenja b52debb70d Style/ItBlockParameter: Use it block parameter.RuboCopStyle/ItBlockParameter (#19318) 2025-06-26 13:36:49 +03:00
Andrej Sandorf c723673fe9 [#60730] PDF export of meetings (#18714)
* [#60730] PDF export of meeting agenda and/or meeting minutes

https://community.openproject.org/work_packages/60730
2025-06-04 17:15:39 +02:00
Christophe Bliard 975256dea3 Improve anonymization script
- check if parent directory of this script is an OpenProject repository
  suitable to run the command to add the admin user.
- use a variable for the database name in the given instructions to load
  it. It makes it easier to change to an existing database name.

[skip ci]
2025-05-26 16:10:48 +02:00
Henriette Darge b2ca041022 Merge branch 'dev' into merge-release/16.0-20250520034636 2025-05-20 10:43:07 +02:00
Christophe Bliard 387aa29673 Add TZ=UTC to the CI command suggested by github_pr_errors
The CI runs in UTC, so we should use `TZ=UTC` when trying to reproduce
the failure locally.

Co-authored-by: Klaus Zanders <k.zanders@openproject.com>
2025-05-19 11:41:56 +02:00
Henriette Darge f496da2aad Merge release/16.0 into dev 2025-05-16 14:56:25 +02:00
Jan Sandbrink c7768513bd Move success translation to separate key
We do this mainly because we faced an issue with Crowdin, where
the translation didn't work correctly in languages that have a separate
translation for the zero plural case.

Looking at the way we use those translations though, it also makes sense in
general to change the translations like this. Having success as the special case
of zero failures is not quite right, because we also have zero failures if there is
a single warning, but we don't show success in that case. Success is always a separate
branch in a case statement and thus it makes sense to treat it as a separate translation.
2025-05-16 09:51:51 +02:00
OpenProject Actions CI 6e4dc59212 Merge branch 'release/16.0' into dev 2025-05-13 03:46:17 +00:00
Christophe Bliard b762b6e723 Preserve screenshots in bulk_run_rspec
[skip ci]
2025-05-12 15:38:50 +02:00
Christophe Bliard 12725af51d Install OpenProject gems before anonymizing the database
Do it early so that if it fails, no time has been spent anonymizing the
database.

[skip ci]
2025-05-07 18:13:20 +02:00
Christophe Bliard 83cadc7179 [63568] Fix crowdin issue manually until we have a better solution
https://community.openproject.org/wp/63568
2025-04-22 16:07:58 +02:00
Christophe Bliard 612a8bf2cf Disable rubocop Metrics/AbcSize for #parse_args 2025-04-18 10:02:54 +02:00
Christophe Bliard 932fac68f3 Clean up test failure backtrace output
- Remove rspec_retry and retriable lines
- Remove top level lines which are mostly around blocks executing on each spec
- Make the spec file name bold (more visible)
2025-04-18 09:10:43 +02:00
Christophe Bliard 1eeebb72bb Fix rubocop warning
And use Data class to make Report a value object.
2025-04-10 16:15:15 +02:00
Christophe Bliard b751170f61 Use job_id from URL to display errors from given job
When giving a url of the first attempt, the script was displaying the
results of the last attempt. That's probably not the intended behavior.

Now it parses the job_id from the url, and if present it will display
the errors from that job.

Also changed the output to display the instructions to checkout the
correct commit at the end of the script, to make it easier to see.
2025-04-09 12:28:39 +02:00
Andrej Sandorf 94f070b4ac Merge branch 'dev' into feature/61446-pdf-export-of-a-single-work-package-follows-work-package-form-configuration-including-embedded-tables 2025-03-13 09:43:41 +01:00
Christophe Bliard c57544e321 Use -B to reset branch repro_ci_failures in one command
[skip ci]
2025-03-12 17:57:32 +01:00
Andrej Sandorf d509597408 Merge branch 'dev' into feature/61446-pdf-export-of-a-single-work-package-follows-work-package-form-configuration-including-embedded-tables 2025-03-11 08:24:34 +01:00
as-op efeb177ccf update PDF export styles schema validation and docs generator 2025-03-04 16:41:36 +01:00
ulferts d91de29d7c Merge remote-tracking branch 'origin/dev' into rails-7.2 2025-02-27 17:51:34 +01:00
Christophe Bliard 13082c14a1 Simpler instructions to run on same commit as CI 2025-02-19 15:52:04 +01:00
Christophe Bliard 0204e008d6 Fix link, /docs/development/security is valid
The script does not know the redirection rules from data/redirects_docs.yml file from website repository
2025-02-06 09:32:32 +01:00
as-op 5937eb387a obey rubocop 2025-01-30 09:46:24 +01:00
as-op 1e9c16a7f2 bump md-to-pdf to v0.1.5 2025-01-30 09:34:33 +01:00
Christophe Bliard b03438873e Check primer view components versions consistency on commit
So that I'll stop upgrading it in `Gemfile.lock` and not in
`frontend/package.json`. See #17681
2025-01-24 08:58:49 +01:00
Jan Sandbrink c000df32f1 Also check static links for consistency
Previously we only checked internal linking inside the
documentation for consistency. Now there is also a basic
test to see whether links from OpenProject into the documentation
are pointing to a valid page.

I used this opportunity to move the static links into a Yaml file.
This made it easier to load the list of static links for the check
as well and it removed a long data object from the Ruby code.
2025-01-15 16:42:48 +01:00
Oliver Günther 25fc7cd02b Recurring meetings (#15620)
* Prepare basic recurring meeting setup

* Add proof of concept to create schedules

* Add feature flag

* Rework menu

* Pass request to meetings menu

This doesn't help, as the requested url is the turbo frame

* Add filter menu for recurring meetings

* Start primerized create form

* Add recurring meetings to dropdown and dialog

* Add schedule

* Add frequency/iterations form

* Add services

* Recurring meetings menu entry

* Fix setting project

* Template

* add bi-weekly

* Add template sideinfo

* Skip mails when adding participants

* exclude templated meetings

* Add header for templates

* Prevent deletion of meeting template

* Fix breadcrumb

* WIP Add show table and initialization

* Change icon for calendar

* remove unused template

* add template has_one

* meeting form

* Fix creation of recurring

* working edit

* specify end time

* Add header actions

* Add initial recurring meeting frequency label

* Add index page

* Add soft delete and restore for occurrences

* Refine implementation of scheduled meetings using skeletons

* Add template link

* Paginate

* Move init of meeting to recurring

* Add schedule in words

* Add show series action item

* Implement changed show page of occurrence

* Add interval, fewer frequencies

* Add interval to schedule

* Try to add non working days

* Update meetings index to display recurring occurrences correctly

* Update schedule in words

* Fix exception rule

* Fix occurrence for working days

* Hide interval when selecting working_days

* Document show-when-value-selected

* Set interval to 1 when changing to working_days

* Fix dialog

* Adapt to mobile table

* Update type filter

* Rename TypeFilter -> RecurringFilter

* Start date group

* Combined Filter component

* Updated menu

* Update label created by me

* Add validation on end_date > start_date

* Implement sorting through query

* Render all meeting series in the sidebar

* Select my meetings only when href passed

* WIP Add initial specs

* Fix date validation

* Use the correct date formatter in the subtitle

* Add spec for date validation

* Change label to View template

* Add edit series button

* Fix deletion of recurring meetings

* Correctly hide form for end_after options

* Update copy behaviour to never allow recurring copies

* Fix location value in form

* Fix meeting details form

* Add scheduled meetings table

* Replace destroy/restore with actual destroy

* Uniqueness

* Delete with schedule

* Switch to start_time

* Use start_time in schedule

Otherwise, we get time mismatches

* Add helper for time formatting to the current user

* fixup! Delete with schedule

* Move update_start_time to concern

* Delete cancelled meetings when changing schedule

* Allow passing dates directly

* Remove cancelled occurrences when changing schedules

* Limit count_rule until end_date

* Show changed start times for occurrences

* Indent case

* Fix destroy path to include project

* Fix past meetings

* Schedule first occurrence on creation

* Linting

* fixup! Linting

* Autoschedule job

* Add more schedule tests

* Fix project-based destroy

* Redirect to template, not show

* Don't cache user time zone in request store

* Fix forgotten invited where

* fixup! Linting

* Remove default meeting order

* Fix meetings index spec with new ordering

* Fix path

* Convert meeting tab to cuprite

* Fix expectation for meeting tab

* More robust selector on meeting tab

* Change global menu spec

* Add more CRUD specs

* Fix dates and times

* Allow cancellation of scheduled meetings

* Lint

* Reschedule init job when updating schedule

* Fix end date in the form

* Test cancellation

* Extract create spec

* Fix specs

* Add spec when lacking permissions

* Fix cancellation of scheduled meetings

* Render meetings with correct project link

* Remove unused disable

* Remove useless cop disable

* Add contract specs

* Add delete contract spec

* Revert "Add delete contract spec"

This reverts commit 27a517d773.

* Add delete contract spec for meetings itself

* Fix spec

* Hide past cancelled occurrences

* Show different delete labels and messages

* Move to request spec

---------

Co-authored-by: Mir Bhatia <m.bhatia@openproject.com>
2024-12-04 17:12:14 +01:00
Klaus Zanders 80072ea9e8 Update Ruby to version 3.3.6 2024-11-19 11:37:02 +01:00
Andrej Sandorf 50b5f35059 Merge branch 'dev' into feature/45896-generate-pdf-document-from-a-work-package-description 2024-11-04 15:09:53 +01:00
Christophe Bliard 296ebeaa5b Fix small issues in the anonymize-sql-dump script
- Reuse AdminUserSeeder to create the admin user. Previous code did not
  set a valid email, which prevented the user from being saved (That's
  why language could not be set).
- drop the db before creating it, to avoid "database already exists"
  errors.
- Remove owner from ALTER statements in dump file, avoiding "ERROR:
  must be able to SET ROLE " errors when loading the sql file.
2024-10-28 16:07:04 +01:00
Christophe Bliard 32600d7b26 [46007] Update script to anonymize SQL dump
https://community.openproject.org/wp/46007

Changes:
- script recommends to run on the bastion host
- the openproject dev directory can be passed as a second argument
  if it can't be guessed
- more tables are emptied and/or anonymized
- inline sql cleanup script inside the script
- `btree_gist` and `pg_trgm` extensions are always created to prevent
  import error if they're missing
- use long options to auto-document options
2024-10-28 11:41:59 +01:00
as-op b0cb856660 Merge branch 'dev' into feature/45896-generate-pdf-document-from-a-work-package-description
# Conflicts:
#	frontend/src/vendor/ckeditor/ckeditor.js
#	frontend/src/vendor/ckeditor/ckeditor.js.map
2024-09-26 14:27:47 +02:00
Christophe Bliard c071923d92 Limit to first url 2024-09-23 14:32:12 +02:00