title: Circle-CI - logic statement in commands with two conditions: equals and matches not working well
body: <p>I have read <a href="https://circleci.com/docs/configuration-reference#logic-statement-examples" rel="nofollow noreferrer">https://circleci.com/docs/configuration-reference#logic-statement-examples</a> and I want to had a condition when the tag match a certain pattern to the logic statement:</p>
  <ul>
  <li>when <code>&lt;&lt; pipeline.git.branch &gt;&gt;</code> is <code>master</code> (current)
  OR</li>
  <li>if <code>&lt;&lt; pipeline.git.tag &gt;&gt;</code> is of pattern <code>/^(patch\/)?v.*/</code> or <code>/^hotfix-.*/</code></li>
  </ul>
  <p>This is our <code>.circleci.yml</code> conditions prior any modifications: <a href="https://github.com/pass-culture/pass-culture-app-native/blob/master/.circleci/config.yml#L107-L115" rel="nofollow noreferrer">https://github.com/pass-culture/pass-culture-app-native/blob/master/.circleci/config.yml#L107-L115</a></p>
  <p>This is what I have tried:</p>
  <pre class="lang-yaml prettyprint-override"><code>      - when:
            condition:
              or:
                - equal: [&quot;master&quot;, &lt;&lt; pipeline.git.branch &gt;&gt;]
                - matches:
                    pattern: /^(patch\/)?v.*/
                    value: &lt;&lt; pipeline.git.tag &gt;&gt;
  </code></pre>
  <p>Circle-CI does not run the commands when doing the following:</p>
  <pre class="lang-bash prettyprint-override"><code>git tag patch/v1.199.99
  git push origin patch/v1.199.99
  </code></pre>
  <p><a href="https://i.stack.imgur.com/HLqzk.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/HLqzk.png" alt="enter image description here" /></a></p>
  <p>Condition doesn't match when <code>&lt;&lt; pipeline.git.tag &gt;&gt;</code> is <code>patch/v1.199.99</code> and thus doesn't run the pipeline, any clue what am I doing wrong here ?</p>