Quota Source Type user not working

Hi,

When I change the quota_source_type attribute to ‘user’ (Instance: / System / CommonMethods / QuotaStateMachine / quota), then the request of a user remains in request state ‘pending’ and doesn’t continue at all (no VM is being provisioned). When the quota_source_type attribute is set to ‘group’ or even ‘tenant’, the request is being processed as expected.
Does anybody have the same issue? Are there some special attributes to take care when quota_source_type attribute is set to ‘user’? I saw some email checking function but same result when I commented out that part.

Use Case: A user should be able to request a max of 4 VMs in total. The limitation shouldn’t be set on group level but on user level as each user should be able to get 4 VMs.

Thanks and best Regards,
Francophonix

Hi,

I used user quota once and it was in Cloudforms 4.5.
I did not use it ever since.

As far as i remember, change the quota source type and then tag the user with the quota tags.
It worked correctly at that time.

Caveat with user quota: If you plan to use external auth, keep in mind that you cannot tag an user until such user logs in for the fist time.

Cheers.

Hi,

Thank you for your answer. Somehow a reboot of the EVM fixed it… Nevertheless, I’m struggling now with following Error when tags are set to the user or group:

As soon as the tags are removed, the provisioning has no errors - any clue? Reboot didn’t fix it that time for me :wink:

Cheers

Hi,

Fixed it myself… I had to define the corresponding Warn Tags, too. Afterwards, the error disappeared.

Another question… Did anybody manage to assign (“inherit”) the group quota tags for users? Basically, I don’t want to assign the same tags for all users but get them from a common group. The use case is users can order a specific amount of VMs based on their group membership but each user should be able to order the maximum of VMs allowed per user.
Example:
user1 is member of groupA. Each member of groupA should be able to order a maximum of 2 VMs. No member of groupA should be able to order more than 2 VMs. The amount of users in groupA might vary.

I thought about setting the quota_source to the current group if the quota source attribute is ‘user’ but it doesn’t respect it:

when 'user'
  #$evm.root['quota_source'] = @miq_request.requester
  $evm.root['quota_source'] = @miq_request.requester.current_group

Cheers.