mirror of
https://github.com/projectdiscovery/nuclei.git
synced 2025-12-17 16:15:27 +00:00
Bumps the workflows group with 2 updates in the / directory: [actions/checkout](https://github.com/actions/checkout) and [actions/stale](https://github.com/actions/stale). Updates `actions/checkout` from 4 to 5 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v4...v5) Updates `actions/stale` from 9 to 10 - [Release notes](https://github.com/actions/stale/releases) - [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/stale/compare/v9...v10) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major dependency-group: workflows - dependency-name: actions/stale dependency-version: '10' dependency-type: direct:production update-type: version-update:semver-major dependency-group: workflows ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
56 lines
1.8 KiB
YAML
56 lines
1.8 KiB
YAML
name: 👤 Generate PGO
|
|
|
|
on:
|
|
push:
|
|
branches: ["dev"]
|
|
paths:
|
|
- '**.go'
|
|
- '**.mod'
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
# TODO(dwisiswant0): https://go.dev/doc/pgo#merging-profiles
|
|
|
|
jobs:
|
|
pgo:
|
|
strategy:
|
|
matrix:
|
|
targets: [150]
|
|
runs-on: ubuntu-latest
|
|
if: github.repository == 'projectdiscovery/nuclei'
|
|
permissions:
|
|
contents: write
|
|
env:
|
|
PGO_FILE: "cmd/nuclei/default.pgo"
|
|
LIST_FILE: "/tmp/targets-${{ matrix.targets }}.txt"
|
|
PROFILE_MEM: "/tmp/nuclei-profile-${{ matrix.targets }}-targets"
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- uses: projectdiscovery/actions/setup/git@v1
|
|
- uses: projectdiscovery/actions/setup/go@v1
|
|
- name: Generate list
|
|
run: for i in {1..${{ matrix.targets }}}; do echo "https://honey.scanme.sh/?_=${i}" >> "${LIST_FILE}"; done
|
|
# NOTE(dwisiswant0): use `-no-mhe` flag to get better samples.
|
|
- run: go run . -l "${LIST_FILE}" -profile-mem="${PROFILE_MEM}" -no-mhe
|
|
working-directory: cmd/nuclei/
|
|
- run: mv "${PROFILE_MEM}.cpu" ${PGO_FILE}
|
|
# NOTE(dwisiswant0): shall we prune $PGO_FILE git history?
|
|
# if we prune it, this won't be linear since it requires a force-push.
|
|
# if we don't, the git objects will just keep growing bigger.
|
|
#
|
|
# Ref:
|
|
# - https://go.dev/blog/pgo#:~:text=We%20recommend%20committing%20default.pgo%20files%20to%20your%20repository
|
|
# - https://gist.github.com/nottrobin/5758221
|
|
- uses: projectdiscovery/actions/commit@v1
|
|
with:
|
|
files: "${PGO_FILE}"
|
|
message: "build: update PGO profile :robot:"
|
|
- run: git push origin $GITHUB_REF
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: "pgo"
|
|
path: "${{ env.PGO_FILE }}"
|