title: Can I filter a GitHub action step based on the commit message?
body: <p>I've recently added a static analysis step to my GitHub actions. However, it is somewhat expensive so I'm trying to reduce the number of times that this step is run. I've already added an appropriate filter so that it only runs on one OS and so that it only runs on my "feature" branches. However, I would like to also filter out any checkins that include "WIP" in their commit message. (The theory being that there is no point in performing the full analysis until it is no longer a "Work In Progress".)</p>
  
  <p>I've searched through the docs, expecting I would find an object I could use as part of the <code>github</code> context object, but to no avail.</p>
  
  <p>Any ideas on how I can accomplish this goal?</p>
  
  <p>If you want to see exactly what I'm doing, the action Yaml is as follows. I'm hoping to find some change I can make to the <code>if</code> statement on the <code>Static Analysis</code> item that would accomplish my goal.</p>
  
  <pre><code>name: On Push
  
  on: [push]
  
  jobs:
    build:
      runs-on: ${{ matrix.os }}
      strategy:
        matrix:
          os: [ubuntu-latest, macos-latest]
      steps:
      - uses: actions/checkout@v1
  
      - name: Build
        run: |
          ./configure
          make -j 4
  
      - name: Run tests
        run: |
          make -j 4 check
  
      - name: Static Analysis
        if: runner.os == 'macOS' &amp;&amp; startsWith(github.ref, 'refs/heads/feature/')
        run: |
          make analyze
  </code></pre>