slapos.core:beforeupgrade-20200707 commitshttps://lab.nexedi.com/rafael/slapos.core/-/commits/beforeupgrade-202007072020-07-06T18:10:53+02:00https://lab.nexedi.com/rafael/slapos.core/-/commit/5a6ef8263a418ff838542c983f5d7f20420a8144localchanges2020-07-06T18:10:53+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/725c3231cc99002f80f7f0ca0c42e40668ef7838SlapTool: all instances of a stopped HS are stopped2020-07-03T15:58:39+02:00Rafael Monneratrafael@nexedi.com
See merge request <a href="/nexedi/slapos.core/-/merge_requests/222" data-original="nexedi/slapos.core!222" data-link="false" data-link-reference="false" data-project="77" data-merge-request="3899" data-project-path="nexedi/slapos.core" data-iid="222" data-mr-title="SlapTool: all instances of a stopped HS are stopped" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">!222</a>https://lab.nexedi.com/rafael/slapos.core/-/commit/e0817d607b66b5b1101907685b0840796372ab79Revert controller and invoice page2020-07-03T00:19:52+02:00Rafael Monneratrafael@nexedi.com
See merge request <a href="/nexedi/slapos.core/-/merge_requests/240" data-original="nexedi/slapos.core!240" data-link="false" data-link-reference="false" data-project="77" data-merge-request="4019" data-project-path="nexedi/slapos.core" data-iid="240" data-mr-title="Revert controller and invoice page" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">!240</a>https://lab.nexedi.com/rafael/slapos.core/-/commit/2da50130d921e0030601e0d00e21521be9bd0ec8slapos_accounting: better invoice view2020-07-02T20:22:14+02:00Thomas Gambierthomas.gambier@gmail.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/9362a19084815bb28c96e0721b0b4fe707227c1dslapos_jio: revert slapos controller page back to use portal_type2020-07-02T13:04:53+00:00lu.xulu.xu@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/68ec649c3bc73957566fde77fadae99af02cca82Revert "slapos_jio: fix display of invoice"2020-07-02T21:45:32+09:00lu.xulu.xu@nexedi.com
This reverts commit <a href="/nexedi/slapos.core/-/commit/7e49ec5e5f41a1545dbc7f1bc828b0a528be7603" data-original="7e49ec5e5f41a1545dbc7f1bc828b0a528be7603" data-link="false" data-link-reference="false" data-project="77" data-commit="7e49ec5e5f41a1545dbc7f1bc828b0a528be7603" data-reference-type="commit" data-container="body" data-placement="top" data-html="true" title="slapos_jio: fix display of invoice" class="gfm gfm-commit has-tooltip">7e49ec5e</a>.https://lab.nexedi.com/rafael/slapos.core/-/commit/294c84e3c1f4a596eb735c59fdcad15f7fdee476Revert "slapos_jio: update xml files for invoice view"2020-07-02T21:44:39+09:00lu.xulu.xu@nexedi.com
This reverts commit <a href="/nexedi/slapos.core/-/commit/febcf1b4230536da118fca1dbf0de0664aa0ad50" data-original="febcf1b4230536da118fca1dbf0de0664aa0ad50" data-link="false" data-link-reference="false" data-project="77" data-commit="febcf1b4230536da118fca1dbf0de0664aa0ad50" data-reference-type="commit" data-container="body" data-placement="top" data-html="true" title="slapos_jio: update xml files for invoice view" class="gfm gfm-commit has-tooltip">febcf1b4</a>.https://lab.nexedi.com/rafael/slapos.core/-/commit/4842a0245e8298a6bc6b9ba99a72e3774a35d10aUpdate xml files and ManifestList for invoice view2020-07-02T04:18:22+02:00Rafael Monneratrafael@nexedi.com
See merge request <a href="/nexedi/slapos.core/-/merge_requests/239" data-original="nexedi/slapos.core!239" data-link="false" data-link-reference="false" data-project="77" data-merge-request="4007" data-project-path="nexedi/slapos.core" data-iid="239" data-mr-title="Update xml files and ManifestList for invoice view" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">!239</a>https://lab.nexedi.com/rafael/slapos.core/-/commit/2899932aefee514263f595489a2d873e8dbcb8e6slapgrid: try 3 times to upload archive to binary cache2020-07-02T00:43:44+02:00Rafael Monneratrafael@nexedi.com
See merge request <a href="/nexedi/slapos.core/-/merge_requests/185" data-original="nexedi/slapos.core!185" data-link="false" data-link-reference="false" data-project="77" data-merge-request="3618" data-project-path="nexedi/slapos.core" data-iid="185" data-mr-title="slapgrid: try 3 times to upload archive to binary cache" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">!185</a>https://lab.nexedi.com/rafael/slapos.core/-/commit/ad470c74a2d3c3ca3ec397d780df27e3083f4d35Implement Slapos UI test: Invoice test2020-07-02T00:33:44+02:00Rafael Monneratrafael@nexedi.com
See merge request <a href="/nexedi/slapos.core/-/merge_requests/236" data-original="nexedi/slapos.core!236" data-link="false" data-link-reference="false" data-project="77" data-merge-request="3995" data-project-path="nexedi/slapos.core" data-iid="236" data-mr-title="Implement Slapos UI test: Invoice test" data-reference-type="merge_request" data-container="body" data-placement="top" data-html="true" title="" class="gfm gfm-merge_request">!236</a>https://lab.nexedi.com/rafael/slapos.core/-/commit/b9520ad3688d7b352f3fe7e7d5f83b00c2bebe29slapos_jio_[zh_]ui_test: Implement SlapOS Invoice UI test2020-07-02T00:33:44+02:00lu.xulu.xu@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/e09ba906430df9f61bb66706cf18cec4d951a8bcSlapTool: all instances of a stopped HS are stopped2020-07-01T17:06:58+02:00Thomas Gambierthomas.gambier@gmail.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/febcf1b4230536da118fca1dbf0de0664aa0ad50slapos_jio: update xml files for invoice view2020-07-01T16:56:58+02:00lu.xulu.xu@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/08b67da2d82972f36aa8865942e762d70aa0f7e5testing/testcase: increase number of retries2020-06-30T19:53:18-05:00Jérome Perrinjerome@nexedi.com
We observe that software sometimes fail due to transiant errors such as
DNS/network errors, so increase the default number of retries to build
software from 2 to 10.
Sometimes also instance is failing for monitoring or other errors that
might become OK if we retry more, so increase the default number of
retries for instance from 10 to 20.https://lab.nexedi.com/rafael/slapos.core/-/commit/c498d5deb999f41fc639ff19cf6e9de69cd01339slapos_jio_ui_test: Added test for service worker2020-06-30T21:41:22+02:00Rafael Monneratrafael@nexedi.com
It was added as "0" in order to run first, as the later tests calls logout and can be started as anonymous.https://lab.nexedi.com/rafael/slapos.core/-/commit/fc7dd2fc73573fee45dd86e14fc321bb8208ee27slapgrid/test: Unmonkeypatch generateSupervisorConfigurationFile2020-06-30T12:25:56+02:00Łukasz Nowakluke@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/a3d789076061fe052c73eaf2b2270e6f5a2914afslapgrid: Try harder during partition destroy2020-06-30T12:25:50+02:00Łukasz Nowakluke@nexedi.com
Files on the partition can be created with mode disallowing removal, so use
slapos.util.rmtree to ensure they will get removed instead of failing.https://lab.nexedi.com/rafael/slapos.core/-/commit/2527ee4e389ea2b89ac2b629d7a80510a489e235slap/standalone: Force remove partitions with chmod2020-06-29T10:08:11+02:00Łukasz Nowakluke@nexedi.com
In some cases partitions can chmod -w some paths, so use util.rmtree to
overcome this situation.https://lab.nexedi.com/rafael/slapos.core/-/commit/66c13ddef83c3f85156343a1455d2d2416f436f8slapos_jio: Move hostingjs from appcache to use service workers2020-06-27T03:36:27+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/a4158284fe583e3c047acf1e013a3dd254e13ba8slapos_subscription_request: Prefer use the language from the Subscription Re...2020-06-27T03:33:06+02:00Rafael Monneratrafael@nexedi.com
... rather them the user's languagehttps://lab.nexedi.com/rafael/slapos.core/-/commit/a080668be77a826aa75cc2ad0df83ac6522004d4slapos_jio: Pay with appropriate payment mode2020-06-24T23:46:34+00:00Rafael Monneratrafael@nexedi.com
Payment mode is set on the payment object and invoicehttps://lab.nexedi.com/rafael/slapos.core/-/commit/5a601e00e03d6a20043c06b3d5248f2321679bb9slapos_jio: Display translated state on "State" columns for invoices2020-06-25T01:40:21+02:00Rafael Monneratrafael@nexedi.com
Also inform payment_mode to let the script handle the display of informationhttps://lab.nexedi.com/rafael/slapos.core/-/commit/8902545ec105fa50c96b990a400e9a5dfc54c8edslapos_erp5: Ensure accounting related templates documents has local roles p...2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/37b75ab08c127e41268c3464be2ab3f4c8189a98slapos_configurator: Update test for recent changes on ERP5 Code base2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.com
* erp5_immobilisation is now installed
* "Update translation table" is verbosed as some bt5 are always marked to be resinstalledhttps://lab.nexedi.com/rafael/slapos.core/-/commit/b10b568131343c0762c79deca50fb86b56e6103bslapos_configurator: Fix up test since erp5_immobilisation was added as depen...2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/2351730baf6c2a5d9cae26a61e3bc5e596d6d50eslapos_erp5: Fix up SkinSelection Test after the rebase2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/873be0522c8fa439ab8cfb7efd40cf1d7a43b70aslapos_accounting&payzen: newTempSimulationMovement was replaced by newContent2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/39594073b8f10fa64b82fa38bbb534ff45824190slapos_cloud&accounting: Fixup imports from the Documents migration to ZODB2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/6ae9a03780a3f2be9265687fbc4f57591ae01525slapos_jio_zh_ui_test: fix 'Create New Account' term2020-06-24T09:01:22+02:00lu.xulu.xu@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/ec20995b872b940e9b643138364d9d7617371e3eslapos_subscription_request: Attempt to make chinese tests more realistic2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.com
Use Wechat payment rather them payzenhttps://lab.nexedi.com/rafael/slapos.core/-/commit/a5b7c244ed7e1651d2a6280f1ba1cc624d5202d7slapos_subscription_request: Allow to set target_language via command line on...2020-06-24T09:01:22+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/ac2ec4856959c56227d5d7fc06b7ecbce3e8505bslapos_cloud: Add method to pay with wechat on Test Scenario Mixin2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/db0c22ebbd57f96be00532546783cfb8eff38c84slapos_subscription_request: Fix up (multiply fee by quantity)2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/5b8ec7a060d5aa9efbc67abb2e6947d7d362e78fslapos_subscription_request: Set appropriated Currrency when generate the refund2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/32dbee6a0c77533afd5f7907ac727d0d544a93dbslapos_subscription_request: Detect other types of logins2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/06f4a2d45683f19a7c1331e3e444d9d9f372a7abslapos_jio: Implement Contextual Help on the left panel2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/241cacfdf0c845638b6e72db8330db9e9dab3b94slapos_jio: Get token ids before validate it2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/fbb05398b78f2635dec8d6cb73ff7dcbe0e5959cslapos_accounting: The script isn't called if the cloud contract is disabled.2020-06-24T09:01:21+02:00Rafael Monneratrafael@nexedi.comhttps://lab.nexedi.com/rafael/slapos.core/-/commit/05c9f10882b43587a477badc543e6a0000370facutil: use safe variant or xml_marshaller2020-06-21T23:05:11-05:00Jérome Perrinjerome@nexedi.com
Also change places where xml_marshaller were used directly to always use
the wrapper from utils (except in tests for simplicity)https://lab.nexedi.com/rafael/slapos.core/-/commit/6cd47aede5df9919f4924022ef545f7dfb06e38cutil.rmtree: fix for python 32020-06-21T22:22:43-05:00Jérome Perrinjerome@nexedi.com
On python3, deleting a chmoded folder causes this error:
Traceback (most recent call last):
File "/usr/lib/python3.7/shutil.py", line 423, in _rmtree_safe_fd
dirfd = os.open(entry.name, os.O_RDONLY, dir_fd=topfd)
PermissionError: [Errno 13] Permission denied: 'directory'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "slapos.core/slapos/grid/slapgrid.py", line 607, in processSoftwareReleaseList
software.destroy()
File "slapos.core/slapos/grid/SlapObject.py", line 360, in destroy
rmtree(self.software_path)
File "slapos.core/slapos/util.py", line 267, in rmtree
shutil.rmtree(path, onerror=chmod_retry)
File "/usr/lib/python3.7/shutil.py", line 491, in rmtree
_rmtree_safe_fd(fd, path, onerror)
File "/usr/lib/python3.7/shutil.py", line 425, in _rmtree_safe_fd
onerror(os.open, fullname, sys.exc_info())
File "slapos.core/slapos/util.py", line 264, in chmod_retry
func(failed_path)
TypeError: open() missing required argument 'flags' (pos 2)
Our error handler was assuming that on python 3 the EACCESS for the
directory would happen first on an os.lstat call [1], which is true when the
top level folder is not listable, but it did not support the case where
the top level folder is listable but contain another folder that is not listable.
In that case, the first error is an os.open [2]
Tests from erp5.util (where this function came from) only covered the 1 case but
new tests in slapos.core covered the 2.
Anyway, do the "chmod folder and retry from beginning" for both 1 or 2 cases.
[1]: <a href="https://github.com/python/cpython/blob/3.6/Lib/shutil.py#L475" rel="nofollow noreferrer noopener" target="_blank">https://github.com/python/cpython/blob/3.6/Lib/shutil.py#L475</a>
[2]: <a href="https://github.com/python/cpython/blob/3.6/Lib/shutil.py#L418" rel="nofollow noreferrer noopener" target="_blank">https://github.com/python/cpython/blob/3.6/Lib/shutil.py#L418</a>