Skip to content

Sync develop with main - #37

Merged
andreassag merged 4 commits into
mainfrom
develop
Sep 25, 2026
Merged

andreassag merged 4 commits into
mainfrom
develop

Conversation

@andreassag

Copy link
Copy Markdown
Owner

Synchronize CI/CD improvements, CodeQL configuration, Dependabot multi-branch updates, and Dependabot auto-merge automation from develop into main.

@github-advanced-security

Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

Copilot AI lite review requested due to automatic review settings September 25, 2026 00:01
@andreassag
andreassag merged commit 1b269a4 into main Sep 25, 2026
11 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Critical authorization, command-injection, and check-gating issues remain unresolved; Docker lint is also non-blocking.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 4 High severity · 1 Medium severity

Open (5)
What changed in this PR

Synchronizes CI/CD improvements, CodeQL, Docker linting, and Dependabot automation from develop into main.

Changes:

  • Adds Docker linting and JavaScript/TypeScript CodeQL analysis.
  • Adds Dependabot auto-merge automation.
  • Configures Dependabot updates for main and develop.
  • Adds an automerge Make target.

Findings:

  • Critical: Dependabot authorization relies on attacker-controlled branch names in both the workflow and script (lines 45/66 and 228/308).
  • Critical: Workflow-dispatch inputs can enable shell injection with write permissions.
  • Critical: Check evaluation can merge without verifying the required workflows.
  • Moderate: Docker lint findings do not fail the workflow.
File Description
Makefile Adds the automerge target.
.github/​workflows/​docker-lint.yml Runs Hadolint and uploads SARIF results.
.github/​workflows/​dependabot-automerge.yml Automates Dependabot PR verification and merging.
.github/​workflows/​codeql.yml Extends CodeQL analysis to JavaScript/TypeScript.
.github/​scripts/​dependabot-automerge.sh Evaluates checks and merges eligible PRs.
.github/​dependabot.yml Configures dependency updates for main and develop.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +170 to +181
def checks: (.statusCheckRollup // []);
def total: (checks | length);
def pending: [checks[] | select(is_completed | not) | "\(check_name):\(check_state)"];
def failed: [checks[] | select(is_completed and (is_success | not)) | "\(check_name):\(check_state)"];

{
total: total,
pending_count: (pending | length),
pending_list: pending,
failed_count: (failed | length),
failed_list: failed,
ready_to_merge: (total > 0 and (pending | length) == 0 and (failed | length) == 0)
fi

# Verify Dependabot origin
if [[ "$author_login" != "app/dependabot" && "$author_login" != "dependabot[bot]" && ! "$head_ref" =~ ^dependabot/ ]]; then
if: >-
github.event_name == 'workflow_dispatch' ||
github.event_name == 'schedule' ||
(github.event_name == 'pull_request' && (github.event.pull_request.user.login == 'dependabot[bot]' || startsWith(github.event.pull_request.head.ref, 'dependabot/'))) ||
Comment on lines +71 to +81
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
FLAGS=""
if [[ "${{ inputs.dry_run }}" == "true" ]]; then
FLAGS="--dry-run"
fi

if [[ -n "${{ inputs.pr_number }}" ]]; then
echo "Running automerge on specified PR #${{ inputs.pr_number }}..."
./.github/scripts/dependabot-automerge.sh "${{ inputs.pr_number }}" $FLAGS
dockerfile: Dockerfile
format: sarif
output-file: hadolint-results.sarif
no-fail: true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants