Commit Graph
161 Commits
Author SHA1 Message Date
Martin HoffmannandGitHub dd5c7dcb1d Bring back the built-in RISwhois tree for BGP analysis. (#1329)
This PR brings back the built-in tree of downloaded RISwhois data rather
than using the Roto API. It does so using a memory-optimized tree
implementation and has a much smaller memory footprint than the previous
iteration. At the time of writing, the a full RISwhois dataset requires 55
megabytes of memory.

This PR also reverts the changes to the configuration. It removes the
bgp_api_enabled, bgp_api_uri, and bgp_api_cache_duration fields and adds
bgp_riswhois_enabled, bgp_riswhois_v4_uri, bgp_riswhois_v6_uri, and
bgp_riswhois_refresh_duration fields, all of which are optional.

Because of these config changes, the PR is a breaking change.
2025-11-17 17:54:27 +01:00
Koen van HoveandGitHub ce166d1757 Be more flexible on relations existing in the bgp-api JSON (#1326)
This PR resolves an issue with the new BGP API code which returns no
announcement info even though there is announcement info (but it is
available, but there is no information about its relations).
2025-10-10 16:17:31 +02:00
Koen van HoveandGitHub 67cb544ab0 Add test to migrate from previous version (#1287)
This test will try to run Krill with old data, to ensure structs that were
used still work and do not crash Krill.
2025-06-12 16:13:58 +02:00
Koen van HoveandGitHub 6da2c80d68 Integrate roto-api in Krill replacing RISwhois (#1233)
This PR replaces the downloading and parsing of RISwhois files in Krill
with the roto-api.
2024-12-20 14:28:00 +01:00
Martin HoffmannandGitHub 3253d3c4b6 Reformat to 78 character lines. (#1218) 2024-06-26 10:28:34 +02:00
Tim Bruijnzeels 8dcbc193e9 Fix aspa migration issues (#1163)
* Pre 0.14.x AspaDefinitionUpdates also used plain Asn for "remove"
* Fix handling of skipped ASPA migration commands, and ASPA events in other commands.
* Fix upgraded for 0.9.6 (and use better testdata)
* Improve test data
2023-12-06 09:55:57 +01:00
Tim Bruijnzeels 0be1b15a96 Skip surplus commands when migrating. #1147 2023-11-06 13:17:14 +01:00
Tim Bruijnzeels 62994f8b57 Skip surplus directories in migration #1147 2023-11-03 11:57:31 +01:00
Tim BruijnzeelsandGitHub 7468e1fcde Update conf file storage text for 0.14.0. (#1145) 2023-10-31 11:02:21 +01:00
Tim Bruijnzeels 0cf0b3800a Move test files so they are not on .gitignore. 2023-10-23 12:00:46 +02:00
Tim Bruijnzeels 9102a16352 Migrate old ASPA configs 2023-10-23 12:00:46 +02:00
Tim Bruijnzeels 7f174f9b48 Add test for ImportChild json format. 2023-10-17 15:31:11 +02:00
Tim Bruijnzeels 375ff4dcad Use correct timing for issued cert under TA. (related #1097) 2023-10-17 15:31:11 +02:00
Tim Bruijnzeels c046a95422 Ta timing config #1097 2023-10-17 15:31:11 +02:00
Tim Bruijnzeels c907478059 Remove no longer needed 'always_recover_data' function #1086 2023-10-17 15:31:11 +02:00
Tim Bruijnzeels 263d870ca8 Support migrations using non-disk storage #1094
* Use kvx with explicit namespace type.
* Do not depend on a data dir for storage.
* Fix upgrade code.
2023-10-17 15:31:11 +02:00
Gaurav KansalandTim Bruijnzeels a3fb50bdd5 Add quotes to config example to avoid parse error (#1082) 2023-10-17 15:31:11 +02:00
Tim Bruijnzeels f48690c364 Aggregate command sets (#1087) 2023-10-17 15:31:11 +02:00
Tim Bruijnzeels c323a30a76 Improve upgrade failed error: tell users to downgrade #1042 2023-10-17 15:31:11 +02:00
2d0814125e Remove published objects duplication (#1023)
* Remove support for migrating pre-0.9.0 versions.
* Keep publisher files in one place only.
* Improve merging new publish elements into staged elements.
* Upgrade pre-0.12.0 RepositoryContent.
* Upgrade v0.12.x RepositoryContent
* Log errors in case of merge conflicts
* No session reset on 0.13 upgrade (#1028)

---------

Co-authored-by: ximon18 <3304436+ximon18@users.noreply.github.com>
2023-04-20 13:23:30 +02:00
Tim BruijnzeelsandGitHub 5379521523 Allow including TA private key pem for CA import. (#1008) 2023-03-07 15:59:04 +01:00
Ximon EighteenandGitHub 9c4b5f44ed Work around failing PyKMIP tests by pinning to an old SQLAlchemy Python package for use by PyKMIP. (#1015) 2023-02-20 17:01:51 +01:00
Tim BruijnzeelsandGitHub 01e54ff22f Support offline ta (#985) 2023-01-24 10:30:22 +01:00
Tim BruijnzeelsandGitHub 81f9a479a7 Add support for importing CAs (#968) with ROAs (#969) 2022-11-25 12:51:51 +01:00
Tim BruijnzeelsandGitHub c7757dbafd Merge release 0.12.0 rc2 - fix pubd_objects migration issue. (#960) 2022-10-18 22:52:42 +02:00
Tim BruijnzeelsandGitHub 92e901423a Support listening on multiple IP addresses. (#955) 2022-10-18 12:04:36 +02:00
a29651fa2a Use write-ahead log for RepositoryContent. (#940)
- Add support for write-ahead logging.
- Use write-ahead log for RepositoryContent.
- Migrate old style RepositoryContent if present
- Schedule updating full snapshots every 24 hours

Co-authored-by: ximon18 <3304436+ximon18@users.noreply.github.com>
2022-10-13 12:09:23 +02:00
ximon18andTim Bruijnzeels c3419270b9 Use 10 year expiration for the PyKMIP server certificate, not just for the CA certificate.
Add missing openssl.cnf file.
2022-10-04 10:07:09 +02:00
Tim BruijnzeelsandGitHub 8b51702c62 Show ROA objects (#864)
* Show ROA objects
* Add functional (regression) test for roa comments
2022-09-19 16:41:56 +02:00
Tim BruijnzeelsandGitHub 7c98a2a74e Include (optional) comment with configured (ROA) authorisations. #863 2022-09-06 17:14:52 +02:00
Tim Bruijnzeels 132fdab39e Clarify that we still use HTTPS for RFC 6492 and 8181 (#913) 2022-09-05 12:37:38 +02:00
Tim Bruijnzeels 242ddb6044 Fix typo 2022-09-01 13:56:54 +02:00
Tim Bruijnzeels 3e674855a0 Allow explicit disabling of https #913 2022-09-01 11:32:45 +02:00
Tim Bruijnzeels 266cf2e06d API to add parent should not change #898 2022-08-29 16:51:39 +02:00
Tim Bruijnzeels 9443792dc1 API to upload repository response should not change #895 2022-08-29 16:51:39 +02:00
Tim BruijnzeelsandGitHub 1cc69885db Use more descriptive errors from rpki-rs #845 2022-07-18 19:24:43 +02:00
Tim BruijnzeelsandGitHub bbb2267587 Migrate RPKI objects in history (#841)
Ensures that Krill is more robust with regards to stricter validation of RPKI object types in future.
2022-07-18 15:51:26 +02:00
Tim BruijnzeelsandGitHub d68c07b59c Sign BGP router certificates (#827) 2022-07-07 13:20:00 +02:00
330da84de5 Migrate 8181 8183 6942 support to rpki rs (#820)
* Use types which were ported into rpki-rs.
* Update dependency to rpki-rs 0.14.3-dev.
* IGNORE old_events test for now, see issue: #819
* Quick fix for compilation using --all-features. See issue #821

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2022-05-12 15:24:50 +02:00
Tim Bruijnzeels 12c4a1fc9a Merge release 0.9.5 into dev 2022-04-13 16:58:52 +02:00
388b931645 V0.9.5 rc9 prep (#812)
* Improve efficiency of connection status tracking #811
* Update version and readme for 0.9.5-rc9

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2022-04-06 15:11:55 +02:00
Tim Bruijnzeels 4e1df9294a Merge 0.9.5-rc8 (main) into dev 2022-03-30 14:05:02 +02:00
ffb7d6ecdd V0.9.5 rc7 prep (#803)
* Use PriorityQueue with time based Priority.
* Improve session sweep logging (make it less noisy)
* Update config file with new refresh settings - cap jitter at 50% of refresh
* Let api schedule repo sync tasks rather than execute it synchronously.
* Update version and readme for RC7
* Use the highest priority in case a task was already in the queue.
* Use consistent capitalization of Krill in config files.
* Update readme regarding ca-parent sync changes
* Update to Lagosta with updated dependencies
* Update developer documentation with new scheduler behaviour.
* Add hidden api end-point for scheduling suspend all - used in testing.

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2022-03-28 16:01:51 +02:00
Tim Bruijnzeels 92ea597f01 Make CA sync strategy configurable #799 2022-03-06 23:28:16 +01:00
Tim Bruijnzeels ee81d03db7 Improve migration preparation resilience. 2022-02-23 14:17:18 +01:00
Tim BruijnzeelsandXimon Eighteen 5780c771f6 Support prepare-upgrade krill: prepares the new data to migrate. (#777)
* Support "prepare-upgrade" through "krillup" binary.
* Package the new `krillup` binary and man page into a separate DEB/RPM.
* Also switches to building in a Rocky Linux container due to repeated CentOS 8 vault repo timeouts.
* Mention correct config file location on CLI help.
* Remove incorrect reference to non-existent help subcommand for krillup.
* Add locking to upgrade process.

Co-authored-by: Ximon Eighteen <3304436+ximon18@users.noreply.github.com>
2022-02-18 18:02:55 +01:00
Tim Bruijnzeels aff4407144 Improve usability of http errors to operators. (#782) 2022-02-18 18:02:55 +01:00
Ximon EighteenandGitHub b0be88bc10 HSM support for keys (#21) (#733)
Adds support for PKCS#11 v2.20 and/or KMIP 1.2 compatible HSMs.
Includes backward compatible extensions to the krill.conf syntax.
Includes HSM related developer docs.
Excludes HSM specific API (REST, krillc, Prometheus) or UI extensions.
2022-01-14 14:19:24 +01:00
Tim Bruijnzeels 18ee87f6e0 Allow configuring RFC6492/8181 client timeouts #743 2021-12-16 10:30:10 +01:00
Tim BruijnzeelsandGitHub ee1f513f8c Allow configuring RFC6492/8181 client timeouts #743 2021-12-16 09:49:14 +01:00