- Jul 02, 2018
-
-
Benjamin Bertrand authored
Table used to save the RQ background jobs JIRA INFRA-403
-
- May 23, 2018
-
-
Benjamin Bertrand authored
Allow to create a VM or Virtual IOC
-
Benjamin Bertrand authored
"gateway" tag removed. It could be re-added if needed to overwrite the default computed gateway for example. JIRA INFRA-339
-
- May 22, 2018
-
-
Benjamin Bertrand authored
Tags and device_types are used as key in Ansible roles. They shouldn't contain any spaces to avoid issues. JIRA INFRA-334
-
- Apr 23, 2018
-
-
Benjamin Bertrand authored
This is to be used for stack of switches only - a stack_member is linked to an host (device_type has to be "Switch") - a stack_member is an integer between 0 and 9 (included) or can be None - the couple (host_id, stack_member) must be unique JIRA INFRA-267
-
- Apr 20, 2018
-
-
Benjamin Bertrand authored
1. When we have a stack of switches, the same IP is associated to several switches 2. Move the items <-> host assocation to the item create/edit page JIRA INFRA-267
-
- Apr 10, 2018
-
-
Benjamin Bertrand authored
JIRA INFRA-281
-
- Apr 09, 2018
-
-
Benjamin Bertrand authored
- create many-to-many relationships between the user table and attributes tables (manufacturer / model / location / status / action) - add a checkbox as the first column of the attributes table to add or remove an attribute to the favorites - add a new page to display the favorite attributes JIRA INFRA-283
-
- Apr 06, 2018
-
-
Benjamin Bertrand authored
JIRA INFRA-277
-
Benjamin Bertrand authored
"type" field on host replaced with foreign key "machine_type_id" JIRA INFRA-281
-
- Mar 13, 2018
-
-
Benjamin Bertrand authored
Having the username in the API is more useful than the display name. We keep the display name in the UI. Fix INFRA-241
-
- Mar 07, 2018
-
-
Benjamin Bertrand authored
Not everyone at ICS is part of the 'ICS Employees' AD group. We have to accept 'ICS Consultants' as well. The CSENTRY_LDAP_GROUPS settings now takes a list of groups instead of just one. Remove unused is_member_of_all_groups method. Fixes INFRA-225
-
- Feb 28, 2018
-
-
Benjamin Bertrand authored
-
- Feb 26, 2018
-
-
Benjamin Bertrand authored
Fix error: User instance is not bound to a Session; attribute refresh operation cannot proceed
-
- Feb 23, 2018
-
-
Benjamin Bertrand authored
-
- Feb 12, 2018
-
-
Benjamin Bertrand authored
The network range defines the IP to be allocated. This is to reserve some specific addresses (for gateway for example). An admin user should be able to define an interface outside the network range. The IP address select field was replaced with a string field (initialized to the first available IP). Fixes INFRA-200
-
- Feb 09, 2018
-
-
Benjamin Bertrand authored
- add domain_id on NetworkScope table to define a default domain - add domain_id on Network (default to the Network Scope one) Fixes INFRA-194
-
- Feb 02, 2018
-
-
Benjamin Bertrand authored
-
- Jan 18, 2018
-
-
Benjamin Bertrand authored
Allow to keep track of batches of small parts.
-
- Jan 16, 2018
-
-
Benjamin Bertrand authored
Command shall be run every night to keep the users in the database in sync with the LDAP server. If a user is not found: - set its groups to [] - revoke all its tokens
-
- Jan 12, 2018
-
-
Benjamin Bertrand authored
-
Benjamin Bertrand authored
The string representation of a Network is the vlan_name. This is what we should allow to pass as string to create an interface. Note that if we pass network_id instead of network when creating and interface, the validate_interfaces method from the Network class is not called.
-
Benjamin Bertrand authored
The user_id is stored in the flask session. On every page load, we query the database to get: - the user objet (user_account table) - the user's groups (group table) to know what the user can access If we try to cache the user_load function, the following error is raised when retrieving the groups: sqlalchemy.orm.exc.DetachedInstanceError: Parent instance <User at 0x7f51e050a940> is not bound to a Session; lazy load operation of attribute 'grp' cannot proceed The groups from AD are only stored to map them with CSENTRY_LDAP_GROUPS. We don't do any query on them (get all users from one group). As we always query them with one user, it's more efficient to store them in the user_account table as an array than in a separate table. This allows to easily cache the load_user function. Note that we have to remember to add the current_user to the sqlalchemy session if we want to modify it or access a relationship (like tokens)! The load_user function is now cached for 30 minutes. This decreases a lot the number of database queries. Fix INFRA-156
-
- Jan 03, 2018
-
-
Benjamin Bertrand authored
Some tags (like gateway) should only be selectable by admin users.
-
Benjamin Bertrand authored
- The query to retrieve used ICS ids was run at each iteration of the loop... - Use a set to quickly test the existence of used ICS ids
-
- Jan 02, 2018
-
-
Benjamin Bertrand authored
-
Benjamin Bertrand authored
Having the description field only on the Model class makes things inconsistent. It's nice to have a description on other attributes as well.
-
Benjamin Bertrand authored
The generation of the QR code image is quite slow and makes the page displaying them take a long time to load when it includes more a few. The data never changes and can easily be cached (the repr() of the class is used in the cache key, so if the name or id changes, the cache will be recomputed - there is no need for a timeout).
-
- Dec 22, 2017
-
-
Benjamin Bertrand authored
The user_id is used to track the item creator. It's not supposed to be updated afterwards. There is no need to track changes.
-
- Dec 21, 2017
-
-
Benjamin Bertrand authored
Strings are automatically converted to datetime object. Note that datetime are stored without timezone in the database (in UTC).
-
Benjamin Bertrand authored
text is really generic and could conflict with another variable. body is often used for comments.
-
Benjamin Bertrand authored
-
Benjamin Bertrand authored
Required to create users when importing items from JIRA. Renamed blueprint from "users" to "user" to be consistent with other blueprints (inventory and network).
-
Benjamin Bertrand authored
+ fix tests
-
Benjamin Bertrand authored
This allows to easily register items via the API without giving an ICS id.
-
Benjamin Bertrand authored
- This will help tracking who and what was created / changed - Move fetch_current_user_id to utils.py - Make ItemComment inherit from CreatedMixin
-
- Dec 20, 2017
-
-
Benjamin Bertrand authored
-
Benjamin Bertrand authored
Add delete and delete-orphan options to the cascade behavior: - delete: delete from database associated cnames when deleting an interface - delete-orphan: delete cname when removing it from the list of interface.cnames
-
- Dec 19, 2017
-
-
Benjamin Bertrand authored
Allow to create/delete cnames when creating/deleting interfaces
-
Benjamin Bertrand authored
Move regex to validators.py
-