Commit Graph

395 Commits

Author SHA1 Message Date
Eduard Heimbuch
049b5ba54c Add CLI commands for global permission management (#2091)
Add CLI commands for permission management for users and groups.

Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-07-21 09:56:47 +02:00
René Pfeuffer
3b4b1a1767 Add cli commands to modify repository permissions (#2090)
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-07-20 09:17:14 +02:00
Eduard Heimbuch
fc28da90b3 Enable plugin management via CLI (#2087)
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-07-19 09:02:00 +02:00
Eduard Heimbuch
67c083ee54 Reduce code smells (#2089)
Reduce code smells found by deepsource.io. We focused on the low-hanging fruits and not breaking any api.
2022-07-15 15:33:37 +02:00
René Pfeuffer
f61d0c113f Always encrypt password (#2085)
First, we make "encryptPassword" in the PasswordService
idempotent, so that the method will not change the password
when the method is called with an already encrypted string.
Then, in the user manager, we will always call this method
to encrypt the password, if this is not already the case.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-07-15 15:02:52 +02:00
René Pfeuffer
058230b6a7 Adjust changelog for release 2.37.2 2022-07-13 10:11:45 +02:00
René Pfeuffer
d7943a0551 Fix plugin wizard for foreign languages (#2086)
This fixes the plugin wizard, that throws a NullPointerException for other languages then Englisch or German.
2022-07-13 09:28:56 +02:00
Konstantin Schaper
fc2a40cab5 Fix users not being editable (#2084)
Since 2.34.0, users could not be edited. This pull request fixes the issue and adds unit tests.
2022-07-12 10:45:05 +02:00
Florian Scholdei
f3f19426c8 Unify password validation (#2077)
Passwords should be checked when created or changed in the frontend just as they are in the backend for REST and CLI.
Also extend the password validation to allow upto 1024 characters instead of 32.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-07-07 11:19:51 +02:00
Konstantin Schaper
3aa6e95018 Adjust changelog for release 2.37.0 2022-06-28 14:17:18 +02:00
Eduard Heimbuch
1240905008 Revert "Show dedicated Notfound page for invalid routes (#2070)"
This reverts commit ae8f3ee346cb8a3acf6637f501f8e6b68456082c.
2022-06-28 13:13:11 +02:00
René Pfeuffer
b0b2375f78 Mirror LFS files for git (#2075)
If a mirrored git repository uses LFS, SCM-Manager will now also load the binaries, so that the mirrored repository can be used without missing LFS files.
2022-06-24 11:55:36 +02:00
Konstantin Schaper
84402b9722 allow card columns to omit the link (#2076)
The landing-page-plugin is using the CardColumnSmall component from ui-components to display event as tiles. Most events have a link, but some, like the RepositoryDeletedEvent do not. For a better UX it is therefore necessary, to have a CardColumnSmall that is not internally wrapped in a link.
2022-06-23 11:52:21 +02:00
Phil-Ah
71f9a5a26b Enhance descriptions to differentiate between dumps with and w/o metadata. (#2074)
Users should easily understand which kind of import they should choose depending on their dump-file. The export and import with metadata is not experimental any longer. Labels and help text should be short and concise.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-06-22 13:21:37 +02:00
Konstantin Schaper
84f220e5b2 Replace lerna with turborepo (#2073)
This change allows our ui libraries to be built separately. It is therefore to utilize different build tools for individual projects, as well as using build caches for the local build.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
2022-06-22 11:49:26 +02:00
Eduard Heimbuch
8b5347b251 Prevent corrupt lfs files during transfer (#2068)
Validate lfs file checksum to ensure that the file was transferred successfully. If an error occurs, the blob will be deleted to prevent corrupt files inside the storage.
2022-06-21 16:31:34 +02:00
Eduard Heimbuch
e1196ac6a0 Show dedicated Notfound page for invalid routes (#2070) 2022-06-20 17:49:41 +02:00
Matthias Thieroff
becac01096 Adjust changelog for release 2.36.0 2022-06-13 11:40:56 +02:00
René Pfeuffer
32dad5ffbf Do not close hg context for diff as string (#2067)
Normally, all resources (like the hg process) will be released after
the stream of the diff. But this may lead to errors, when
DiffCommandBuilder#getContent is used and other commands are used
afterwards.

So with this we introduce a new interface method in the DiffCommand
that can be implemented without closing resources. This method is
used for the computation of the diff as string.

We use this to distinguish between the computation of diffs as a
stream like in rest calls, and the computation as a single string
result that may we followed by other commands using the same context.
2022-06-13 08:19:28 +02:00
René Pfeuffer
19218c7237 Add wget to fix docker health check (#2066)
Installs the command wget in the debian docker container, so that the health check can run.
2022-06-09 22:38:38 +02:00
Phil-Ah
3bb3119faf Feedback button does not mask warp menu in EcoSystem (#2062)
The feedback button overlaps the warp menu when the SCM-Manager is used as a dogu in a Cloudogu EcoSystem on small screens. The default position is changed to avoid masking the warp menu. The z-index of the feedback button is reduced to avoid masking the open warp menu.
The DOM-sequence is changed to ensure users with keyboard navigation can access important parts of the page before the feedback button.
2022-06-09 10:14:15 +02:00
Phil-Ah
6b276afb3b Icons in buttons are encapsulated in span to avoid text-decoration (#2065)
The is-text css-class adds an underline to text in buttons. To avoid icons from receiving this underline they will be encapsulated in a span.
2022-06-09 07:49:49 +02:00
Florian Scholdei
5267a0556a Remove branch validation on overview (#2064)
Branches that have already been checked as valid should not be displayed as faulty on branch overview.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-06-09 07:30:46 +02:00
Florian Scholdei
d1c355b213 Calling search results without parameters (#2056)
Calling search results without parameters leads to "Cannot read properties of undefined (reading 'length')" error. It does not matter which search mask is called.
2022-06-08 13:43:45 +02:00
Florian Scholdei
1f5ebc04d6 Arrow icon of secondary navigation is inconsistent (#2060)
The toggle icon in the secondary navigation points in the wrong direction.
In the changeset and code view, the current status is displayed with the icon. This should also be the case for this component.
2022-06-08 13:36:16 +02:00
Florian Scholdei
03a87be521 Remove superfluous user theme link properties (#2058)
By definition, the NavItem has an icon, which can/should not be rendered. Depending on the browser, only a small margin is visible. The icon is therefore removed. The same applies to the hover-title, which would only be displayed for collapsed menus, but does not apply to submenu entries.
2022-06-08 13:09:26 +02:00
Florian Scholdei
abaf5c8fba Missing profile link in footer (#2057)
Currently there is a link to Theme with the name Profile in the footer. Another link should be added which is called Theme and points to Theme. In addition, Profile should now point to Information.
2022-06-08 11:00:03 +02:00
Eduard Heimbuch
084fe9e2ae Add api to overwrite content type resolver (#2051)
Introduce content type resolver extension to provide
custom content types for specific file extensions.
2022-06-07 11:02:56 +02:00
Konstantin Schaper
5f9db5cf4d New diff view props for controlling hunk/line interaction (#2047)
Move hunk styling from review plugin to core and make reusable
2022-06-02 13:25:53 +02:00
Konstantin Schaper
95cd15e57d Adjust changelog for release 2.35.0 2022-06-02 09:19:50 +02:00
Phil-Ah
b1e8bb7f98 Differentiate focused buttons in confirmation dialog (#2050)
Users need to understand which option they are choosing in an confirmation dialog. Buttons for primary and secondary actions should be visually discernible when one is focused/hovered.
The changes remove default-styling from buttons in confirmation dialogues. The style is set in the element using this dialog to better visually separate the primary and secondary action.

Resolves #2049
2022-06-01 18:10:42 +02:00
René Pfeuffer
c5b4dcb19e Fix character encoding in diffs (#2046)
Fixes encodings in diff results. The is especially necessary for Windows systems.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-06-01 09:32:12 +02:00
Konstantin Schaper
1b18191c57 Add plugin wizard initialization step (#2045)
Adds a new initialization step after setting up the initial administration account that allows administrators to initialize the instance with a selection of plugin sets.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
2022-05-31 15:15:30 +02:00
Florian Scholdei
6216945f0d Notify user about results of manually executed health check (#2044)
When manually starting health checks, the user should always receive a notification about the status, whether successful or not.
2022-05-25 09:30:45 +02:00
Eduard Heimbuch
8f0facf394 Order repo info extensions (#2041)
Set order priority for repository information extensions.
Also add new annotation to set custom resource bundles for cli commands.
2022-05-23 15:06:08 +02:00
René Pfeuffer
303f8daaf9 Fix NPE on synchronous repository export (#2040)
When a repository was exported synchronously with metadata,
the server ran into a NullPointerException. The was because
the resource tried to write an export result to a stored
export item, that does not exist for synchronous exports.

This simply removes this call.
2022-05-19 08:36:25 +02:00
René Pfeuffer
256106545d Fix character encoding for basic authentication (#2038)
Regarding to RFC 7617 (see
https://datatracker.ietf.org/doc/html/rfc7617), the default
encoding for basic auth strings should be UTF-8.
2022-05-18 09:44:38 +02:00
René Pfeuffer
9bfb074805 Use Java 11 as compile version (#2033)
This sets Java 11 for compilation. To do so, this has to use the gradle smp plugin with the pull request scm-manager/gradle-smp-plugin#16. If the smp plugin is not released as version 0.10.4, the version has to be corrected for org.scm-manager.smpin the various build.gradle files.

It might be necessary to delete all build folders when switching between Java 8 and Java 11:

rm -rf build */build scm-plugins/*/build

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-18 08:56:41 +02:00
Florian Scholdei
8448a3520b Correct resource for branch details (#2037)
The two BranchDetails resource endpoints were shown twice in the Rest Api documentation. Once each without path prefix.
This pr removes the duplicate endpoints.
2022-05-17 16:34:25 +02:00
Eduard Heimbuch
6a7dc8253d Fix diff command content (#2036)
Fix diff command getContent which returned always empty string because the results were ignored.
2022-05-13 17:59:33 +02:00
René Pfeuffer
e75756eae5 Adjust changelog for release 2.34.0 2022-05-13 12:03:45 +02:00
Konstantin Schaper
264e80f47c Improve visibility and contrast for focused line in syntax highlighting (#2031)
The styling for the focused line (e.g. permalink) in the source view with syntax highlighting was hard-coded and did not meet accessibility standards, especially in high-contrast mode. This pull request introduces two new css variables that are fine-tuned to meet contrast requirements for each theme. An additional "bar" with specifically high contrast has been added to the left of the focused line, because it was impossible to find one background color that would provide sufficient contrast with both the page background as well as all highlighting colors.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-10 11:17:10 +02:00
Eduard Heimbuch
4fdd6f4d0c Require password for creation of internal user (#2027) 2022-05-09 09:41:59 +02:00
Eduard Heimbuch
826f34f821 Show confirmation modal before deleting keys (#2028)
Show confirmation modal before deleting public keys and api keys.
2022-05-09 09:26:52 +02:00
Phil-Ah
7676d709bb Change CSS definition of padding to better confer to standard (#2023)
"padding: inherit;" does not take any further arguments.
Further definitions will be moved to separate lines to produce valid CSS.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-09 09:16:26 +02:00
Florian Scholdei
4c94235414 Remove card-table action area (#2016)
In .card-tables there was an action area that had a darker background. Now this area only contains the delete action. Also, users mistakenly assumed that the hovered area could be clicked. It has therefore been removed and the icons themselves have received a hover effect.
2022-05-06 10:01:01 +02:00
Phil-Ah
6cf8afac01 Fix jumping and broken tool tips (#2026)
The way the tool tip implements passed class names is mistakable. The passed classes broke the tool tip and are removed. The same issue led to a broken tool tip for the code search and is fixed as well. Unnecessary code is removed from help.

Fixes #2025
2022-05-05 21:51:20 +02:00
René Pfeuffer
a5d1901660 Fix ui dependencies (#2024)
Due to the dependencies to ui-syntaxhighlighting and ui-text
from ui-components, these new packages have to be deployed on
npm if ui-components is used in version 2.32.0 or later. Because
these packages shall not be deployed on npm, this changes the
dependencies to dev dependencies in ui-components.
2022-05-04 15:15:35 +02:00
Sebastian Sdorra
af2cdfb739 Docker multi-arch builds (#2021)
Replaces the current docker build with a multi arch build powered by buildx.
The new build creates two scm-manager docker image variants.
One based on alpine which uses the openjdk distribution and the other based on debian and eclipse temurin:

scmmanager/scm-manager:<version>-alpine
- linux/amd64
- linux/arm64
scmmanager/scm-manager:<version>-debian
- linux/amd64
- linux/arm64
- linux/arm/v7
scmmanager/scm-manager:<version>
- linux/amd64 alpine based
- linux/arm64 alpine based
- linux/arm/v7 debian based
scmmanager/scm-manager:latest
- linux/amd64 alpine based
- linux/arm64 alpine based
- linux/arm/v7 debian based

The development build produces only a single amd64 image at cloudogu/scm-manager with a snapshot version.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-05-04 14:38:31 +02:00
Eduard Heimbuch
3853084106 Add action bar menu (#2015)
Create action bar overflow menu to handle increasing number of file actions.
2022-05-04 09:39:25 +02:00