Commit Identification¶
Track your application's security posture over time by identifying the commits associated with each security scan.
Supported CI Environments¶
Automatic commit data collection: - GitHub Actions - GitLab CI - Bitbucket Pipelines - CircleCI - Travis CI
Coming soon: - Jenkins Pipeline
Manual commit identification: - CLI usage - Direct API calls
Stored Information¶
For each scan, Escape saves: - Commit SHA identification - Git reference name - Committer email
Implementation Examples¶
language: node_js
node_js:
- node
jobs:
include:
- stage: security
if: branch = staging
script:
- npm install -g @escape.tech/action
- npm show @escape.tech/action version
- escape-action
env:
- ESCAPE_APPLICATION_ID=$ESCAPE_APPLICATION_ID
- ESCAPE_API_KEY=$ESCAPE_API_KEY
- COMMIT_HASH=$(git rev-parse HEAD)
- REF_NAME=$(git rev-parse --abbrev-ref HEAD)
- USER_EMAIL=$(git log -1 --pretty=format:'%ae')
stages:
- security
export APPLICATION_ID=<YOUR APPLICATION ID>
export API_KEY=<YOUR API KEY>
curl -X POST \
-H "Authorization: Key $API_KEY" \
-H "Content-Type: application/json" \
-d "{ \"commitHash\": \"$(git rev-parse HEAD)\", \"commitBranch\": \"$(git rev-parse --abbrev-ref HEAD)\", \"commitAuthor\": \"$(git log -1 --pretty=format:'%ae')\" }" \
https://public.escape.tech/applications/$APPLICATION_ID/start-scan