New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Circle flags #11024

Merged
merged 6 commits into from Oct 7, 2016

Conversation

Projects
None yet
3 participants
@islemaster
Member

islemaster commented Oct 6, 2016

We're back to running Chrome on CircleCI by default but I want to keep other browsers runnable as an option, so we're enabling them with commit tags.

  • Makes the commit flag system easier to use and extend
  • Adds a set of commit flags to give more manual control of which tests Circle runs
  • Adds a test for commit flag detection
  • Adds the tests in [cdo]/lib/test (including the new test) to our CI builds
  • Fixes [cdo]/lib/test/cdo/test_properties.rb which was broken 馃槅

A commit tag is a set of distinct words enclosed in square brackets. They are indifferent to order, case, or whitespace, so you can write [skip ui] or [ UI SKIP ] or [ Skip UI Skip ] - it's all the same to circle.rake.

Existing tags (still working)

  • [ci skip] - Don't run Circle (built-in for Circle)
  • [test all] - Run unit/integration tests, even if no related files changed
  • [skip ui] - Don't run any UI/Eyes tests

New tags

  • [skip chrome] - Don't run UI tests against Chrome (most usefully combined with enabling another browser)
  • [test firefox] - Run UI tests against Firefox
  • [test ie] or [test internet explorer] - Run UI tests against IE11
  • [test safari] - Run UI tests against Safari
  • [test eyes] - Run eyes tests, even if not on pipeline branch (note - we still don't fail on eyes mismatches)
  • [skip eyes] - Don't run eyes tests, even if on pipeline branch
@islemaster

This comment has been minimized.

Show comment
Hide comment
@islemaster

islemaster Oct 6, 2016

Member

Note: Unit test failure expected in 84dcb8c.

Update: Didn't fail, but only because we got lucky: test_set_with_existing_value ran before test_set_with_new_values.

PropertiesTest
  test_set_with_existing_value                                    PASS (0.00s)
  test_delete_when_key_exists                                     PASS (0.00s)
  test_get_when_key_does_not_exist                                PASS (0.00s)
  test_delete_when_key_does_not_exist                             PASS (0.00s)
  test_get_when_key_exists                                        PASS (0.00s)
  test_set_with_new_values                                        PASS (0.00s)
Member

islemaster commented Oct 6, 2016

Note: Unit test failure expected in 84dcb8c.

Update: Didn't fail, but only because we got lucky: test_set_with_existing_value ran before test_set_with_new_values.

PropertiesTest
  test_set_with_existing_value                                    PASS (0.00s)
  test_delete_when_key_exists                                     PASS (0.00s)
  test_get_when_key_does_not_exist                                PASS (0.00s)
  test_delete_when_key_does_not_exist                             PASS (0.00s)
  test_get_when_key_exists                                        PASS (0.00s)
  test_set_with_new_values                                        PASS (0.00s)

@islemaster islemaster changed the title from [WIP] Circle flags to Circle flags Oct 6, 2016

@bcjordan

This comment has been minimized.

Show comment
Hide comment
@bcjordan

bcjordan Oct 7, 2016

Collaborator

LGTM!

Collaborator

bcjordan commented Oct 7, 2016

LGTM!

@islemaster islemaster merged commit 292e1f9 into staging Oct 7, 2016

1 of 2 checks passed

ci/circleci Your tests failed on CircleCI
Details
hound No violations found. Woof!

@islemaster islemaster deleted the circle-flags branch Oct 7, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment