Changes for page Rancher 2

Last modified by Diana Strebkova on 2025/12/12 14:23

From version 10.3
edited by Diana Strebkova
on 2025/12/12 11:43
Change comment: There is no comment for this version
To version 15.1
edited by Diana Strebkova
on 2025/12/12 13:38
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -245,15 +245,17 @@
245 245  |=(((
246 246  Index URL
247 247  )))|(((
248 -oci:[[~~/~~/registry.sdc.t-systems.net/chartrepo/devopsaas-helm/>>url:https://registry.sdc.t-systems.net/chartrepo/devopsaas/||shape="rect"]]chartname, for example:
248 +oci:~/~/registry.sdc.t-systems.net/devopsaas-helm/**<chartname>**, for example:
249 249  
250 -oci:~/~/registry.sdc.t-systems.net/chartrepo/devopsaas-helm/chartname
250 +oci:~/~/registry.sdc.t-systems.net/devopsaas-helm/jenkins-lib
251 251  
252 -oci:[[~~/~~/registry.sdc.t-systems.net/>>url:https://registry.sdc.t-systems.net/chartrepo/devopsaas/||shape="rect"]][[devopsaas-helm/jenkins-lib>>url:https://registry-manoni.devops.t-systems.net/harbor/projects/139/repositories/jenkins-lib]]
252 +{{info}}
253 +Take into account, that all internal harbor repositories with helm charts have PKEY-helm naming convention, adding repo with both docker images and helm charts may not be supported in rancher.
254 +{{/info}}
253 253  )))
254 254  
255 255  {{info}}
256 -Now all internal helm charts are stored in harbor folders with -helm suffix. Adding the whole public project doesn't work natively anymore, so each separate chart should be added as a separate repo.
258 +Now all internal helm charts are stored in harbor folders with -helm suffix. Adding the whole public project doesn't work natively anymore, so each separate chart should be added as a separate repo. //**If you have a need in adding the whole project with many repositories, please contact support for finding a possible solution.**//
257 257  {{/info}}
258 258  
259 259  === Deploy Helm charts ===
... ... @@ -266,7 +266,6 @@
266 266  
267 267  == Add private chart repository ==
268 268  
269 -
270 270  === Create a robot account in Harbor ===
271 271  
272 272  To add project specific helm charts to Rancher, a Harbor robot account is needed, that is able to read helm charts and pull repositories. If you don't have such an account yet, please follow the instructions given in the [[Create Robot Account section of the Harbor documentation>>doc:Harbor.Harbor 2\.7 Robot Accounts.WebHome||anchor="create_robot_account"]] and make sure to grant at least the following permissions:
... ... @@ -279,6 +279,8 @@
279 279  
280 280  (% class="p1" %)
281 281  In Rancher UI, switch to the intended cluster and go to Apps/Repositories using the left side menu.
283 +
284 +
282 282  [[image:attach:Screenshot 2023-04-25 at 13.11.48.png||data-xwiki-image-style-border="true" queryparams="effects=drop-shadow" height="400" width="209"]]
283 283  
284 284  (% class="p1" %)
... ... @@ -291,7 +291,7 @@
291 291  ==== Target: http(s) URL ====
292 292  
293 293  {{warning title="Chartmuseum Deprecation"}}
294 -Chartmuseum in Harbor is deprecated, meaning we won't be able to add repositories to Rancher that way anymore. Instead use Target: OCI repository.
297 +Chartmuseum in Harbor is deprecated, meaning we won't be able to add internal harbor repositories to Rancher that way anymore. Instead use Target: OCI repository.
295 295  {{/warning}}
296 296  
297 297  (% class="p1" %)
... ... @@ -312,14 +312,16 @@
312 312  ==== Target: OCI Repository ====
313 313  
314 314  {{info}}
315 -Now all internal helm charts are stored in harbor folders with -helm suffix. Adding the whole public project doesn't work natively anymore, so each separate chart should be added as a separate repo.
318 +Now all internal helm charts are stored in harbor folders with -helm suffix. Adding the whole public project doesn't work natively anymore, so each separate chart should be added as a separate repo.//** If you have a real need to add the whole project, please contact support for finding a possible solution.**//
316 316  {{/info}}
317 317  
318 318  (% class="p1" %)
319 -Choose OCI repository in Target and for url, use  ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chatname>##
322 +Choose OCI repository in Target and for url, use  ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chartname>##
320 320  
321 -(% class="p1" %)
322 -Replace ##<domain>## , ##<project>##  and ##<chatname> ##as necessary to match your set-up.
324 +(% class="box" %)
325 +(((
326 +Replace ##<domain>## , ##<project>##  and ##<chartname> ##as necessary to match your set-up. Your charts should be stored in ##<project>-helm ##repository in Harbor, which is created by default when project is created in portal.
327 +)))
323 323  
324 324  (% class="p1" %)
325 325  For Authentication, select "Create a HTTP Basic Auth Secret" and provide the Username and Password of the Harbor robot account from the previous section.
... ... @@ -330,8 +330,120 @@
330 330  (% class="wikigeneratedid" %)
331 331  Click Create.
332 332  
333 -= Automated deployments with Jenkins =
338 +(% class="wrapped" %)
339 +|=(((
340 +Field
341 +)))|=(((
342 +Value
343 +)))
344 +|=(((
345 +Name
346 +)))|(((
347 +sdcloud-sdportal
348 +)))
349 +|=(((
350 +Description
351 +)))|(((
352 +Sdportal charts of sdcloud project
353 +)))
354 +|=(((
355 +Index URL
356 +)))|(((
357 +oci:~/~/registry.sdc.t-systems.net/sdcloud-helm/sdportal
334 334  
359 +{{info}}
360 +Now we should target a chart repo directly, not the whole project. In you need to reference the whole project with a lot of repos, please contact support to find a possible solution.
361 +{{/info}}
362 +)))
363 +
364 +=== Migrating chart repositories in rancher to new OCI Repository format ===
365 +
366 +(% class="box warningmessage" %)
367 +(((
368 +ChartMuseum is being deprecated. After the migration is complete, **all harbor charts will be removed from ChartMuseum**, and **old HTTP(S)-based chart repositories will no longer work in Rancher (for internal harbor charts)**.
369 +)))
370 +
371 +There are two ways to migrate your repositories:
372 +
373 +1. ##Direct Transition (Editing the Existing Repository)##
374 +1*. Change the target to “OCI Repository”.
375 +1*. Update the URL as required (the repository name cannot be changed).
376 +1*. After saving, installed apps will automatically start using the updated repository.
377 +1*. (% class="box" %)
378 +(((
379 +Important limitation: OCI repositories must point directly to a single chart repository, not to a parent folder.
380 +If your old repository included several charts (for example “bitbucket” and “jira”), then after switching to OCI you can only target one chart (e.g. “bitbucket”).
381 +The other charts will no longer receive updates through this repo, and you will still need to create additional repositories for each individual chart.
382 +)))
383 +1. Add New Repositories One by One (Recommended), preserve the old one till the end.
384 +This approach allows a smooth transition while the old ChartMuseum repository continues to function. You can:
385 +1.* Create a new OCI repository for each chart,
386 +1.* Keep the old ChartMuseum repo enabled during the migration,
387 +1.* Migrate applications gradually following the steps described here.
388 +
389 +This avoids disruptions and allows controlled migration.
390 +
391 +Special Case: Old Repo Targeting Multiple Chart Repos
392 +
393 +If your existing repository targets multiple chart repositories and you need the new OCI setup to behave the same way, please contact support. OCI does not support multi-chart endpoints within a single repository, and we can help you find an appropriate solution.
394 +
395 +To ensure a smooth transition, we recommend to **add an OCI-based repository alongside the existing ChartMuseum repository** during the migration phase. If you don't w
396 +
397 +(% class="box" %)
398 +(((
399 +**We will make your charts available in the corresponding new `<pkey>-helm` OCI projects.**
400 +)))
401 +
402 +| Term | Meaning
403 +| **Old Repository** | The existing HTTP/HTTPS Harbor ChartMuseum repository.
404 +| **New Repository** | The new OCI-based Helm chart repository created for your project (e.g. `<chart-repo-name>` in `<pkey>-helm`).
405 +
406 +##__**Why This Migration Is Required:**__##
407 +
408 +* ##ChartMuseum is deprecated and will be removed.##
409 +* ##Applications deployed from old repos keep a reference to that repo inside their labels.##
410 +* ##Without updating the application to point to the new OCI repo, **Rancher will not detect new chart versions from new repository**.##
411 +
412 +## Migration Steps:##
413 +
414 +1. ##Create the New OCI Repository in Rancher##
415 +11. Go to **Apps → Repositories**.
416 +11. Add a new repository of type **OCI**.
417 +11. Name it similarly to your old repo name (e.g. `<chart-repo-name>-oci`). You can't name it the same.
418 +11. Point it to the new OCI endpoint.
419 +1. ##Disable the Old ChartMuseum Repository Temporarily## 
420 +##This step ensures that Rancher resolves charts from the new OCI repo.##
421 +11. Go to **Apps → Repositories**.
422 +11. Disable the old HTTP(S)-based repository.
423 +11. Keep it disabled until the migration is done.
424 +1. ##Update Existing Applications to Use the New OCI Repo##
425 +Applications deployed with the old repository still contain the old repo name in their metadata. You must upgrade them once to transition.
426 +11. Go to **Apps → Installed Apps**.
427 +11. Open the application that was deployed using the old repo.
428 +11. Click **Upgrade**.
429 +11. In the list of available chart repositories (scroll to the bottom), select the **new OCI repository**.
430 +11. Choose the chart version you want to deploy (same or newer).
431 +11. Click **Upgrade**.
432 +1. ##Re-enable the Old Repository (Optional) ##
433 +If you still need the old repo for other apps, re-enable it after the migration steps above.
434 +**Note:** Even if a newer chart version exists in the old repository, your migrated app **will not see it**, because it is no longer connected to that repo
435 +
436 +----
437 +
438 +## Reverting the Migration (If Needed)
439 +If you want to move an app back to the old repository:##
440 +
441 +1. Temporarily disable the new OCI repo.
442 +1. Enable the old ChartMuseum repo.
443 +1. Open the application → **Upgrade**.
444 +1. Select the chart from the old repo.
445 +1. Save.
446 +
447 +This will reconnect the app to the old repository.
448 +
449 +=
450 +Automated deployments with Jenkins =
451 +
335 335  In this section, we describe(% style="color:#172b4d" %) how to set-up **automated builds, tests and deployments** for Jenkins.
336 336  
337 337  == Prerequisites ==