{"push_id":2956024553,"size":14,"distinct_size":14,"ref":"refs/heads/master","head":"7ecd2f440d74439071f9a9ebeda691f1d3b51389","before":"c918cb8f3f63cf90587845299bdb0bf39cad9fcc","commits":[{"sha":"e3019642dc7a4ace5591b8c41d491c7fb0e2605a","author":{"name":"Naomi Reeves","email":"5823e54afa1e9b987e316a151425208aa09c70fc@users.noreply.github.com"},"message":"Implement Circle CI (#80)\n\nStart using circle CI in more of our repos. Making this consistent with\r\nbetween-meals","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/e3019642dc7a4ace5591b8c41d491c7fb0e2605a"},{"sha":"6db27d46f2a6b59afc3574b45196833f248e6b0e","author":{"name":"Phil Dibowitz","email":"e888d2bd6f13f82caa51a37c03d034c76f661ba3@ipom.com"},"message":"Allow user to specify a different knife config. (#83)\n\nThis is useful when using taste-tester for separate environments.","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/6db27d46f2a6b59afc3574b45196833f248e6b0e"},{"sha":"b75dde35e9babc2bd7e4d1b1da6d7505df4bf97c","author":{"name":"Mike Dodge","email":"6b9e8fcd30d1eee2eafd0ca7d4d7e038d39e00f8@gmail.com"},"message":"Add option to track_simlinks (#81)","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/b75dde35e9babc2bd7e4d1b1da6d7505df4bf97c"},{"sha":"0d70b53e4a31f7b31317a3849166653fa5998b6f","author":{"name":"Mike Dodge","email":"6b9e8fcd30d1eee2eafd0ca7d4d7e038d39e00f8@gmail.com"},"message":"NoOp option for for TT (#84)","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/0d70b53e4a31f7b31317a3849166653fa5998b6f"},{"sha":"f1fe3c266b75eba2837e9574f40fbf6ca49c485a","author":{"name":"Phil Dibowitz","email":"e888d2bd6f13f82caa51a37c03d034c76f661ba3@ipom.com"},"message":"Fix transport (#85)","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/f1fe3c266b75eba2837e9574f40fbf6ca49c485a"},{"sha":"bc849cd26c47e37f65cd1c2112b33e64d45b437c","author":{"name":"Phil Dibowitz","email":"e888d2bd6f13f82caa51a37c03d034c76f661ba3@ipom.com"},"message":"Prep for 0.13 release (#86)","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/bc849cd26c47e37f65cd1c2112b33e64d45b437c"},{"sha":"fde63967a0181536b2a275a458bd82ecd5527596","author":{"name":"Phil Dibowitz","email":"e888d2bd6f13f82caa51a37c03d034c76f661ba3@ipom.com"},"message":"Always use the desired knife config (#87)","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/fde63967a0181536b2a275a458bd82ecd5527596"},{"sha":"e8033b49a672ecb07903b3e1b0cc234c39e4b42d","author":{"name":"malmond77","email":"5401ca1161a20bc84bf04d095b617dc4a0579e4d@fb.com"},"message":"Fix rubocop rules (#89)\n\n* Add new Rubocop rules\r\n\r\nHighlighted when proposing https://github.com/facebook/taste-tester/pull/88\r\n\r\nShould be backward compatible:\r\n\r\n```\r\n[user@server ~/local/taste-tester] /opt/chef/embedded/bin/rubocop -v\r\n0.52.0\r\n[user@server ~/local/taste-tester]\r\n/opt/chef/embedded/bin/rubocop\r\nWarning: unrecognized cop TrailingCommaInArrayLiteral found in .rubocop.yml\r\nWarning: unrecognized cop TrailingCommaInHashLiteral found in .rubocop.yml\r\nInspecting 20 files\r\n....................\r\n\r\n20 files inspected, no offenses detected\r\n```\r\n\r\n* Remove \"backward compatible\" rubocop rule\r\n\r\nIt's not backward compatible. It's now a fatal error. Fix forwards.\r\n\r\n* Fix new rubocop issues highlighted by CircleCI\r\n\r\n* `Metrics/BlockLength` was disabled globally, and specifically in a few files. Prefer the local override so new code is covered, and that `Lint/UnneededCopDisableDirective: Unnecessary disabling of Metrics/BlockLength.` is removed.\r\n* `Metrics/LineLength` was disabled in a few locations without being needed. Again this was raising `Lint/UnneededCopDisableDirective`\r\n* Fix Naming/UncommunicativeMethodParamName in:\r\n\r\n```\r\nlib/taste_tester/logging.rb:38:29: C: Naming/UncommunicativeMethodParamName: Method parameter must be at least 3 characters long.\r\n    def self.formatterproc=(p)\r\n                            ^\r\n```\r\n\r\n* Explicitly depend on json >= 2.0.0","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/e8033b49a672ecb07903b3e1b0cc234c39e4b42d"},{"sha":"e58bf875cfdec299ef278a227f3d9905cd18be8f","author":{"name":"malmond77","email":"5401ca1161a20bc84bf04d095b617dc4a0579e4d@fb.com"},"message":"Return failure and partial failure on test (#88)\n\n* Return failure and partial failure on test\r\n\r\nTaste-testing on a server that is already configured by someone else, or has some other problem does not surface to the user except as a warning. This adds two new return codes which can be used in external automation.\r\n\r\n* Minor lint error fixed too","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/e58bf875cfdec299ef278a227f3d9905cd18be8f"},{"sha":"f6ba83f8a422f5a6de3195d603151e9b5946a992","author":{"name":"rlangst","email":"8ec4c1e61ebb4a48e1a3a3a0f300aa706b62d27c@users.noreply.github.com"},"message":"Reduce example test time, inline with best security practices. (#91)","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/f6ba83f8a422f5a6de3195d603151e9b5946a992"},{"sha":"5d7ab9c001abbf6b2d9b8766180d8abbb947d042","author":{"name":"malmond77","email":"5401ca1161a20bc84bf04d095b617dc4a0579e4d@fb.com"},"message":"taste-tester test race condition fixes (#92)\n\nTaste-tester was originally conceived as a tool for humans. Adding automation has highlighted issues when the same host is accidentally chosen. This already gives an error, explaining that someone else is testing\r\n\r\n> Taste-testing on _hostname_\r\n> ERROR: User someoneelse is already testing on _hostname_\r\n> ERROR: Taste-testing failed. HOST NOT PUT IN TESTING MODE.\r\n\r\nThe existing code uses the transport (usually SSH) multiple times which is slow, and therefore more likely to hit a race condition. Current code:\r\n\r\n1. Checks for timestamp file presence\r\n2. greps for username in config\r\n3. greps for username in config file to see if it matches the current user\r\n4. Writes the new config file out\r\n\r\nIt could be up to 6 connections, if the legacy FB stuff for matching usernames was being used.\r\n\r\nInstead of using transport 4-6 times, we use it once, and pile a bunch of sequential logic in to predicate the addition of the new config file only if the host isn't being tested by someone else. Once the files are\r\nwritten, symlinks changed, we look again to see if we \"won\".\r\n\r\nAdditional items:\r\n\r\n* Removed timestamp check when reading the config file for an existing user. If the current config file mentions a user, it will definitely still be taste-tested. This check didn't help anything.\r\n* `chef_config_path` is now written to a temporary file then renamed which makes the contents atomic. Two simultaneous writes can produce garbage configuration.\r\n* Removed most explicit `rm -f` before `ln -s`, replacing with `ln -sf` which according to POSIX specifications also unlinks but in the same command.\r\n* Changed single quote/apostrophe from use of `serialized_config` to double quotes. The command is already run with single quotes via SSH so this was effectively *un*quoting the text, which is more dangerous than double quoting or leaving unquoted.\r\n* `@serialized_config` is never used as a member variable, so demoted to a local instance variable\r\n* Removed FB legacy username lookup from `who_is_testing`.\r\n* Move test config filename into constant.\r\n* Use constant for preable written, and matched.\r\n* Whole stack of rubocop config changes, and updates to make the tests pass.","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/5d7ab9c001abbf6b2d9b8766180d8abbb947d042"},{"sha":"5747050d1815df8f46b590aed46a5ea76d08cad9","author":{"name":"malmond77","email":"5401ca1161a20bc84bf04d095b617dc4a0579e4d@fb.com"},"message":"Fix bug in test caused by rename of shell variable (#93)\n\nI changed two references. There were three. I had to shorten the name a bit to appease the line length limits.","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/5747050d1815df8f46b590aed46a5ea76d08cad9"},{"sha":"fb2bcfab48d452b8e15a849fd2b4b49e46722f80","author":{"name":"dkaplan1","email":"aa39dee7961884a33c3f4ee39631754cf8a1812e@gmail.com"},"message":"use chef_zero_running? to determine whether chef-zero is running (#94)\n\n* use chef_zero_running? rather than port_open? to determine whether chef-zero is running\r\n\r\nCurrently we're only checking whether the state file's port param has any process listening on it. This change utilizes a new helper (chef_zero_running?) to not only check that a process is listening on the port, but specifically a chef-zero proc.\r\n\r\nDepends on https://github.com/facebook/between-meals/pull/92","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/fb2bcfab48d452b8e15a849fd2b4b49e46722f80"},{"sha":"7ecd2f440d74439071f9a9ebeda691f1d3b51389","author":{"name":"Bryan Wann","email":"c35e4127905220cf797efa31c42d2f0318879792@wann.net"},"message":"README fix, plugin_path does not have a default (#95)\n\n* taste-tester: Update plugin_path info in README, markdown fixups\r\n\r\n- The code has no default plugin_path, but README says it does; describe it as optional\r\n- Add example plugin code snippet \r\n- Markdown fixes\r\n- The plugin path really is a command line argument too, so show it has no default","distinct":true,"url":"https://api.github.com/repos/NaomiReeves/taste-tester/commits/7ecd2f440d74439071f9a9ebeda691f1d3b51389"}]}
{"actor":{"display_login":"NaomiReeves"}}