Commit Graph

120 Commits

Author SHA1 Message Date
ricardo.bartels@telekom.de
ce5eb04ff8 adds syncing of vCenter Custom Attributes #114 2021-10-31 14:29:24 +01:00
ricardo.bartels@telekom.de
efced66ec5 removes comments about circular dependencies #62 2021-10-26 14:27:10 +02:00
ricardo.bartels@telekom.de
322258d40f don't create a vCenter API session if tag syncing is disabeld #65 2021-10-26 14:21:22 +02:00
ricardo.bartels@telekom.de
bb4e693eba fixes issue with cloned VMs not synced if same VM uuid exists in different vCenter instances #111 2021-10-23 02:03:02 +02:00
ricardo.bartels@telekom.de
3109cb1e84 fixes issue with finding VLANs for tagged and untagged interfaces #40 2021-10-23 01:16:30 +02:00
ricardo.bartels@telekom.de
b358a833af Enhances README to Cleary use of multiple sources
* fixes typos
* adds version and date to log on each run

refs: #109
2021-10-22 11:20:10 +02:00
ricardo.bartels@telekom.de
a87904c626 Merge remote-tracking branch 'obestwalter/main' into development
refs: #61
2021-10-21 23:30:30 +02:00
ricardo.bartels@telekom.de
d807ae9ddf fixes default role assignment to devices #110 2021-10-21 12:35:59 +02:00
ricardo.bartels@telekom.de
bea356b4ac fixes handling of deprecated and removed config settings #107 2021-10-21 00:34:36 +02:00
ricardo.bartels@telekom.de
5a00cc5c3c adds "cluster_tenant_relation" and "cluster_tag_relation" to vmware source #110 2021-10-21 00:02:39 +02:00
ricardo.bartels@telekom.de
391c3c4d0c fixes vCenter tag assignment for host and VM
refs: #98
refs: #65
2021-10-19 00:16:58 +02:00
ricardo.bartels@telekom.de
03ddfff44e adds 'validate_tls_certs' setting to VMware source #106 2021-10-19 00:09:28 +02:00
ricardo.bartels@telekom.de
b5fd52cd0c fixes last commit of removing deprecated config settings #107 2021-10-18 23:12:14 +02:00
ricardo.bartels@telekom.de
43ca7775dc removes 'netbox_host_device_role' and 'netbox_vm_device_role' config options #107 2021-10-18 22:53:55 +02:00
ricardo.bartels@telekom.de
4df4706fd0 Merge branch 'fix/vlan-assignement-based-on-vrf' into development
Also fixes issue with "%2f" in vlan names

refs: #5
2021-10-18 21:54:33 +02:00
ricardo.bartels@telekom.de
b3f4928b9d Merge branch 'fix/skip-items-missing-primary-key-104' into development 2021-10-18 15:25:20 +02:00
ricardo.bartels@telekom.de
8a1d65aaea Merge branch 'fix/manufacturer-slug-issue' into development 2021-10-18 15:22:53 +02:00
ricardo.bartels@telekom.de
3684fda2a0 Merge branch 'feature/vm_tag_relation' into development 2021-10-18 15:22:20 +02:00
ricardo.bartels@telekom.de
151ddf1bd0 adds feature to sync tags from vCenter to NetBox
refs: #65
2021-10-18 15:16:10 +02:00
ricardo.bartels@telekom.de
db5eb64055 enhances logic of checkig if primary object key is present
Refs: #104
2021-10-16 08:16:29 +02:00
ricardo.bartels@telekom.de
20aa45b790 reduce DEBUG and DEBUG2 logging #97 2021-10-15 22:26:13 +02:00
ricardo.bartels@telekom.de
627e3c5215 adds check if object data contains primary key before adding #104
refs: #104
2021-10-15 21:25:16 +02:00
ricardo.bartels@telekom.de
48ab641d06 adds finding objects by slug name to match first when searching for objects
refs: #79
2021-10-15 15:10:10 +02:00
ricardo.bartels@telekom.de
f2aeca0a7e adds ":" to characters in format_slug to substitute with "-" 2021-10-13 11:45:50 +02:00
ricardo.bartels@telekom.de
508962c341 enhances VLAN assignment to interfaces based on ip address prefixes #40
refs: #40
2021-10-13 01:02:09 +02:00
ricardo.bartels@telekom.de
e60484e630 Merge branch 'feature/source-check-redfish' into development 2021-10-01 12:04:32 +02:00
ricardo.bartels@telekom.de
fa82a33dc9 enhances handling of missing inventory items and adds source tag description
refs: #91
2021-10-01 12:02:45 +02:00
ricardo.bartels@telekom.de
0674cf8f13 adds host/vm tag_relation config option to assign tags via config
refs: #98
2021-09-30 23:52:03 +02:00
ricardo.bartels@telekom.de
7d600bd5b1 fixes issue with manufacterer slug name
refs: #99
refs: #79
2021-09-30 23:10:21 +02:00
ricardo.bartels@telekom.de
7c0fba23e6 refactors check-redfish source to enhance code readability
refs: #91
2021-09-25 08:42:50 +02:00
ricardo.bartels@telekom.de
b775edbb58 adds class and methods descriptions to newly added objects
refs: #91
2021-09-24 17:42:53 +02:00
ricardo.bartels@telekom.de
cbed134951 WIP: enhances the data enrichment on inventory items 2021-09-23 11:15:10 +02:00
ricardo.bartels@telekom.de
0e50f13718 adds power supply size to inventory items
refs: #91
2021-09-22 23:31:38 +02:00
ricardo.bartels@telekom.de
6a5000cfbd adds network interface speed detection
refs: #91
2021-09-22 23:20:59 +02:00
ricardo.bartels@telekom.de
2e0d319ac2 adds speed and size as custom fields to inventory
refs: #91
2021-09-22 08:52:01 +02:00
ricardo.bartels@telekom.de
59b1aea44c WIP: refactoring source classes #91 2021-09-20 10:50:27 +02:00
Ricardo Bartels
60dfd8ad13 WIP: fixes last commit #91 2021-09-17 19:31:49 +02:00
ricardo.bartels@telekom.de
716ee29446 WIP: adds ip address support for check_redfish source
refs: #91
2021-09-17 16:18:06 +02:00
ricardo.bartels@telekom.de
ffff4904c7 Merge branch 'main' into feature/source-check-redfish 2021-09-14 18:25:45 +02:00
ricardo.bartels@telekom.de
6268a84cbd fixes error with shadowed name 'version' in NetBoxHandler 2021-09-14 18:21:57 +02:00
ricardo.bartels@telekom.de
f12dad5a65 WIP: enhances redfish import and deletes incorrect inv items
refs: #91
2021-09-14 18:17:00 +02:00
ricardo.bartels@telekom.de
34d11017ac WIP: adds more custom fields for a better data representation 2021-09-14 18:16:52 +02:00
ricardo.bartels@telekom.de
37715b2fa7 WIP: adds new source check_redfish #91
refs: #91
refs: #79
2021-09-14 18:16:43 +02:00
ricardo.bartels@telekom.de
9dea35655c add content type headers to netbox requests to stay compliant 2021-09-14 12:49:19 +02:00
ricardo.bartels@telekom.de
edac5f3306 fixes issue with stripped cluster domain name if "strip_host_domain_name" was set to False #89
refs: #89
2021-09-03 10:33:07 +02:00
Ricardo Bartels
3392d53a32 fixes issue with cliustername if strip_host_domain_name is set #75
refs: #75
2021-09-02 22:37:10 +02:00
Ricardo Bartels
37be99c617 fixes issues with insufficient data #80, #81
refs: #80
refs: #81
2021-09-02 22:10:31 +02:00
Yusei Yamanaka
2489248cbb Fix typo 2021-07-06 10:19:47 +09:00
Oliver Bestwalter
7ab8e31117 workaround for problem of undefined objects
There is a circular dependency between class objects that are needed during class creation. There is no way to solve this during module import when the class objects are created. An easy way to fix this is to defer the the creation of the data_model dict to a time where all class objects are already created. Her it is deferred to the point in time, when an object of that class is created, simply making data_model an instance object.

As long as not too many objects are created this is the easiest way to ensure that all objects are already created. The fact that there is now one data_model per instance, instead of one per class will only start to be a problem, if this code needs to adhere to strict memory restrictions or millions of objects are created. Then there are ways to make sure that only the first instance that is created, initializes the data_model on the class object and later initializations have no effect. As that is "cleverer" code though, this should only be done if really necessary.
2021-05-12 16:10:03 +02:00
Oliver Bestwalter
af0d1a5636 clarify intent and make static code analysis happy
Add the mandatory class attributes expected of all subclasses to the parent class. This clarifies the intent that they must be set and which type they have by assigning a falsy object of the correct type. A check on instantiation makes sure then, that all values are set now. There are other ways of doing that, but this is the simplest in the current implementation.

Adding an assert isinstance(...) doubles as a sanity check and a help for the IDE to infer the type of an object (therefore append not being flagged as an undefined method on resolved_object_list anymore).
2021-05-12 13:57:20 +02:00