# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
#
# SOOS is the easy-to-integrate and affordable software security solution for your whole team.
# Learn more at https://soos.io/
#
# To use this action, perform the following steps:
#
# 1.  Create an account on https://app.soos.io. SOOS offers a free 30 day trial for our SCA and DAST products.
#
# 2.  Navigate to the "Integrate" page in the SOOS app (https://app.soos.io/integrate). Note the "API Credentials" section of this page; the keys you will need for the next step are here.
#
# 3. Set up your SOOS API Key and SOOS Client Id as Github Secrets named SOOS_API_KEY and SOOS_CLIENT_ID.
#
# 4. (Optional) If you'd like to upload SARIF results of DAST scans to GitHub, set SOOS_GITHUB_PAT with your Github Personal Access Token.
#

name: "SOOS DAST Scan"

on:
  push:
    branches: [ $default-branch, $protected-branches ]
  pull_request:
    branches: [ $default-branch ]

jobs:
  soos:
    permissions:
      security-events: write # for uploading code scanning alert info
      actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
    name: SOOS DAST Scan
    runs-on: ubuntu-latest
    steps:
      - name: Run SOOS DAST Scan
        uses: soos-io/soos-dast-github-action@3e71b27756f4ed77d7ad3c0ad92afddb47a40e4d # Use latest version from https://github.com/marketplace/actions/soos-dast
        with:
          client_id: ${{ secrets.SOOS_CLIENT_ID }}
          api_key: ${{ secrets.SOOS_API_KEY }}
          project_name: "<YOUR-PROJECT-NAME>"
          scan_mode: "baseline"
          target_url: "https://www.example.com/"
          output_format: "sarif"
      - name: Upload SOOS DAST SARIF Report
        uses: github/codeql-action/upload-sarif@v2
        with:
          sarif_file: results.sarif