Skip to content

chore: [ROSAENG-62417] initialize fullsend per-repo installation - #316

Merged
openshift-merge-bot[bot] merged 2 commits into
openshift:masterfrom
samanthajayasinghe:fullsend/scaffold-install
Jul 30, 2026
Merged

chore: [ROSAENG-62417] initialize fullsend per-repo installation#316
openshift-merge-bot[bot] merged 2 commits into
openshift:masterfrom
samanthajayasinghe:fullsend/scaffold-install

Conversation

@samanthajayasinghe

@samanthajayasinghe samanthajayasinghe commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

This PR adds the fullsend scaffold files for per-repo installation.

Merge this PR to activate fullsend workflows.

Summary by CodeRabbit

  • New Features
    • Added Fullsend automation to run on issue and pull request events, including comment and target review triggers.
    • Introduced per-repository Fullsend configuration with controlled remote resource access and restricted issue-creation targets.
    • Added a command to temporarily stop automated fix runs, including a label and an explanatory comment.
  • Chores
    • Updated the Tekton pipeline reference resolution to use a revision value for the boilerplate repository.

@openshift-ci
openshift-ci Bot requested review from Tafhim and typeid July 28, 2026 22:10
@coderabbitai

coderabbitai Bot commented Jul 28, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 4d63076e-2e2c-4bf2-9423-6318e8717010

📥 Commits

Reviewing files that changed from the base of the PR and between be2a98b and 689299a.

⛔ Files ignored due to path filters (5)
  • boilerplate/_data/last-boilerplate-commit is excluded by !boilerplate/**
  • boilerplate/openshift/golang-osd-e2e/README.md is excluded by !boilerplate/**
  • boilerplate/openshift/golang-osd-e2e/standard.mk is excluded by !boilerplate/**
  • build/Dockerfile is excluded by !build/**
  • build/Dockerfile.olm-registry is excluded by !build/**
📒 Files selected for processing (1)
  • .tekton/ocm-agent-operator-agentic-sdlc-check-pull-request.yaml

Walkthrough

Adds per-repository Fullsend configuration and a GitHub Actions workflow that dispatches repository events to Fullsend, handles authorized /fs-fix-stop comments, and updates a Tekton Boilerplate pipeline revision.

Changes

Fullsend integration and pipeline update

Layer / File(s) Summary
Fullsend configuration
.fullsend/config.yaml
Defines enabled roles, allowed remote resources, and permitted issue-creation targets.
Event routing and stop-fix control
.github/workflows/fullsend.yaml
Configures permissions and triggers, dispatches eligible events to the pinned Fullsend workflow, and handles authorized /fs-fix-stop comments.
Tekton pipeline reference
.tekton/ocm-agent-operator-agentic-sdlc-check-pull-request.yaml
Updates the referenced Boilerplate pipeline revision.

Estimated code review effort: 2 (Simple) | ~10 minutes

Sequence Diagram(s)

sequenceDiagram
  participant GitHub
  participant fullsend.yaml
  participant Fullsend
  participant PullRequest

  GitHub->>fullsend.yaml: Issue or pull request event
  fullsend.yaml->>Fullsend: Dispatch event and runtime configuration
  Fullsend-->>fullsend.yaml: Run reusable agent workflow
  GitHub->>fullsend.yaml: Authorized /fs-fix-stop comment
  fullsend.yaml->>PullRequest: Apply fullsend-no-fix label and post instructions
Loading

Possibly related PRs

Suggested reviewers: tafhim, typeid, dustman9000

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: initializing Fullsend per-repo installation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed No Ginkgo test definitions or titles were changed; the diff only touches config/docs/Makefile/YAML scaffolding.
Test Structure And Quality ✅ Passed No Ginkgo tests were added or modified; the PR only updates boilerplate, Dockerfiles, and Tekton config, so this test-structure check is not applicable.
Microshift Test Compatibility ✅ Passed Changed files are only config/workflow/Tekton YAML; no new Ginkgo e2e tests or MicroShift-unsupported APIs/features were added.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Only YAML/config/workflow files changed; no new Ginkgo e2e tests or node-topology assumptions were added.
Topology-Aware Scheduling Compatibility ✅ Passed PASS: The PR only adds scaffold/workflow/Tekton/build boilerplate; no deployment manifests, controllers, affinity/spread, node selectors, PDBs, or replica logic.
Ote Binary Stdout Contract ✅ Passed No process-level binary code changed; only YAML/Makefile/docs were added or updated, so the stdout contract isn’t impacted.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No new Ginkgo e2e tests were added; touched files are config/workflow/boilerplate/Dockerfiles and contain no IPv4-only test logic.
No-Weak-Crypto ✅ Passed Changed files are YAML/config only; scan found no MD5/SHA1/DES/RC4/3DES/Blowfish/ECB or custom crypto usage.
Container-Privileges ✅ Passed No changed manifest introduces privileged, host*, SYS_ADMIN, or allowPrivilegeEscalation settings; final container users are non-root.
No-Sensitive-Data-In-Logs ✅ Passed PASS: The added YAML only configures workflows and comments; I found no echo/print/logger/debug statements or data dumps exposing secrets, PII, or tokens.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@codecov-commenter

codecov-commenter commented Jul 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 65.03%. Comparing base (2b355f0) to head (689299a).

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #316   +/-   ##
=======================================
  Coverage   65.03%   65.03%           
=======================================
  Files          23       23           
  Lines        1570     1570           
=======================================
  Hits         1021     1021           
  Misses        471      471           
  Partials       78       78           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
.github/workflows/fullsend.yaml (1)

22-29: 🔒 Security & Privacy | 🔵 Trivial | ⚡ Quick win

Scope the permission ceiling to dispatch.

Move the current permission map under jobs.dispatch.permissions and set top-level permissions: {}. This preserves the maximum required by nested Fullsend jobs while making least privilege explicit for future jobs; reusable workflows cannot elevate caller permissions. (docs.github.com)

Proposed adjustment
-permissions:
-  actions: write
-  id-token: write
-  contents: write
-  issues: write
-  packages: read
-  pull-requests: write
+permissions: {}

 jobs:
   dispatch:
+    permissions:
+      actions: write
+      id-token: write
+      contents: write
+      issues: write
+      packages: read
+      pull-requests: write

As per path instructions, “Least privilege: minimize GITHUB_TOKEN permissions.”

🤖 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/fullsend.yaml around lines 22 - 29, Set the workflow-level
permissions to an empty map, then move the existing permission entries under the
`dispatch` job’s `permissions` key. Preserve all current permission values there
so nested Fullsend jobs retain their required ceiling.

Source: Path instructions

🤖 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.

Nitpick comments:
In @.github/workflows/fullsend.yaml:
- Around line 22-29: Set the workflow-level permissions to an empty map, then
move the existing permission entries under the `dispatch` job’s `permissions`
key. Preserve all current permission values there so nested Fullsend jobs retain
their required ceiling.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: c064bd92-a27c-4b6d-bc09-a75011271895

📥 Commits

Reviewing files that changed from the base of the PR and between 2b355f0 and 4fb6c63.

📒 Files selected for processing (12)
  • .fullsend/config.yaml
  • .fullsend/customized/agents/.gitkeep
  • .fullsend/customized/env/.gitkeep
  • .fullsend/customized/harness/.gitkeep
  • .fullsend/customized/plugins/.gitkeep
  • .fullsend/customized/policies/.gitkeep
  • .fullsend/customized/profiles/.gitkeep
  • .fullsend/customized/providers/.gitkeep
  • .fullsend/customized/schemas/.gitkeep
  • .fullsend/customized/scripts/.gitkeep
  • .fullsend/customized/skills/.gitkeep
  • .github/workflows/fullsend.yaml

@samanthajayasinghe samanthajayasinghe changed the title chore: initialize fullsend per-repo installation chore: [ROSAENG-62417] initialize fullsend per-repo installation Jul 28, 2026
@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test validate

3 similar comments
@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test validate

@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test validate

@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test validate

@samanthajayasinghe
samanthajayasinghe force-pushed the fullsend/scaffold-install branch from 4fb6c63 to be2a98b Compare July 29, 2026 00:21

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🤖 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/fullsend.yaml:
- Around line 1-2: Update the upstream URL in the managed-file header comment to
a valid current Fullsend scaffold path or stable commit, while preserving the
warning that the file should not be edited directly.
- Around line 88-89: Update the disabled-agent message in the gh pr comment step
to instruct users to satisfy the downstream fix gate by adding the fullsend-fix
label, while retaining the existing guidance about removing fullsend-no-fix or
using /fs-fix.
- Around line 22-28: Move the workflow-level permissions block to an empty
`permissions: {}` and define scoped permissions on the `jobs.dispatch`
reusable-workflow call. Retain only `contents: read`, `issues: write`, and
`pull-requests: write` for `stop-fix`, removing `actions: write`, `id-token:
write`, and `packages: read`.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 65a030cc-f603-41da-838c-dfb4f40181f7

📥 Commits

Reviewing files that changed from the base of the PR and between 4fb6c63 and be2a98b.

📒 Files selected for processing (12)
  • .fullsend/config.yaml
  • .fullsend/customized/agents/.gitkeep
  • .fullsend/customized/env/.gitkeep
  • .fullsend/customized/harness/.gitkeep
  • .fullsend/customized/plugins/.gitkeep
  • .fullsend/customized/policies/.gitkeep
  • .fullsend/customized/profiles/.gitkeep
  • .fullsend/customized/providers/.gitkeep
  • .fullsend/customized/schemas/.gitkeep
  • .fullsend/customized/scripts/.gitkeep
  • .fullsend/customized/skills/.gitkeep
  • .github/workflows/fullsend.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .fullsend/config.yaml

Comment thread .github/workflows/fullsend.yaml
Comment thread .github/workflows/fullsend.yaml
Comment thread .github/workflows/fullsend.yaml
@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test rosa-sts-e2e

@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test validate

1 similar comment
@chamalabey

Copy link
Copy Markdown
Contributor

/test validate

@tkong-redhat

Copy link
Copy Markdown
Contributor

/test rosa-sts-e2e

Comment thread .fullsend/config.yaml
@dustman9000

dustman9000 commented Jul 29, 2026

Copy link
Copy Markdown
Member

/test validate

You need to click into the prow jobs and look at the errors. Boilerplate is saying your git is not clean and you are modifying boilerplate managed files.

diff --git a/build/Dockerfile b/build/Dockerfile
index f6987eb..24bf50d 100644
--- a/build/Dockerfile
+++ b/build/Dockerfile
@@ -8,7 +8,7 @@ COPY . .
 RUN make go-build
 
 ####
-FROM registry.access.redhat.com/ubi9/ubi-minimal:9.8-1784705586
+FROM registry.access.redhat.com/ubi9/ubi-minimal:9.8-1785214301
 
 ENV USER_UID=1001 \
     USER_NAME=ocm-agent-operator
diff --git a/build/Dockerfile.olm-registry b/build/Dockerfile.olm-registry
index 3de29c6..1a737c2 100644
--- a/build/Dockerfile.olm-registry
+++ b/build/Dockerfile.olm-registry
@@ -4,7 +4,7 @@ COPY ${SAAS_OPERATOR_DIR} manifests
 RUN initializer --permissive
 
 # ubi-micro does not work for clusters with fips enabled unless we make OpenSSL available
-FROM registry.access.redhat.com/ubi9/ubi-minimal:9.8-1784705586
+FROM registry.access.redhat.com/ubi9/ubi-minimal:9.8-1785214301
 
 COPY --from=builder /bin/registry-server /bin/registry-server
 COPY --from=builder /bin/grpc_health_probe /bin/grpc_health_probe
make[1]: *** [boilerplate/openshift/golang-osd-operator/standard.mk:143: isclean] Error 1
make: *** [boilerplate/openshift/golang-osd-operator/standard.mk:319: generate-check] Error 2
{"component":"entrypoint","error":"wrapped process failed: exit status 2","file":"sigs.k8s.io/prow/pkg/entrypoint/run.go:84","func":"sigs.k8s.io/prow/pkg/entrypoint.Options.internalRun","level":"error","msg":"Error executing test process","severity":"error","time":"2026-07-29T02:45:42Z"} 

@samanthajayasinghe

Copy link
Copy Markdown
Contributor Author

/test validate

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@samanthajayasinghe: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@chamalabey

Copy link
Copy Markdown
Contributor

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jul 30, 2026
@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: chamalabey, samanthajayasinghe

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 30, 2026
@openshift-merge-bot
openshift-merge-bot Bot merged commit 7f9e641 into openshift:master Jul 30, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants