[#52422] Add tool to ensure classes only have one valid owner.
[#50727] Remove all references to integrationsdata
, as well as IntegrationAbstraction
, etc.
[#51898] Fixed SD importer date_from bug
[#51898] Dependency bumping and Poetry gymnastics
[#51898] Call MO 10 times on insert errors before giving up
[#51898] Use latest SD date for engagement creation in SD importer and create historic dummy if engagement start date older than org unit start date
[#52103] Bump os2mo-data-import version.
[#51764] LOS import: remove creation of "AD" IT users in MO
[#51938] LOS import: continue on MO error V_DUPLICATED_IT_USER
[#51530] SQL export: expose "org unit hierarchy" in org unit export table
[#51223] OS2Sync: Add option to filter org_units based on org_unit_hierarchy.
[#xxxxx] Various sd-importer fixes
[#51519] SQLExport
: ItForbindelse.primær_boolean
is nullable
[#40507] Added initial import endpoint to SD
[#51223] Added to Silkeborgs uuid mapping.
[#51519] Fix value of ItForbindelse.primær_boolean
in SQLExport
[#50996] Morahelpers: Allow setting owner on new classes. Improved handling of existing classes.
[#51414] Compare mapped MO user attributes to mapped AD values, and only issue an update if any mapped fields have changed
[#50747] Adds titleUuid to positions when sync_titles is enabled to link positions and titles.
[#51052] Fix TypeError
in ADMOImporter
(cannot serialize uuid.UUID
as JSON values)
[#50747] OS2Rollekatalog export: Adds information on engagement_types to the "titles" endpoint in rollekataloget.
[#xxxxx] Adds a graphql cli tool.
[#51016] Fix conflicting packages
[#50910] SQLExport
: don't crash on MO users without CPR
[#50923] Adds script to ensure classes are static.
[#50764] OS2Phonebook: Replace "Retrying" with "Tenacity" to handle retrying of async functions.
[#50673] Fixed problem where SD does not return person in response
[#50536] OS2Sync_export: Overwrite uuids of parent-units and units in employee positions.
[#50171] Fix overwrite of employees in organisation_employees report
[#50536] OS2Sync: fix bug where the uuid of the it-account object would be used in stead of the value from the it-account.
[#50410] Handle "empty LoraCache users" in AdMoSync._read_all_mo_users
[#50533] Bump DIPEX version to ^2.36.1 for SD integration
[#xxxxx] OS2sync_export: allow installing on python 3.8
[#49741] OS2sync: moved to a separate poetry project in exporters, now called os2sync_export.
[#49746] AD_sync fix issue with "empty" user in loracache
[#50482] SqlExport
: export Tilknytning.primær_boolean
from MO Association
objects
[#49873] AAK LOS import: make STAM UUID imports idempotent. Existing LoRa classes are not duplicated, and removed STAM UUID items are unpublished in LoRa.
[#50165] Log AD PowerShell errors in "ad_life_cycle" and "mo_to_ad_sync" to MO "queries" folder
[#50304] Exclude invalid DAR addresses when creating or updating AD users in ADWriter
[#50165] Use case-insensitive check to determine whether a generated username is already occupied
[#50325] MORESTSource.get_email_address
: handle empty address list
[#50308] Loracache: Fixes bug where DAR addresses used UUID's, which caused a breakdown when trying to export it to sql.
[#49734] Import FK-org uuids changed to use only envvars and not settings-file to be able to run easily in a container without settings.json.
[#50291] Fix ADWriter._compare_fields
result when encountering "None"
strings in MO or AD values
[#50181] AD user import: Fixed a bug where it-accounts would not be created and engagements would terminated again every day if their uuid in MO was not the same as ObjectGuid in AD.
[#50169] OS2sync: addresses_to_user
should convert lists of UUIDs to lists of strings when passing address types to choose_public_address
[#50160] ADWriter._sync_compare
: do not crash if manager's AD user cannot be found in ad_dump
[#50188] Revise UserNameGenPermutation
(Furesø AD username generator rules have changed)
[#50165] Bugfix: UserNameSetInAD
needs to load all "SamAccountName" values from AD; comparison must be case-insensitive
[#50199] Loracache: Switch to using os2mo_dar_client.
[#xxxxx] Removed lc_for_jobs_actual_db_name from constants as it isn't used anywhere else and we cant import sqlexports from pypi because of this reference.
[#xxxxx] Include a few exporters as packages to be able to import them from pypi
[#xxxxx] OS2Sync: Moved constants into settings.
[#46511] AD Life Cycle: Add feature to add/overwrite part of AD settings when running ad_life_cycle.py
[#50123] OS2sync export: paginate calls to read all user uuids from MO to avoid crash when reading many employees.
[#49971] Add exports_ad_life_cycle_disable_accounts
to job-runner.sh
so it can be run from cron.sh
.
[#49999] Fixes kle import/export scripts that are outdated because of changes to MO configuration and FastAPI trailing slashes.
[#49971] Bugfix: handle multiple email addresses per employee in MORESTSource.get_email_address
.
[#49971] AD Write: fix use of first_address_of_type
Jinja filter in _get_sync_user_command
[#49928] AD_life_cycle:
- Cache all AD users to correctly compare to MO.
- Resolve DAR when using loracache
[#49340] Add UUID to Ansatte report
[#49477] Optional log file path setting
[#49936] Script for moving org unit
[#49891] OS2Sync: fix issue with units without org_unit_level or org_unit_type.
[#49734] New uuids for Silkeborg FK-org
[#49891] OS2sync: fix wrong use of setting.
[#49891] OS2Sync: fix bug where uuids where compared to strings.
[#49772] OS2sync: Regenerate keycloak token by not lru_cache'ing session object.
[#49885] Export SDChangedAt state
[#49668] Add force flag to SDChangedAt. Return early.
[#49741] Lint os2sync with precommit
[#xxxxx] Fix call to OS2MO that was broken when moving away from morahelpers.
[#xxxxx] Os2sync - Fix call to os2mo_get
[#49668] Introduce misc feature flags
[#49218] Enable os2sync to use values from it-systems listed in settings as uuids in fk-org.
[#41274] AD_writer username disallowed list can now be read from a database.
[#49383] Adds OS2sync CLI to update single org_units or employees to FK-org.
[#49594] AAK LOS import: use correct BVN for "non-primary" class
[#48316] SqlExport._add_associations
: handle missing class for "association_type"
[#49633] Fix virtual environment issues
[#49663] Fixed SD test connectivity job-runner bug
[#49597] Fixed Poetry issue
[#49602] Fix compare of parent uuids when there are no parent (an external organisation)
[#48316] LoraCache: handle associations without "association_type"
[#49253] Create SD Changed At image
[#49292] Make SD integration independent of DIPEX
[#xxxxx] Fix comparison of UUID and string of UUID in loracache-os2sync
[#49524] Optional exclude or include CPR list for SD-changed-at
[#xxxxx] Fix mistake in variable from settings.
[#xxxxx] Fix missing settings in os2sync lcdb
[#49524] Handle multiple JobPositionIdentifers when doing no salary minimum consistency check
[#49541] Adds AMG unit-type to list of MED-organization unit-types
[#49292] Release DIPEX to PYPI
[#49292] Fix black issues
[#49219] Change os2sync to use Pydantic settings. This allows configuration either by a settings.json file or by environment variables.
[#49447] Fix a bug where opus_diff_import crashed when a unit had no address
[#49339] Increase robustness of OS2phonebook export job
[#49377] Fix None/NULL stillingsbetegnelse_titel
[#47138] Rework AD username generation and exclusion code
[#49338] Reintroduce retry logic in MoraHelper._mo_lookup
[#49146] Fixed broken test-sd-connectivity script
[#49291] Added missing settings to FixDepartments
[#49146] Fixed bug assuming only one profession present in SD employment
[#49146] Add missing settings argument to sd-lookup
[#49146] Handle missing Pydantic settings conversions
[#49146] Use RA Utils version 1.0.0 or greater (fixes problem with loading settings.json)
[#46874] Fix recalculate_primary
[#48939] Handle SD engagements inconsistent according to no-salary-minimum
[#48939] Do not create inconsistent external engagements
[#46894] Use SD Pydantic settings model in SD-changed-at
[#45401] AD_sync removes engagement info from users when the AD-account is removed and removes AD engagement info from engagements that are no longer primary
[#46715] Use poetry for dependency management
[#48809] Skip connecting it-system during Opus import if multiple entries exist in MO.
[#46874] Better recalculate reporting
[#46894] SD Pydantic config module
[#48067] Log when creating engagement is skipped due to wierd SD data
[#48132] Patch for opus_terminate_filtered script, so it won't delete users with unfiltered engagements in the past or future.
[#48132] Add check for users and engagements that should have been filtered from opus-import and a script to remove them.
[#48375] Handle inconsistent leave start date
[#48243] Flag to choose SD engagement start date during import
[#48202] Handle Nones within fix_department.py
[#48136] Adds new columns to "Viborg eksterne" report. Deprecate MO version and support only loracache version of the script.
[#46166] Adds timestamp as a field available for AD_writer
[#48083] Makes os2sync integration able to use keycloak authentication.
[#48067] Fix BC anniversary date problem
[#48050] Fix engagement termination date bug
[#47241] Move ad-script and add documentation
[#41612] SD_changed_at uses datetimes to allow running over any timespan, eg. several days or multiple times a day.
[#47960] Introduce continuous deployment to Flux
[#47734] Fix LoRaCache CLI flag
[#47734] Add job for RUN_CACHE_HISTORIC_SKIP_PAST_LORACACHE 🥲
[#47623] Add new dipex-job exports_ad_enddate_fixer write enddates of terminated users to AD.
[#47755] Fix NTLM to always use first set of credentials for the winrm connections
[#47911] Fix UUID to string bug
[#46874] Added default calculate primary function
[#47856] Add retry to OS2phonebook export
[#47656] Fix bug that would create it-systems with random uuid usernames during opus-import
[#xxxxx] Fixes a bug where opus reimport script writes to rundb
[#47656] Add handeling of changing/terminating IT-system accounts to Opus-diff-import
[#47734] Fix LoRaCache not properly exporting historic data when called from the CLI
[#47247] Fixes for opus reimport script
[#47241] Add script to reimport users or units from opus.
[#47488] Add 'vacuum' command to remove_duplicates tool
[#47488] Add script to remove duplicate registrations from user tables
[#47581] Do not read 'USE_CACHED_LORACACHE' environment variable when using the LoRaCache CLI
[#47646] Fix OS2sync LoRa cache crashing because of missing "is_primary" field
[#47581] Chill with the cached LoRaCache
[#47622] Loracache allow vacant association
[#47632] OS2sync uses paginated calls to avoid timeouts
[#47581] Add support for cached LoRaCache
[#44668] Associate leave with engagement during SD import
[#47457] Catch and log when a managerrole has no person attached.
[#47581] Decrease LoRaCache results per page from 5000 to 1000 to avoid LoRa database timeout
[#47571] Fix update-dipex.sh error by adjusting build-system in pyproject.toml
[#47267] New featureflags for customizing opus-import
[#47581] LoRa cache fix params retrying
[#46715] Send git version to Grafana Cloud on checkout
[#46715] Trigger new release
[#46715] Implement automatic versioning through autopub