Commit graph

1442 commits

Author SHA1 Message Date
kirby@puppetlabs.com
33b04b384c Add CODEOWNERS file to vmpooler 2019-08-26 14:55:42 -07:00
Jenkins
b560cf4d28 (GEM) update vmpooler version to 0.7.1 2019-08-26 19:08:08 +00:00
Spencer McElmurry
f229d404e4
Merge pull request #336 from mattkirby/fix_pooler_147
(POOLER-147) Fix create_linked_clone pool option
2019-08-23 11:02:15 -05:00
kirby@puppetlabs.com
267772d8eb (POOLER-147) Fix create_linked_clone pool option
This commit updates the create_linked_clone pool option to correctly detect when linked clones have been set at a pool level. Without this change a pool setting create_linked_clone to false is not interpreted correctly, and a linked clone is created if possible.
2019-08-22 14:32:06 -07:00
mattkirby
059a46ca93
Merge pull request #335 from mattkirby/changelog_070
(MAINT) Update changelog for 0.7.0 release
2019-08-21 15:38:42 -07:00
kirby@puppetlabs.com
95a22e951c (MAINT) Update changelog for 0.7.0 release 2019-08-21 15:29:27 -07:00
Jenkins
9f2d653241 (GEM) update vmpooler version to 0.7.0 2019-08-21 21:19:39 +00:00
mchllweeks
edfcb66c5f
Merge pull request #334 from mattkirby/pooler_142
(POOLER-142) Add running host to vm API data
2019-08-21 12:49:45 -07:00
kirby@puppetlabs.com
9c5a0d114b (POOLER-142) Add running host to vm API data
This change adds the running host for a VM to the API data available via /vm/hostname. Without this change the running host would be logged to vmpooler log, but not available any other way. Additionally, the data will specify if a machine has been migrated. Without this change parent host data for a vmpooler machine is not available via the vmpooler API.
2019-08-21 12:43:06 -07:00
Samuel
9d48bc1b7e
Merge pull request #333 from mattkirby/vmp_optional_linkedclone
Make it possible to disable linked clones
2019-08-12 11:42:09 -05:00
kirby@puppetlabs.com
19a2268ecf Add changelog 2019-08-06 14:37:26 -07:00
kirby@puppetlabs.com
09a382a10f Make it possible to disable linked clones
This commit adds a new configuration parameter to allow setting whether to create linked clones on a global, or per pool basis. Without this change vmpooler would always attempt to create linked clones. The default behavior of creating linked clones is preserved.
2019-08-06 14:29:31 -07:00
Jenkins
d319643123 (GEM) update vmpooler version to 0.6.3 2019-07-29 17:22:43 +00:00
Spencer McElmurry
8a3f0bb742
Merge pull request #332 from puppetlabs/pooler-143
(POOLER-143) Add clone_target config change to API
2019-07-29 10:20:47 -07:00
Spencer McElmurry
98a547b807 (POOLER-143) Add clone_target config change to API
This allows the user to change the cluster in which the targeted pool
will clone to. Upon configuration change, the thread will wake up and
execute the change within 1 second.
2019-07-29 08:53:27 -07:00
mattkirby
5bbaf7e8cf
Merge pull request #331 from mattkirby/changelog
(MAINT) Update changelog for 0.6.2
2019-07-17 15:34:33 -07:00
kirby@puppetlabs.com
6b5f10936d (MAINT) Update changelog for 0.6.2 2019-07-17 15:34:11 -07:00
Jenkins
3fef59d776 (GEM) update vmpooler version to 0.6.2 2019-07-17 22:06:33 +00:00
Spencer McElmurry
211c56d669
Merge pull request #330 from mattkirby/pooler_140_1
(POOLER-140) Fix typo in domain
2019-07-17 14:38:18 -07:00
kirby@puppetlabs.com
7abfb97ab5 (POOLER-140) Fix typo in domain
This commit updates the reference to domain from vmpooler config. Without this change the domain value is read as an empty string and breaks checkouts.
2019-07-17 14:27:19 -07:00
Spencer McElmurry
4aad84a045
Merge pull request #329 from mattkirby/pooler_140_1
(POOLER-140) Ensure a VM is alive at checkout
2019-07-17 12:09:56 -07:00
kirby@puppetlabs.com
d6e948d34d (POOLER-140) Ensure a VM is alive at checkout
This commit duplicates the vm_ready? check to the API layer to allow for API to validate that a VM is alive at checkout. Without this change API relies upon the checks in pool_manager validating pools. This change should allow for additional insight into whether a machine is in a ready state and resopnding at checkout time.
2019-07-17 12:03:55 -07:00
Jenkins
a755d8d6a2 (GEM) update vmpooler version to 0.6.1 2019-05-08 16:48:35 +00:00
Spencer McElmurry
2b5e511078
Merge pull request #328 from puppetlabs/changelog-0.6.1
Update Changelog ahead of building 0.6.1
2019-05-08 11:47:19 -05:00
Samuel
b047540ca8
Update Changelog ahead of building 0.6.1 2019-05-08 11:46:13 -05:00
Kevin Imber
b2446dac4c
Merge pull request #327 from puppetlabs/doc-api-note
Update API.md [skip ci]
2019-04-29 09:34:53 -07:00
Samuel
7139375b43
Update API.md 2019-04-29 11:13:59 -05:00
mattkirby
fa670ef3b9
Merge pull request #326 from puppetlabs/optimize-status-api
(maint) Optimize the status api using redis pipeline
2019-04-26 07:58:12 -07:00
mattkirby
4f48f7cbc7
Update changelog ahead of 0.6.0 release. (#325) 2019-04-25 13:04:02 -07:00
Jenkins
5f8f64d269 (GEM) update vmpooler version to 0.6.0 2019-04-24 21:25:35 +00:00
Samuel Beaulieu
8eb15f8d10 (maint) Optimize the status api using redis pipeline
Before this change looping over many pools would query the redis backend
for each pool, leading in slow response from the backend for configurations
with many pools (60+)
Changed the requests to use redis pipelines https://redis.io/topics/pipelining
This is supported since the beginning, so will not force any redis update for
users. The pipeline method runs the queries in batches and we need to loop
over the result and reduces the number of requests to redis by N=number of
pools in the configuration.
2019-04-18 13:24:40 -05:00
Spencer McElmurry
6141cd7ecf
Merge pull request #323 from mattkirby/POOLER_141
(POOLER-141) Fix order of processing migrating and pending queues
2019-04-17 11:57:22 -05:00
Spencer McElmurry
ce6ea1662d
Merge pull request #324 from puppetlabs/QENG-7201
(QENG-7201) Vmpooler pool statistic endpoint optimization
2019-04-17 11:56:48 -05:00
Samuel
399dfe255d
Merge pull request #321 from mattkirby/vmp_051
Update changelog to 0.5.1
2019-04-15 13:15:17 -05:00
Samuel Beaulieu
714a9edf5e (QENG-7201) Adding docs and tests 2019-04-15 13:09:53 -05:00
Samuel
96bd131aa1
Merge pull request #322 from mattkirby/dockerfile_local_bundler
(MAINT) Add bundler to dockerfile_local
2019-04-12 15:55:25 -05:00
Samuel Beaulieu
11d94cc3d2 (QENG-7201) Vmpooler Status API QueueProcessor Optimization
Before this change we used the API /status endpoint to get specific information
on pools such as the number of ready VMs and the max.
This commit creates two new endpoints to get to that information much quicker
1) poolstat?pool= takes a comma separated list of pools to return, and will provide
the max, ready and alias values.
2) /totalrunning will calculate the total number of running VMs across all pools
2019-04-12 14:34:09 -05:00
kirby@puppetlabs.com
2d94cb4266 (POOLER-141) Fix order of processing migrating and pending queues
This commit updates how migrating and pending queues are processed. Sets to be processed are created with sadd in redis, and iterated over as a list in ruby. The latest member is added to the beginning of this set in redis, and becomes the first member of the set in ruby. To ensure that items are processed in the order they are added it is necessary to reverse the list before iterating through its members. Without this change the newest members of the set are processed first, which creates inconsistent times to evaluation.
2019-04-11 12:29:05 -07:00
kirby@puppetlabs.com
0cc06f6eef (MAINT) Add bundler to dockerfile_local
This commit adds bundler to dockerfile_local in order to support building vmpooler. Without this change the dockerfile_local build fails reporting bundler is not available.
2019-04-11 11:54:00 -07:00
Jenkins CI
2f89de35e7 (TAG) update version to 0.5.1 2019-04-11 18:35:43 +00:00
kirby@puppetlabs.com
27a7f76dbf Update changelog to 0.5.1
This commit updates the changelog to version 0.5.1 in preparation for release.
2019-04-09 15:39:25 -07:00
Samuel
5351c9f45e
Merge pull request #320 from mattkirby/pooler_140
(POOLER-140) Ensure a running VM stays in a queue
2019-04-09 13:48:55 -05:00
kirby@puppetlabs.com
d738f35727 (POOLER-140) Ensure a running VM stays in a queue
This commit updates how a VM is checked out to ensure that there is no window where the VM could be considered discovered, and therefore destroyed. Without this change the VM is retrieved by calling 'spop' on the ready queue, and then adding it to the running queue. This change moves to selecting the VM by retrieving the last member of the set, and moving it with 'smove' from ready to running. As a result of this change vmpooler moves from retrieving the VMs from the ready state randomly, to instead retrieve the oldest VM in the queue. This change should reduce churn where it would otherwise not be required to satisfy demand.
2019-04-05 14:01:18 -07:00
Brian Cain
c815c130f8 Fix Dockerfile link in readme and add note about http requests for dev (#316)
* Fix Dockerfile link in README

* Add note about making http requests for dev
2019-03-04 10:05:42 -08:00
Jenkins
a1ec332ffe (TAG) update version to 0.5.0 2019-02-14 20:04:58 +00:00
Spencer McElmurry
9405ac841c
Merge pull request #318 from mattkirby/pooler_139
(POOLER-139) Fix discovering checked out VM
2019-02-14 11:27:52 -06:00
kirby@puppetlabs.com
3e26a8f998 (POOLER-139) Fix discovering checked out VM
This commit updates how vmpooler retrieves VMs to add a VM to the running queue as soon as it is checked out. Without this change it is possible that a VM can be discovered when it is checked out before it is added to the running queue if multiple systems are requested. Additionally, the dockerfile is updated to support specifying the version of vmpooler to install.
2019-02-13 16:43:55 -08:00
Jenkins
5e4ba2bc7e (TAG) update version to 0.4.0 2019-02-06 23:07:36 +00:00
mattkirby
6562117d13
(MAINT) Update changelog for 0.4.0 release (#315) 2019-02-05 16:52:54 -08:00
mchllweeks
8acf28d0b8
Merge pull request #314 from mattkirby/pooler_138
(POOLER-138) Support multiple pools per alias
2019-02-01 16:22:10 -08:00