Version bump to add 2.13 series, revision bump for 2.12 series. Clean up ebuild signi...
authorPatrick McLean <chutzpah@gentoo.org>
Fri, 8 May 2015 00:29:20 +0000 (00:29 +0000)
committerPatrick McLean <chutzpah@gentoo.org>
Fri, 8 May 2015 00:29:20 +0000 (00:29 +0000)
Package-Manager: portage-2.2.18/cvs/Linux x86_64
Manifest-Sign-Key: 0xE3F69979BB4B8928DA78E3D17CBF44EF

app-emulation/ganeti/ChangeLog
app-emulation/ganeti/Manifest
app-emulation/ganeti/files/ganeti-2.13-daemon-util.patch [new file with mode: 0644]
app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch [new file with mode: 0644]
app-emulation/ganeti/files/ganeti-2.13-process_unittest.patch [new file with mode: 0644]
app-emulation/ganeti/files/ganeti-2.13-regex-pcre-builtin.patch [new file with mode: 0644]
app-emulation/ganeti/ganeti-2.12.3-r1.ebuild [moved from app-emulation/ganeti/ganeti-2.12.3.ebuild with 87% similarity]
app-emulation/ganeti/ganeti-2.13.0.ebuild [new file with mode: 0644]

index 8ab705b2fd30f7c813dcbb2b3ef2b6f9bd261911..309770b79cccec82b0f3fd863f758644b3f5086d 100644 (file)
@@ -1,6 +1,19 @@
 # ChangeLog for app-emulation/ganeti
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ChangeLog,v 1.102 2015/05/07 17:40:19 chutzpah Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ChangeLog,v 1.103 2015/05/08 00:29:05 chutzpah Exp $
+
+*ganeti-2.12.3-r1 (08 May 2015)
+*ganeti-2.13.0 (08 May 2015)
+
+  08 May 2015; Patrick McLean <chutzpah@gentoo.org>
+  +files/ganeti-2.13-daemon-util.patch,
+  +files/ganeti-2.13-disable-usersgroups-test.patch,
+  +files/ganeti-2.13-process_unittest.patch,
+  +files/ganeti-2.13-regex-pcre-builtin.patch, +ganeti-2.12.3-r1.ebuild,
+  +ganeti-2.13.0.ebuild, -ganeti-2.12.3.ebuild:
+  Version bump to add 2.13 series, revision bump for 2.12 series. Clean up
+  ebuild signifigantly, add fix for bug #526270. Fixup installation of bash-
+  completions.
 
 *ganeti-2.12.3 (07 May 2015)
 
index b36a1e97f50d7466c122c9d26cbda9e2c925e21c..f2bcbcd3c6542dc409f8df6daaa7d4999a6da71d 100644 (file)
@@ -19,6 +19,10 @@ AUX ganeti-2.12-qemu-enable-kvm.patch 569 SHA256 0dffced71895e89433683f4dbbfec4c
 AUX ganeti-2.12-start-stop-daemon-args.patch 1310 SHA256 6865b90e4b6662d05e6a87b6369ffbfc3e2568796873ebfb6cad36f422ea9671 SHA512 dad3fdbecc1efcb01cd22ba277122f07c7193eb11ad5e45d5e6c82ccace5cf13f1d666241412a484ffbf5581d652329b8fd267ab0fdca4ae79966f3c40cd579e WHIRLPOOL 293f0bac532a5bbcd4daf75ee903ceddf48269c71efe0e2a2fd02c767f79ea35d1fcfb10415ea97fdf556525cc6240202309c17804f1000fa0aa6999151517af
 AUX ganeti-2.12-tests.patch 2576 SHA256 b0307e3532e1fc5e48a24ecc3add5a4d8ac96d3d7764956d25741143c52d9802 SHA512 af7a6883d25576ef1191e0ddce6eb469bf2c46e566e0f8d89e3e1ebe985a51d35b6cc95e4684c0035e30589849c27e39be51a7b8ebf94821ade7e996921021d1 WHIRLPOOL 816e7116ffeafb9adcfdfeac8475436c30b3a941478e1bd7efb3a08536ae4f040b80926b1e709aac97fd1d04f4ba61221fe42c5a82537b0bfbd9e58d519e908d
 AUX ganeti-2.12.3-daemon-util.patch 1056 SHA256 bf7a104ffda6974d916cc231d6ee04b362953c2a969b0e1570fb0740243d0dd7 SHA512 7fdad6f192d856982bd72177952119126635cd41878217ddfa19d89b910872df2e0b4dfe9fde5665c911efad2aa503dfd7b579a0e03374fe20958e67ece10a41 WHIRLPOOL 5594456f8dea8f72ca3ae425fb5bcef242adf14a08c7078be54b10c53807e3a6278ffa8231be0793c2fd7bf0932eab6fb097a5dde039f659aa7871fbc7a9ff36
+AUX ganeti-2.13-daemon-util.patch 1221 SHA256 cacf7382508a291428bb47396942a4e17a14e2311fee08221abc8b3f79359e87 SHA512 e2a6960cd050763e2bf456f0e6737ebd105e241f1340e805e8aca016671d0859a9e4a7716705a930f18fba138d27989a66cd46c7e6e9653499ac0988fc256f63 WHIRLPOOL d84d5741c53c951c8d99cf9ffa2166f760084aba598dc4a9bf5ef56ecb9f587279be2e2c1a4151d2b699fba3236f35060318aab00a7842edc56c53a9c60a8527
+AUX ganeti-2.13-disable-usersgroups-test.patch 2978 SHA256 82a4bd9c1d14aecde431e59e921a0d10b645a9caf66e5091bd73386c54e59e26 SHA512 c2c1e6cf187f72d72f6eb439fba4927b3f39854c8dedfd59fb3916d320ea95184165728f0a2732542702af7a69022fe61bb84deb962791738b32177afd239d63 WHIRLPOOL 4c64507fbc37456e272f3b58500dff86665525de952e12c96b9d88472f227dea80d43daae17c761e7c345b81ce736087a8b1084d500188d8cf490fd85c841631
+AUX ganeti-2.13-process_unittest.patch 1027 SHA256 8b557f697469a7600e994f8f69ea0171564012bfba6cf3c7395a1fa9b1091418 SHA512 305b7fc43e8b0e9ce3d830be68d6f309b4b7cea54505b1bc615f83255a52d75cc6010ceafc1a44b5e4ce359936f8294bdfeb8fe7f616a81f15a1174851f69f34 WHIRLPOOL 96ad8a3a8da4531376977b7fac5cf53678de9ffdadefdac5c304114febc76a961202b1cb10a86dc82206bdcb25440325033248548c856689cedec6a88e4fd63d
+AUX ganeti-2.13-regex-pcre-builtin.patch 411 SHA256 66de38e6d7bffc3954333ce9f7d4769810119ddf697ce87ed0cd9adaf8d96fdc SHA512 07c41d5afd3cc48c212cf67bf3f1f66030e1f84c6a4598c00160be10d4b71b093b131c1c9b1865f9f3b6f331ef1b6c589b0a7e56a9f80df048888f39e2534f12 WHIRLPOOL 35baa3632eba22e51b8f8754092f4e781d7ae785942a4ea547ed7fe7efe455d750d243ab29daf9e38a0adc0aaf84970533f2b97d78dba2ead952020a7808fa2c
 AUX ganeti-2.2.initd 2722 SHA256 5179b6350a35f8a2f854123fd3ef1ce0c95ccc4bd3c6fd5c464d67f04097a28d SHA512 d4986ee603470b3632607b0b8b5225abf2c98a037107cd8eda30990bbd9174a71f82415e127fa80fc431e8b342f4c35c9b41f9f943ab3803fcbde8133a8f4ea3 WHIRLPOOL d5dc5dca4d5f18d793c1da5361d80def382bc41ad6db0a9e98a43e2b6cb7612417062223abc86ef20f7bbe96e4197acd5f397a88cf97af77a06aaabf38cfa61d
 AUX ganeti-2.6-add-pgrep.patch 1266 SHA256 6a42a97d9f76170bab8f0ef0f99a1afe524fb659d253b05ba3d27f8d48e50d7b SHA512 72f766663f42778273e030239c94dcdf8059e233ddeafbf3d0b7b3dc815db88f2764adefe60d5a88abc9a5df3fa511583da8f4c9073d873b94f269d8b3572e89 WHIRLPOOL afaa7224b45cd09762daaf523d42c1d5fa6603b8aed4eea64abcc4f0c35d90f9fd10965eb1cc1cc8c9499544ed3b904f0168eaa9e42d9a2e2bfe5b874bbbdaf3
 AUX ganeti-2.6-fix-args.patch 1546 SHA256 1cc4e8176736eb42341b7b38575b4ab30c9b18cc1b9c2c7d1612a13833221704 SHA512 344cd96ddaea631d99937e419da8b7e0eb00a67415f71551b8786924fc6674cdda38128bd5a753b8bea8d6d263677e35632d724676990dd86c8b7f7b35d6e073 WHIRLPOOL 5d162f96f7eccf26212914c33b5b4e0094aaac72da4458f7fac2a18c5e41e6f3e54f6a0b0c33fa3671a419754227d1f68252c513dd6fbae42ae5561f0e8a51d8
@@ -39,28 +43,30 @@ DIST ganeti-2.10.5.tar.gz 3855105 SHA256 7b66a0a13344f484bc1d1e90f84227438e2cdbb
 DIST ganeti-2.11.6.tar.gz 4145886 SHA256 db11659ae7aaab5933b55b35f703236edc91ec763e443ac80679a057ba57af5e SHA512 c68ba0661f7598b2fbd67a96fd897e9a8fe7c3a79e914200c08a8e6cb78ad7ea8a85ce7cfee157e22c07d5f46ae6ed61d946cf2cc3852624cd303deb96f1e449 WHIRLPOOL 9bd0acd85ed86b8d05164d6ee70ea960fd42128f9144739c148e70917675d53c1d808d22df981a1ea0d843dfc5fd14fd516d6d39330634beec7eb0ecae4cbe5b
 DIST ganeti-2.12.1.tar.gz 4353529 SHA256 bd1b33d12485f4de25cca74dcf2e5354067cdda5ee36b56333d402aa1c5351e0 SHA512 92f66b45b5adcfd4cca47a1cbd592489d6c3ec595d3c6ba7b4a9401cb588a51994288499078513d6f4c0369f15a403c796a526945a2e874e8d561aac2b962b7a WHIRLPOOL 60f446b851f0bcee536791ed01d470c7a5caf02b120891e370f491f07194c1b0d9fe991a0342c7f77f3762c4aaea1ae7b7cf731644d061f43f4ba38af36cf699
 DIST ganeti-2.12.3.tar.gz 4373350 SHA256 e66fc4c3dde1e90d85749ceb5c1c90bd6eaed1d139796829833b74337d2d4148 SHA512 7715db8e472e4ac99bf184028cd9853495153485c6638bcddba2d05ce958b6b44d3be07290780bb27b22337ae646881d6b0a30bbe87b7249106ac34d22bdd6c2 WHIRLPOOL e24d695d5acc582905ae7ba003e3fe6e6aa6ea4f9135daf76b953864c392803cd1c6ed81eb0e96652038f289bf450f3ac1a428c46d7a2573bc39a9451a47694e
+DIST ganeti-2.13.0.tar.gz 4573781 SHA256 30ccfa971b15d49b45a4bfb75bb9631c0993adbd7feac0562c11305ae8c13753 SHA512 bd847ae7e12cb978fae59a458a4d0e33fee470c51748964453b5d0ea6615e6d959519c84922e92229e942a88f1ad88a6d1cb655f58391d033d5f5dfc249ef941 WHIRLPOOL 925159e36fde1cd36214b4fe54b4e06958cc8bd3ded28e32bc4f99842aafcb4c53c701c8a651421559dc13b4d18ae2cc11f1b9d1d2da1e862561cca81d009bda
 DIST ganeti-2.4.5.tar.gz 1828118 SHA256 9141379f3802238fb209309ec12f7090d872b77d7a473c91fe766d1fcec97c89 SHA512 e3abc2fd7c031fbef41c6e993f4cb129fa1dd4cb8c44961a2574da23832fd8412b8b3664b2e05ba8236cb8e58e8d70c3c9081f3f1b6dba8ffdc28d298c8a5099 WHIRLPOOL 897c2b3cdf0c7b03232a4ec99314439dbd29afd65eb2502d21a9f197cc098323a4b9ec0671c24ef7aad44b5327316ee68731e7e5304c8730d03f8ca908b93b62
 EBUILD ganeti-2.10.5-r4.ebuild 4769 SHA256 18efc033129eecb462c3559d687be601e5a87e6a62ba7529dddb225585219529 SHA512 8a57c218c620bcbb9ff06c8b6890d27d2700bee874aa0384f684dabc812958ff7e115cc60bbd5f7a75fc83174b52571c46c849a3bc29c479a2ab7977e86aec7f WHIRLPOOL af3edcd223e25613039759f649a699d75493d2386873ce1fa1f93afcef553379f1a454026d2b4196af3f576626284d3d9bf7eed116262d0b86bb897f085ec8fe
 EBUILD ganeti-2.11.6-r2.ebuild 6230 SHA256 5c5347c10abb0a9a3283c28cba35555e04424242782fb55598dd1f9d756f9ccc SHA512 1be5877df3a58db0a1a1e37c0e5729df1cb7c516c90057e8da16ba428a3d9c2a8722f6cd5298c2d7d67ee15397a5b926e88872fb62e4a08fdbabbff7d5c2053a WHIRLPOOL 7d5daa1e608effe98af44131252469f75543ff75293e4df89725e1213d141d21a0a08f488e6b937395f43264e757059cba2f5e1cd7c46007dbb84f6df918d807
 EBUILD ganeti-2.12.1-r3.ebuild 7383 SHA256 47c38b6de11175b711448c916ebc8554041795064891721974c825ff2fe92699 SHA512 83702adaea8bc55f3433273d1a41b1bc638dff4157ef118f1c3e12bb517508d6c5d644c85d6bbbe2a2ebea99a012834b4920c2a4825d75a5a06e5ce58c711bfd WHIRLPOOL 9cbe5376bb22ef479438af93205bd210eaa97294e8160b054ce9271bb6a4a1858f63aba39851da3e78a6dd47b77d120116d80b4f5e6d535896e1592872cab6e4
-EBUILD ganeti-2.12.3.ebuild 7368 SHA256 ed94393992e4b84d216cbcce03f0d0ebb353ffd991b67d8549980672fc1f082f SHA512 c11588578350fa1660a276ccd06e85b70b8bd1cc1f64015d7470280a0251924abe3c2f5b12a9f25d0b7d2ba689adfcfd85d6929ac020b5c480bae59f96537f79 WHIRLPOOL 801cd8237aa9c93cb6985060bffda0ce8cbc9c580f3ce90ec5d4e00e007bf218de6395a7e435f663a54c02f31d3689470ede46abd292639114c8cf1d8b5ddf2e
+EBUILD ganeti-2.12.3-r1.ebuild 7849 SHA256 50d03f9c682913d5c0808cfcc14abecd3256508524b00617fdcad1aaa9d0a920 SHA512 6978b4589c2d0a75a64909262acda0abf22f7f17f1b11cdb5917d1deb6e6a41cb395cc14919a72f104caecb3d6c04adbd77c1470f4bd08f9e1446554fae3672d WHIRLPOOL 1da545cab08f486e3c582e7afdadfb34be4a302babd61d1f36a665f6f4751c5afb3ba8964594c3f117dfa53405fd0397547407a10c2c40bd1904dc0dd3ca7b69
+EBUILD ganeti-2.13.0.ebuild 7720 SHA256 bb31f575a4c672000e22f6f8461cb7f8515e9ccaed7adcc098fe6c1004d5224a SHA512 3e18ca03e3a2d462a423eed148f39a2f10dee52db2d3152238b81a059d9fd94ed35a6804dc981ec944f32e1a4c9a0908b0b55f1cb34c2a5bc7fcb5efe7fbe68b WHIRLPOOL c952e9890bedb2206a5298911dccd7be53b42540a2666827e00c836a893b157d04401283c1318113a8e20d6a1cc679ea95d8d4fea2b18d00f47ad6d4c9b528f5
 EBUILD ganeti-2.4.5-r1.ebuild 2540 SHA256 8024d6ba63f08762ec42f6acf8d3ad7f7f51ca4d221f780e7b86229e694dbea3 SHA512 85cce9aa0ccbfbfb889962b407eda507adaa5cbbf0630ddea6b86dc923c8b23dc4e881a41d0a63cf927f0b93b9427c10f428b36f534658ed8edec272e2559677 WHIRLPOOL 7a65b8e03cdf3ca189ea0cfd2ceeba597d45843df7c8a25f4c7de8224a16421f1235e9e7689c84b566c9eaeab815ef939259915e02b884beb1996595951a35bb
-MISC ChangeLog 22984 SHA256 f6c9e390e75f62fd9226ba33e553132cce9758dae211511d3d81c9dba5b967ac SHA512 a2ea05c0a48cee6ce5512e21bd2da1ec07024d426e8364134f3b9a41ddf55085226888ff7efc42bf42444aa031a2c9408cfc6c0e4072788e0d504cfbb6a5488c WHIRLPOOL 03f5609d582878d19382a227a5e783abcc36a860024213f9f693e6063f468aba7dd780b3bc5912f4c1bfad620e9543adef216167017b984e8ae4d65ac6058f5b
+MISC ChangeLog 23525 SHA256 952e491a747f4476f0e68fa1dd1e02bace4463eec5e7fae87aef26761ceb566f SHA512 f77a42e1d54e147425e81854a55c906837651b78414c268576c49d20727e03ee95b0355c72c9415fb5f9df0e287b695b713596929f0ecbc581a941f3ed158481 WHIRLPOOL 1b4ddbd8081526395100ebfe5a8e041403d000eaf03b56562394286ed9506e3b0576e25bd96d31b7306cfdf8e3cdefa3c0ad959a4feb6c82c2eb545f70497799
 MISC metadata.xml 1666 SHA256 b30104372f656db1e16b213d141b9224208958df5231bb17214ad7897a759662 SHA512 85c98e126690eccd836d4d7472327edc588785c27d0da7f71ce562783e9d1685b5a2f681438bcb619831476443792a4ef272cc61d339bbb1e352b8921788ef98 WHIRLPOOL f66c5e39d6be4808d65cd21203255bc0b1a6ae3ccce3d0b84ec0ecd062e6e3dc682807f92f9b30fa3cb32bbaa67f35f1775a9a8974e2b295282c34e3cfa1293b
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQIcBAEBCAAGBQJVS6ORAAoJEHy/RO9cNQiDnmIP/09wUMJTc/ouHp7HyBK49q+8
-uFPIEmHZ3H7hDM1Ol34FVtk4oa9+O6YFm0N2JsrCM3G3ouoTIOVuGOEKRZ6SMAzQ
-UEfngGBsntEjxtGgBCrwqMUCMqBL8+0WzkQXUmrPv6IvRe2FYStXk2FcSVEnsMwQ
-kWiEG9tprFMcBrRArd7jUlwr6et7gBJHZrNu51eFigOppxDcuFAzosNJ2kTaUVFG
-5r5adqCAYv+I56wEJqO17z7eD8fKfFggFqm2GgGFxgl6cXK8LLP5swSYP20L4K/9
-kFah0wpHnzS5fyrAVtHVRc7ZRUmp6+zAkRQ9tGy/a0gWNIOA40RyULG87mUD4mho
-TZ055XIKsyQ0hLu/nVr5WPXpweURYa/0Ssg+Gt1OOmbMSmY2iDNfbbgUQBzDPbT8
-qivf80ZXbnybW8IOPlUxLQDu6x7okD17cWgwsLjPw57eSzZb0g3azMx3UXsPJWP/
-B3xHNSKThLJwOXuhurmkhRS44UthdhMAqwd6nI6lrCHi8B7Z4gx02JB7t/F+1m9Z
-2le2fd+TJO5TJxhpGOi9IiQXzesWqbY9kmLfP+u+qjTvE2pp4hQdSw494ZiRnA2K
-LANzGAj1Ko8lcJi1RK2FxZYuoDbgHGZmgXmw31QJa49lcY1jvrsoqeg4lwQ4lGWF
-of/nDoQ8hLda+LPcqnR2
-=YsMB
+iQIcBAEBCAAGBQJVTANcAAoJEHy/RO9cNQiDwfoP/2Vyy5oXUcSTHDo+y40DBRIZ
+2ARmuvtSwIAq7YiIri2caoBj/uPPcrk9xpxPeyLyOj4mFzJ8il4cA1NAaUJrnQVD
+cWondRxNRozMwpDEEdCvZ2VxA3eW/Y17mO6Hlyyxqir8DK3YGpWkZFNjZo+yk8Gj
+6uTIIPgDhfASeZNjsTyJ9qtB4knh1Lxg/ZCHoMrWN4ZrSC35nop7onktOp1sXOB4
+TkLMIsp5WouVLpsoHC7LRWX7Y1HolHk2cHhrOSxzcsjf/fo86I+195NagVKj+lKU
+iic3PRu5OPyJ7HIDmcns8BwDJr7kGc3RzeOiLHH4/iqhHVgcVgzBnXl2NvoZRrVN
+CM6jlE/FkG37Ye3rwiWlfhY5FHm3r85jit9RnLjkMkihOYlX5MALOma82JR2FpfB
+K7OzP0UWL+AaYVcaRtsZ2lgW4o4EhhsZDQwOMVsIP/1CXGC/CYvvSzWetDsVGTXg
+B042Hc0TEaEIfPUAvL6pkq0dEtOcK5fAOdG/EoGTjEXdOlRQrGiNx5rYuoc358DC
+o+Wprm6bOljmk1F4bOX+o5B0n90/UP0uPt0WpJ3Y270I5vNFjaBJWyRYFIvNCcWh
+3Wnd2vrnlKBisWTytbtDAOdC24GxRndhdOP4Tzvpk3Vg3xX5iZ+HVOw4xcvXf+yV
+B6HE84uf//zMxFMEUno9
+=LW2F
 -----END PGP SIGNATURE-----
diff --git a/app-emulation/ganeti/files/ganeti-2.13-daemon-util.patch b/app-emulation/ganeti/files/ganeti-2.13-daemon-util.patch
new file mode 100644 (file)
index 0000000..5d8dedf
--- /dev/null
@@ -0,0 +1,46 @@
+diff --git a/daemons/daemon-util.in b/daemons/daemon-util.in
+index 7636fc9..e93370f 100644
+--- a/daemons/daemon-util.in
++++ b/daemons/daemon-util.in
+@@ -31,25 +31,28 @@ set -e
+ @SHELL_ENV_INIT@
+-readonly defaults_file="$SYSCONFDIR/default/ganeti"
+-
+-# This is a list of all daemons and the order in which they're started. The
+-# order is important as there are dependencies between them. On shutdown,
+-# they're stopped in reverse order.
+-DAEMONS=(
+-  ganeti-noded
+-  ganeti-confd
+-  ganeti-wconfd
+-  ganeti-rapi
+-  ganeti-luxid
+-  ganeti-kvmd
+-  )
++readonly defaults_file="$SYSCONFDIR/conf.d/ganeti"
+ # This is the list of daemons that are loaded on demand; they should only be
+ # stopped, not started.
+ ON_DEMAND_DAEMONS=(
+   ganeti-metad
+   )
++DAEMONS=( ganeti-noded ganeti-confd )
++
++_is_master() {
++        [ -z "${GANETI_MASTER}" ] && GANETI_MASTER="$(gnt-cluster getmaster)"
++        [ -z "${LOCAL_HOSTNAME}" ] && LOCAL_HOSTNAME="$(hostname -f)"
++        [ "${GANETI_MASTER}" = "${LOCAL_HOSTNAME}" ]
++}
++
++if _is_master; then
++  DAEMONS+=( ganeti-wconfd ganeti-rapi ganeti-luxid )
++else
++  DAEMONS+=( ganeti-rapi )
++fi
++
++DAEMONS+=( ganeti-kvmd )
+ _mond_enabled() {
+   [[ "@CUSTOM_ENABLE_MOND@" == True ]]
diff --git a/app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch b/app-emulation/ganeti/files/ganeti-2.13-disable-usersgroups-test.patch
new file mode 100644 (file)
index 0000000..6e81b51
--- /dev/null
@@ -0,0 +1,68 @@
+diff --git a/test/hs/Test/Ganeti/Runtime.hs b/test/hs/Test/Ganeti/Runtime.hs
+index b15aa36..7aa75ca 100644
+--- a/test/hs/Test/Ganeti/Runtime.hs
++++ b/test/hs/Test/Ganeti/Runtime.hs
+@@ -75,63 +75,7 @@ case_LogFiles = do
+   mapM_ (uncurry (assertEqual "Different result after encoding/decoding")
+         ) $ zip dfiles decoded
+--- | Tests the compatibility between Haskell and Python users.
+-case_UsersGroups :: Assertion
+-case_UsersGroups = do
+-  -- note: we don't have here a programatic way to list all users, so
+-  -- we harcode some parts of the two (hs/py) lists
+-  let daemons = [minBound..maxBound]::[GanetiDaemon]
+-      users = map daemonUser daemons
+-      groups = map daemonGroup $
+-               map DaemonGroup daemons ++ map ExtraGroup [minBound..maxBound]
+-  py_stdout <-
+-    runPython "from ganeti import constants\n\
+-              \from ganeti import serializer\n\
+-              \import sys\n\
+-              \users = [constants.MASTERD_USER,\n\
+-              \         constants.NODED_USER,\n\
+-              \         constants.RAPI_USER,\n\
+-              \         constants.CONFD_USER,\n\
+-              \         constants.WCONFD_USER,\n\
+-              \         constants.KVMD_USER,\n\
+-              \         constants.LUXID_USER,\n\
+-              \         constants.METAD_USER,\n\
+-              \         constants.MOND_USER,\n\
+-              \        ]\n\
+-              \groups = [constants.MASTERD_GROUP,\n\
+-              \          constants.NODED_GROUP,\n\
+-              \          constants.RAPI_GROUP,\n\
+-              \          constants.CONFD_GROUP,\n\
+-              \          constants.WCONFD_GROUP,\n\
+-              \          constants.KVMD_GROUP,\n\
+-              \          constants.LUXID_GROUP,\n\
+-              \          constants.METAD_GROUP,\n\
+-              \          constants.MOND_GROUP,\n\
+-              \          constants.DAEMONS_GROUP,\n\
+-              \          constants.ADMIN_GROUP,\n\
+-              \         ]\n\
+-              \encoded = (users, groups)\n\
+-              \print serializer.Dump(encoded)" ""
+-    >>= checkPythonResult
+-  let deserialised = J.decode py_stdout::J.Result ([String], [String])
+-  (py_users, py_groups) <-
+-    case deserialised of
+-      J.Ok ops -> return ops
+-      J.Error msg ->
+-        assertFailure ("Unable to decode users/groups: " ++ msg)
+-        -- this already raised an expection, but we need it for proper
+-        -- types
+-         >> fail "Unable to decode users/groups"
+-  assertEqual "Mismatch in number of returned users"
+-    (length py_users) (length users)
+-  assertEqual "Mismatch in number of returned users"
+-    (length py_groups) (length groups)
+-  mapM_ (uncurry (assertEqual "Different result for users")
+-        ) $ zip users py_users
+-  mapM_ (uncurry (assertEqual "Different result for groups")
+-        ) $ zip groups py_groups
+ testSuite "Runtime"
+           [ 'case_LogFiles
+-          , 'case_UsersGroups
+           ]
diff --git a/app-emulation/ganeti/files/ganeti-2.13-process_unittest.patch b/app-emulation/ganeti/files/ganeti-2.13-process_unittest.patch
new file mode 100644 (file)
index 0000000..4001ac5
--- /dev/null
@@ -0,0 +1,21 @@
+diff --git a/test/py/ganeti.utils.process_unittest.py b/test/py/ganeti.utils.process_unittest.py
+index 2cfb841..a5876a5 100755
+--- a/test/py/ganeti.utils.process_unittest.py
++++ b/test/py/ganeti.utils.process_unittest.py
+@@ -284,7 +284,7 @@ class TestRunCmd(testutils.GanetiTestCase):
+     result = utils.RunCmd(["/bin/sh", "-c", cmd], timeout=0.2,
+                           noclose_fds=[self.proc_ready_helper.write_fd],
+                           postfork_fn=self.proc_ready_helper.Ready)
+-    self.assertEqual(result.exit_code, 0)
++    self.assertEqual(result.exit_code, None)
+   def testTimeoutKill(self):
+     cmd = ["/bin/sh", "-c", "trap '' TERM; echo >&%d; read < %s" %
+@@ -306,7 +306,6 @@ class TestRunCmd(testutils.GanetiTestCase):
+                           noclose_fds=[self.proc_ready_helper.write_fd],
+                           postfork_fn=self.proc_ready_helper.Ready)
+     self.assert_(result.failed)
+-    self.assertEqual(result.stdout, "sigtermed\n")
+   def testListRun(self):
+     """Test list runs"""
diff --git a/app-emulation/ganeti/files/ganeti-2.13-regex-pcre-builtin.patch b/app-emulation/ganeti/files/ganeti-2.13-regex-pcre-builtin.patch
new file mode 100644 (file)
index 0000000..ced966f
--- /dev/null
@@ -0,0 +1,13 @@
+diff --git a/configure.ac b/configure.ac
+index e014d7a..024e584 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -672,7 +672,7 @@ AC_GHC_PKG_REQUIRE(hinotify)
+ AC_GHC_PKG_REQUIRE(Crypto)
+ AC_GHC_PKG_REQUIRE(lifted-base)
+ AC_GHC_PKG_REQUIRE(lens)
+-AC_GHC_PKG_REQUIRE(regex-pcre)
++AC_GHC_PKG_REQUIRE(regex-pcre-builtin)
+ #extra modules for monitoring daemon functionality; also needed for tests
+ MONITORING_PKG=
similarity index 87%
rename from app-emulation/ganeti/ganeti-2.12.3.ebuild
rename to app-emulation/ganeti/ganeti-2.12.3-r1.ebuild
index ba811ed3db4e18c4b29e1bc03b98cd7a5a31149a..35120e6d0299954ac79692f897753b0f30ea81d1 100644 (file)
@@ -1,15 +1,15 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ganeti-2.12.3.ebuild,v 1.1 2015/05/07 17:40:19 chutzpah Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ganeti-2.12.3-r1.ebuild,v 1.1 2015/05/08 00:29:05 chutzpah Exp $
 
 EAPI=5
 PYTHON_COMPAT=(python2_7)
 use test && PYTHON_REQ_USE="ipv6"
 
-inherit eutils user confutils autotools bash-completion-r1 python-single-r1 versionator pax-utils
+inherit eutils user autotools bash-completion-r1 python-single-r1 versionator
 
 MY_PV="${PV/_rc/~rc}"
-#MY_PV="${PV/_beta/~beta}"
+MY_PV="${MY_PV/_beta/~beta}"
 MY_P="${PN}-${MY_PV}"
 SERIES="$(get_version_component_range 1-2)"
 
@@ -17,25 +17,24 @@ if [[ ${PV} == "9999" ]] ; then
        EGIT_REPO_URI="git://git.ganeti.org/ganeti.git"
        inherit git-2
        KEYWORDS=""
-       # you will need to pull in the haskell overlay for pandoc
        GIT_DEPEND="app-text/pandoc
                dev-python/docutils
-               dev-python/sphinx
+               dev-python/sphinx[${PYTHON_USEDEP}]
                media-libs/gd[fontconfig,jpeg,png,truetype]
                media-gfx/graphviz
                media-fonts/urw-fonts"
 else
-       SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${P}.tar.gz"
+       SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${MY_P}.tar.gz"
        KEYWORDS="~amd64 ~x86"
 fi
 
 DESCRIPTION="Ganeti is a virtual server management software tool"
-HOMEPAGE="http://code.google.com/p/ganeti/"
+HOMEPAGE="http://www.ganeti.org/"
 
 LICENSE="GPL-2"
 SLOT="0"
 IUSE="drbd haskell-daemons htools ipv6 kvm lxc monitoring multiple-users rbd syslog test xen"
-REQUIRED_USE="|| ( kvm xen lxc )"
+REQUIRED_USE="|| ( kvm xen lxc ) ${PYTHON_REQUIRED_USE}"
 
 USER_PREFIX="${GANETI_USER_PREFIX:-"gnt-"}"
 GROUP_PREFIX="${GANETI_GROUP_PREFIX:-"${USER_PREFIX}"}"
@@ -141,6 +140,9 @@ REQUIRED_USE="kvm? ( || ( amd64 x86 ) )"
 
 S="${WORKDIR}/${MY_P}"
 
+QA_WX_LOAD="usr/$(get_libdir)/${PN}/${SERIES}/usr/sbin/ganeti-*d
+       usr/$(get_libdir)/${PN}/${SERIES}/usr/bin/htools"
+
 pkg_setup () {
        local user
        confutils_use_depend_all haskell-daemons htools
@@ -164,7 +166,10 @@ src_prepare() {
                printf '#!/bin/bash\ntrue\n' > "${testfile}"
        done
 
-       [[ ${PV} == "9999" ]] && ./autogen.sh
+       # take the sledgehammer approach to bug #526270
+       grep -lr '/bin/sh' "${S}" | xargs -r -- sed -i 's:/bin/sh:/bin/bash:g'
+
+       [[ ${PV} =~ [9]{4,} ]] && ./autogen.sh
        rm autotools/missing
        eautoreconf
 }
@@ -210,7 +215,11 @@ src_install () {
        # ganeti installs it's own docs in a generic location
        rm -rf "${D}"/{usr/share/doc/${PN},run}
 
-       newbashcomp doc/examples/bash_completion ganeti
+       sed -i "s:/usr/$(get_libdir)/${PN}/tools/burnin:burnin:" doc/examples/bash_completion
+       newbashcomp doc/examples/bash_completion gnt-instance
+       bashcomp_alias gnt-instance burnin ganeti-{cleaner,confd} \
+               h{space,check,scan,info,ail,arep,roller,squeeze,bal} \
+               gnt-{os,job,filter,debug,storage,group,node,network,backup,cluster}
 
        dodoc INSTALL UPGRADE NEWS README doc/*.rst
        dohtml -r doc/html/* doc/css/*.css
diff --git a/app-emulation/ganeti/ganeti-2.13.0.ebuild b/app-emulation/ganeti/ganeti-2.13.0.ebuild
new file mode 100644 (file)
index 0000000..07cc76e
--- /dev/null
@@ -0,0 +1,258 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/ganeti/ganeti-2.13.0.ebuild,v 1.1 2015/05/08 00:29:05 chutzpah Exp $
+
+EAPI=5
+PYTHON_COMPAT=(python2_7)
+use test && PYTHON_REQ_USE="ipv6"
+
+inherit eutils user autotools bash-completion-r1 python-single-r1 versionator
+
+MY_PV="${PV/_rc/~rc}"
+MY_PV="${MY_PV/_beta/~beta}"
+MY_P="${PN}-${MY_PV}"
+SERIES="$(get_version_component_range 1-2)"
+
+if [[ ${PV} == "9999" ]] ; then
+       EGIT_REPO_URI="git://git.ganeti.org/ganeti.git"
+       inherit git-2
+       KEYWORDS=""
+       GIT_DEPEND="app-text/pandoc
+               dev-python/docutils
+               dev-python/sphinx[${PYTHON_USEDEP}]
+               media-libs/gd[fontconfig,jpeg,png,truetype]
+               media-gfx/graphviz
+               media-fonts/urw-fonts"
+else
+       SRC_URI="http://downloads.ganeti.org/releases/${SERIES}/${MY_P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Ganeti is a virtual server management software tool"
+HOMEPAGE="http://www.ganeti.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="drbd haskell-daemons htools ipv6 kvm lxc monitoring multiple-users rbd syslog test xen"
+REQUIRED_USE="|| ( kvm xen lxc ) ${PYTHON_REQUIRED_USE}"
+
+USER_PREFIX="${GANETI_USER_PREFIX:-"gnt-"}"
+GROUP_PREFIX="${GANETI_GROUP_PREFIX:-"${USER_PREFIX}"}"
+
+DEPEND="
+       dev-libs/openssl:0
+       dev-python/paramiko[${PYTHON_USEDEP}]
+       dev-python/pyopenssl[${PYTHON_USEDEP}]
+       dev-python/pyparsing[${PYTHON_USEDEP}]
+       dev-python/pycurl[${PYTHON_USEDEP}]
+       dev-python/pyinotify[${PYTHON_USEDEP}]
+       dev-python/simplejson[${PYTHON_USEDEP}]
+       dev-python/ipaddr[${PYTHON_USEDEP}]
+       dev-python/bitarray[${PYTHON_USEDEP}]
+       net-analyzer/arping
+       net-analyzer/fping
+       net-misc/bridge-utils
+       net-misc/curl[ssl]
+       net-misc/openssh
+       net-misc/socat
+       sys-apps/iproute2
+       sys-fs/lvm2
+       >=sys-apps/baselayout-2.0
+       >=dev-lang/ghc-7.6.0:0=
+       >=dev-haskell/json-0.9:0=
+       dev-haskell/curl:0=
+       dev-haskell/network:0=
+       dev-haskell/parallel:3=
+       >=dev-haskell/hslogger-1.2.6:0=
+       dev-haskell/snap-server:0=
+       dev-haskell/utf8-string:0=
+       dev-haskell/deepseq:0=
+       dev-haskell/attoparsec:0=
+       dev-haskell/crypto:0=
+       dev-haskell/vector:0=
+       dev-haskell/hinotify:0=
+       dev-haskell/regex-pcre-builtin:0=
+       dev-haskell/zlib:0=
+       >=dev-haskell/lifted-base-0.2.3.3:0=
+       <dev-haskell/lens-4:0=
+       dev-haskell/psqueue:0=
+       dev-haskell/base64-bytestring:0=
+       <dev-haskell/semigroupoids-4.1:0=
+       <dev-haskell/mtl-2.2:0=
+       <dev-haskell/monad-control-1.0.0.0:0=
+       <dev-haskell/transformers-0.4.0:0=
+       <dev-haskell/contravariant-0.6
+       <dev-haskell/transformers-compat-0.4[three]
+       <dev-haskell/transformers-base-0.4.4
+       xen? ( >=app-emulation/xen-3.0 )
+       kvm? ( app-emulation/qemu )
+       lxc? ( app-emulation/lxc )
+       drbd? ( <sys-cluster/drbd-8.5 )
+       rbd? ( sys-cluster/ceph )
+       ipv6? ( net-misc/ndisc6 )
+       haskell-daemons? ( dev-haskell/text:0= )
+       ${PYTHON_DEPS}
+       ${GIT_DEPEND}"
+RDEPEND="${DEPEND}
+       !app-emulation/ganeti-htools"
+DEPEND+="sys-devel/m4
+       test? (
+               dev-python/mock
+               dev-python/pyyaml
+               dev-haskell/haddock:0=
+               dev-haskell/test-framework:0=
+               dev-haskell/test-framework-hunit:0=
+               dev-haskell/test-framework-quickcheck2:0=
+               dev-haskell/temporary:0=
+               sys-apps/fakeroot
+               net-misc/socat
+               dev-util/shelltestrunner
+       )"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-2.12-start-stop-daemon-args.patch"
+       "${FILESDIR}/${PN}-2.11-add-pgrep.patch"
+       "${FILESDIR}/${PN}-2.13-daemon-util.patch"
+       "${FILESDIR}/${PN}-2.7-fix-tests.patch"
+       "${FILESDIR}/${PN}-2.9-disable-root-tests.patch"
+       "${FILESDIR}/${PN}-2.9-skip-cli-test.patch"
+       "${FILESDIR}/${PN}-2.10-rundir.patch"
+       "${FILESDIR}/${PN}-2.12-qemu-enable-kvm.patch"
+       "${FILESDIR}/${PN}-2.11-tests.patch"
+       "${FILESDIR}/${PN}-lockdir.patch"
+       "${FILESDIR}/${PN}-2.11-dont-nest-libdir.patch"
+       "${FILESDIR}/${PN}-2.11-dont-print-man-help.patch"
+       "${FILESDIR}/${PN}-2.11-daemon-util-tests.patch"
+       "${FILESDIR}/${PN}-2.13-regex-pcre-builtin.patch"
+       "${FILESDIR}/${PN}-2.13-process_unittest.patch"
+       "${FILESDIR}/${PN}-2.13-disable-usersgroups-test.patch"
+)
+
+REQUIRED_USE="kvm? ( || ( amd64 x86 ) )"
+
+S="${WORKDIR}/${MY_P}"
+
+QA_WX_LOAD="usr/$(get_libdir)/${PN}/${SERIES}/usr/sbin/ganeti-*d
+       usr/$(get_libdir)/${PN}/${SERIES}/usr/bin/htools"
+
+pkg_setup () {
+       local user
+       confutils_use_depend_all haskell-daemons htools
+       python-single-r1_pkg_setup
+
+       if use multiple-users; then
+               for user in gnt-{masterd,confd,luxid,rapi,daemons,admin}; do
+                       enewgroup ${user}
+                       enewuser ${user} -1 -1 -1 ${user}
+               done
+       fi
+}
+
+src_prepare() {
+       local testfile
+       epatch "${PATCHES[@]}"
+
+       # not sure why these tests are failing
+       # should remove this on next version bump if possible
+       for testfile in test/py/import-export_unittest.bash; do
+               printf '#!/bin/bash\ntrue\n' > "${testfile}"
+       done
+
+       # take the sledgehammer approach to bug #526270
+       grep -lr '/bin/sh' "${S}" | xargs -r -- sed -i 's:/bin/sh:/bin/bash:g'
+
+       [[ ${PV} =~ [9]{4,} ]] && ./autogen.sh
+       rm autotools/missing
+       eautoreconf
+}
+
+src_configure () {
+       # this is kind of a hack to work around the removal of the qemu-kvm wrapper
+       local kvm_arch
+
+       if use amd64; then
+               kvm_arch=x86_64
+       elif use x86; then
+               kvm_arch=i386
+       elif use kvm; then
+               die "Could not determine qemu system to use for kvm"
+       fi
+
+       econf --localstatedir=/var \
+               --sharedstatedir=/var \
+               --disable-symlinks \
+               --docdir=/usr/share/doc/${P} \
+               --with-ssh-initscript=/etc/init.d/sshd \
+               --with-export-dir=/var/lib/ganeti-storage/export \
+               --with-os-search-path=/usr/share/${PN}/os \
+               $(use_enable test haskell-tests) \
+               $(usex multiple-users "--with-default-user=" "" "gnt-daemons" "") \
+               $(usex multiple-users "--with-user-prefix=" "" "${USER_PREFIX}" "") \
+               $(usex multiple-users "--with-default-group=" "" "gnt-daemons" "") \
+               $(usex multiple-users "--with-group-prefix=" "" "${GROUP_PREFIX}" "") \
+               $(use_enable syslog) \
+               $(use_enable monitoring) \
+               $(usex kvm '--with-kvm-path=' '' "/usr/bin/qemu-system-${kvm_arch}" '') \
+               $(usex haskell-daemons "--enable-confd=haskell" '' '' '')
+}
+
+src_install () {
+       emake V=1 DESTDIR="${D}" install || die "emake install failed"
+
+       newinitd "${FILESDIR}"/ganeti.initd-r3 ${PN}
+       newconfd "${FILESDIR}"/ganeti.confd-r2 ${PN}
+
+       if use kvm; then
+               newinitd "${FILESDIR}"/ganeti-kvm-poweroff.initd ganeti-kvm-poweroff
+               newconfd "${FILESDIR}"/ganeti-kvm-poweroff.confd ganeti-kvm-poweroff
+       fi
+
+       # ganeti installs it's own docs in a generic location
+       rm -rf "${D}"/{usr/share/doc/${PN},run}
+
+       sed -i "s:/usr/$(get_libdir)/${PN}/tools/burnin:burnin:" doc/examples/bash_completion
+       newbashcomp doc/examples/bash_completion gnt-instance
+       bashcomp_alias gnt-instance burnin ganeti-{cleaner,confd} \
+               h{space,check,scan,info,ail,arep,roller,squeeze,bal} \
+               gnt-{os,job,filter,debug,storage,group,node,network,backup,cluster}
+
+       dodoc INSTALL UPGRADE NEWS README doc/*.rst
+       dohtml -r doc/html/* doc/css/*.css
+
+       docinto examples
+       dodoc doc/examples/{ganeti.cron,gnt-config-backup} doc/examples/*.ocf
+
+       docinto examples/hooks
+       dodoc doc/examples/hooks/{ipsec,ethers}
+
+       insinto /etc/cron.d
+       newins doc/examples/ganeti.cron ${PN}
+
+       insinto /etc/logrotate.d
+       newins doc/examples/ganeti.logrotate ${PN}
+
+       keepdir /var/{lib,log}/${PN}/
+       keepdir /usr/share/${PN}/${SERIES}/os/
+       keepdir /var/lib/ganeti-storage/{export,file,shared}/
+
+       dosym ${SERIES} "/usr/share/${PN}/default"
+       dosym ${SERIES} "/usr/$(get_libdir)/${PN}/default"
+
+       python_fix_shebang "${ED}" "${D}"/usr/"$(get_libdir)"/${PN}/${SERIES}
+}
+
+pkg_postinst() {
+       if use multiple-users; then
+               elog "You have enable multiple user support, the users for this must"
+               elog "be created. You can use the provided tool for this, which is"
+               elog "located at:"
+               elog "    /usr/$(get_libdir)/${PN}/tools/users-setup"
+       fi
+}
+
+src_test () {
+       PATH="${S}/scripts:${S}/src:${PATH}" \
+               TMPDIR="/tmp" \
+               GANETI_MASTER="$(hostname -f)" \
+               emake check || die "emake check failed"
+}