Skip to content

Conversation

@ysok
Copy link

@ysok ysok commented Nov 12, 2025

Description

RHAIENG-1069: Build the RStudio RPM from source instead of using the prebuilt RPM provided by RStudio. During an early build step called rpm-builder, the source code is downloaded and all build instructions provided by RStudio are followed to produce an .rpm file. Later, the RStudio RPM is copied and installed into the AIPCC image.

How Has This Been Tested?

Tested locally using podman
podman build -f rstudio/rhel9-python-3.12/Dockerfile.konflux.cpu --platform linux/x86_64 --build-arg BASE_IMAGE=quay.io/aipcc/base-images/cpu:3.0 -t test-rstudio-rhel9-python-3.12 .

Self checklist (all need to be checked):

  • Ensure that you have run make test (gmake on macOS) before asking for review
  • Changes to everything except Dockerfile.konflux files should be done in odh/notebooks and automatically synced to rhds/notebooks. For Konflux-specific changes, modify Dockerfile.konflux files directly in rhds/notebooks as these require special attention in the downstream repository and flow to the upcoming RHOAI release.

Merge criteria:

  • The commits are squashed in a cohesive manner and have meaningful messages.
  • Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work

@openshift-ci openshift-ci bot requested a review from dibryant November 12, 2025 16:47
@openshift-ci
Copy link

openshift-ci bot commented Nov 12, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign paulovmr for approval. For more information see the Code Review Process.

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

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

# RUN subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms
# RUN subscription-manager repos --list-enabled

#Use CentOS while we are still waiting on final AIPCC image
Copy link
Member

@jiridanek jiridanek Nov 12, 2025

Choose a reason for hiding this comment

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

Copy link
Author

Choose a reason for hiding this comment

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

+1 on these two PRs. I am running my test against 3.1 now, will be awhile.

podman build --no-cache -f rstudio/rhel9-python-3.12/Dockerfile.konflux.cpu --platform linux/x86_64 --build-arg BASE_IMAGE=quay.io/aipcc/base-images/cpu:3.1-1762903336 -t vath-rpm-rhel9-python-3.12 .

Copy link
Author

Choose a reason for hiding this comment

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

cpu:3.1-1762903336 was successfully built locally.

# Install R packages
# https://cran.r-project.org/web/packages
# COPY ${RSTUDIO_SOURCE_CODE}/install_packages.R ./
# RUN R -f ./install_packages.R && \
Copy link
Member

Choose a reason for hiding this comment

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

Can you uncomment this part as well an see how it goes? This script pre-installs R Packages

Copy link
Author

Choose a reason for hiding this comment

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

I will uncomment them once this PR is ready because it take long time to test this. But I will do.

Copy link
Member

@jiridanek jiridanek Nov 12, 2025

Choose a reason for hiding this comment

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

It's something we don't do currently, and since the task is to build and GA what we already have, I believe we should not be preinstalling R packages in 3.2/2.25.1

# # Install R packages
# # https://cran.r-project.org/web/packages
# COPY ${RSTUDIO_SOURCE_CODE}/install_packages.R ./
# RUN /bin/bash <<'EOF'
# set -Eeuxo pipefail
# R -f ./install_packages.R
# rm ./install_packages.R
# EOF

To preinstall packages, first, we should not preinstall package in RStudio-minimal workbench, we should create a RStudio-datascience workbench with packages. And second, there is followup task

Copy link
Author

Choose a reason for hiding this comment

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

If no objection from @atheo89, I'll remove these installation section.

Copy link
Member

Choose a reason for hiding this comment

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

No objections by my side, definitely this can be done in a follow up work.
I remember but it is hard to find that ticket, we had reported to AIPCC to include also some libs that are needed for these preinstalled Rpackages, and I thought that was useful to check if some of them are missing. But no problem from my side

@jiridanek
Copy link
Member

/build-konflux

@ysok ysok force-pushed the rdhs-RHAIENG-389-rstudio-aipcc branch 2 times, most recently from f62a29f to 506bdd8 Compare November 13, 2025 00:50
…r prebuilt package.

During an early build step called rpm-builder, the source code is downloaded and all build instructions provided by RStudio are followed to produce an .rpm file. Later, the RStudio RPM is copied and installed into the AIPCC image.
@ysok ysok force-pushed the rdhs-RHAIENG-389-rstudio-aipcc branch from 506bdd8 to 6077139 Compare November 13, 2025 00:55
@ysok
Copy link
Author

ysok commented Nov 13, 2025

Another push, included Dockerfile.konflux.cuda

@openshift-ci
Copy link

openshift-ci bot commented Nov 13, 2025

@ysok: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/images 6077139 link true /test images

Full PR test history. Your PR dashboard.

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants