Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ updates:
schedule:
interval: 'weekly'
day: 'saturday'
cooldown:
default-days: 7
allow:
- dependency-type: 'all'
versioning-strategy: 'auto'
Expand Down Expand Up @@ -107,6 +109,8 @@ updates:
schedule:
interval: 'weekly'
day: 'saturday'
cooldown:
default-days: 7
labels: [ 'dependencies' ]
commit-message:
prefix: 'chore' ## prefix maximum string length of 15
Expand Down
50 changes: 30 additions & 20 deletions .github/workflows/nodejs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,12 @@ jobs:
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Setup Node.js ${{ env.NODE_ACTIVE_LTS }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_ACTIVE_LTS }}
package-manager-cache: false
Expand All @@ -46,7 +48,7 @@ jobs:
run: npm run build-dev
- name: artifact build result
# see https://github.com/actions/upload-artifact
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: dist
path: dist
Expand All @@ -59,10 +61,12 @@ jobs:
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Setup Node.js ${{ env.NODE_ACTIVE_LTS }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_ACTIVE_LTS }}
package-manager-cache: false
Expand All @@ -84,12 +88,12 @@ jobs:
- name: Annotate Code
if: ${{ failure() || success() }}
# see https://github.com/DerLev/eslint-annotations
uses: DerLev/eslint-annotations@a79ea65c1b45a649c48bcc6efc0103b6fd2e4c5f # v2
uses: DerLev/eslint-annotations@a79ea65c1b45a649c48bcc6efc0103b6fd2e4c5f # v2.1.0
with:
eslint-report: ${{ env.REPORTS_DIR }}/eslint.json
- name: artifact eslint result
# see https://github.com/actions/upload-artifact
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
if: ${{ failure() }}
with:
name: ${{ env.STANDARD_REPORTS_ARTIFACT }}
Expand All @@ -103,10 +107,12 @@ jobs:
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Setup Node.js ${{ env.NODE_ACTIVE_LTS }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_ACTIVE_LTS }}
package-manager-cache: false
Expand Down Expand Up @@ -148,10 +154,12 @@ jobs:
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Setup Node.js ${{ matrix.node-version }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ matrix.node-version }}
package-manager-cache: false
Expand All @@ -178,7 +186,7 @@ jobs:
working-directory: .. # prevent evaluation of package.json
- name: install project
shell: bash
run: |
run: | # zizmor: ignore[adhoc-packages] -- packages are already locked, but we dont want to alter manifest
Comment thread
jkowalleck marked this conversation as resolved.
set -ex
dev_requirements='c8 jest jest-junit imurmurhash fast-glob'
npm i --ignore-scripts --omit=peer --omit=dev --only=prod --production --loglevel=silly
Expand All @@ -188,7 +196,7 @@ jobs:
npm i --ignore-scripts --loglevel=silly --no-save $dev_requirements
- name: fetch build artifact
# see https://github.com/actions/download-artifact
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
name: dist
path: dist
Expand All @@ -197,7 +205,7 @@ jobs:
- name: artifact npm errors
if: ${{ failure() }}
# see https://github.com/actions/upload-artifact
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: 'npm-errors_${{ matrix.os }}_node${{ matrix.node-version }}'
path: '/home/runner/.npm/_logs/*.log'
Expand All @@ -217,7 +225,7 @@ jobs:
- name: artifact test reports
if: ${{ ! cancelled() }}
# see https://github.com/actions/upload-artifact
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: '${{ env.TESTS_REPORTS_ARTIFACT }}_${{ matrix.os }}_node${{ matrix.node-version }}'
path: ${{ env.REPORTS_DIR }}
Expand All @@ -237,16 +245,18 @@ jobs:
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
- name: Setup Node.js ${{ env.NODE_ACTIVE_LTS }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_ACTIVE_LTS }}
package-manager-cache: false
- name: fetch build artifact
# see https://github.com/actions/download-artifact
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
name: dist
path: dist
Expand All @@ -266,7 +276,7 @@ jobs:
steps:
- name: fetch test artifacts
# see https://github.com/actions/download-artifact
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
pattern: '${{ env.TESTS_REPORTS_ARTIFACT }}_*'
merge-multiple: true
Expand All @@ -277,7 +287,7 @@ jobs:
## see https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#example-using-secrets
if: ${{ env.CODACY_PROJECT_TOKEN != '' }}
# see https://github.com/codacy/codacy-coverage-reporter-action
uses: codacy/codacy-coverage-reporter-action@89d6c85cfafaec52c72b6c5e8b2878d33104c699 # v1
uses: codacy/codacy-coverage-reporter-action@89d6c85cfafaec52c72b6c5e8b2878d33104c699 # v1.3.0
with:
project-token: ${{ env.CODACY_PROJECT_TOKEN }}
coverage-reports: ${{ env.REPORTS_DIR }}/coverage/*/*
59 changes: 41 additions & 18 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,9 @@ jobs:
steps:
- name: Checkout code
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false
Comment thread
jkowalleck marked this conversation as resolved.
- name: Configure Git
# needed for push back of changes
run: |
Expand All @@ -60,7 +62,7 @@ jobs:
git config --local user.name "${GITHUB_ACTOR}"
- name: Setup Node.js ${{ env.NODE_ACTIVE_LTS }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_ACTIVE_LTS }}
package-manager-cache: false
Expand All @@ -80,8 +82,18 @@ jobs:
NPMV_NEWVERSION: ${{ github.event.inputs.newversion }}
NPMV_MESSAGE: ${{ github.event.inputs.commitMessage }}
NPMV_PREID: ${{ github.event.inputs.preid }}
- name: git push back
run: git push --follow-tags
- name: Push commit + annotated tags
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -euo pipefail
set +x
echo "::add-mask::$GITHUB_TOKEN"
AUTH_B64="$(printf "x-access-token:%s" "$GITHUB_TOKEN" | base64 | tr -d '\n')"
echo "::add-mask::$AUTH_B64"
git -c http.https://github.com/.extraheader="AUTHORIZATION: basic $AUTH_B64" \
push --follow-tags "https://github.com/${GITHUB_REPOSITORY}.git" "HEAD:${GITHUB_REF_NAME}"

publish-NPMJS:
needs:
Expand All @@ -96,12 +108,13 @@ jobs:
steps:
- name: Checkout code
# see https://github.com/actions/checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ needs.bump.outputs.version }}
persist-credentials: false
Comment thread
jkowalleck marked this conversation as resolved.
- name: Setup Node.js ${{ env.NODE_ACTIVE_LTS }}
# see https://github.com/actions/setup-node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_ACTIVE_LTS }}
package-manager-cache: false
Expand Down Expand Up @@ -134,7 +147,7 @@ jobs:
npm pack --pack-destination "$PACKED_DIR"
- name: artifact release result
# see https://github.com/actions/upload-artifact
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: ${{ env.PACKED_ARTIFACT }}
path: ${{ env.PACKED_DIR }}/
Expand All @@ -154,19 +167,29 @@ jobs:
steps:
- name: fetch release result
# see https://github.com/actions/download-artifact
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # v7.0.0
with:
name: ${{ env.PACKED_ARTIFACT }}
path: ${{ env.ASSETS_DIR }}
- name: Create Release
id: release
# see https://github.com/softprops/action-gh-release
uses: softprops/action-gh-release@3bb12739c298aeb8a4eeaf626c5b8d85266b0e65 # v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ needs.bump.outputs.version }}
name: ${{ needs.bump.outputs.version_plain }}
prerelease: ${{ github.event.inputs.prerelease }}
files: '${{ env.ASSETS_DIR }}/*'
target_commitish: ${{ github.head_ref || github.ref_name }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAG: ${{ needs.bump.outputs.version }}
TITLE: ${{ needs.bump.outputs.version_plain }}
TARGET: ${{ github.head_ref || github.ref_name }}
PRERELEASE: ${{ github.event.inputs.prerelease }}
shell: bash
run: |
set -euo pipefail
args=(
"$TAG"
"${ASSETS_DIR}"/*
--repo "${GITHUB_REPOSITORY}"
--title "$TITLE"
--target "$TARGET"
--verify-tag
)
if [ "$PRERELEASE" = "true" ]; then
args+=(--prerelease)
fi
gh release create "${args[@]}"
44 changes: 44 additions & 0 deletions .github/workflows/zizmor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Analyzes all GitHub Actions workflows for security issues using zizmor.
# docs: https://docs.zizmor.sh/
name: Zizmor

on:
push:
branches: ['master', 'main']
pull_request:
branches: ['**']
workflow_dispatch:
schedule:
- cron: '0 0 * * 6'

permissions: {}

concurrency:
group: '${{ github.workflow }}-${{ github.ref }}'
cancel-in-progress: true

jobs:
zizmor:
name: Zizmor
runs-on: ubuntu-latest
timeout-minutes: 10
permissions:
contents: read
steps:
- name: Checkout
# see https://github.com/actions/checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Run zizmor 🌈
# see https://github.com/zizmorcore/zizmor-action
uses: zizmorcore/zizmor-action@6599ee8b7a49aef6a770f63d261d214911a7ce02 # v0.6.0
with:
# advanced-security: false => emit findings as workflow-command annotations (::error file=…) rather than
# uploading a SARIF report to GitHub's Security tab.
# Uploading SARIF requires `security-events: write` and GitHub Advanced Security (GHAS),
# both of which are unnecessary here and would violate the least-privilege policy.
# The two modes are mutually exclusive: advanced-security must be false for
# annotations to take effect.
advanced-security: false
annotations: true
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@cyclonedx/webpack-plugin",
"version": "5.3.3-rc.2",
"version": "5.3.3-rc.4",
"description": "Creates CycloneDX Software Bill of Materials (SBoM) from webpack projects",
"license": "Apache-2.0",
"copyright": "Copyright OWASP Foundation",
Expand Down