Skip to content

Conversation

@nolanpro
Copy link
Contributor

@nolanpro nolanpro commented Sep 26, 2025

ci:deploy
ci:multitenancy
ci:k8s-branch:v4.15.8
......


Note

Adds a pre-provider TenantBootstrapper, streamlines multitenant config overrides, updates license storage to the local disk, and adjusts logging, testing, and verification to support per-tenant config caching.

  • Multitenancy:
    • Introduce TenantBootstrapper and inject it via Application::bootstrapWith() (after LoadEnvironmentVariables) to set per-tenant env/config (APP_KEY/URL, storage, Redis/log prefixes) before providers load; expose Tenant::fromBootstrapper()/setBootstrappedTenant().
    • Simplify SwitchTenant: remove DB driver rebinding and broad path overrides; now apply minimal runtime config overrides when config isn’t cached and extend BroadcastManager only.
    • Update TenantFinder and ProcessMakerServiceProvider to respect config('app.multitenancy'), support bootstrapper-provided tenant, and improve console handling of tenant resolution.
  • Config/Logging:
    • Logging channels read path from LOG_PATH and support per-tenant log locations.
    • RefreshArtisanCaches no-ops in testing to avoid DB reconnect and quiet outputs.
    • Exception\Handler: early log when app root is unavailable; remove custom console renderer.
  • License handling:
    • Store/read license from Storage disk local (license.json); remove filesystems.disks.root; rebind PackageManifest to LicensedPackageManifest in app/provider; update tests accordingly.
  • CLI/Diagnostics:
    • Overhaul tenants:verify: drop --verify-against, present key paths/configs in tables, perform decryption check, and show cache/status info.

Written by Cursor Bugbot for commit 6a2dc10. This will update automatically on new commits. Configure here.

@nolanpro nolanpro closed this Sep 26, 2025
@nolanpro nolanpro reopened this Sep 26, 2025
@nolanpro nolanpro closed this Sep 27, 2025
@nolanpro nolanpro reopened this Sep 27, 2025
@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

cursor[bot]

This comment was marked as outdated.

@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

@nolanpro nolanpro requested a review from gusys October 1, 2025 16:56
cursor[bot]

This comment was marked as outdated.

Copy link
Contributor

@gusys gusys left a comment

Choose a reason for hiding this comment

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

Looks good to me, but exists some observations from cursor that need to be a resolved, in special take a look about this observation $app->forgetInstance('encrypter')

@nolanpro
Copy link
Contributor Author

nolanpro commented Oct 1, 2025

Looks good to me, but exists some observations from cursor that need to be a resolved, in special take a look about this observation $app->forgetInstance('encrypter')

@gusys we moved the app key to TenantBootstraper which happens very early in the boot process. We don't need to forget the original instance any more because now the original instance has the correct tenant app key

@nolanpro nolanpro requested a review from gusys October 1, 2025 23:54
Copy link
Contributor

@gusys gusys left a comment

Choose a reason for hiding this comment

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

Looks good to me...

@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@vladyrichter
Copy link

QA server K8S was successfully deployed https://tenant-1.ci-d9ca9c962f.engk8s.processmaker.net

@processmaker-sonarqube
Copy link

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@nolanpro nolanpro merged commit 30e9ad0 into develop Oct 2, 2025
9 checks passed
@nolanpro nolanpro deleted the feature/FOUR-24651_C branch October 2, 2025 17:27
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.

4 participants