Commit Graph

119 Commits

Author SHA1 Message Date
Eduard Heimbuch
dd0975b49a Feature/mirror (#1683)
Add mirror command and extension points.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2021-06-04 14:05:47 +02:00
Konstantin Schaper
cb6806a36f fix repository form switcher button label translations for plugins 2021-05-17 09:13:33 +02:00
Sebastian Sdorra
8e16fa11c9 Add extension point for repository creators (#1657)
Adds an extension point for repository creator such as repository create, repository import or repository mirror.
2021-05-14 09:15:35 +02:00
Sebastian Sdorra
de28cac4ab Fix flickering form elements on repository initialization (#1645) 2021-05-05 07:20:36 +02:00
Florian Scholdei
84ba05bab8 Correct positioning and coloring of button groups in modals (#1612) 2021-04-07 13:04:30 +02:00
Eduard Heimbuch
22a0362892 Feature/unicode groupname validation (#1600)
Allow all UTF-8 characters except URL identifiers as user and group names and for namespaces.

Fixes #1513

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-03-25 09:59:23 +01:00
René Pfeuffer
d8092bec71 Add "links" collection to index resources, again (#1594)
With the introduction of react-query, it looks like the indexResources attribute of the repository initialization extension properties lost its collection links, which was replaces by _links. In this fix we copy this collection, so that the template plugin still can use links.

Fixes #1593
2021-03-17 09:36:25 +01:00
Eduard Heimbuch
db2ce98721 Feature/import export encryption (#1533)
Add option to encrypt repository exports with a password and add possibility to decrypt them on repository import. Also make the repository export asynchronous. This implies that the repository export will be created on the server and can be downloaded multiple times. The repository export will be deleted automatically 10 days after creation.
2021-02-25 13:01:03 +01:00
Konstantin Schaper
3a8d031ed5 Introduce stale while revalidate pattern (#1555)
This Improves the frontend performance with stale while
revalidate pattern.

There are noticeable performance problems in the frontend that
needed addressing. While implementing the stale-while-revalidate
pattern to display cached responses while re-fetching up-to-date
data in the background, in the same vein we used the opportunity
to remove legacy code involving redux as much as possible,
cleaned up many components and converted them to functional
react components.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2021-02-24 08:17:40 +01:00
Eduard Heimbuch
1e1b73ace5 Feature/import navigation lock (#1536)
Use navigation lock on repository import to prevent that the current user accidentally leaves the page and aborts the running import.
2021-02-16 11:35:06 +01:00
Eduard Heimbuch
d91c71ace1 Add the repository import and export with metadata for Subversion repositories (#1501)
* Add store exporter to collect the repository metadata
* Add EnvironmentInformationXmlGenerator
* Collect export data and put into compressed tar archive output stream
* Create full repository export endpoint.
* Add full repository export to ui
* Ignore irrelevant files from config store directory
* write metadata stores to file since a baos could teardown the server memory
* Migrate store name for git lfs files (#1504)

Changes the directory name for the git LFS blob store by
removing the repository id from the store name.

This is necessary for im- and exports of lfs blob stores,
because the original name had the repository id as a part
of it and therefore the old store would not be found when
the repository is imported with another id.

Existing blob files will be moved to the new store location
by an update step.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>

* Introduce util for migrations (#1505)

With this util it is more simple to rename
or delete stores.

* Rename files in export

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-01-28 11:40:35 +01:00
Florian Scholdei
a35c227a55 Repository contact information is editable
The RepositoryForm is called within the creation and editing of a repository. It contains a validator, which is supposed to check, among other things, whether the namespace and name were specified when the repository is created. This information is missing in the edit mode. I therefore initially set valid.namespaceAndName to true. It is changed to false again before the creation mask becomes active.
2021-01-28 11:31:16 +01:00
Eduard Heimbuch
e8dd7dc68d Add compress checkbox to ImportFromBundleForm 2020-12-10 14:46:47 +01:00
Eduard Heimbuch
ed940d5f23 Create form for import from bundle 2020-12-10 13:58:47 +01:00
Sebastian Sdorra
d0c84dec69 Pass down the repository type, because the RepositoryDto needs it for validation 2020-12-03 10:44:23 +01:00
Eduard Heimbuch
715c76e2f4 set repository name suggestion in import form just at leaving the input field 2020-12-03 09:38:23 +01:00
Eduard Heimbuch
09c13100dd cleanup 2020-12-03 08:54:56 +01:00
Eduard Heimbuch
60cdc6f8cf Merge branch 'develop' into feature/import_git_from_url 2020-12-02 14:39:45 +01:00
Eduard Heimbuch
dffe466405 split AddRepository component into two separate components to simplify the state handling 2020-12-02 13:26:31 +01:00
Eduard Heimbuch
7db33d2e65 Mind review findings 2020-12-02 10:47:48 +01:00
Eduard Heimbuch
f68370cfd4 cleanup ui 2020-12-01 15:17:06 +01:00
Konstantin Schaper
9ec8b4efac fix review findings 2020-12-01 15:16:55 +01:00
Eduard Heimbuch
3f808d78fb cleanup 2020-12-01 11:50:07 +01:00
Eduard Heimbuch
6a93a198e8 fix form validation after refactoring 2020-12-01 11:35:49 +01:00
Eduard Heimbuch
af9f6ab629 refactor UI 2020-12-01 08:53:56 +01:00
Konstantin Schaper
8986e3d378 Merge branch 'develop' into feature/manage-tags
# Conflicts:
#	scm-plugins/scm-hg-plugin/src/main/java/sonia/scm/repository/spi/HgRepositoryServiceProvider.java
2020-11-30 14:18:05 +01:00
Eduard Heimbuch
6f2dda4fe4 refactor frontend components 2020-11-30 11:32:11 +01:00
Konstantin Schaper
032982857f clean up code, fix bugs, improve ux, add docs 2020-11-30 10:01:21 +01:00
Konstantin Schaper
dc4607935b improve ux 2020-11-27 10:48:56 +01:00
Konstantin Schaper
7895da0a2a implement frontend for creating tags 2020-11-27 08:49:10 +01:00
Eduard Heimbuch
76cf2d801a Merge branch 'develop' into feature/import_git_from_url 2020-11-26 14:01:19 +01:00
Eduard Heimbuch
a7c4d41e4e improve error handling on repository import if the credentials were wrong or missing 2020-11-26 12:57:40 +01:00
Eduard Heimbuch
0682118879 Cleanup 2020-11-26 11:31:33 +01:00
Eduard Heimbuch
d1dc2e04e2 refactor UI 2020-11-25 15:08:30 +01:00
Eduard Heimbuch
4e1e51d1b9 Add Loading Spinner while waiting for repository import 2020-11-25 14:01:45 +01:00
Eduard Heimbuch
10ed51733c Integrate import repository function into ui 2020-11-25 11:23:43 +01:00
Eduard Heimbuch
ff2b4d8acd refactor RepositoryForm.tsx to FC 2020-11-25 09:40:10 +01:00
René Pfeuffer
63c86cf9e5 Fix formatting 2020-11-24 13:40:23 +01:00
Eduard Heimbuch
237c48356a Improve ux on overview 2020-11-24 13:22:13 +01:00
Eduard Heimbuch
6343eddeb3 fix annoying react error "missing unique key prop" 2020-11-17 08:34:27 +01:00
Florian Scholdei
b7d3a17ee5 Merge with upstream 2020-09-21 10:50:52 +02:00
Florian Scholdei
a1ea6ea62e Set default branch in branch selector if nothing is selected 2020-09-21 09:58:49 +02:00
René Pfeuffer
b1c0ec15a7 Heed peer review remarks 2020-09-18 16:02:20 +02:00
René Pfeuffer
c679c064f3 Add settings icon to namespace group header 2020-09-18 14:31:45 +02:00
René Pfeuffer
94105f7766 Validate namespaces correctly 2020-09-10 10:18:00 +02:00
René Pfeuffer
f2e011a2e5 Let namespace header be a link 2020-09-10 10:17:29 +02:00
Sebastian Sdorra
e64ddccb13 Rename creationContext to contextEntries 2020-09-10 09:23:32 +02:00
Eduard Heimbuch
0abe47f666 simplify core api 2020-09-09 10:17:47 +02:00
Eduard Heimbuch
e6c31ec0e1 add indexResources to extensionProps 2020-09-07 15:40:14 +02:00
Konstantin Schaper
ee12e5ceec add new extension point for repository initialization 2020-09-07 13:12:10 +02:00