# 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.

# This workflow checks out code, builds an image, performs a container image
# scan with Anchore's Syft tool, and uploads the results to the GitHub Dependency
# submission API.

# For more information on the Anchore sbom-action usage
# and parameters, see https://github.com/anchore/sbom-action. For more
# information about the Anchore SBOM tool, Syft, see
# https://github.com/anchore/syft
name: Anchore Syft SBOM scan

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

permissions:
  contents: write

jobs:
  Anchore-Build-Scan:
    permissions:
      contents: write # required to upload to the Dependency submission API
    runs-on: ubuntu-latest
    steps:
    - name: Checkout the code
      uses: actions/checkout@v3
    - name: Build the Docker image
      run: docker build . --file Dockerfile --tag localbuild/testimage:latest
    - name: Scan the image and upload dependency results
      uses: anchore/sbom-action@bb716408e75840bbb01e839347cd213767269d4a
      with:
        image: "localbuild/testimage:latest"
        artifact-name: image.spdx.json
        dependency-snapshot: true
