From 2e7105806967c5b34190af1fff1e026c7dcc34ac Mon Sep 17 00:00:00 2001 From: Bailey Pearson Date: Thu, 13 Jun 2024 11:52:00 -0600 Subject: [PATCH] chore(NODE-6212): generate sarif report and upload sbom file to s3 (#178) --- .github/workflows/release.yml | 74 +++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c161f125..9fef9e0a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -27,3 +27,77 @@ jobs: run: npm publish --provenance env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + + generate_sarif_report: + environment: release + runs-on: ubuntu-latest + needs: [release_please] + permissions: + # required for all workflows + security-events: write + id-token: write + contents: write + + steps: + - uses: actions/checkout@v4 + - name: Set up drivers-github-tools + uses: mongodb-labs/drivers-github-tools/setup@v2 + with: + aws_region_name: us-east-1 + aws_role_arn: ${{ secrets.aws_role_arn }} + aws_secret_id: ${{ secrets.aws_secret_id }} + + - name: "Generate Sarif Report" + uses: mongodb-labs/drivers-github-tools/code-scanning-export@v2 + with: + ref: main + output-file: sarif-report.json + + - name: Get release version and release package file name + id: get_version + shell: bash + run: | + package_version=$(jq --raw-output '.version' package.json) + echo "package_version=${package_version}" >> "$GITHUB_OUTPUT" + + - name: actions/publish_asset_to_s3 + uses: mongodb-labs/drivers-github-tools/node/publish_asset_to_s3@v2 + with: + version: ${{ steps.get_version.outputs.package_version }} + product_name: node-kerberos + file: sarif-report.json + dry_run: ${{ needs.release_please.outputs.release_created == '' }} + + upload_sbom_lite: + environment: release + runs-on: ubuntu-latest + needs: [release_please] + permissions: + # required for all workflows + security-events: write + id-token: write + contents: write + + steps: + - uses: actions/checkout@v4 + - name: Set up drivers-github-tools + uses: mongodb-labs/drivers-github-tools/setup@v2 + with: + aws_region_name: us-east-1 + aws_role_arn: ${{ secrets.aws_role_arn }} + aws_secret_id: ${{ secrets.aws_secret_id }} + + - name: Get release version and release package file name + id: get_version + shell: bash + run: | + package_version=$(jq --raw-output '.version' package.json) + echo "package_version=${package_version}" >> "$GITHUB_OUTPUT" + + - name: actions/publish_asset_to_s3 + uses: mongodb-labs/drivers-github-tools/node/publish_asset_to_s3@v2 + with: + version: ${{ steps.get_version.outputs.package_version }} + product_name: node-kerberos + file: sbom.json + dry_run: ${{ needs.release_please.outputs.release_created == '' }} \ No newline at end of file