ISC Open Source Projects issueshttps://gitlab.isc.org/groups/isc-projects/-/issues2024-03-28T15:29:13Zhttps://gitlab.isc.org/isc-projects/stork/-/issues/1305Help tip is exceed the viewport2024-03-28T15:29:13ZSlawek FigielHelp tip is exceed the viewportThe issue was found by @piotrek during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434131
Minor UI issue - sometimes help tool-tip Header/title is out of view (it happened when I started to resize my...The issue was found by @piotrek during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434131
Minor UI issue - sometimes help tool-tip Header/title is out of view (it happened when I started to resize my browser window)
![image](https://gitlab.isc.org/isc-projects/stork/uploads/f3d815e3344748445a4f4ff5164801fc/image.png)1.16Piotrek ZadrogaPiotrek Zadrogahttps://gitlab.isc.org/isc-projects/stork/-/issues/1304Host reservation list - Reset or re-apply the filter2024-03-05T14:30:07ZSlawek FigielHost reservation list - Reset or re-apply the filterThe issue was found during 1.15 sanity checks by @piotrek: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434121 and @slawek: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434179
Piotrek wrote:
Yet another ...The issue was found during 1.15 sanity checks by @piotrek: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434121 and @slawek: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434179
Piotrek wrote:
Yet another issue found in filtered tables. This applies to all tables that use `queryParams` to keep the filter state and use `TabView` / `TabPanel` (most of tables use it).
E.g. for hosts:
* go to any Kea app
* Host Reservations -> button click
* We have filtered hosts only for that Kea app
* Click on a reservation
* Detailed view opens in tab
* Click on Host Reservations tab to go back to Table view
* We see all Host Reservations (filtering by Kea app is cleared). Text input of the filter displays remaining filter by Kea `appId`.
Slawek wrote:
Clicking the first tab on the host page lists all results but keeps the old filter.
Steps to reproduce:
1. Go to the host reservation list
1. Provide any valid value in the filter box
1. Click the first tab titled "Host Reservations"
1. Observe the table contains all host reservations, but the filter box is not empty1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1303BIND 9 generates no events2024-03-28T12:11:05ZSlawek FigielBIND 9 generates no eventsThe issue was found by @slawek during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434177
The BIND 9 application generates no events. I think there should be at least a notification about connecting t...The issue was found by @slawek during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434177
The BIND 9 application generates no events. I think there should be at least a notification about connecting to the daemon.1.16Marcin SiodelskiMarcin Siodelskihttps://gitlab.isc.org/isc-projects/stork/-/issues/1301Length of input for lease6-get-by-duid is not validated2024-03-28T12:24:48ZSlawek FigielLength of input for lease6-get-by-duid is not validatedThe issue was found by @andrei during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434113
Searching leases by two-character or four-character words provide warnings.
![image](https://gitlab.isc.org/i...The issue was found by @andrei during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434113
Searching leases by two-character or four-character words provide warnings.
![image](https://gitlab.isc.org/isc-projects/stork/uploads/084c42bee2b770bbb47bad0d3e83212d/image.png)
This is caused by an error response e.g. `[ { "result": 1, "text": "identifier is too short (2), at least 3 is required" } ]` to the `lease6-get-by-duid` command. This could be avoided by having Stork check this requirement up front and prevent the command from being sent, as it does with other input. As the comment in `lease.go` says
> // Kea does not accept empty DUIDs. Empty DUID in Kea is represented by 1 zero byte (Kea < 2.3.8) or 3 zero bytes (Kea >= 2.3.8).\`
The current situation can be confusing to a user trying to determine why an even number of characters and bytes is more problematic than an odd number of characters which is checked upfront by Stork.1.16Marcin SiodelskiMarcin Siodelskihttps://gitlab.isc.org/isc-projects/stork/-/issues/1299CIDR on the subnet bar shouldn't be word-breakable2024-03-28T12:19:45ZSlawek FigielCIDR on the subnet bar shouldn't be word-breakableThe issue was found by @marcin during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434279
The size of the subnet prefix column for v6 is broken
![Zrzut_ekranu_2024-02-6_o_20.27.13](https://gitlab.isc...The issue was found by @marcin during 1.15 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1296#note_434279
The size of the subnet prefix column for v6 is broken
![Zrzut_ekranu_2024-02-6_o_20.27.13](https://gitlab.isc.org/isc-projects/stork/uploads/080a509020d7ab72abb6e5e3d9838a59/Zrzut_ekranu_2024-02-6_o_20.27.13.png)1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1297Keep the list of tested systems in ARM up to date2024-02-13T14:42:14ZAndrei Pavelandrei@isc.orgKeep the list of tested systems in ARM up to dateNeed a methodology for keeping this list up to date, which currently has both EOL systems and systems that we are not testing anything on.
> Stork is tested on the following systems:
>
> - Ubuntu 18.04 and 20.04
> - Fedora 31 and 32
> -...Need a methodology for keeping this list up to date, which currently has both EOL systems and systems that we are not testing anything on.
> Stork is tested on the following systems:
>
> - Ubuntu 18.04 and 20.04
> - Fedora 31 and 32
> - CentOS 8
> - MacOS 11.3*1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1293UI code coverage2024-02-13T14:38:49ZSlawek FigielUI code coverageWe have a utility to generate coverage for the backend but not for the frontend. We should fill this gap.
The development of this feature was excluded from #800.We have a utility to generate coverage for the backend but not for the frontend. We should fill this gap.
The development of this feature was excluded from #800.1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1289Fix metrics endpoint in demo2024-03-05T10:31:36ZSlawek FigielFix metrics endpoint in demoThe server's `/metrics` endpoint is unavailable in the demo environment due to the misconfiguration of Nginx.
This issue contains the changes made during the analysis of #1214.The server's `/metrics` endpoint is unavailable in the demo environment due to the misconfiguration of Nginx.
This issue contains the changes made during the analysis of #1214.1.16Slawek FigielSlawek Figielhttps://gitlab.isc.org/isc-projects/bind9/-/issues/4552keymgr: bug in Depends function2024-03-13T10:53:30ZMatthijs Mekkingmatthijs@isc.orgkeymgr: bug in Depends functionWhile working on the `dnssec` system test I noticed a bug in the `keymgr` code. The function `keymgr_dep` implements the `Depends` function, described as follows:
---
The `Depends` relation refers to types of rollovers in which a certa...While working on the `dnssec` system test I noticed a bug in the `keymgr` code. The function `keymgr_dep` implements the `Depends` function, described as follows:
---
The `Depends` relation refers to types of rollovers in which a certain record type is going to be swapped. For example, with the ZSK Pre-Publish rollover method the signatures created by the successor key `z` are being propagated first, so that the zone signatures for `x` and `z` can be swapped (smooth rollover). In this case, we say that `z` is the successor of `x` for the `ZRRSIG` record type. Here, `x` is the predecessor key that is going to be withdrawn from the zone. The set `Dep(x, T)` is a separately administrated set of keys that have a dependency on `x` for record type `T`.
For example, with the ZSK Pre-Publish method, the `ZRRSIG` records of key `x` can be withdrawn if there is a succeeding `ZRRSIG` of key `z` introduced in the zone. Key `x` now depends on key `z`, therefore `z` will be in the set `Dep(x, ZRRSIG)`. The successor relation requires that the predecessor key must not have any other keys relying on it. In other words, the set `Dep(x, T)` must be empty.
---
But if the key is phased out (all its states are in `HIDDEN`), there is no longer a dependency. Since the relationship is still maintained (`Predecessor` and `Successor` metadata), the `keymgr_dep` function still returned `true`. In other words, the set `Dep(x, T)` is not considered empty.
This slows down key rollovers, only retiring keys when the successor key has been fully propagated.April 2024 (9.16.50, 9.16.50-S1, 9.18.26, 9.18.26-S1, 9.19.23)Matthijs Mekkingmatthijs@isc.orgMatthijs Mekkingmatthijs@isc.orghttps://gitlab.isc.org/isc-projects/stork/-/issues/1282Hosts reservation filter by isGlobal and appId2024-03-08T18:26:47ZPiotrek ZadrogaHosts reservation filter by isGlobal and appIdFiltering reservations by appId only works ok (stork demo example):
![image](/uploads/b482868c6da6cc081991d266cc9db2a3/image.png)
But when one adds also `is:global` or `not:global`, suddenly results are inconsistent:
![image](/uploads/d...Filtering reservations by appId only works ok (stork demo example):
![image](/uploads/b482868c6da6cc081991d266cc9db2a3/image.png)
But when one adds also `is:global` or `not:global`, suddenly results are inconsistent:
![image](/uploads/d430d92fb197c9736acf966108d828ea/image.png)
![image](/uploads/66f7cf7e9d2b9115b7c928de490572ad/image.png)1.16Slawek FigielSlawek Figielhttps://gitlab.isc.org/isc-projects/stork/-/issues/1278Backend profiler and performance monitor2024-01-16T14:43:02ZSlawek FigielBackend profiler and performance monitorTo improve the quality of our solutions, I propose to add to the Stork project the following:
- Profiler for the backend unit tests
- On-demand profiler for currently executed Stork server or agent
- Performance monitor for system tests...To improve the quality of our solutions, I propose to add to the Stork project the following:
- Profiler for the backend unit tests
- On-demand profiler for currently executed Stork server or agent
- Performance monitor for system tests
These components were implemented to recognize the cause of the performance problems reported in #1263.1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1276github-friendly security policy2024-01-16T14:41:55ZTomek Mrugalskigithub-friendly security policyThis is mostly to check off some extra check boxes on github.
Something similar as we have in Kea: [Kea security policy](https://github.com/isc-projects/kea/security/policy).
This is just writing down what we already have spread out in...This is mostly to check off some extra check boxes on github.
Something similar as we have in Kea: [Kea security policy](https://github.com/isc-projects/kea/security/policy).
This is just writing down what we already have spread out in several places, condensed and formatted in github friendly format. No specific process changes proposed.1.16Tomek MrugalskiTomek Mrugalskihttps://gitlab.isc.org/isc-projects/stork/-/issues/1275Password change fails with character '+' that form states is allowable2024-01-16T14:41:07ZBaxil (aka Horizon)Password change fails with character '+' that form states is allowable
**Description**
Stork will refuse to validate passwords using the plus sign, one of the characters the password change screen explicitly states is an allowed special character.
**To Reproduce**
1. visit /profile/password page for passw...
**Description**
Stork will refuse to validate passwords using the plus sign, one of the characters the password change screen explicitly states is an allowed special character.
**To Reproduce**
1. visit /profile/password page for password change
2. In both password and confirm password boxes type: abc+123
3. Password box will error out with an allowed characters message and confirm box will error out stating passwords don't match
![20240109-stork-passwords](/uploads/76d84e097f9c19cc31850f9bc204c36e/20240109-stork-passwords.png)
**Expected behavior**
Any characters which cause password processing errors should be removed from acceptable character lists.
**Environment:**
- Stork: 1.14.0
- OS: unknown, my apologies (I'm an end user)
- Kea version: unknown
- BIND9 version: unknown
**Additional Information**
This is possibly related to issue #1246 if the db password is processed in the same fashion.1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1274Hub and spoke configuration monitoring2024-03-28T12:21:12ZMarcin SiodelskiHub and spoke configuration monitoringWe have added the hub-and-spoke configuration support in Kea. It means that a HA-enabled server can now have multiple relationships. We need to rework the Stork backend and UI to support it.We have added the hub-and-spoke configuration support in Kea. It means that a HA-enabled server can now have multiple relationships. We need to rework the Stork backend and UI to support it.1.16Marcin SiodelskiMarcin Siodelskihttps://gitlab.isc.org/isc-projects/stork/-/issues/1269After authorizing a machine it stays on a unauthorized list for 10 seconds or...2024-03-28T12:19:59ZPiotrek ZadrogaAfter authorizing a machine it stays on a unauthorized list for 10 seconds or longerSometimes this happens:
- Run Stork demo
- Go to unauthorized machines
- Authorize machines that are on a list
- Sometimes pressing `Authorize` has no effect in UI for 10 seconds or more, after that the machine dissapearsSometimes this happens:
- Run Stork demo
- Go to unauthorized machines
- Authorize machines that are on a list
- Sometimes pressing `Authorize` has no effect in UI for 10 seconds or more, after that the machine dissapears1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1265Hosts reservations filter improvements2024-03-28T16:02:26ZPiotrek ZadrogaHosts reservations filter improvementsText Input type filter used currently in Hosts reservations view has some limitations and drawbacks (https://gitlab.isc.org/isc-projects/stork/-/issues/917#note_423973).
E.g. it is not possible to filter out all reservations in 2 subnet...Text Input type filter used currently in Hosts reservations view has some limitations and drawbacks (https://gitlab.isc.org/isc-projects/stork/-/issues/917#note_423973).
E.g. it is not possible to filter out all reservations in 2 subnets.
This could be improved by leaving existing Text Input only for filtering `byText` and introducing something different for filtering by `appId`, `subnetId`, `keaSubnetId`, `global`. This could be e.g. `multiselect` (https://primeng.org/multiselect).1.16Piotrek ZadrogaPiotrek Zadrogahttps://gitlab.isc.org/isc-projects/stork/-/issues/1261The list tab link doesn't include the already specified filter2024-03-13T18:41:07ZSlawek FigielThe list tab link doesn't include the already specified filterThe list tab link doesn't include the already specified filter.
![image](/uploads/975779709fab2fb25c2959373d7d2081/image.png)
After clicking on it, the list presents non-filtered results, although the filter is still specified.
![imag...The list tab link doesn't include the already specified filter.
![image](/uploads/975779709fab2fb25c2959373d7d2081/image.png)
After clicking on it, the list presents non-filtered results, although the filter is still specified.
![image](/uploads/946de8fa616032c96e97f1157e526afa/image.png)1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1258Apps State Puller Interval is not preserved2024-03-05T12:38:29ZSlawek FigielApps State Puller Interval is not preservedIt is impossible to set the `Apps State Puller Interval` setting on UI. It always reverts to 30 seconds.
The API return HTTP 200 OK status:
```
stork-server-1 | time="2023-12-08 17:36:14" level="info" msg="HTTP request...It is impossible to set the `Apps State Puller Interval` setting on UI. It always reverts to 30 seconds.
The API return HTTP 200 OK status:
```
stork-server-1 | time="2023-12-08 17:36:14" level="info" msg="HTTP request incoming" file=" middleware.go:79 " method="PUT" path="/api/settings" remote="172.24.0.5:34192"
stork-server-1 | time="2023-12-08 17:36:14" level="info" msg="HTTP request served" file=" middleware.go:93 " method="PUT" path="/api/settings" remote="172.24.0.5:34192" size="0" status="200" text_status="OK" took="4.958374ms"
stork-webui-1 | 172.24.0.1 - - [08/Dec/2023:17:36:14 +0000] "PUT /api/settings HTTP/1.1" 200 0 "http://127.0.0.1:8080/settings" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 OPR/105.0.0.0" "-"
```1.16Slawek FigielSlawek Figielhttps://gitlab.isc.org/isc-projects/stork/-/issues/1252Interrupt the system tests if the docker-compose build fails2023-12-19T14:46:52ZSlawek FigielInterrupt the system tests if the docker-compose build failsThe issue was created due to a post-sanity checks discussion with @andrei.
If your image build fails, it will be repeated for each test case if it isn't a temporary problem because the failed build is not stored in the cache. The build ...The issue was created due to a post-sanity checks discussion with @andrei.
If your image build fails, it will be repeated for each test case if it isn't a temporary problem because the failed build is not stored in the cache. The build problems are usually related to misconfiguration or bugs in Dockerfile or scripts. They are not temporary, so repeating the build on each test is unnecessary. We should interrupt the tests on the first build problem to save time.1.16https://gitlab.isc.org/isc-projects/stork/-/issues/1251LDAP hook: Build fails on some Linux distributions2023-12-19T14:47:34ZSlawek FigielLDAP hook: Build fails on some Linux distributionsThe issue was found by @andrei during 1.14 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1240#note_421471
```
Another one I had forgotten. I understand that this one as well is not a task that you usually run on a ta...The issue was found by @andrei during 1.14 sanity checks: https://gitlab.isc.org/isc-projects/stork/-/issues/1240#note_421471
```
Another one I had forgotten. I understand that this one as well is not a task that you usually run on a tarball.
rake hook:init MODULE=stork-server-ldap; rake hook:build results in error when run on a tarball. It seems like it is not picking up on DEFAULT_HOOK_DIRECTORY.
rm -f
Removing old compiled hooks...
cp go.mod go.sum /tmp/d20231205-1147463-kn7j49
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/tools/golang/go/bin/go mod edit -replace isc.org/stork=../../../../../Descărcări/sanity-checks/stork-1.14.0/backend
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/tools/golang/go/bin/go mod tidy
rake build
Building stork-server-ldap...
mkdir -p build
rm
rm: missing operand
Try 'rm --help' for more information.
rake aborted!
Command failed with status (1): [rm...]
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/hooks/stork-server-ldap/Rakefile:17:in `block in <top (required)>'
Tasks: TOP => build
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [rake build...]
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:150:in `block (4 levels) in <top (required)>'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:141:in `block (3 levels) in <top (required)>'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:66:in `block (3 levels) in forEachHook'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:65:in `chdir'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:65:in `block (2 levels) in forEachHook'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:46:in `chdir'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:46:in `block in forEachHook'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:42:in `foreach'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:42:in `forEachHook'
/home/andrei/Descărcări/sanity-checks/stork-1.14.0/rakelib/90_hooks.rake:139:in `block (2 levels) in <top (required)>'
Tasks: TOP => hook:build
(See full trace by running task with --trace)
```1.16