1. 31 Mar, 2014 2 commits
    • Christos Stavrakakis's avatar
      Update copyright to changed files · 22e9bcc0
      Christos Stavrakakis authored
    • Christos Stavrakakis's avatar
      cyclades: Remove use of the 'uenc' and 'udec' · 58402542
      Christos Stavrakakis authored
      Replace use of 'uenc' and 'udec' functions from 'synnefo.util.text'
      module with the 'smart_decode' and 'smart_unicode' functions from
      'django.utils.encoding' module.
      The uenc/udec functions depend on the locale category LC_CTYPE, which is not
      appropriate for the Synenefo API. We explicitly use the
      smart_unicode/smart_str functions to decode to unicode and encode to
      bytestring objects, always using the utf-8 encoding.
  2. 26 Feb, 2014 1 commit
    • Christos Stavrakakis's avatar
      cyclades: Major refactor to plankton backend · 4fbcfca8
      Christos Stavrakakis authored
      * Rename ImageBackend to PlanktonBackend
      * Rewrite PlanktonBackend methods in order that they refer to Pithos
        objects by their UUID
      * Convert PlanktonBackend to context manager that is responsible for
        returning the PithosBackend connection back to the pool, and remove
        stale 'image_backend' context manager
      * Make PlanktonBackend raise cloud (API) faults
  3. 13 Feb, 2014 1 commit
    • Sofia Papagiannaki's avatar
      pithos: Add support for project originated quota · dccf8009
      Sofia Papagiannaki authored
      Introduce ``project`` container policy. The value of this policy denotes
      the project from which the container quota originate.
      Further changes:
      * domain argument in get_{account|container|object}_meta backend methods
        has become optional unless user defined metadata are requested
      * the pithos frontend does not query anymore the astakosclient
        for the account usage; this is handled by the backend methods
  4. 24 Jan, 2014 1 commit
  5. 23 Jan, 2014 1 commit
  6. 03 Dec, 2013 1 commit
  7. 25 Nov, 2013 1 commit
  8. 29 Oct, 2013 4 commits
  9. 14 Oct, 2013 2 commits
  10. 10 Oct, 2013 1 commit
  11. 30 Sep, 2013 1 commit
  12. 24 Sep, 2013 3 commits
  13. 23 Sep, 2013 2 commits
  14. 17 Sep, 2013 1 commit
    • Christos Stavrakakis's avatar
      cyclades: Mock vm removal if creation fails · a2daae31
      Christos Stavrakakis authored
      In case creating a VM fails before the OP_INSTANCE_CREATE job is
      enqueued in Ganeti, the VM and its NICs must be deleted, and the
      resources must be released from Quotaholder, which is exactly what is
      done when a VM is deleted from Ganeti. Instead of duplicating the code,
      this commit uses the same function that is used by snf-dispatcher, by
      mocking an successfully OP_INSTANCE_REMOVE.
  15. 08 Aug, 2013 1 commit
  16. 02 Jul, 2013 5 commits
    • Sofia Papagiannaki's avatar
      pithos: update tests · 77cbabd2
      Sofia Papagiannaki authored
    • Sofia Papagiannaki's avatar
      pithos: WIP - rewrite pithos tests · f561ebf4
      Sofia Papagiannaki authored
    • Christos Stavrakakis's avatar
      cyclades: Major refactor to api and logic apps · d15f509c
      Christos Stavrakakis authored
      Major refactor to cyclades api and logic apps that removes most code
      from the api views and moves it to logic app, so that the same logic
      code can be used by different apps (e.g. EC2 API). Code is moved into
      This commit also introduces the VirtualMachine.task attribute
      which contains the last issued action to a server. This attribute is set
      when the corresponding job is sent to Ganeti, and is cleared upon
      completion of the corresponding job (task_job_id attribute). Until the
      task is completed, no other action is allowed on the VM. The only
      exception is 'DESTROY' action which is always allowed. Actions on VMs
      with uncompleted tasks results in a bad request fault.  Also, some
      actions are not allowed if the operating state of the VM is not correct.
      For example, it is not allowed to start or resize a running VM.  The
      running task is also exposed to the API (SNF:task_state), and the
      available states are:
      * BUILDING
      * STARTING
      * STOPPING
      * RESIZING
      Also, this commit introduces two quotable resources, the 'active_ram'
      and 'active_cpu' representing the ram and cpu of running instances,
      specifically the instances in 'STARTED', 'BUILD' and 'ERROR' operstate.
      In order to count quotas for these resources, commissioning is needed
      when starting, stopping and rebooting instances. Also, the destroy
      commissioning is different if the vm is running or is stopped.
      Finally this commit changes the way commissioning is used in
      snf-dispatcher. Until now dispatcher only accepted or rejected
      commissions issued by the API. This commit introduces extra logic in
      dispatcher, to issue commissions for every quotable change, if a
      commission for this change has not already been issued by the API. This
      enables the administrator to do whatever action in the Ganeti backend
      without resulting in unsynced quotas. If a new commission is required,
      the previous commission for the VM by the API (if existing) will be
      rejected, since this commission will reflect a different change in the
    • Christos Stavrakakis's avatar
      snf_django: Mock quotaholder to BaseAPITest · 45bd654f
      Christos Stavrakakis authored
      Mock quotaholder in all of BaseAPITest calls.
    • Christos Stavrakakis's avatar
      snf_django: Fix bug in BaseAPITest · af311de8
      Christos Stavrakakis authored
      Include 202 in success responses.
  17. 17 Jun, 2013 1 commit
  18. 06 Jun, 2013 1 commit
  19. 16 May, 2013 1 commit
  20. 09 May, 2013 1 commit
  21. 30 Apr, 2013 1 commit
  22. 08 Apr, 2013 1 commit
  23. 15 Mar, 2013 1 commit