- docker: Add worker service config for SupervisorD
- docker: ensure supervisor starts
- docker: use correct file location for nginx config
- docker: Fail the build if django is not found
- docker: Install NginX to serve site
- docker: Add supervisord for install
- docker: Add gunicorn for install
- update docker image alpine 3.19 ->3.20
- docker: Ensure SupervisorD daemon config directory exists.
- docker: use alias for static
- access: testing of param causing gunicorn to fail
- docker: place nginx conf in correct path
- docker: gunicorn must call method
- docker: Ensure NginX config applied after it's installed
- docker: Add proxy params for NginX
- docker: Make centurion the default nginx conf
- docker: Correct NginX start command
- docker: Switch to entrypoint
- docker: adjust pyyaml to >-6.0.1
- project_management: Ensure user cant see projects for organizations they are apart of
- project_management: dont order queryset for project
- update django 5.0.8 -> 5.1.2
- settings: Add API filter and search
- core: Add API filter of fields external_system and external_ref for projects
- core: Add API filter of fields external_system and external_ref to tickets
- project_management: increase project field length 50 -> 100 chars
- core: increase ticket title field length 50 -> 100 chars
- core: Add ability track ticket estimation time for completion
- core: Add ability to delete a ticket
- core: [Templating Engine] Add template tag concat_strings
- itim: Add ticket tab to services
- itim: Add ticket tab to clusters
- itam: Add ticket tab to software
- itam: Add ticket tab to operating systems
- itam: Add ticket tab to devices
- config_management: Add ticket tab to conf groups
- core: Add slash command
link
for linking items to tickets - core: Add to markdown rendering model references
- core: Ability to link items to all ticket types
- core: add model ticket linked items
- project_management: Add project milestones api endpoint
- project_management: Add import_project permission and add api serializer
- core: great odins beard, remove the checkbox formatting
- project_management: Add field is_deleted to projects
- project_management: Calculate project completion percentage and display
- core: order project categories with parent name if applicable
- project_management: Add Project Type to the UI
- project_management: Add Project State to the UI
- project_management: add priority field to project model, form and api endpoint
- project_management: add organization field to project form and api endpoint
- project_management: add project_type field to project form
- project_management: add external_ref and external_system field to project model
- project_management: add project type field to project model
- project_management: add project type api endpoint
- project_management: new model project type
- project_management: add project state api endpoint
- project_management: add project state field to project model
- project_managemenet: new model project state
- project_management: add field external system to projects
- core: validate field milestone for all ticket types
- core: Add field milestone to all ticket types
- project_management: Add project milestones
- core: Add slash command "related ticket" for ticket and ticket comments
- core: Suffix username to action comments
- core: Add slash command
/spend
for ticket and ticket comments - core: Disable HTML tag rendering for markdown
- project_management: remove requirement for code field to be populated
- core: Add ticket comment category API endpoint
- core: Ability to assign categories to ticket comments
- core: Add ticket comment categories
- core: Extend all ticket endpoints to contain ticket categories
- core: Add ticket category API endpoint
- core: Ability to assign categories to tickets
- core: Addpage titles to view abstract classes
- core: Add ticket categories
- core: during markdown render, if ticket ID not found return the tag
- core: Add heading anchor plugin to markdown
- core: correct markdown formatting for KB articles
- core: remove project field from being editable when creating project task
- core: Add admonition style
- project_management: Validate project task has project set
- core: set project ID to match url kwarg
- core: Add action comment on title change
- core: Add task listts plugin to markdowm
- core: Add footnote plugin to markdowm
- core: Add admonition plugin to markdowm
- core: Add table extension to markdowm
- core: Add strikethrough extension to markdowm
- core: Add linkify extension to markdowm
- core: move markdown parser py-markdown -> markdown-it
- core: Add organization column to ticket pages
- core: Allow super-user to edit ticket comment source
- core: Render linked tickets the same as the rendered markdown link
- core: Add project task link for related project task
- project_management: Add project duration field
- core: Add external ref to tickets if populated
- core: Add project task permissions
- project_management: Add project tasks
- api: Add project tasks endpoint
- api: Add projects endpoint
- api: Add project management endpoint
- core: support negative numbers when Calculating ticket duration for ticket meta and comments
- core: Caclulate ticket duration for ticket meta and comments
- core: Add edit details to ticket and comments
- core: Don't save model history for ticket models
- core: add option to allow the prevention of history saving for tenancy models
- core: Add project field to tickets allowed fields
- core: Update ticket status when assigned/unassigned users/teams
- core: Create action comment for subscribed users/teams
- core: Create action comment for assigned users/teams
- core: adding of more ticket status icons
- api: Ticket endpoint dynamic permissions
- core: add ticket status badge
- access: add ability to fetch dynamic permissions
- core: Add delete view for ticket types: request, incident, change and problem
- api: when attempting to create a device and it's found within DB, dont recreate, return it.
- core: When solution comment posted to ticket update status to solved
- core: Add opened by column to ticket indexes
- core: permit user to add comment to own ticket
- core: Allow OP to edit own Ticket Comment
- core: Ticket Comment form submission validation
- core: Ticket Comment can be edited by owner
- core: Ticket Comment source hidden for non-triage users
- core: When fetching allowed ticket comment fields, check against permissions
- core: pass request to ticket comment form
- itam: Accept device UUID in any case.
- core: Add ticket status icon
- core: Enable ticket comment created date can be set when an import user
- api: Set default values for ticket comment form to match ticket
- core: render ticket number
#\d+
links within markdown - core: Use common function for markdown rendering for ticket objects
- api: Ensure device can add/edit organization
- core: Add api validation for ticket
- core: Ensure for tenancy objects that the organization is set
- core: Ticket comment orgaanization set to ticket organization
- core: colour code related ticket background to ticket type
- core: Validate ticket related and prevent duel related entries
- core: Validate ticket status field for all ticket types
- core: Add ticket action comments on ticket update
- core: Add Title bar to ticket form
- core: Add field level permission and validation checks
- core: Add permission checking to Tickets form
- access: add dynamic permissions to Tenancy Permissions
- api: Add Tickets endpoint
- itim: Add Problem ticket to navigation
- itim: Add Incident ticket to navigation
- itim: Add Change ticket to navigation
- assistance: Add Request ticket to navigation
- core: add basic ticketing system
- development: add option for including additional stylesheets
- ui: add project management icon
- project_management: Add manager and users for projects and tasks
- project_management: Project task view "view"
- project_management: Project task edit view
- project_management: Project task delete view
- project_management: Project task add view
- project_management: Add project task model
- project_management: save project history
- project_management: add project delete page
- project_management: add project edit page
- project_management: add project view page
- project_management: add project add page
- project_management: add project index page
- project_management: add interim project model
- ensure model mandatory fields don't specify a default value
- api: Ensure user is set to current user for ticket comment
- core: remove org field when editing a ticket
- core: during validation, if subscribed users not specified, use empty list
- core: add missing pagination to ticket comment categories index
- core: add missing pagination to ticket categories index
- project_management: Ensure project type and state show on index page
- core: Add replacement function within ticket validation as
cleaned_data
attribute replacement - core: Ensure the ticket clears project field on project removal
- core: Remove ticket fields user has no access to
- core: correct logic for slash command
/spend
- project_management: correct project view permissions
- core: Correct view permissions for ticket comment category
- core: correct url typo for ticket category API endpoint
- core: dont attempt to modify field for ticket category API list
- core: Dont attempt to render ticket category if none
- core: Correct the delete permission
- core: correct project task reply link for comments
- core: correct project task comment buttons
- project_management: correct comment reply url name
- core: Generate the correct edit url for tickets
- core: Generate the correct comment urls for tickets
- core: Redirect to correct url for itim tickets after adding comment
- core: correct linked tickets hyperlink address
- core: order ticket comments by creation date
- core: Ensure for both ticket and comment, external details are unique.
- core: Ensure on ticket comment create and update a response is returned
- core: Ensure related tricket action comment is trimmed
- core: Team assigned to ticket status update
- api: ensure ticket_type is set from view var
- core: Add ticket fields to ticket types
- core: During ticket form validation confirm if value specified/different then default
- core: Correctly set the ticket type initial value
- core: prevent import user from having permssions within UI
- api: correct ticket view links
- core: Correct display of ticket status within ticket interface
- api: Ensure if device found it is returned
- core: Ensure status field remains as part of ticket
- core: Correct modified field to correct type for ticket comment
- api: Filter ticket comments to match ticket
- core: Correct modified field to correct type
- core: Ensure new ticket can be created
- core: Add
ticket_type
field to import_permissions - core: Ensure that the organization field is available
- core: dont remove hidden fields on ticket comment form
- core: Correct ticket comment permissions
- access: correct permission check to cater for is_global=None
- core: return correct redirect path for related ticket form
- core: use from ticket title for "blocked by"
- access: Don't query for
is_global=None
withinTenancyManager
- core: ensure is_global check does not process null value
- core: Ticket Linked ref render as template
- core: migrate ticket enums to own class
- core: Ticket validation errors setup for both api and ui
- core: for tickets use validation for organization field
- core: refine ticket field permission and validation
- reduce action comment spacing
- core: update markdown styles
- core: migrate ticket number rendering as markdown_it plugin
- core: move markdown functions out of ticket model
- core: Adjust test layout for itsm and project field based permissions
- project_management: migrate projects to new style for views
- core: REmove constraint on setting user for ticket comment
- core: cache fields allowed during ticket validation
- core: dont require specifying ticket status
- core: move id to end for rendered ticket link.
- api: Ticket (change, incident, problem and request) to static api endpoints
- api: make ticket status field mandatory
- api: Move core tickets to own ticket endpoints
- core: During form validation for a ticket, use defaults if not defined for mandatory fields
- core: Ticket form ticket_type to use class var
- core: cache permission check for ticket types
- core: Move allowed fields logic to own function
- access: Add definable parameters to organization mixin
- access: cache user_organizations on lookup
- access: cache object_organization on lookup
- core: Ticket Linked item view checks
- core: Ticket Linked item permission checks
- project_management: Project Milestone api permission checks
- project_management: Project TYpe tenancy model checks
- project_management: Project Type view checks
- project_management: Project Type permission checks
- project_management: Project Type core history checks
- project_management: Project Type tenancy object checks
- project_management: Project State permission checks
- project_management: Project State tenancy model checks
- project_management: Project State view checks
- project_management: Project State core history checks
- project_management: Project State tenancy object checks
- project_management: Project type API permission checks
- project_management: Project state API permission checks
- project_management: Project miletone skipped api checks
- project_management: Project Milestone tenancy model checks
- project_management: Project Milestone view checks
- project_management: Project Milestone ui permission checks
- project_management: Project Milestone core history checks
- project_management: Project Milestone Tenancy object checks
- core: Project tenancy model checks
- core: Project view checks
- core: Project UI permission checks
- core: Project API permission checks
- core: Project history checks
- core: Project Tenancy object checks
- core: Ticket comment category API permission checks
- core: add missing ticket category view checks
- core: ticket comment category tenancy model checks
- core: ticket comment category view checks
- core: ticket comment category ui permission checks
- core: ticket comment category history checks
- core: ticket comment category tenancy model checks
- core: ticket category API permission checks
- core: ticket category history checks
- core: ticket category tenancy model checks
- core: ticket category model checks
- core: view checks
- core: ui permissions
- core: correct project tests for triage user
- core: Project task permission checks
- core: Ticket comment API permission checks
- core: Ticket comment permission checks
- core: Ticket comment Views
- core: Tenancy model tests for ticket comment
- core: ensure history for ticket models is not saved
- Ensure tenancy models save model history
- core: remove duplicated tenancy object tests for ticket model
- core: correct triage user test names for allowed field permissions
- core: project field permission check for triage user
- core: Ticket Action comment checks for related tickets
- core: Ticket Action comment checks for subscribing team
- core: Ticket Action comment checks for subscribing user
- core: Ticket Action comment checks for unassigning team
- core: Ticket Action comment checks for assigning team
- core: Ticket Action comment checks for un-assigning user
- core: Ticket Action comment checks for assigning user
- core: Add ticket project field permission check
- core: ensure ticket_type tests dont have change value that matches ticket type
- core: field based permission tests for add, change, import and triage user
- api: Ticket (change, incident, problem and request) api permission checks
- core: interim ticket unit tests
- itam: Ensure if an attempt to add an existing device via API, it's not recreated and is returned.
- correct typo in test description for
test_model_add_has_permission
- Add view must have function
get_initial
- itam: Refactor Device tests organization field to be editable.
- Ensure tests add organization to tenancy objects on creation
- itim: Dont attempt to apply cluster type config if no type specified.
- itim: Service config rendered as part of cluster config
- itim: dont force config key, validate when it's required
- itim: Services assignable to cluster
- itim: Ability to add configuration to cluster type
- itim: Ability to add external link to cluster
- itim: Ability to add and configure Cluster Types
- itim: Add cluster to history save
- itim: prevent cluster from setting itself as parent
- itim: Ability to add and configure cluster
- itam: Track if device is virtual
- api: Endpoint to fetch user permissions
- development: Add function to filter permissions to those used by centurion
- development: Add new template tag
choice_ids
for string list casting - development: Render
model_name_plural
as part of back button - development: add to form field
model_name_plural
- development: render heading if section included
- base: create detail view templates
- itam: Render Service Config with device config
- itam: Display deployed services for devices
- itim: Prevent circular service dependencies
- itim: Port number validation to check for valid port numbers
- itim: Prevent Service template from being assigned as dependent service
- itim: Add service template support
- itim: Ports for service management
- itim: Service Management
- assistance: Filter KB articles to target user
- assistance: Add date picker to date fields for KB articles
- assistance: Dont display expired articles for "view" users
- base: add code highlighting to markdown
- assistance: Categorised Knowledge base articles
- itim: Add menu entry
- itam: Ability to add device configuration
- settings: New model to allow adding templated links to devices and software
- settings: return the rendering of external links to models
- core: Ensure when saving history json is correctly formatted
- itim: Fix name typo in Add Service button
- Ensure tenancy models have
Meta.verbose_name_plural
attribute - base: Use correct url for back button
- itim: ensure that the service template config is also rendered as part of device config
- itim: dont render link if no device
- itim: Dont show self within service dependencies
- assistance: Only return distinct values when limiting KB articles
- itim: Add Cluster type to index page
- itam: Knowledge Base now uses details template
- itam: Device Type now uses details template
- itam: Operating System now uses details template
- itim: Service Port now uses details template
- itam: Device Model now uses details template
- config_management: Config Groups now uses details template
- itam: Software Categories now uses details template
- itam: manufacturer now uses details template
- itam: software now uses details template
- itam: device now use details template
- itim: services now use details template
- itim: Cluster Types unit tests
- itim: Cluster unit tests
- itam: Correct Device Type Model permissions test to use "change" view
- itam: Correct Operating System Model permissions test to use "change" view
- config_management: Correct Device Model permissions test to use "change" view
- config_management: Correct Config Group permissions test to use "change" view
- itam: Correct Software Category permissions test to use "change" view
- core: Correct manufacturer permissions test to use "change" view
- itam: Correct software permissions test to use "change" view
- model: test for checking if Meta sub-class has variable verbose_name_plural
- external_link: add tests
- api: ensure model_notes is an available field
- access: test field model_notes
- Audit models for validations
- itam: Ensure device name is formatted according to RFC1035 2.3.1
- itam: Ensure device UUID is correctly formatted
- config_management: Ensure that config group can't set self as parent
- settings: ensure that the api token cant be saved to notes field
- api field checks
- software: api field checks
- api: ensure org mixin is inherited by software view
- base: correct project links to github
- api field checks
#128 #162
- teams: api field checks
- organization: api field checks
- add Config groups to API
- api: Add device config groups to devices
- api: Ability to fetch configgroups from api along with config
- api: Ensure device groups is read only
- api: Field existence and type checks for device
- api: test configgroups API fields
- swagger: remove
{format}
suffixed doc entries
- release-b3 fixes
- api: cleanup team post/get
- api: confirm HTTP method is allowed before permission check
- api: Ensure that organizations can't be created via the API
- access: Team model class inheritance order corrected
- confirm that the tenancymanager is called
- itam: Limit os version count to devices user has access to
- itam: only show os version once
- itam: ensure installed operating system count is limited to users organizations
- itam: ensure installed software count is limited to users organizations
- api: When processing uploaded inventory and name does not match, update name to one within inventory file
- config_management: Group name to be entire breadcrumb
- ensure inventory upload matches by both serial number and uuid if device name different
- placeholder for moving organization
- config_management: Prevent a config group from being able to change organization
- itam: On device organization change remove config groups
- config_management: dont attempt to do action during save if group being created
- itam: remove org filter for device so that user can see installations
- itam: remove org filter for operating systems so that user can see installations
- itam: remove org filter for software so that user can see installations
- itam: Device related items should not be global.
- itam: When changing device organization move related items too.
- api: Inventory matching of device second by uuid
- api: Inventory matching of device first by serial number
- base: show warning bar if the user has not set a default organization
- base: dont show user warning bar for non-authenticated user
- api: correct inventory operating system selection by name
- api: correct inventory operating system and it's linking to device
- api: correct inventory device search to be case insensitive
- squashed DB migrations in preparation for v1.0 release.
- Administratively set global items org/is_global field now read-only
- access: Add multi-tennant manager
- core: migrate manufacturer to use new form/view logic
- settings: correct the permission to view manufacturers
- access: Correct team form fields
- config_management: don't exclude parent from field, only self
- repo preperation for v1.0.0-Alpha-1
- Squash database migrations
- tenancy objects
- refactor to single abstract model for inclusion.
- core: Filter every form field if associated with an organization to users organizations only
- core: add var
template_name
to common view template for all views that require it - core: add Display view to common forms abstract class
- navigation: always show every menu for super admin
- core: only display navigation menu item if use can view model
- django: update 5.0.6 -> 5.0.7
- core: add common forms abstract class
- core: add common views abstract class
- add postgreSQL database support
- ui: add config groups navigation icon
- ui: add some navigation icons
- itam: update inventory status icon
- itam: ensure device software pagination links keep interface on software tab
- "Migrate inventory processing to background worker"
- access: enable non-organization django permission checks
- settings: Add celery task results index and view page
- base: Add background worker
- itam: Update Serial Number from inventory if present and Serial Number not set
- itam: Update UUID from inventory if present and UUID not set
- config_management: Don't allow a config group to assign itself as its parent
- config_management: correct permission for deleting a host from config group
- config_management: use parent group details to work out permissions when adding a host
- config_management: use parent group details to work out permissions
- itam: Add missing permissions to software categories index view
- itam: Add missing permissions to device types index view
- itam: Add missing permissions to device model index view
- settings: Add missing permissions to app settings view
- itam: Add missing permissions to software index view
- itam: Add missing permissions to operating system index view
- itam: Add missing permissions to device index view
- config_management: Add missing permissions to group views
- navigation: always show settings menu entry
- itam: cater for fields that are prefixed
- itam: Ability to view software category
- itam: correct view permission
- access: When adding a new team to org ensure parent model is fetched
- access: enable org manager to view orgs
- settings: restrict user visible organizations to ones they are part of
- access: enable org manager to view orgs
- access: fetch object if method exists
- docs: update docs link to new path
- access: correctly set team user parent model to team
- access: fallback to django permissions if org permissions check is false
- access: Correct logic so that org managers can see orgs they manage
- base: add missing content_title to context
- access: Enable Organization Manager to view organisations they are assigned to
- api: correct logic for adding inventory UUID and serial number to device
- ui: navigation alignment and software icon
- ui: display organization manager name instead of ID
- access: ensure name param exists before attempting to access
- itam: dont show none/nil for device fields containing no value
- itam: show device model name instead of ID
- api: Ensure if serial number from inventory is
null
that it's not used - api: ensure checked uuid and serial number is used for updating
- inventory
- itam: only remove device software when not found during inventory upload
- itam: only update software version if different
- existing device without uuid not updated when uploading an inventory
- Device Software tab pagination does not work
- itam: correct device software pagination
- adjust views missing add/change form to now use forms
- add navigation menu expand arrows
- migrate views to use new abstract model view classes
- migrate forms to use new abstract model form class
- access: Rename Team Button "new user" -> "Assign User"
- access: model pk and name not required context for adding a device
- rename field "model notes" -> "Notes"
- remove settings model
- ui: increase indentation to sub-menu items
- itam: rename old inventory status icon for use with security
- api: migrate inventory processing to background worker
- itam: only perform actions on device inventory if DB matches inventory item
- add test test_view_*_attribute_not_exists_fields for add and change views
- fix test_view_change_attribute_type_form_class to test if type class
- views: add test cases for model views
- Add Test case abstract classes to models
- inventory: add mocks?? for calling background worker
- view: view permission checks
- inventory: update tests for background worker changes
- user api token
- api: API token authentication
- api: abilty for user to create/delete api token
- api: create token model
- user_token: conduct user check on token view access
- itam: use same form for edit and add
- itam: dont add field inventorydate if adding new item
- api: inventory upload requires sanitization
- settings: use seperate change/view views
- settings: use form for user settings
- tests: move unit tests to unit test sub-directory
- token_auth: test authentication method token
- more tests
- add .coveragerc to remove non-code files from coverage report
- Unit Tests TenancyObjects
- Test Cases for TenancyObjects
- tests for checking links from rendered templetes
- core: test cases for notes permissions
- config_management: config groups history permissions
- api: Majority of Inventory upload tests
- access: TenancyObject field tests
- access: remove skipped api tests for team users
- Setup Organization Managers
- access: add notes field to organization
- access: add organization manger
- config_management: Use breadcrumbs for child group name display
- config_management: ability to add host to global group
- itam: add a status of "bad" for devices
- itam: paginate device software tab
- itam: status of device visible on device index page
- API Browser
- core: add skeleton http browser
- core: Add a notes field to manufacturer/ publisher
- itam: Add a notes field to software category
- itam: Add a notes field to device types
- itam: Add a notes field to device models
- itam: Add a notes field to software
- itam: Add a notes field to operating system
- itam: Add a notes field to devices
- access: Add a notes field to teams
- base: Add a notes field to
TenancyObjetcs
class - settings: add docs icon to application settings page
- itam: add docs icon to software page
- itam: add docs icon to operating system page
- itam: add docs icon to devices page
- config_management: add docs icon to config groups page
- base: add dynamic docs icon
- config group software
- models: add property parent_object to models that have a parent
- config_management: add config group software to group history
- itam: render group software config within device rendered config
- config_management: assign software action to config group
- sso
- add configuration value 'SESSION_COOKIE_AGE'
- remove development SECRET_KEY and enforce checking for user configured one
- base: build CSRF trusted origins from configuration
- base: Enforceable SSO ONLY
- base: configurable SSO
- itam: remove requirement that user needs change device to add notes
- core: dont attempt to access parent_object if 'None' during history save
- config_management: Add missing parent item getter to model
- core: overridden save within SaveHistory to use default attributes
- access: overridden save to use default attributes
- History does not delete when item deleted
- core: on object delete remove history entries
- inventory upload cant determin object organization
- api: ensure proper permission checking
- dont throw an exception during settings load for an item django already checks
- core: Add overrides for delete so delete history saved for items with parent model
- config_management: correct delete success url
- base: remove social auth from nav menu
- access: add a team user permissions to use team organization
- access: relocate permission check to own function
- itam: move device os tab to details tab
- itam: add device change form and adjust view to be non-form
- itam: migrate device vie to use manual entered fields in two columns
- access: migrate team users view to use forms
- access: migrate teams view to use forms
- access: migrate organization view to use form
- base: cleanup form and prettyfy
- config_management: relocate groups views to own directory
- login to use base template
- adjust template block names
- access: team user model permission check for organization manager
- access: team model permission check for organization manager
- access: organization model permission check for organization manager
- access: add test cases for model delete as organization manager
- access: add test cases for model addd as organization manager
- access: add test cases for model change as organization manager
- access: add test cases for model view as organization manager
- write some more
- core: skip invalid tests
- itam: tests for device type history entries
- core: tests for manufacturer history entries
- move manufacturer to it's parent
- refactor api model permission tests to use an abstract class of test cases
- move tests to the module they belong to
- refactor history permission tests to use an abstract class of test cases
- refactor model permission tests to use an abstract class of test cases
- refactor history entry to have test cases in abstract classes
- itam: history entry tests for software category
- itam: history entry tests for device operating system version
- itam: history entry tests for device operating system
- itam: history entry tests for device software
- itam: ensure child history is removed on config group software delete
- add placeholder tests
- itam: ensure history is removed on software delete
- itam: ensure history is removed on operating system delete
- itam: ensure history is removed on device model delete
- config_management: test history on delete for config groups
- itam: ensure history is removed on device delete
- access: test team history
- access: ensure team user history is created and removed as required
- access: ensure history is removed on team delete
- access: ensure history is removed on item delete
- api: Inventory upload permission checks
- config_management: testing of config_groups rendered config
- config_management: history save tests for config groups software
- config_management: config group software permission for add, change and delete
- base: placeholder tests for config groups software
- base: basic test for merge_software helper
- during unit tests add SECRET_KEY
- 2024 06 05
- database: add mysql support
- api: move invneotry api endpoint to '/api/device/inventory'
- core: support more history types
- core: function to fetch history entry item
- 2024 06 02
- config_management: Add button to groups ui for adding child group
- access: throw error if no organization added
- itam: add delete button to config group within ui
- itam: Config groups rendered configuration now part of devices rendered configuration
- config_management: Ability to delete a host from a config group
- config_management: Ability to add a host to a config group
- config_management: ensure config doesn't use reserved config keys
- config_management: Config groups rendered config
- config_management: add configuration groups
- api: add swagger ui for documentation
- api: filter software to users organizations
- api: filter devices to users organizations
- randomz
- api: add org team view page
- API configuration of permissions
- api: configure team permissions
- itam: ensure device type saves history
- core: correct history view permissions
- config_management: set config dict keys to be valid ansible variables
- itam: correct logic for device add dynamic success url
- itam: correct config group link for device
- config_management: correct model permissions
- config_management: add config management to navigation
- ui: remove api entries from navigation
- api: check for org must by by type None
- api: correct software permissions
- api: corrct device permissions
- api: permissions for teams
- api: correct reverse url lookup to use NS API
- api: permissions for organization
- access: cache object so it doesnt have to be called multiple times
- config_management: move groups to nav menu
- api: migrate devices and software to viewsets
- api: move permission check to mixin
- access: add team option to org permission check
- api: placeholder test for inventory
- settings: access permission check for app settings
- settings: history view permission check for software category
- settings: history view permission check for manufacturer
- settings: history view permission check for device type
- settings: user settings
- settings: view permission check for user settings
- refactor core test layout
- itam: view permission check for software
- itam: view permission check for operating system
- itam: view permission check for device model
- itam: view permission check for device
- config_management: view permission check for config_groups
- access: view permission check for team
- access: view permission check for organization
- add history entry creation tests for most models
- config_management: when adding a host to config group filter out host that are already members of the group
- config_management: unit test for config groups model to ensure permissions are working
- api: remove tests for os and manufacturer as they are not used in api
- api: check model permissions for software
- api: check model permissions for devices
- api: check model permissions for teams
- api: check model permissions for organizations
- Randomz
- access: during organization permission check, check to ensure user is logged on
- history: always create an entry even if user=none
- itam: device uuid must be unique
- itam: device serial number must be unique
- 2024 05 26
- setting: Enable super admin to set ALL manufacturer/publishers as global
- setting: Enable super admin to set ALL device types as global
- setting: Enable super admin to set ALL device models as global
- setting: Enable super admin to set ALL software categories as global
- UI: show build details with page footer
- software: Add output to stdout to show what is and has occurred
- 2024 05 25
- base: Add delete icon to content header
- itam: Populate initial organization value from user default organization for software category creation
- itam: Populate initial organization value from user default organization for device type creation
- itam: Populate initial organization value from user default organization for device model creation
- api: Populate initial organization value from user default organization inventory
- itam: Populate initial organization value from user default organization for Software creation
- itam: Populate initial organization value from user default organization for operating system creation
- device: Populate initial organization value from user default organization
- Add management command software
- setting: Enable super admin to set ALL software as global
- user: Add user settings panel
- Manufacturer and Model Information
- itam: Add publisher to software
- itam: Add publisher to operating system
- itam: Add device model
- core: Add manufacturers
- settings: add dummy model for permissions
- settings: new module for whole of application settings/globals
- 2024 05 21-23
- access: Save changes to history for organization and teams
- software: Save changes to history
- operating_system: Save changes to history
- device: Save changes to history
- core: history model for saving model history
- 2024 05 19/20
- itam: Ability to add notes to software
- itam: Ability to add notes to operating systems
- itam: Ability to add notes on devices
- core: notes model added to core
- device: Record inventory date and show as part of details
- ui: Show inventory details if they exist
- api: API accept computer inventory
- settings: Add correct permissions for team user delete
- settings: Add correct permissions for team user view/change
- settings: Add correct permissions for team view/change
- settings: Add correct permissions for team add
- settings: Add correct permissions for team delete
- access: correct back link within team view
- access: correct url name to be within naming conventions
- settings: Add correct permissions for manufacturer / publisher delete
- settings: Add correct permissions for manufacturer / publisher add
- settings: Add correct permissions for manufacturer / publisher view/update
- settings: Add correct permissions for software category delete
- settings: Add correct permissions for software category add
- settings: Add correct permissions for software category view/update
- settings: Add correct permissions for device type delete
- settings: Add correct permissions for device type add
- settings: Add correct permissions for device type view/update
- settings: Add correct permissions for device model delete
- settings: Add correct permissions for device model add
- settings: Add correct permissions for device model view/update
- access: Add correct permissions for organization view/update
- access: use established view naming
- itam: Add correct permissions for operating system delete
- itam: Add correct permissions for operating system add
- itam: Add correct permissions for operating system view/update
- itam: Add correct permissions for software delete
- itam: Add correct permissions for software add
- itam: for non-admin user use correct order by fields for software view/update
- itam: Add correct permissions for software view/update
- itam: ensure permission_required parameter for view is a list
- core: dont save history when no user information available
- access: during organization permission check, check the entire list of permissions
- core: dont save history for anonymous user
- access: during permission check use post request params for an add action
- user: on new-user signal create settings row if not exist
- itam: ensure only user with change permission can change a device
- user: if user settings row doesn't exist on access create
- access: adding/deleting team group actions moved to model save/delete method override
- api: add teams and permissions to org and teams respectively
- ui: correct repo url used
- api: device inventory date set to read only
- software: ensure management command query correct for migration
- device: OS form trying to add last inventory date when empty
- add static files path to urls
- inventory: Dont select device_type, use 'null'
- base: show "content_title - SITE_TITLE" as site title
- device: Read Only field set as required=false
- correct typo in notes templates
- ui: Ensure navigation menu entry highlighted for sub items
- access: add to models a get_organization function
- access: remove change view
- itam: relocation item delete from list to inside device
- context_processor: relocate as base
- itam: software index does not require created and modified date
- organizations: set org field to null if not set
- itam: move software categories to settings app
- itam: move device types to settings app
- template: content_title can be rendered in base
- cleanup duplicate tests and minor reshuffle
- access: unit testing team user permissions
- access: unit testing team permissions
- settings: unit testing manufacturer permissions
- settings: unit testing software category permissions
- device_model: unit testing device type permissions
- device_model: unit testing device model permissions
- organization: unit testing organization permissions
- operating_system: unit testing operating system permissions
- software: unit testing software permissions
- device: unit testing device permissions
- adjust test layout and update contributing
- core: placeholder tests for history component
- core: place holder tests for notes model
- api: add placeholder tests for inventory
- 2024 05 18
- itam: Add Operating System to ITAM models
- api: force content type to be JSON for req/resp
- software: view software
- 2024 05 17
- device: Prevent devices from being set global
- software: if no installations found, denote
- device: configurable software version
- software_version: name does not need to be unique
- software_version: set is_global to match software
- software: prettify device software action
- software: ability to add software versions
- base: add stylised action button/text
- software: add pagination for index
- device: add pagination for index
- device: correct software link
- API token auth
- api: initial token authentication implementation
- itam and API setup
- docker: add settings to store data in separate volume
- django: add split settings for specifying additional settings paths
- api: Add device config to device
- itam: add organization to device installs
- itam: migrate app from own repo
- Enable API by default
- Genesis
- admin: remove team management
- admin: remove group management
- access: adjustable team permissions
- api: initial work on API
- template: add header content icon block
- tenancy: Add is_ global field
- access: when modifying a team ad/remove user from linked group
- auth: include python social auth django application
- Build docker container for release
- access: add permissions to team and user
- style: format check boxes
- access: delete team user form
- view: new user
- user who is 'is_superuser' to view everything and not be denied access
- access: add org mixin to current views
- access: add views for each action for teams
- access: add mixin to check organization permissions against user and object
- account: show admin site link if user is staff
- development: added the debug django app
- access: rename structure to access and remove organization app in favour of own implementation
- account: Add user password change form
- urls: provide option to exclude navigation items
- structure: unregister admin pages from organization app not required
- auth: Custom Login Page
- auth: Add User Account Menu
- auth: Setup Login required
- Dyno-magic build navigation from application urls.py
- structure: Select and View an individual Organization
- structure: View Organizations
- app: Add new app structure for organizations and teams
- template: add base template
- django: add organizations app
- itam: device software to come from device org or global not users orgs
- access: correct team required permissions
- fields: correct autoslug field so it works
- docker: build wheels then install
- button to use same selection colour
- access: remove inline form for org teams
- rename app from itsm -> app
- access: dont use inline formset
- views: move views to own directory
- access: addjust org and teams to use different view per action
- interim unit tests