Skip to content
Snippets Groups Projects
  1. Mar 18, 2019
    • Benjamin Bertrand's avatar
      Trigger AWX inventory update on database change · e000c2f0
      Benjamin Bertrand authored
      A job running in AWX prevents an inventory sync (of the same
      inventory). This restricts AWX to run only one job at a time as
      the inventory is always updated on launch.
      To prevent this issue, the inventory is updated from AWX when needed.
      
      - The update is triggered on any model modification that is used in the
      inventory (AnsibleGroup, Cname, Domain, Host, Network, NetworkScope)
      - For Interface, the inventory sync is triggered by the
      trigger_core_services function as it depends on it
      - The inventory update job is put on the "high" queue so that it takes
      precedence over all other jobs.
      
      JIRA INFRA-887 #action In Progress
      e000c2f0
    • Benjamin Bertrand's avatar
      Use queues of different priorities · f30a711b
      Benjamin Bertrand authored
      Ensure that the trigger_core_services_update job is always processed
      before the other jobs (low queue).
      
      JIRA INFRA-887
      f30a711b
    • Benjamin Bertrand's avatar
      Allow users to create VM/VIOC · 8f209774
      Benjamin Bertrand authored
      - users with access to the network can create VIOC
      - VM can be created only in the ALLOWED_VM_CREATION_DOMAINS
      
      JIRA INFRA-775
      8f209774
    • Benjamin Bertrand's avatar
      Add osversion field to CreateVMForm · dbe8ad11
      Benjamin Bertrand authored
      - vm_osversion is passed as extra variables to the create_vm job
      template
      - vm_cores/vm_memory/vm_disk_size are also passed as extra variables
      instead of saving them as host variables. Saving the variables in the
      host when submitting the form forces to update the inventory before to
      trigger the job to create the VM. This can be avoided using extra
      variables. Furthermore those variables don't need to be in the
      inventory, they can be retrieved as facts.
      
      JIRA INFRA-877
      dbe8ad11
  2. Mar 07, 2019
  3. Mar 05, 2019
    • Benjamin Bertrand's avatar
      Allow to launch a workflow job · 7cdc15f4
      Benjamin Bertrand authored
      New resource argument can be passed to launch_job_template.
      It is optional and is set to "job" by default.
      Shall be set to "workflow_job" to run a workflow template.
      
      Note that passing the workflow name didn't work during my test.
      The id had to be used instead.
      
      JIRA INFRA-867 #action In Progress
      7cdc15f4
    • Benjamin Bertrand's avatar
      Update VIOC core choices · cc6cf0c9
      Benjamin Bertrand authored
      cc6cf0c9
  4. Jan 28, 2019
    • Benjamin Bertrand's avatar
      Add post install job after VM creation · 4d2dcf3b
      Benjamin Bertrand authored
      After a VM or VIOC creation, a post install job can be triggered.
      The job to trigger is based on the domain and defined in the
      AWX_POST_INSTALL dictionary.
      
      Admin users have the option to skip this post job if required.
      
      The job is enqueued in RQ with a dependency on the creation job.
      So it's only triggered after successful completion of the first one.
      
      JIRA INFRA-769
      4d2dcf3b
  5. Jan 23, 2019
    • Benjamin Bertrand's avatar
      Pass disk size in inventory when creating VM · 0d575840
      Benjamin Bertrand authored
      - Disk size added to the create VM form
      - Disk size saved to proxmox_disk_space variable in host inventory
      
      The proxmox_disk_space variable is used by the Ansible job when creating
      the machine.
      
      JIRA INFRA-759 #action In Progress
      0d575840
  6. Nov 30, 2018
  7. Nov 27, 2018
  8. Nov 09, 2018
  9. Oct 05, 2018
  10. Sep 28, 2018
    • Benjamin Bertrand's avatar
      Add button to export items to excel file · 8471ec5b
      Benjamin Bertrand authored
      Retrieving all items from the database takes some time.
      The task is thus handled by the RQ worker.
      We use ajax to periodically monitor the status of the job
      and redirect to the file when ready.
      A progress bar is displayed to let the user see the progress.
      
      The mechanism put in place could be re-used for other use cases.
      
      JIRA INFRA-545 #action In Progress
      8471ec5b
  11. Sep 14, 2018
  12. Jul 17, 2018
  13. Jul 06, 2018
  14. Jul 03, 2018
  15. May 25, 2018
    • Benjamin Bertrand's avatar
      Allow to easily identify staging server · 3f3b43a7
      Benjamin Bertrand authored
      Change "CSentry" to "CSEntry-test" in the navbar (upper left corner)
      and set it to red on the staging server.
      
      This is done by setting the variable CSENTRY_STAGING to True in the
      settings.cfg file for the staging server (variable set to False by
      default).
      
      JIRA INFRA-347
      3f3b43a7
  16. May 23, 2018
  17. May 22, 2018
  18. May 09, 2018
  19. Apr 27, 2018
  20. Mar 07, 2018
    • Benjamin Bertrand's avatar
      Accept a list of LDAP groups · 89a98b9b
      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
      89a98b9b
  21. Mar 06, 2018
  22. Feb 09, 2018
  23. Jan 02, 2018
  24. Dec 18, 2017
    • Benjamin Bertrand's avatar
      Define temporary ICS id that can be changed · fd3109c4
      Benjamin Bertrand authored
      It shouldn't be possible to change the ICS id of an item.
      But when registering a bunch of existing items via the API, we need to
      allocate an ics_id otherwise not much can be done in the interface.
      The id is required for the view and edit page.
      
      The solution is to define some "temporary" ids that don't correspond to
      any pre-printed labels.
      Items with a temporary id can be assigned a real ics_id when assigning a
      label.
      
      Reserved ids start with 'ZZ' (from ZZA000 to ZZZ999)
      
      ICS id can now be non nullable.
      fd3109c4
    • Benjamin Bertrand's avatar
      Pass selected values to register network form · 8d4e8f94
      Benjamin Bertrand authored
      Allow to customize the default selected values:
      - the default network prefix can be defined in the configuration (default to 24)
      - the default first and last IP chosen can probably be improved
        it defaults to hosts[9] and hosts[-5] if the list has more than 15
        elements or the first and last otherwise
      
      Note that when using a small prefix (< 19), the number of possilbe IPs is quite
      large and updating the first and last IP select field takes some time...
      8d4e8f94
  25. Dec 13, 2017
    • Benjamin Bertrand's avatar
      Add server side session using Flask-Session · d5d3530a
      Benjamin Bertrand authored
      In Flask, session data are stored in a cookie by default.
      Using a server side session, there is no risk of putting too much data
      in the session and transmissting a big cookie on every request
      (only an id is sent in the cookie).
      
      Redis is used as backend (without persistent storage).
      d5d3530a
    • Benjamin Bertrand's avatar
      Add token revoking · c5965f94
      Benjamin Bertrand authored
      - All created tokens are stored in the database.
        To revoke a token, we just delete it from the database.
        Tokens not found in the database are thus considered unvalid / revoked.
      
      - Add button to copy generated token to the clipboard
      
      - Redesign profile page
      c5965f94
Loading