Commit Graph

1768 Commits

Author SHA1 Message Date
René Pfeuffer
02616916af Merge with 2.0.0-m3 2019-06-13 11:24:32 +02:00
René Pfeuffer
67a78fd3b2 Fix typo 2019-06-13 10:38:15 +02:00
René Pfeuffer
ffa4625e36 Merge with 2.0.0-m3 2019-06-13 10:06:38 +02:00
Sebastian Sdorra
3c5b7ab535 display error on startup, if previous version is older than 1.60 2019-06-13 09:58:30 +02:00
René Pfeuffer
a14a2060b6 Fix context 2019-06-13 06:41:46 +02:00
René Pfeuffer
4991c2ad31 Merge with 2.0.0-m3 2019-06-13 06:34:52 +02:00
René Pfeuffer
0dda448ac8 Heed peer review 2019-06-13 06:24:35 +02:00
Sebastian Sdorra
5c7ae749c2 create new error module, which displays errors before migration 2019-06-12 18:26:58 +02:00
Sebastian Sdorra
bc7402053a remove outdated error module 2019-06-12 18:25:38 +02:00
Sebastian Sdorra
4c91ef0100 make PluginLoader dependency of MustacheTemplateEngine optional 2019-06-12 17:04:32 +02:00
Sebastian Sdorra
249ee68986 use Arrays.stream instead of Arrays.asList(..).stream() 2019-06-12 14:19:38 +02:00
Sebastian Sdorra
614c61a00c keep select migration strategy in case of an error 2019-06-12 11:36:15 +02:00
Sebastian Sdorra
dd61ec8e0a added favicon to migration wizard pages 2019-06-12 11:00:14 +02:00
Sebastian Sdorra
001dd8eefe listen to restart events in every stage, not only development 2019-06-12 08:29:28 +02:00
René Pfeuffer
046ccfb2a0 Merge with 2.0.0-m3 2019-06-11 15:02:02 +02:00
René Pfeuffer
a6caa03d86 Create migration module only if necessary 2019-06-11 14:34:44 +02:00
René Pfeuffer
7af5608aeb Change target version to 2.0.0 2019-06-11 14:04:47 +02:00
René Pfeuffer
72f3334afe Merge with 2.0.0-m3 2019-06-11 13:55:43 +02:00
René Pfeuffer
a456dd5e42 Check for null values 2019-06-11 13:39:14 +02:00
René Pfeuffer
802fb3e0cf Use manually entered namespace and name 2019-06-11 13:10:31 +02:00
René Pfeuffer
fdb8143b76 Validate new namespace and name on migration 2019-06-11 10:27:21 +02:00
René Pfeuffer
df9a3c12dd First step to make name and namespace editable in migration 2019-06-07 14:16:23 +02:00
René Pfeuffer
70de4d7292 Organize imports 2019-06-07 13:59:50 +02:00
René Pfeuffer
e5809a6350 Sort repositories by type and name 2019-06-07 13:59:31 +02:00
René Pfeuffer
8a6b57e06c Add new migration strategies "delete" and "ignore" 2019-06-07 13:52:54 +02:00
René Pfeuffer
25bc48e349 Merge with 2.0.0-m3 2019-06-06 15:44:57 +02:00
René Pfeuffer
748043f537 Describe different migration strategies 2019-06-06 12:52:23 +02:00
René Pfeuffer
ec538039f9 Cleanup 2019-06-06 12:47:32 +02:00
René Pfeuffer
1bcc150cb9 Remove function creep 2019-06-06 11:15:51 +02:00
René Pfeuffer
77a1ad50fe Refresh repository dao after repository.xml file was renamed
Without this, the XmlRepositoryDAO will be initialized at a time
where there is no repository-paths.xml file. Therefore the dao cannot
initialize with the existing repositories whose paths are kept in
repositories.xml at that time.

In this commit we trigger a refresh after the file was renamed, so
that the PathBasedRepositoryLocationResolver can read the moved
repository-paths.xml file and all repositories will be found.
2019-06-06 10:45:56 +02:00
René Pfeuffer
b26b702930 Merge with 2.0.0-m3 2019-06-06 09:49:38 +02:00
René Pfeuffer
575a03521f Fix group v1 migration with empty group database file 2019-06-06 08:41:38 +02:00
Sebastian Sdorra
3c373a4c4d replace QuartzScheduler with a more lightweight scheduler
The new scheduler is based on the cron-utils package and uses the same cron syntax as quartz.
CronScheduler was mainly introduced, because of a ClassLoader leak with the old Quartz implementation.
The leak comes from shiros use of InheriatableThreadLocal in combination with the WorkerThreads of Quartz.
CronScheduler uses a ThreadFactory which clears the Shiro context before a new Thread is created (see CronThreadFactory).
2019-06-05 16:15:06 +02:00
Sebastian Sdorra
2b64a49e11 recreate the EventBus on restart to avoid classloader leaks 2019-06-05 16:10:15 +02:00
Sebastian Sdorra
73dc0d0544 clear ResteasyProviderFactory and RuntimeDelegate during restart
This change is required, because some cachings of resteasy are not cleared by removing them from ServletContext.
Some classes use static or ThreadLocals, which are causing a ClassLoader leak.
However this change will clear those caches.
2019-06-05 16:09:01 +02:00
Sebastian Sdorra
1d7f982951 remove EventBus registration, because there is no subscribe 2019-06-05 16:05:01 +02:00
René Pfeuffer
67f731c432 Heed sonar hints 2019-06-05 15:39:36 +02:00
René Pfeuffer
b274952fa9 Create explicit method to create new repository locations 2019-06-05 14:27:35 +02:00
René Pfeuffer
c7875e7f78 Style pages 2019-06-05 11:52:36 +02:00
René Pfeuffer
9a1d80327e Delete old repository data directories for inline 2019-06-05 10:24:52 +02:00
René Pfeuffer
e52518a12b Cleanup
- Mark PathBasedRepositoryLocationResolver as singleton so that other
  users will get the same instance and will not overwrite the paths
  set by migration.
- Set path kept by InlineMigrationStrategy in location resolver to
  store the path.
- Add logging
- Add type of repository to migration web page
2019-06-05 08:21:37 +02:00
René Pfeuffer
b253cd110d Initial migration servlet 2019-06-04 16:37:53 +02:00
René Pfeuffer
da4f3e6691 Resolve config files via resolve method of context provider 2019-06-03 16:02:04 +02:00
René Pfeuffer
7c50ad07ec Extract common code 2019-06-03 15:24:19 +02:00
René Pfeuffer
0be816dd28 Extract properties from users and groups in v1 into own file 2019-06-03 14:22:57 +02:00
Sebastian Sdorra
3b3ddd8fb0 Merged in bugfix/repo_permissions_without_admin (pull request #258)
Fix bug for repository owners without global role permission
2019-06-03 13:56:11 +00:00
Sebastian Sdorra
3664d69713 Merged in feature/migrate_user_v1 (pull request #254)
migrate user v1
2019-06-03 13:25:19 +00:00
René Pfeuffer
6244713970 Move constant to interface 2019-06-03 13:47:05 +02:00
René Pfeuffer
a970404717 Move migration of admin flags to own update step 2019-06-03 11:38:42 +02:00
René Pfeuffer
218937be19 Add group migration 2019-06-03 10:39:25 +02:00