Skip to content

Improve CI and security#53

Merged
parttimenerd merged 12 commits into
SAP:masterfrom
parttimenerd:master
May 29, 2026
Merged

Improve CI and security#53
parttimenerd merged 12 commits into
SAP:masterfrom
parttimenerd:master

Conversation

@parttimenerd
Copy link
Copy Markdown
Contributor

No description provided.

- Pin third-party actions to immutable commit SHAs (softprops/action-gh-release,
  thomashampson/delete-older-releases, actions/checkout@v3) to prevent tag hijacking
- Add 'environment: release' to all publishing jobs for secrets/approval gating
- Branch protection on master already applied via GitHub API (requires PR review,
  status checks, blocks force-push and deletion)
…e args, -v shorthand

- Remove -v shorthand for --verbose (CF CLI intercepts -v before the plugin sees it)
- Expand ~ in --local-dir to the user's home directory
- Reject --local-dir values containing path traversal sequences (..)
- Validate --local-dir exists before execution, including in dry-run mode
- Reject whitespace-only --args values with a clear error message
- Enable gosec in golangci-lint; add targeted nolint annotations for
  intentional exec.Command("cf",...) / exec.Command(javaPath,...) usage
  and correct file permissions (0755 dirs, 0644 JAR/hash, 0600 downloads)
- Add govulncheck to PR validation and build workflows; runs in report
  mode since remaining findings are stdlib-only (require Go 1.25.x)
- Add govulncheck to scripts/lint-go.sh for local development
- Bump go.mod to 1.24.6 (fixes GO-2025-3956: exec.LookPath path confusion)
- Fix .golangci.yml: move G204 exclusion to linters.settings.gosec.excludes
  (v2 schema dropped issues.exclude-rules in favour of per-linter settings)
- Remove now-redundant //nolint:gosec G204 annotations across all call sites
- govulncheck: parse JSON output and emit ::warning annotations so findings
  appear inline in the GitHub Actions UI and PR diff view
- Shell-quote appName in jstall sshCmd to fix G702 (command injection
  via taint analysis); add shellQuote helper using single-quote escaping
- Bump all GitHub Actions to Node.js 24-compatible versions:
  checkout v4→v6, setup-go v5→v6, setup-python v4→v6,
  setup-node v4→v6, golangci-lint-action v8→v9
- Fix govulncheck JSON parser: output is multi-line JSON objects, not
  NDJSON; use raw_decode() instead of line-by-line json.loads()
- Upgrade golang.org/x/crypto to v0.52.0 (fixes GO-2026-5005 through
  GO-2026-5023: 13 CVEs in SSH/TLS/auth packages)
- Upgrade golang.org/x/sys to v0.45.0 (fixes GO-2026-5024)
- Bump go directive to 1.25.0 to match updated dependency requirements
@parttimenerd parttimenerd requested a review from dbriemann May 28, 2026 14:15
@parttimenerd parttimenerd merged commit c82bdc5 into SAP:master May 29, 2026
7 checks passed
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