Commit Graph

12515 Commits

Author SHA1 Message Date
Konstantin Schaper
16fb69738f Adjust changelog for release 2.39.0 2022-09-14 15:31:10 +02:00
René Pfeuffer
35578985c9 Reduce the output from the realm trace log (#2121)
This reduces the amount of lines logged with log level
'trace' from the DefaultRealm. This is done by concatenating
the single permissions and roles in a single line.

A log with the new layout looks something like this (the [...]
would list all further permissions in the real log output):

TRACE sonia.scm.security.DefaultRealm - authorization summary:
username   : scmadmin
roles      : user
scope      :
permissions: repository:*:ChTG0dBeUH , group:autocomplete , repository:*:[...]

In contrast, with the old layout it looks like this:

TRACE sonia.scm.security.DefaultRealm - authorization summary:
username   : scmadmin
roles      :
 - user
scope      :
permissions:
 - repository:*:ChTG0dBeUH
 - group:autocomplete
 - repository:*:5DTFWwBTiY
 - repository:*:ASTGBIVz11D
 - user:changeApiKeys:scmadmin
 - user:changePassword:scmadmin
 - user:changePublicKeys:scmadmin
 - user:readAuthorizedKeys,writeAuthorizedKeys:scmadmin
 - *
 - user:read:scmadmin
 - user:autocomplete
 - repository:*:4rT7VPex5J
2022-09-14 14:35:35 +02:00
René Pfeuffer
e17934ae09 Fix lazy loading in the source view (#2120)
The lazy loading feature implemented for git was broken,
because the repeated usage in the BrowserResultCollapser
has overwritten the request in the command. Therefore
the command could no longer update the cache in the
BrowseCommandBuilder.

To fix this, we now use a browse command factory (represented
by a simple supplier) that will create a dedicated command
implementation for each request issued in the collapser.
2022-09-14 14:28:40 +02:00
Konstantin Schaper
0170760082 Add depcheck preset (#2119)
Add a preset for the depcheck library that is applied to all projects in scm-ui. Some minor dependency issues were discovered and resolved along the way. Some features of depcheck did not work correctly or were missing, which is why the configuration file is a bit more verbose than desired.
2022-09-14 13:31:50 +02:00
Matthias Thieroff
54b7b96ac8 Fix encoding in global search (#2116)
Using plus symbol in global search led to a space in the query parameter of the URL. We now encode the query string properly in global search and additionally fixed the expert search documentation.
2022-09-14 08:05:31 +02:00
Eduard Heimbuch
30e26b8d4e Keep search context for search results pagination (#2115) 2022-09-09 09:41:37 +02:00
Konstantin Schaper
61676c6dd4 Handle missing encoding of square brackets in filenames (#2117)
Due to unexpected and largely unchangeable behavior by both react-router and the browser, square brackets are not correctly encoded in the url when clicking a file link in the source view where the filename contains either of these characters. The source view then tries to use the useSources hook to get the file content but fails, because the path param for the file path it gets from the url has unencoded square brackets in them which are illegal in urls except for declaring IPv6 addresses. We have created a catch for exactly this scenario at the latest possible point before the actual http request is fired, which is in the useSources hook. It seems like the square brackets are the only affected special characters so we force encoding on them specifically. Only the path portion of the URL is checked so the host portion of the url may still contain unencoded square brackets which are left untouched.
2022-09-09 08:19:04 +02:00
Eduard Heimbuch
9ea76073b2 Show warning for search requests without valid search context (#2114) 2022-09-06 18:24:34 +02:00
Eduard Heimbuch
6f2be13197 Introduce NoOpIndexReader to handle missing indexes without errors (#2113)
We stumbled upon errors accessing index from plugins which were not yet initialized. To prevent this errors we use our own No-Op IndexReader for missing indices.
2022-09-06 10:06:17 +02:00
Eduard Heimbuch
1d2e0cefb6 Resolve ingress port properly 2022-09-06 08:31:47 +02:00
René Pfeuffer
c2428a6df5 Add a chapter for manual plugin installation (#2112) 2022-09-02 11:04:28 +02:00
René Pfeuffer
e0a56a1369 Implement commit search features for git (#2111)
Implements the required features for the commit search plugin for git.
2022-09-01 15:31:33 +02:00
Eduard Heimbuch
d7bf14518a Update helm template for ingress to use newer k8s networking api 2022-08-30 15:16:02 +02:00
Eduard Heimbuch
f672e175b5 Improve docker healthcheck (#2110)
The new docker health check respects the jetty configuration and uses the configured port and context path.
It supports ssl listeners and follows redirects.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
2022-08-30 11:02:21 +02:00
Eduard Heimbuch
6055ba145f Remove cache for ChangesetsCommand since we do not want to use stale data here 2022-08-29 16:53:22 +02:00
Konstantin Schaper
4b92959b9c Revert introduction of tailwind (#2109)
After many days invested in making tailwind work in the SCM-Manager environment as well as a long discussion last week, we have decided not to move further with tailwind, but still keep adding new, independent modules for frontend components. Tailwind simply overcomplicated our build pipeline because bulma was already part of the api and the two were incompatible on several occasions. Styling will continue to be guided by bulma and all parts related to tailwind are removed. We therefore continue the trend of focusing on improving our existing stack rather than adding further complexity.
2022-08-29 10:23:40 +02:00
Matthias Thieroff
3e236fe5ac Optimize global search result view (#2107)
Enhance search result view by sorting the categories after their translation (repositories will still be sticky on top). Further disable categories with no search results and be more explicit with the text displayed if no search results were found.
2022-08-18 09:04:45 +02:00
Konstantin Schaper
56ace2811b Implement reindex mechanism for search (#2104)
Adds a new button to repository settings to allow users to manually delete and re-create search indices. The actual re-indexing is happening in plugins that subscribe to the newly created event.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-08-17 13:22:34 +02:00
Eduard Heimbuch
e590a3ee68 Add changesets command to enable commit search (#2106)
Introduce changesets command to find all changesets for a single repository. This is required to index all changesets for the commit search.
2022-08-17 12:44:59 +02:00
Jan
f78524009e Fixed wrong indentation of extraVolumes and extraVolumeMounts (#2103) 2022-08-16 13:50:35 +02:00
Florian Scholdei
279c3e2b75 Fix broken compare view due to missing export (#2105) 2022-08-16 13:03:21 +02:00
CES Marvin
6224d4a16d Prepare for next development iteration 2022-08-09 07:59:32 +00:00
CES Marvin
1f5d5a43c5 Release version 2.38.1 2.38.1 2022-08-09 07:17:59 +00:00
Konstantin Schaper
7691402659 Adjust changelog for release 2.38.1 2022-08-09 09:11:28 +02:00
Eduard Heimbuch
c430ce60c5 Update homebrew tap also for hotfix releases 2022-08-08 18:32:21 +02:00
Konstantin Schaper
8ac7095412 Fix dependency issue 2022-08-08 16:15:38 +02:00
CES Marvin
f796d867a4 Prepare for next development iteration 2022-08-08 13:46:06 +00:00
CES Marvin
b64e764574 Release version 2.38.0 2.38.0 2022-08-08 12:48:25 +00:00
Konstantin Schaper
d1deceeb1d Adjust changelog for release 2.38.0 2022-08-08 14:41:33 +02:00
Eduard Heimbuch
7017d04a48 Update homebrew tap also for hotfix releases 2022-08-08 12:41:41 +02:00
Konstantin Schaper
dcd9664e9f Addition to #2098: only allow search with two or more characters 2022-08-08 10:51:02 +02:00
Eduard Heimbuch
e48deb8d1d Improve omnisearch 2022-08-08 08:47:57 +02:00
Konstantin Schaper
1d9cd12821 Revert changes to production environment introduced in #2098 2022-08-05 10:53:06 +02:00
Eduard Heimbuch
550ebefd93 Context sensitive search (#2102)
Extend global search to search context-sensitive in repositories and namespaces.
2022-08-04 12:14:46 +02:00
Florian Scholdei
6c82142643 Fix paging for too large page numbers (#2097)
On some pages with pagination, the user is led to believe that no data is available if a page with page number which it too high is accessed. However, since we show the page number to the outside and the user can access it through the URL, we must also provide appropriate handling. The underlying data can change and so can the number of pages. Now, if a bookmark was saved from an older version, the link should still lead to a destination.
2022-08-02 10:30:07 +02:00
Konstantin Schaper
27dbcbf28d Integrate tailwind css and create new button library (#2098)
Introduce tailwind as new frontend styling library to replace bulma in the longer run. Also create the first new ui library `ui-buttons` which will be the new standard for buttons ins SCM-Manager. In this library we reconsidered which types of buttons should be used to create a clean and consistent ui.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-08-02 08:39:37 +02:00
Florian Scholdei
09beb8cd3b Add api doc for cli and more (#2101) 2022-08-01 21:42:21 +02:00
Eduard Heimbuch
4e220b5254 Implement more plugin list commands (#2094)
Implement commands to list available plugins and installed plugins separately.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2022-07-28 14:30:55 +02:00
Florian Scholdei
5aad824ebd Cleaned up group translations (#2096)
In the locates of groups are some definitions which do not correspond with the current state and harm the clarity within the file. In addition, translations that are no longer used have been removed.
2022-07-27 13:42:07 +02:00
René Pfeuffer
67a9dce7e6 Add namespace cli commands (#2093)
Adds the CLI commands that are available to handle repository permissions on repositories for namespaces.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-07-26 09:58:00 +02:00
dependabot[bot]
c190821a5e Bump terser from 4.8.0 to 4.8.1 (#2092)
Bumps [terser](https://github.com/terser/terser) from 4.8.0 to 4.8.1.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/commits)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-25 20:17:44 +02:00
René Pfeuffer
3e9bab1fa8 Fix translation keys 2022-07-21 13:58:58 +02:00
René Pfeuffer
48ade848d8 Align translations 2022-07-21 10:02:30 +02:00
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
Konstantin Schaper
8c41fab30d Add login form extension point (#2088)
One of our users would like to create a new plugin that provides alternative methods of authentication. For that purpose, we need an additional extension point that can either replace the login form entirely, or extend it by adding login buttons. By default, the extension point simply renders the original login form.
2022-07-14 14:06:51 +02:00
CES Marvin
f647e06d3c Prepare for next development iteration 2022-07-13 08:55:30 +00:00