)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"b6a08b554e0bdf8852da1796277b3d4118cd6358","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add rolling upgrade tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a new set of \"rolling\" tests. Their intent is to test basic"},{"line_number":10,"context_line":"CRUD functionality during a rolling upgrade. The sequence would"},{"line_number":11,"context_line":"be something like this:"},{"line_number":12,"context_line":" 1. Install \"old\" version of Swift"},{"line_number":13,"context_line":" 2. Run \"rolling_before\" tests. These tests will leave data on cluster"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"bfdaf3ff_68a20b4e","line":10,"range":{"start_line":9,"start_character":58,"end_line":10,"end_character":18},"updated":"2019-01-14 23:26:29.000000000","message":"What should the scope of this be? Limited to a single account? Single container? Single object is definitely too narrow... I wonder if single container may also be... but at the same time, I could see us wanting to verify starting states from multiple versions...\n\nMaybe we could have the setup/test parameterized? Like, take some label that would be used as a prefix for the containers we\u0027ll want to touch...","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"},{"author":{"_account_id":9625,"name":"Thiago da Silva","email":"thiagodasilva@gmail.com","username":"thiago"},"change_message_id":"407169c42948374d02e5c63867ccff0f53dc2200","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add rolling upgrade tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a new set of \"rolling\" tests. Their intent is to test basic"},{"line_number":10,"context_line":"CRUD functionality during a rolling upgrade. The sequence would"},{"line_number":11,"context_line":"be something like this:"},{"line_number":12,"context_line":" 1. Install \"old\" version of Swift"},{"line_number":13,"context_line":" 2. Run \"rolling_before\" tests. These tests will leave data on cluster"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_0802ee0b","line":10,"range":{"start_line":9,"start_character":58,"end_line":10,"end_character":18},"in_reply_to":"bfdaf3ff_68a20b4e","updated":"2019-07-16 16:31:42.000000000","message":"My plan for this initial patch was to start simple with a few CRUD tests. Overtime I\u0027d expect us to add tests for features that have been available for a \"long time\" (I\u0027m thinking of usual suspects: copy, versions, slo, dlo, etc)\n\nThoughts?","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"b6a08b554e0bdf8852da1796277b3d4118cd6358","unresolved":false,"context_lines":[{"line_number":12,"context_line":" 1. Install \"old\" version of Swift"},{"line_number":13,"context_line":" 2. Run \"rolling_before\" tests. These tests will leave data on cluster"},{"line_number":14,"context_line":" 3. Upgrade Swift"},{"line_number":15,"context_line":" 4. Run \"rolling_after\" tests. These tests reads the \"before\" data"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It was necessary to add a new test runner VM. The functional test runner"},{"line_number":18,"context_line":"is running the functional tests from the old version of swift."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"bfdaf3ff_9473cb80","line":15,"updated":"2019-01-14 23:26:29.000000000","message":"I wonder if it might be better to split between setup/check/teardown rather than before/after...\n\nI could see someone wanting to test one particular upgrade, for example, and thus wanting some way to clean up afterwards.\n\nI could also wee someone wanting to test a bunch of versions, though... piggybacking off the parameterized-testing idea, something like\n\n # start from swift version X\n setup(\u0027test-data-X\u0027)\n check(\u0027test-data-X\u0027) # sanity\n upgrade-to-Y()\n check(\u0027test-data-X\u0027)\n setup(\u0027test-data-Y\u0027)\n check(\u0027test-data-Y\u0027) # sanity\n upgrade-to-Z()\n check(\u0027test-data-X\u0027)\n check(\u0027test-data-Y\u0027)","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"},{"author":{"_account_id":9625,"name":"Thiago da Silva","email":"thiagodasilva@gmail.com","username":"thiago"},"change_message_id":"407169c42948374d02e5c63867ccff0f53dc2200","unresolved":false,"context_lines":[{"line_number":12,"context_line":" 1. Install \"old\" version of Swift"},{"line_number":13,"context_line":" 2. Run \"rolling_before\" tests. These tests will leave data on cluster"},{"line_number":14,"context_line":" 3. Upgrade Swift"},{"line_number":15,"context_line":" 4. Run \"rolling_after\" tests. These tests reads the \"before\" data"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It was necessary to add a new test runner VM. The functional test runner"},{"line_number":18,"context_line":"is running the functional tests from the old version of swift."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_a8c87a21","line":15,"in_reply_to":"bfdaf3ff_9473cb80","updated":"2019-07-16 16:31:42.000000000","message":"yep, i\u0027ve renamed to \u0027stage\u0027 and \u0027verify\u0027 for now, but I\u0027m open to other ideas. \n\nI stayed away from \u0027setup\u0027 because it can be confusing since setup is already used in python unittest to mean something else.\n\nRegarding the idea of testing multiple upgrades, that\u0027s an interesting idea, but i\u0027d like to keep the scope small for now and we can add complexity in future patches. wdyt?","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"b6a08b554e0bdf8852da1796277b3d4118cd6358","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It was necessary to add a new test runner VM. The functional test runner"},{"line_number":18,"context_line":"is running the functional tests from the old version of swift."},{"line_number":19,"context_line":"The new test runner, needs to have the latest code (master)."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Ie0e0b30ba7c51f7881126456ac6b6e90a4b4010c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"bfdaf3ff_b4f5afcd","line":19,"range":{"start_line":19,"start_character":52,"end_line":19,"end_character":58},"updated":"2019-01-14 23:26:29.000000000","message":"Will we have any expectation that new rolling upgrade tests will work with upgrades between old versions? For example, if I wrote a new test tomorrow, would a reviewer be justified in -1\u0027ing it because it didn\u0027t pass during a ocata-\u003epike upgrade?","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"},{"author":{"_account_id":9625,"name":"Thiago da Silva","email":"thiagodasilva@gmail.com","username":"thiago"},"change_message_id":"407169c42948374d02e5c63867ccff0f53dc2200","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It was necessary to add a new test runner VM. The functional test runner"},{"line_number":18,"context_line":"is running the functional tests from the old version of swift."},{"line_number":19,"context_line":"The new test runner, needs to have the latest code (master)."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Ie0e0b30ba7c51f7881126456ac6b6e90a4b4010c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_88857ed1","line":19,"range":{"start_line":19,"start_character":52,"end_line":19,"end_character":58},"in_reply_to":"bfdaf3ff_b4f5afcd","updated":"2019-07-16 16:31:42.000000000","message":"I think the answer here is: \"it depends\". \n\nThe idea of the tests is to inform us that our guarantee that one can upgrade swift from any \"older\" version to any \"newer\" version is true. \n\nIf a test was written with the expectation that it should pass on a upgrade from ocata to pike then we should at least try to understand why it wasn\u0027t passing.\n\nIt might be that some of the tests might start adding not only support to check /info to check on enabled middleware but also versions to check on expected API support.","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"}],"test/sample.conf":[{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"b6a08b554e0bdf8852da1796277b3d4118cd6358","unresolved":false,"context_lines":[{"line_number":75,"context_line":"#password6 \u003d testing6"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"# rolling account is used for rolling upgrade tests. A separate account is"},{"line_number":78,"context_line":"# used so that data is only cleaned up after finishing the \u0027after\u0027 set of tests"},{"line_number":79,"context_line":"rollaccount \u003d rollacct"},{"line_number":80,"context_line":"rollusername \u003d rollusr"},{"line_number":81,"context_line":"rollpassword \u003d rollpwd"}],"source_content_type":"text/plain","patch_set":4,"id":"bfdaf3ff_cb9e9162","line":78,"range":{"start_line":78,"start_character":15,"end_line":78,"end_character":79},"updated":"2019-01-14 23:26:29.000000000","message":"Is it? I thought after still had\n\ndef tearDownModule():\n    # IMPORTANT: We are intentionally not tearing-down these tests\n    # so that this it can be run multiple times for rolling upgrades.\n    pass","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"},{"author":{"_account_id":9625,"name":"Thiago da Silva","email":"thiagodasilva@gmail.com","username":"thiago"},"change_message_id":"407169c42948374d02e5c63867ccff0f53dc2200","unresolved":false,"context_lines":[{"line_number":75,"context_line":"#password6 \u003d testing6"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"# rolling account is used for rolling upgrade tests. A separate account is"},{"line_number":78,"context_line":"# used so that data is only cleaned up after finishing the \u0027after\u0027 set of tests"},{"line_number":79,"context_line":"rollaccount \u003d rollacct"},{"line_number":80,"context_line":"rollusername \u003d rollusr"},{"line_number":81,"context_line":"rollpassword \u003d rollpwd"}],"source_content_type":"text/plain","patch_set":4,"id":"7faddb67_4311a751","line":78,"range":{"start_line":78,"start_character":15,"end_line":78,"end_character":79},"in_reply_to":"bfdaf3ff_cb9e9162","updated":"2019-07-16 16:31:42.000000000","message":"oops, that\u0027s a copy and paste mistake","commit_id":"f39244c92dee7ab86b505da47e76225fc6f90698"}]}
