v0.2.13 - #64
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
💤 Files with no reviewable changes (2)
🚧 Files skipped from review as they are similar to previous changes (2)
WalkthroughThe converter no longer manages BloodHound clients or credentials, and destination URLs now use DLT configuration. Release automation now builds from published releases and invokes a reusable container build workflow. ChangesBloodHound configuration
Release automation
Estimated code review effort: 3 (Moderate) | ~25 minutes Sequence Diagram(s)sequenceDiagram
participant GitHubRelease
participant BuildWorkflow
participant ContainerWorkflow
GitHubRelease->>BuildWorkflow: published release tag and prerelease state
BuildWorkflow->>BuildWorkflow: checkout and verify package version
BuildWorkflow->>ContainerWorkflow: reusable workflow call with tag and prerelease
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/build-and-publish.yml:
- Line 41: Stop interpolating release-controlled values directly into shell
commands. In .github/workflows/build-and-publish.yml at lines 41-41 and 54-54,
expose github.event.release.tag_name through the step environment and read it
via a shell variable; apply the same env-based handling to inputs.tag in
.github/workflows/build-and-sign-container.yml at line 50.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 5fbd5117-d680-4894-a6a6-77469e5a08d3
📒 Files selected for processing (4)
.github/workflows/build-and-publish.yml.github/workflows/build-and-sign-container.yml.github/workflows/release-on-merge.yml.github/workflows/validate-branch.yml
💤 Files with no reviewable changes (2)
- .github/workflows/validate-branch.yml
- .github/workflows/release-on-merge.yml
| REF="${{ inputs.tag || github.ref_name }}" | ||
| # RC tags are written without a dash (e.g. v0.2.13rc1) so the stripped | ||
| # tag is already the PEP 440 / PyPI version hatch-vcs produces. | ||
| REF="${{ github.event.release.tag_name }}" |
There was a problem hiding this comment.
🔒 Security & Privacy | 🔴 Critical | ⚡ Quick win
Avoid interpolating release-controlled values directly into shell.
.github/workflows/build-and-publish.yml#L41-L41and#L54-L54: passgithub.event.release.tag_namethroughenv, then read it from a shell variable..github/workflows/build-and-sign-container.yml#L50-L50: do the same forinputs.tag.
📍 Affects 2 files
.github/workflows/build-and-publish.yml#L41-L41(this comment).github/workflows/build-and-publish.yml#L54-L54.github/workflows/build-and-sign-container.yml#L50-L50
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/build-and-publish.yml at line 41, Stop interpolating
release-controlled values directly into shell commands. In
.github/workflows/build-and-publish.yml at lines 41-41 and 54-54, expose
github.event.release.tag_name through the step environment and read it via a
shell variable; apply the same env-based handling to inputs.tag in
.github/workflows/build-and-sign-container.yml at line 50.
…and-sign-container.yml to run after build-and-publish.yml completes
fix: removed workflows andset build-and-sign-container.yml to run after build-and-publish.yml completes
Note
This branch will contain work done for multiple unrelated tickets. We're merging into this feature branch so we don't increment the OH version a bunch of times upon release.
1. BED-9063: Split BloodHound asset upload config between config.toml and secrets.toml
Context
BED-8838 moved the BHE URL out of
secrets.tomlintoconfig.tomlfor the scheduler/collection destination (destination.bloodhoundenterprise), but missed the CLI Asset Upload destination (destination.bloodhound), which still requiredurlas a secret.Changes
destinations/bloodhound/destination.py:urlparam onsaved_searchesandprivilege_zonesnow resolves viadlt.config.valueinstead ofdlt.secrets.value.tokenremainsdlt.secrets.value.core/convert.py: Removed dead code left over from an abandoned first implementation — theCredentialsdataclass,Converter._credentialsproperty, and the unusedself.client/self.upload_idattributes (and their now-unusedBloodHoundimport). These referenced a client that was never actually instantiated; the real ingest path usesBloodHoundEnterprisevia the@dlt.destinationfunction pattern.Important
Please open a related PR for an update to the offical BloodHound documentation!
UPDATE: here is the PR for the doc update
Testing
pytestsuite rundlt.config.valuestill resolvesurlif a user'ssecrets.tomlstill has it there.Summary by CodeRabbit
Summary by CodeRabbit
Bug Fixes
Chores