diff --git a/.claude/settings.json b/.claude/settings.json new file mode 100644 index 000000000..03fd0554b --- /dev/null +++ b/.claude/settings.json @@ -0,0 +1,7 @@ +{ + "permissions": { + "allow": [ + "Bash(git check-ignore *)" + ] + } +} diff --git a/changelog/seqera-enterprise/v24.1.md b/changelog/seqera-enterprise/v24.1.md index 4468d99af..14afd85ae 100644 --- a/changelog/seqera-enterprise/v24.1.md +++ b/changelog/seqera-enterprise/v24.1.md @@ -6,6 +6,10 @@ tags: [seqera enterprise] Seqera Platform Enterprise version 24.1 introduces three new features: Data Studios (in public preview), Data Explorer, and managed identities. A number of bug fixes and performance enhancements are included in this major release. +:::info +The legacy distribution endpoint at `cr.seqera.io/private` is deprecated. Only bug fixes for existing major releases will continue to be published there. New major releases of Seqera Platform are available from `cr.seqera.io/enterprise`. Seqera will provide updated credentials for the new endpoint — [contact your Seqera representative](https://support.seqera.io) if you need access. +::: + ## Feature updates and improvements ### Data Studios diff --git a/changelog/seqera-enterprise/v24.2.md b/changelog/seqera-enterprise/v24.2.md index 41d9fb896..15c44535b 100644 --- a/changelog/seqera-enterprise/v24.2.md +++ b/changelog/seqera-enterprise/v24.2.md @@ -6,6 +6,10 @@ tags: [seqera enterprise] Seqera Enterprise version 24.2 introduces new Data Studios features, global Nextflow configuration at the compute environment level, Azure service principal and managed identity authentication support, and a number of bug fixes and performance enhancements. +:::info +The legacy distribution endpoint at `cr.seqera.io/private` is deprecated. Only bug fixes for existing major releases will continue to be published there. New major releases of Seqera Platform are available from `cr.seqera.io/enterprise`. Seqera will provide updated credentials for the new endpoint — [contact your Seqera representative](https://support.seqera.io) if you need access. +::: + ## Feature updates and improvements ### Data Studios diff --git a/changelog/seqera-enterprise/v25.1.md b/changelog/seqera-enterprise/v25.1.md index 0f1261e3b..3723fbcdd 100644 --- a/changelog/seqera-enterprise/v25.1.md +++ b/changelog/seqera-enterprise/v25.1.md @@ -8,6 +8,10 @@ Seqera Platform Enterprise version 25.1 introduces Studios GA and a number of bu Studios is Seqera's in-platform tool for secure, on-demand, interactive data analysis using containers created from Seqera-managed container template images or your own organization-managed custom environments. You only pay for the compute your Studio sessions consume, and the compute is adjacent to your data, significantly reducing data transfer costs and wasted time copying data from storage to analysis. This significantly reduces infrastructure management requirements, removes data silos, adheres to strict in-platform role-based access control, and lowers your operational costs. [Learn more about Studios](https://docs.seqera.io/platform-enterprise/25.1/studios/overview). +:::info +The legacy distribution endpoint at `cr.seqera.io/private` is deprecated. Only bug fixes for existing major releases will continue to be published there. New major releases of Seqera Platform are available from `cr.seqera.io/enterprise`. Seqera will provide updated credentials for the new endpoint — [contact your Seqera representative](https://support.seqera.io) if you need access. +::: + ## Feature updates and improvements ### Studios diff --git a/changelog/seqera-enterprise/v25.2.md b/changelog/seqera-enterprise/v25.2.md index 2c66e5b1f..6dbfd816c 100644 --- a/changelog/seqera-enterprise/v25.2.md +++ b/changelog/seqera-enterprise/v25.2.md @@ -6,6 +6,10 @@ tags: [seqera enterprise] Seqera Platform Enterprise version 25.2 introduces a series of enhancements to improve security, observability, and flexibility. +:::info +The legacy distribution endpoint at `cr.seqera.io/private` is deprecated. Only bug fixes for existing major releases will continue to be published there. New major releases of Seqera Platform are available from `cr.seqera.io/enterprise`. Seqera will provide updated credentials for the new endpoint — [contact your Seqera representative](https://support.seqera.io) if you need access. +::: + ## Feature updates and improvements ### Single instance cloud compute environments diff --git a/changelog/seqera-enterprise/v25.3.md b/changelog/seqera-enterprise/v25.3.md index d42d0947d..53d29b632 100644 --- a/changelog/seqera-enterprise/v25.3.md +++ b/changelog/seqera-enterprise/v25.3.md @@ -6,6 +6,10 @@ tags: [seqera enterprise] Seqera Platform Enterprise version 25.3 introduces a series of new features and enhancements, including custom user roles, Studios integration with Git providers, and pipeline versioning. +:::info +The legacy distribution endpoint at `cr.seqera.io/private` is deprecated. Only bug fixes for existing major releases will continue to be published there. New major releases of Seqera Platform are available from `cr.seqera.io/enterprise`. Seqera will provide updated credentials for the new endpoint — [contact your Seqera representative](https://support.seqera.io) if you need access. +::: + ## Feature updates and improvements ### Custom roles and fine-grained authorization (RBAC) diff --git a/changelog/seqera-enterprise/v26.1.md b/changelog/seqera-enterprise/v26.1.md new file mode 100644 index 000000000..30f19e5b7 --- /dev/null +++ b/changelog/seqera-enterprise/v26.1.md @@ -0,0 +1,189 @@ +--- +title: Seqera Platform Enterprise v26.1 +date: 2026-04-07 +tags: [enterprise] +--- + +:::info +The legacy distribution endpoint at `cr.seqera.io/private` is deprecated. Only bug fixes for existing major releases will continue to be published there. New major releases of Seqera Platform are available from `cr.seqera.io/enterprise`. Seqera will provide updated credentials for the new endpoint — [contact your Seqera representative](https://support.seqera.io) if you need access. +::: + +## Feature updates and improvements + +### Studios + +- Improved Studios session management and stability. +- Updated Studios micromamba builds to use `conda/micromamba:v2` and Wave 1.33.0. +- Added `nameStrategy` configuration option to Studios workspace settings. +- Renamed Studios settings route from `data-studios` to `studios`. +- Added ability to edit stopped Studios without restarting them. + +### Compute environments + +- Added separate head and worker pool support for Azure Batch compute environments in both Forge and manual modes. +- Added ability to disable a compute environment. +- Improved Seqera Compute integration. +- Improved compute environment form warning display with individual stacked alerts. + +### Azure + +- Changed default Azure Batch job timeout to 7 days and exposed it as a new configuration item. +- Updated default Azure termination policy in compute environment creation form. +- Added VNet and subnet support for Azure Batch compute environments. +- Added support for separate managed identity client IDs for head and compute jobs in Azure Batch. +- Enabled Entra (service principal) credentials for Azure Batch Forge pool creation and Fusion v2. + +### AWS + +- Added AWS credential modes with support for key-based and role-based access. +- Added AWS External ID support for role-based credentials. + +### GCP + +- Added Workload Identity Federation (WIF) credential support for Google Batch and Google Cloud compute environments. +- Added support for network tagging in Google Batch. +- Added boot disk image selection for Google Batch compute environments. +- Added support for multiple machine types in Google Batch compute environments. + +### Pipelines + +- Redesigned workflow notification email templates with updated styling. +- Added GitHub App manifest flow for credential creation. +- Improved clipboard UX in workflow details header. +- Updated schema radio control copy. +- Redesigned report preview modal header layout and modal. +- Registered Nextflow CLI as a static OIDC client for authorization code with PKCE flow. +- Enriched the `POST /trace/create` response with platform metadata to reduce downstream API calls from Nextflow. (link needed) + +### Datasets + +- Added preview support for linked (URL-referenced) dataset versions. + +### Data Explorer + +- Added data lake support in Data Explorer. +- Added Molstar 3D viewer for PDB and CIF file preview. +- Added extensible view mode selection for JSON files in Data Explorer (JSON, IGV, and plain text). +- Updated Data Explorer to display non-native browser files as text when opened in a new tab. +- Added Fusion symlink resolution to the Data Explorer API. +- Increased the maximum data link name length to 512 characters. + +### Access control + +- Added required description field to custom role creation. +- Exposed roles API endpoints in the OpenAPI specification. +- Added SSO domain-based redirect for the login guard. + +### Monitoring and observability + +- Added real-time active user count display in the admin panel. +- Added workspace usage metrics. +- Added CSV export for audit logs v2 with configurable maximum record limit. +- Added audit event metadata (owner ID, workspace ID) to Studios audit events. +- Switched audit logs v2 to token-based pagination for improved performance. +- Added comprehensive audit logging for SSO lifecycle events. +- Migrated telemetry usage queries to use the audit logs v2 table. +- Updated the audit log cleaner to handle both v1 and v2 audit log tables. +- Added CSV export button to the admin audit logs v2 table. +- Added descriptions and documentation metadata to audit event types. +- Added audit event metadata to the remaining Studios session audit events. +- Added audit event metadata (owner ID, workspace ID) to all data link audit events. +- Added `target_name` field to the audit log v2 data model. +- Renamed outdated audit event types to use consistent naming conventions. +- Deprecated the legacy `/admin/audit-logs` (v1) endpoint. +- Added target resource names to all audit event emission points. +- Refined audit log v2 target resource context labels in API, UI, and CSV export. +- Added a `TOWER_AUDIT_LOG_V2_WRITE_MODE` setting supporting `v1`, `v2`, and `dual` modes. +- Removed unused `instanceId` and `instanceName` columns from the audit log v2 table. +- Updated the audit log v2 admin table to display resource names alongside target IDs. +- Added target organization, workspace, and user context to audit log v2 interfaces. + +### General + +- Bumped Micronaut from 4.7.6 to 4.8.3. +- Improved admin workspace list toolbar responsiveness. +- Applied updated status icons across platform components. +- Redesigned page header layout with improved toolbar and breadcrumb integration. +- Added automatic breadcrumb navigation to page headers. +- Updated delete workspace confirmation modal text to clarify the impact of deletion. +- Removed the unused Containers page. +- Removed the dynamic resource labels feature toggle (feature is now always active). + +## Bug fixes + +### Studios + +- Added workspace existence check before creating Studios workspace settings. +- Fixed R-IDE icon styling. +- Added validation of git repository configuration files when creating a Studio. +- Fixed broken navigation from Studio details page for private Studios. + +### Compute environments + +- Fixed Google Batch machine type migration to be portable across MySQL and MariaDB. +- Removed hardcoded prediction model configuration from AWS Cloud platform provider. +- Fixed metering event handling to batch events when more than 100 events are received, preventing silent data loss. +- Removed default `terminateAsync` implementation to enforce explicit provider implementations. +- Fixed Workload Identity Federation (WIF) log retrieval by setting the project ID on the Cloud Logging client. +- Fixed WIF log retrieval by resolving GCP project numbers to project names for Cloud Logging filters. +- Fixed WIF credential context propagation for log retrieval and data link operations. +- Propagated AWS Forge disposal failures instead of silently swallowing exceptions. +- Pinned `google-cloud-storage` to a compatible version to fix `NoClassDefFoundError` on GCS data link access. +- Returned an actionable error message when an Azure Batch pool is missing during job submission. +- Propagated GCP Forge disposal failures instead of silently ignoring resource deletion errors. +- Enabled cloud cache for Kubernetes compute environments with local PVC paths. +- Reverted unintended cloud cache change for Kubernetes compute environments. + +### Pipelines + +- Fixed pipeline implicit default version resolution. +- Removed logs from AI debug button URL to prevent URI too large errors. +- Replaced `document.write` with client-side form submission in GitHub App manifest flow to fix Firefox blank page issue. +- Made workflow job cancellation idempotent to prevent 500 errors on concurrent cancel requests. +- Fixed parallel requests to pipeline info in the launch form. + +### Datasets + +- Fixed `LazyInitializationException` in avatar resolution during dataset creation. +- Fixed dataset name field to apply input normalization (spaces converted to underscores). +- Fixed column order preservation in dataset preview for TSV files. + +### Data Explorer + +- Fixed IGV MIME type detection in Data Explorer. + +### Access control + +- Fixed refresh token JWT secret configuration for enterprise deployments. +- Hardened the Auth0 OAuth2 flow with retries against `ResponseClosedException` errors. +- Fixed `auth0org_id` column naming to align with Hibernate naming strategy. +- Fixed erroneous `@QueryValue` annotations on SSO controller path variables causing 404 errors. +- Fixed `@PermissionRequired` interceptor binding with `@Type` annotation. +- Fixed `@JWTAuthRequired` interceptor binding with `@Type` annotation to prevent silent bypass. + +### Monitoring and observability + +- Fixed dashboard drop-down scrolling and character overflow. +- Fixed task logging to use populated `taskId` instead of empty `id`. +- Fixed `user_sign_in` audit events to correctly populate the actor field with the signing user's ID. + +### General + +- Fixed side navigation width not updating in Safari when toggling the collapsed state. +- Fixed credits banner appearing during page load. +- Fixed oversized icon on the forbidden access page. + +## Upgrade notes + +No breaking changes. Standard upgrade procedure applies. + +### Configuration changes + +- `TOWER_AUDIT_LOG_V2_ENABLED` and `TOWER_AUDIT_LOG_V2_WRITE_MODE` added as configuration options. + + - `TOWER_AUDIT_LOG_V2_WRITE_MODE`: Turns on the v2 Audit Log for parallel writes with v1 Audit Log. + - `TOWER_AUDIT_LOG_V2_ENABLED`: Turns on or off the v2 Audit Log view from the Admin Panel. + +### Database migrations + +Database migrations run automatically during upgrade. No manual steps required. diff --git a/docusaurus.config.js b/docusaurus.config.js index ad0321e99..07226336b 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -417,6 +417,15 @@ export default async function createConfigAsync() { ].filter(Boolean), themeConfig: getSeqeraThemeConfig({ + seqera: { + docs: { + versionDropdown: { + 'platform-enterprise': { + showCurrent: process.env.INCLUDE_NEXT ? true : false, + }, + }, + }, + }, typesense: { typesenseCollectionName: 'seqera_docs', searchPagePath: '/search', diff --git a/netlify.toml b/netlify.toml index cd6098467..82de6af11 100644 --- a/netlify.toml +++ b/netlify.toml @@ -17,7 +17,7 @@ DOCUSAURUS_SSG_WORKER_THREAD_COUNT = "1" [context.deploy-preview.build.environment] - INCLUDE_NEXT="" + INCLUDE_NEXT="true" EXCLUDE_CHANGELOG="" EXCLUDE_PLATFORM_CLI="true" EXCLUDE_PLATFORM_ENTERPRISE="" diff --git a/platform-enterprise_docs/enterprise-sidebar.json b/platform-enterprise_docs/enterprise-sidebar.json index 3939a3408..5cd7691ca 100644 --- a/platform-enterprise_docs/enterprise-sidebar.json +++ b/platform-enterprise_docs/enterprise-sidebar.json @@ -230,7 +230,8 @@ "seqera-ai/installation", "seqera-ai/authentication", "seqera-ai/command-approval", - "seqera-ai/use-cases" + "seqera-ai/use-cases", + "seqera-ai/projects" ] }, { diff --git a/platform-enterprise_docs/enterprise/_templates/docker/docker-compose.yml b/platform-enterprise_docs/enterprise/_templates/docker/docker-compose.yml index c288ef007..472b62ef5 100644 --- a/platform-enterprise_docs/enterprise/_templates/docker/docker-compose.yml +++ b/platform-enterprise_docs/enterprise/_templates/docker/docker-compose.yml @@ -47,7 +47,7 @@ services: - $HOME/.tower/db/redis:/data migrate: - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.3.4 + image: cr.seqera.io/enterprise/platform/migrate-db:v26.1 platform: linux/amd64 command: -c "/migrate-db.sh" networks: @@ -64,7 +64,7 @@ services: condition: service_healthy cron: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.4 + image: cr.seqera.io/enterprise/platform/backend:v26.1 platform: linux/amd64 command: -c '/tower.sh' networks: @@ -85,7 +85,7 @@ services: backend: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.4 + image: cr.seqera.io/enterprise/platform/backend:v26.1 platform: linux/amd64 command: -c '/wait-for-it.sh db:3306 -t 60; /tower.sh' networks: @@ -110,7 +110,7 @@ services: - cron frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.4 + image: cr.seqera.io/enterprise/platform/frontend:v26.1 platform: linux/amd64 networks: - frontend @@ -122,7 +122,7 @@ services: # Uncomment the following section to enable Studios functionality. See [Studios configuration](../../../studios/overview) for more information. # connect-proxy: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.9.0 +# image: cr.seqera.io/enterprise/studios/proxy:0.11.0 # platform: linux/amd64 # env_file: # - data-studios.env @@ -138,7 +138,7 @@ services: # - $HOME/.tower/connect:/data # # connect-server: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.9.0 +# image: cr.seqera.io/enterprise/studios/server:0.11.0 # platform: linux/amd64 # env_file: # - data-studios.env @@ -151,7 +151,7 @@ services: # Uncomment the following section to enable the pipeline optimization service. Add TOWER_ENABLE_GROUNDSWELL # or GROUNDSWELL_SERVER_URL to tower.env environment variables # groundswell: - # image: cr.seqera.io/private/nf-tower-enterprise/groundswell:0.3.3 + # image: cr.seqera.io/enterprise/platform/pipeline-optimization:0.3.3 # command: bash -c 'bin/wait-for-it.sh db:3306 -t 60; bin/migrate-db.sh; bin/serve.sh' # networks: # - backend diff --git a/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/proxy.yml b/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/proxy.yml index a743185d3..406563d80 100644 --- a/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/proxy.yml +++ b/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/proxy.yml @@ -19,7 +19,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: proxy - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.10.0 + image: cr.seqera.io/enterprise/studios/proxy:0.10.0 env: - name: CONNECT_HTTP_PORT value: "8081" diff --git a/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/server.yml b/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/server.yml index 968260ee4..c78002ab0 100644 --- a/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/server.yml +++ b/platform-enterprise_docs/enterprise/_templates/k8s/data_studios/server.yml @@ -21,7 +21,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: server - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.10.0 + image: cr.seqera.io/enterprise/studios/server:0.10.0 ports: - containerPort: 7070 name: server diff --git a/platform-enterprise_docs/enterprise/_templates/k8s/groundswell.yml b/platform-enterprise_docs/enterprise/_templates/k8s/groundswell.yml index 425f585c1..db6dc2895 100644 --- a/platform-enterprise_docs/enterprise/_templates/k8s/groundswell.yml +++ b/platform-enterprise_docs/enterprise/_templates/k8s/groundswell.yml @@ -96,7 +96,7 @@ spec: name: tower-groundswell-cfg - name: migrate-db - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" command: ['/opt/groundswell/bin/migrate-db.sh'] envFrom: - configMapRef: @@ -106,7 +106,7 @@ spec: containers: - name: groundswell - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" env: - name: MPLCONFIGDIR value: "/tmp" diff --git a/platform-enterprise_docs/enterprise/_templates/k8s/tower-cron.yml b/platform-enterprise_docs/enterprise/_templates/k8s/tower-cron.yml index be814b2c8..936fb748c 100644 --- a/platform-enterprise_docs/enterprise/_templates/k8s/tower-cron.yml +++ b/platform-enterprise_docs/enterprise/_templates/k8s/tower-cron.yml @@ -21,7 +21,7 @@ spec: name: tower-yml initContainers: - name: migrate-db - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.3.4 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.3.4 command: ["sh", "-c", "/migrate-db.sh"] envFrom: - configMapRef: @@ -32,7 +32,7 @@ spec: subPath: tower.yml containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.4 + image: cr.seqera.io/enterprise/platform/backend:v25.3.4 envFrom: - configMapRef: name: tower-backend-cfg diff --git a/platform-enterprise_docs/enterprise/_templates/k8s/tower-svc.yml b/platform-enterprise_docs/enterprise/_templates/k8s/tower-svc.yml index 5706e5e02..54ead0f8f 100644 --- a/platform-enterprise_docs/enterprise/_templates/k8s/tower-svc.yml +++ b/platform-enterprise_docs/enterprise/_templates/k8s/tower-svc.yml @@ -29,7 +29,7 @@ spec: # secretName: platform-oidc-certs containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.4 + image: cr.seqera.io/enterprise/platform/backend:v25.3.4 envFrom: - configMapRef: name: tower-backend-cfg @@ -88,7 +88,7 @@ spec: - name: "cr.seqera.io" containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.4 + image: cr.seqera.io/enterprise/platform/frontend:v25.3.4 ports: - containerPort: 80 restartPolicy: Always diff --git a/platform-enterprise_docs/enterprise/configuration/mirroring.md b/platform-enterprise_docs/enterprise/configuration/mirroring.md index fba851c84..bf4eb2d76 100644 --- a/platform-enterprise_docs/enterprise/configuration/mirroring.md +++ b/platform-enterprise_docs/enterprise/configuration/mirroring.md @@ -30,9 +30,9 @@ Create a YAML file (`seqera-images.yaml`) to specify which images to sync: ```yaml cr.seqera.io: images-by-semver: - private/nf-tower-enterprise/backend: ">= v25.3.4" - private/nf-tower-enterprise/frontend: ">= v25.3.4" - private/nf-tower-enterprise/migrate-db: ">= v25.3.4" + enterprise/platform/backend: ">= v25.3.4" + enterprise/platform/frontend: ">= v25.3.4" + enterprise/platform/migrate-db: ">= v25.3.4" ``` Run the sync: diff --git a/platform-enterprise_docs/enterprise/install-seqera-ai.md b/platform-enterprise_docs/enterprise/install-seqera-ai.md index 67c178a4e..cb4a394f2 100644 --- a/platform-enterprise_docs/enterprise/install-seqera-ai.md +++ b/platform-enterprise_docs/enterprise/install-seqera-ai.md @@ -194,7 +194,7 @@ For the full list of configuration options, see the [agent-backend chart documen |-------|-------------|---------| | `agentBackend.replicaCount` | Number of replicas | `1` | | `agentBackend.image.registry` | Image registry | `cr.seqera.io` | -| `agentBackend.image.repository` | Image repository | `private/nf-tower-enterprise/agent-backend` | +| `agentBackend.image.repository` | Image repository | `ai/agent-backend/backend` | | `anthropicApiKeyExistingSecretName` | Existing secret containing `ANTHROPIC_API_KEY` | `""` | | `tokenEncryptionKeyExistingSecretName` | Existing secret containing `TOKEN_ENCRYPTION_KEY` | `""` | diff --git a/platform-enterprise_docs/enterprise/platform-docker-compose.md b/platform-enterprise_docs/enterprise/platform-docker-compose.md index 751847ca6..f72877a49 100644 --- a/platform-enterprise_docs/enterprise/platform-docker-compose.md +++ b/platform-enterprise_docs/enterprise/platform-docker-compose.md @@ -80,11 +80,11 @@ For more information on configuration, see [Configuration options](./configurati An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: ```yaml frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged platform: linux/amd64 environment: NGINX_LISTEN_PORT: 8001 # If not defined, defaults to 8000 diff --git a/platform-enterprise_docs/enterprise/platform-kubernetes.md b/platform-enterprise_docs/enterprise/platform-kubernetes.md index 166014164..2d822964c 100644 --- a/platform-enterprise_docs/enterprise/platform-kubernetes.md +++ b/platform-enterprise_docs/enterprise/platform-kubernetes.md @@ -107,7 +107,7 @@ kubectl apply -f tower-svc.yml An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): ```yaml --- @@ -121,7 +121,7 @@ spec: ... containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.0-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v25.3.0-unprivileged env: - name: NGINX_LISTEN_PORT # If not defined, defaults to 8000. value: 8000 diff --git a/platform-enterprise_docs/git/_images/credentials-github-app-form.png b/platform-enterprise_docs/git/_images/credentials-github-app-form.png new file mode 100644 index 000000000..4d00f2c73 Binary files /dev/null and b/platform-enterprise_docs/git/_images/credentials-github-app-form.png differ diff --git a/platform-enterprise_docs/git/_images/credentials-github-install-app.png b/platform-enterprise_docs/git/_images/credentials-github-install-app.png new file mode 100644 index 000000000..8acfc90d3 Binary files /dev/null and b/platform-enterprise_docs/git/_images/credentials-github-install-app.png differ diff --git a/platform-enterprise_docs/git/_images/credentials-github-mainfest-page.png b/platform-enterprise_docs/git/_images/credentials-github-mainfest-page.png new file mode 100644 index 000000000..b26415e83 Binary files /dev/null and b/platform-enterprise_docs/git/_images/credentials-github-mainfest-page.png differ diff --git a/platform-enterprise_docs/git/overview.md b/platform-enterprise_docs/git/overview.md index 9c858ef42..214e8cb45 100644 --- a/platform-enterprise_docs/git/overview.md +++ b/platform-enterprise_docs/git/overview.md @@ -126,6 +126,84 @@ After you've created and copied your access token, create a new credential in Se 5. (Recommended) Enter the **Repository base URL** for which the credentials should be applied. This option is used to apply the provided credentials to a specific repository, e.g., `https://github.com/seqeralabs`. +### GitHub App + +As an alternative to personal access tokens, you can authenticate Seqera Platform to GitHub using a [GitHub App](https://docs.github.com/en/apps/creating-github-apps/about-creating-github-apps/about-creating-github-apps). GitHub Apps are the GitHub-recommended way to integrate with the GitHub API: they act on their own behalf rather than impersonating a user, support fine-grained permissions scoped to specific repositories, and use short-lived installation tokens that are not tied to a single account. + +When you select _GitHub_ as the **Provider**, the credentials form shows a **GitHub credential type** selector with two tabs: + +- **Access token** — Authenticate using a personal access token (PAT) for API access. This is the legacy flow described in the [GitHub](#github) section above. +- **GitHub App** — Set up app-based authentication with dedicated credentials. When you select this tab, a second selector lets you choose between two flows: + - **Create and add** — Use the GitHub App manifest flow to create a new app on GitHub directly from Seqera. Seqera generates a pre-filled manifest, redirects you to GitHub for approval, then automatically retrieves and stores the resulting App ID, private key, client secret, and webhook secret. + - **Add preexisting** — Register an app you have already created on GitHub by entering its App ID, installation ID, private key, and other security keys manually. + +The manifest flow (**Create and add**) is recommended for new integrations: it eliminates the manual copy-paste of multiple secrets, ensures the app is created with the minimum required permissions (`contents: read`, `metadata: read`), and avoids configuration errors. Use **Add preexisting** only when the app already exists or when you must create the app outside of Seqera. + +![GitHub App credentials form showing the Access token / GitHub App tabs and the Create and add / Add preexisting sub-selector](./_images/credentials-github-app-form.png) + +**Create a new GitHub App from Seqera** + +To create and install a GitHub App from Seqera using the manifest flow: + +1. From an organization workspace: Select **Credentials > Add Credentials**. From your personal workspace: Go to the user menu and select **Your credentials > Add credentials**. + +2. Enter a **Name** for the new credentials, e.g., `my-github-app`. Underscores in the credential name are replaced with spaces in the resulting GitHub App name (`Seqera Platform - my github app`). + +3. Select _GitHub_ as the **Provider**, set the **GitHub credential type** to **GitHub App**, then select **Create and add**. + +4. Enter the **GitHub URL**: + + - For GitHub.com, leave the default value (`https://github.com`). + - For a GitHub Enterprise Server instance, enter the base URL of your instance (for example, `https://github.example.com`). HTTPS is required, and private or loopback addresses are rejected. + +5. (Optional) Enter the **GitHub repository URL** to scope access to a single repository, e.g., `https://github.com/seqeralabs/nf-tower`. Leave this field empty to create credentials that are not bound to a specific repository. + +6. Select the **App scope**: + + - **Organization** — App owned by an organization (requires admin access). Enter the **GitHub organization name** (case-sensitive). You must be an **owner** of the target organization to create an app on its behalf. + - **Personal** — App owned by your personal GitHub account. The **GitHub organization name** field is hidden. + +7. Select **Create app on GitHub**. Seqera redirects you to GitHub: + + - For personal scope: `https://github.com/settings/apps/new` + - For organization scope: `https://github.com/organizations//settings/apps/new` + - For GitHub Enterprise Server, the equivalent path on your instance. + + The manifest is pre-filled with the app name, callback URL, webhook URL, and the required permissions (`contents: read`, `metadata: read`). + + ![GitHub "Create GitHub App" page with the manifest pre-filled, showing the app name "Seqera Platform - new github app"](./_images/credentials-github-mainfest-page.png) + +8. On GitHub, review the requested permissions and select **Create GitHub App**. GitHub redirects you back to Seqera, which exchanges the temporary code for the app credentials and stores them in your workspace or personal credentials. + +9. After the redirect, install the app on the repositories you want Seqera to access: + + - Open the new app on GitHub: **Settings > Developer settings > GitHub Apps > [your app] > Install App**. + - For an organization-owned app, select the organization. For a personal app, select your user account. + - Choose **Only select repositories** and add the specific repositories Seqera should access, or **All repositories** to grant access to all current and future repositories. + - Select **Install** to complete installation. + + ![GitHub App installation page showing "Only select repositories" with one or more repositories selected](./_images/credentials-github-install-app.png) + +The new credential appears in the **Credentials** list with the GitHub App icon. Credentials created from a workspace credentials page are scoped to that workspace; credentials created from your personal credentials page are scoped to your user and are not visible to any workspace. + +:::note +If you cancel the manifest flow on GitHub or close the browser tab before approving the app, no credential is created on the Seqera side. The temporary state that protects the redirect against CSRF expires after 10 minutes and cannot be reused — restart the flow from the credentials form. +::: + +**Add an existing GitHub App** + +If you have already created and installed a GitHub App, register it in Seqera by setting the **GitHub credential type** to **GitHub App** and selecting **Add preexisting**, then entering the app's security keys (App ID, installation ID, app slug, private key, client secret, and webhook secret) along with the same **GitHub URL**, **App scope**, and optional **GitHub repository URL** fields described above. You can find these values under **Settings > Developer settings > GitHub Apps > [your app]** on GitHub. + +**Handling duplicate credentials** + +Seqera enforces uniqueness of GitHub App credentials by **Repository URL** within the same workspace or user context. If you attempt to create a credential — through either the manifest flow or the existing-app flow — for a repository URL that already has a GitHub App credential, the operation fails with a duplicate error and no new credential is stored. + +To resolve a duplicate: + +- **Reuse the existing credential** — In most cases the existing credential already grants Seqera the access it needs. Open it from the **Credentials** list to confirm the installed app and repository association. +- **Delete the obsolete credential first** — If the existing credential is stale (for example, the app has been uninstalled or the private key was rotated outside of Seqera), delete it from the **Credentials** list and then re-run the creation flow. +- **Use a different repository URL or leave the field empty** — If you need a second credential covering a broader scope, omit the **Repository URL** or use a different one. Seqera's credential filtering then selects the most specific match at launch time. + ### GitLab GitLab supports [Personal](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html), [Group](https://docs.gitlab.com/ee/user/group/settings/group_access_tokens.html#group-access-tokens), and [Project](https://docs.gitlab.com/ee/user/project/settings/project_access_tokens.html) access tokens for authentication. Your access token must have the `api`, `read_api`, and `read_repository` scopes to work with Seqera. For all three token types, use the token value in both the **Password** and **Access token** fields in the Seqera credential creation form. diff --git a/platform-enterprise_docs/seqera-ai/index.md b/platform-enterprise_docs/seqera-ai/index.md index 90e7b2ff9..e85b39727 100644 --- a/platform-enterprise_docs/seqera-ai/index.md +++ b/platform-enterprise_docs/seqera-ai/index.md @@ -63,10 +63,15 @@ Resume previous sessions to continue your work. Use `seqera ai -c` to continue y Full access to Platform capabilities including compute environments, datasets, data links, and workspace management. +### Projects + +Organize a workspace into projects by applying Seqera Platform labels prefixed with `project_`. Each project scopes the pipelines, datasets, workflow runs, and chat context the AI sees, without needing a separate CRUD surface in Seqera AI. + ## Learn more - [Installation](./installation.mdx): Detailed installation instructions - [Authentication](./authentication.md): Log in, log out, and session management - [Command approval](./command-approval.md): Control which commands run automatically - [Use cases](./use-cases.md): Seqera AI CLI use cases +- [Projects](./projects.md): Organize workspace resources into projects using Platform labels - [Troubleshooting](../troubleshooting_and_faqs/seqera-ai.md): Troubleshoot common errors diff --git a/platform-enterprise_docs/seqera-ai/projects.md b/platform-enterprise_docs/seqera-ai/projects.md new file mode 100644 index 000000000..b2455254a --- /dev/null +++ b/platform-enterprise_docs/seqera-ai/projects.md @@ -0,0 +1,92 @@ +--- +title: "Projects" +description: "Organize workspace resources into projects using Seqera Platform labels" +date: "2026-04-22" +tags: [seqera-ai, projects, labels] +--- + +:::caution Seqera AI is in beta +Seqera AI is currently in beta. Features and behavior may change as we continue to improve the product. +::: + +Projects in Seqera AI group the pipelines, datasets, and workflow runs that belong to a single piece of work. You can view and chat about them without the noise of the rest of the workspace. + +Projects are not created inside Seqera AI. They are derived from **workspace labels in Seqera Platform** whose names start with `project_`. Each matching label surfaces in Seqera AI as a separate project scope, with the Platform label acting as the source of truth for membership. + +:::note +Projects are part of the Seqera AI **portal web interface**. The portal must be deployed alongside Seqera AI in your Enterprise installation. See [Install Seqera AI](../enterprise/install-seqera-ai.md) for more information. +::: + +## How projects are derived + +When you open a workspace in the Seqera AI portal web interface: + +1. Seqera AI reads the list of workspace labels from the Seqera Platform API. +2. Any label whose name starts with `project_` becomes a project. +3. An **Entire workspace** view is included alongside your projects. You can see every resource in the workspace. +4. Pipelines, datasets, and workflow runs are scoped to a project by matching on its `project_*` label. + +Because membership lives on the Platform label, adding or removing a resource from a project is the same action as applying or removing the label in Platform. + +## Create a project + +To create a project: + +1. In **Seqera Platform**, open the workspace where the project should live. +2. Go to **Labels** in workspace settings and create a new label with the `project_` prefix. For example: + - `project_rnaseq` + - `project_variant_calling` + - `project_chip_seq` +3. Apply the label to the pipelines and datasets that belong to the project. +4. Open Seqera AI. The new project appears on the **Projects** page and in the chat project selector on the next page load. + +:::tip +Create the label in workspace settings **before** applying it to resources. This ensures the label has a Platform-assigned ID, which Seqera AI needs to auto-attach the label when you upload new datasets into the project. +::: + +## Display names + +Seqera AI strips the `project_` prefix to produce the display name shown in the portal: + +| Platform label | Seqera AI display name | +|-----------------------|-------------------------| +| `project_rnaseq` | Project rnaseq | +| `project_wgs` | Project wgs | +| `project_single_cell` | Project single_cell | + +Choose descriptive names after the prefix so projects are easy to identify. + +## Where projects appear + +Once a `project_*` label exists in the workspace and is applied to at least one resource, the project is used in the following places: + +- **Projects page**: one row per project, plus the **Entire workspace** row. +- **Project details page**: the pipelines, datasets, and workflow runs filtered to that project's label. +- **Chat project selector**: scopes the resources the AI can see and act on during a chat session. +- **Dataset upload**: when you upload a dataset from inside a project, the project's label is auto-attached. + +## Edge cases + +### A resource carries a `project_*` label that isn't in the workspace label list + +If a pipeline has a `project_*` label but the label has not been created in workspace settings, Seqera AI still surfaces the project, inferred from the pipeline. In this case: + +- The project has no Platform-assigned label ID. +- Dataset uploads into the project cannot auto-attach the label. + +To avoid this, always create `project_*` labels in workspace settings first, then apply them. + +### No `project_*` labels in the workspace + +When a workspace has no `project_*` labels: + +- The **Projects** page shows a **No projects configured yet** empty state. +- The project selector is hidden in the chat header. +- The workspace view shows a header-only empty state. + +Ask a workspace admin to create the first `project_*` label to enable projects for the workspace. + +## Learn more + +- [Install Seqera AI](../enterprise/install-seqera-ai.md): Deploy Seqera AI and the portal web interface in Enterprise +- [Get started with Seqera AI](./get-started.md): Install and authenticate the Seqera AI CLI diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json index deba5f138..1c8f9f327 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json @@ -82,7 +82,7 @@ }, { "Name": "cron", - "Image": "cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8", + "Image": "cr.seqera.io/enterprise/platform/backend:v24.1.8", "Memory": 2000, "Cpu": 0, "Links": ["redis"], @@ -188,7 +188,7 @@ }, { "Name": "frontend", - "Image": "cr.seqera.io/private/nf-tower-enterprise/frontend:v24.1.8", + "Image": "cr.seqera.io/enterprise/platform/frontend:v24.1.8", "Memory": 2000, "Cpu": 0, "Essential": false, @@ -211,7 +211,7 @@ "Hostname": "backend", "Memory": 2000, "Cpu": 0, - "Image": "cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8", + "Image": "cr.seqera.io/enterprise/platform/backend:v24.1.8", "PortMappings": [ { "ContainerPort": 8080, diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/docker/docker-compose.yml b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/docker/docker-compose.yml index f390f91e3..82ba9fb09 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/docker/docker-compose.yml +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/docker/docker-compose.yml @@ -40,7 +40,7 @@ services: - $HOME/.tower/db/redis:/data migrate: - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v24.1.8 + image: cr.seqera.io/enterprise/platform/migrate-db:v24.1.8 platform: linux/amd64 command: -c "/migrate-db.sh" networks: @@ -57,7 +57,7 @@ services: condition: service_healthy cron: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8 + image: cr.seqera.io/enterprise/platform/backend:v24.1.8 platform: linux/amd64 command: -c '/tower.sh' networks: @@ -77,7 +77,7 @@ services: condition: service_completed_successfully backend: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8 + image: cr.seqera.io/enterprise/platform/backend:v24.1.8 platform: linux/amd64 command: -c '/wait-for-it.sh db:3306 -t 60; /tower.sh' networks: @@ -102,7 +102,7 @@ services: - cron frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.1.8 + image: cr.seqera.io/enterprise/platform/frontend:v24.1.8 platform: linux/amd64 networks: - frontend @@ -113,7 +113,7 @@ services: - backend # Uncomment the following section to enable Data Studios functionality. See [Data Studios configuration](../../data-studios.mdx) for more information. # connect-proxy: - # image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.7.2 + # image: cr.seqera.io/enterprise/studios/proxy:0.7.2 # platform: linux/amd64 # env_file: # - data-studios.env @@ -127,7 +127,7 @@ services: # - redis # # connect-server: - # image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.7.2 + # image: cr.seqera.io/enterprise/studios/server:0.7.2 # platform: linux/amd64 # env_file: # - data-studios.env @@ -140,7 +140,7 @@ services: # Uncomment the following section to enable the pipeline resource optimization service. Add TOWER_ENABLE_GROUNDSWELL # or GROUNDSWELL_SERVER_URL to tower.env environment variables # groundswell: - # image: cr.seqera.io/private/nf-tower-enterprise/groundswell:0.3.3 + # image: cr.seqera.io/enterprise/platform/pipeline-optimization:0.3.3 # command: bash -c 'bin/wait-for-it.sh db:3306 -t 60; bin/migrate-db.sh; bin/serve.sh' # networks: # - backend diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/proxy.yml b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/proxy.yml index d64c3010e..2be96117b 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/proxy.yml +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/proxy.yml @@ -19,7 +19,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: proxy - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.7.2 + image: cr.seqera.io/enterprise/studios/proxy:0.7.2 command: - caddy - serve diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/server.yml b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/server.yml index 31f247bca..af5b6ac34 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/server.yml +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/data_studios/server.yml @@ -21,7 +21,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: server - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.7.2 + image: cr.seqera.io/enterprise/studios/server:0.7.2 ports: - containerPort: 7070 name: server diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/groundswell.yml b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/groundswell.yml index 425f585c1..db6dc2895 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/groundswell.yml +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/groundswell.yml @@ -96,7 +96,7 @@ spec: name: tower-groundswell-cfg - name: migrate-db - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" command: ['/opt/groundswell/bin/migrate-db.sh'] envFrom: - configMapRef: @@ -106,7 +106,7 @@ spec: containers: - name: groundswell - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" env: - name: MPLCONFIGDIR value: "/tmp" diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-cron.yml b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-cron.yml index 981636d90..e72edba04 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-cron.yml +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-cron.yml @@ -21,7 +21,7 @@ spec: name: tower-yml initContainers: - name: migrate-db - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v24.1.8 + image: cr.seqera.io/enterprise/platform/migrate-db:v24.1.8 command: ["sh", "-c", "/migrate-db.sh"] envFrom: - configMapRef: @@ -32,7 +32,7 @@ spec: subPath: tower.yml containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8 + image: cr.seqera.io/enterprise/platform/backend:v24.1.8 envFrom: - configMapRef: name: tower-backend-cfg diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-svc.yml b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-svc.yml index 41ba861a0..aecdad2fb 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-svc.yml +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/_templates/k8s/tower-svc.yml @@ -29,7 +29,7 @@ spec: # secretName: platform-oidc-certs containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8 + image: cr.seqera.io/enterprise/platform/backend:v24.1.8 envFrom: - configMapRef: name: tower-backend-cfg @@ -91,7 +91,7 @@ spec: - name: "cr.seqera.io" containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.1.8 + image: cr.seqera.io/enterprise/platform/frontend:v24.1.8 ports: - containerPort: 80 restartPolicy: Always diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/kubernetes.md b/platform-enterprise_versioned_docs/version-24.1/enterprise/kubernetes.md index b322ccdd6..2015f2271 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/kubernetes.md +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/kubernetes.md @@ -168,7 +168,7 @@ kubectl apply -f tower-svc.yml An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): ```yaml --- @@ -182,7 +182,7 @@ spec: ... containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.1.8-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v24.1.8-unprivileged env: - name: NGINX_LISTEN_PORT # If not defined, defaults to 8000. value: 8000 diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/overview.md b/platform-enterprise_versioned_docs/version-24.1/enterprise/overview.md index 7636278ee..611008c2e 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/overview.md +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/overview.md @@ -80,9 +80,9 @@ Seqera Enterprise is distributed as a collection of Docker containers available 3. Pull the application container images: ```bash - docker pull cr.seqera.io/private/nf-tower-enterprise/backend:v24.1.8 + docker pull cr.seqera.io/enterprise/platform/backend:v24.1.8 - docker pull cr.seqera.io/private/nf-tower-enterprise/frontend:v24.1.8 + docker pull cr.seqera.io/enterprise/platform/frontend:v24.1.8 ``` ## Support diff --git a/platform-enterprise_versioned_docs/version-24.1/enterprise/prerequisites/common.md b/platform-enterprise_versioned_docs/version-24.1/enterprise/prerequisites/common.md index ed3ad6b75..23c466c43 100644 --- a/platform-enterprise_versioned_docs/version-24.1/enterprise/prerequisites/common.md +++ b/platform-enterprise_versioned_docs/version-24.1/enterprise/prerequisites/common.md @@ -39,16 +39,16 @@ We recommend installing the latest version of Skopeo (or at least v1.15+ to work 1. Listing the available tags for a given image can be done with the `list-tags` command: ```console - skopeo list-tags docker://cr.seqera.io/private/nf-tower-enterprise + skopeo list-tags docker://cr.seqera.io/enterprise/platform ``` -1. Syncing images can be done with the `sync` command. For example, to sync all images stored in the `cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server` repository to your internal registry, run: +1. Syncing images can be done with the `sync` command. For example, to sync all images stored in the `cr.seqera.io/enterprise/studios/server` repository to your internal registry, run: ```console - skopeo sync --scoped --src docker --dest docker cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server YOUR_INTERNAL_REGISTRY + skopeo sync --scoped --src docker --dest docker cr.seqera.io/enterprise/studios/server YOUR_INTERNAL_REGISTRY ``` - Note that `--scoped` will populate your internal registry with images like `YOUR_INTERNAL_REGISTRY/cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server`. + Note that `--scoped` will populate your internal registry with images like `YOUR_INTERNAL_REGISTRY/cr.seqera.io/enterprise/studios/server`. More advanced usage examples are available in the Skopeo documentation: https://github.com/containers/skopeo/blob/main/docs/skopeo-sync.1.md#examples To avoid duplicating several years of Seqera images, we recommend using the `images-by-semver` option in the `sync` command. This option allows you to specify semantic versioning constraints for each image to be synced. For example, to sync all images with tags greater than or equal to a certain version, create a YAML file (for example, `seqera-container-registry.yaml`) with content similar to the following (adapt it to the versions you want to sync and the images you need): @@ -56,13 +56,13 @@ To avoid duplicating several years of Seqera images, we recommend using the `ima ```yaml cr.seqera.io: images-by-semver: - private/nf-tower-enterprise/backend: ">= v25.2.0" - private/nf-tower-enterprise/frontend: ">= v25.2.0" - private/nf-tower-enterprise/migrate-db: ">= v25.2.0" - private/nf-tower-enterprise/data-studio/connect-server: ">= 0.8.0" - private/nf-tower-enterprise/data-studio/connect-proxy: ">= 0.8.0" - private/nf-tower-enterprise/wave: ">= v1.23.0" - private/nf-tower-enterprise/groundswell: ">= 0.4.0" + enterprise/platform/backend: ">= v25.2.0" + enterprise/platform/frontend: ">= v25.2.0" + enterprise/platform/migrate-db: ">= v25.2.0" + enterprise/studios/server: ">= 0.8.0" + enterprise/studios/proxy: ">= 0.8.0" + enterprise/wave/server: ">= v1.23.0" + enterprise/platform/pipeline-optimization: ">= 0.4.0" ``` Note that some image tags are prefixed with `v` while others are not. @@ -91,13 +91,13 @@ The general process to manually replicate images involves: 1. Downloading the image from the Seqera container registry. ```console - docker pull cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 + docker pull cr.seqera.io/enterprise/platform/backend:v25.2.3 ``` 1. Re-tagging the image. ```console - docker tag cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 YOUR_INTERNAL_REGISTRY/your-repo/backend:v25.2.3 + docker tag cr.seqera.io/enterprise/platform/backend:v25.2.3 YOUR_INTERNAL_REGISTRY/your-repo/backend:v25.2.3 ``` 1. Pushing the image to your preferred container registry (for example, ECR, GCR, Docker Hub). diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json index 20859461f..efc4cffc5 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/cloudformation/aws-ecs-cloudformation.json @@ -80,7 +80,7 @@ }, { "Name": "cron", - "Image": "cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4", + "Image": "cr.seqera.io/enterprise/platform/backend:v24.2.4", "Memory": 2000, "Cpu": 0, "Links": [ @@ -188,7 +188,7 @@ }, { "Name": "frontend", - "Image": "cr.seqera.io/private/nf-tower-enterprise/frontend:v24.2.4", + "Image": "cr.seqera.io/enterprise/platform/frontend:v24.2.4", "Memory": 2000, "Cpu": 0, "Essential": false, @@ -211,7 +211,7 @@ "Hostname": "backend", "Memory": 2000, "Cpu": 0, - "Image": "cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4", + "Image": "cr.seqera.io/enterprise/platform/backend:v24.2.4", "PortMappings": [{ "ContainerPort": 8080, "HostPort": 8080 diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/docker/docker-compose.yml b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/docker/docker-compose.yml index e5d5d1048..c6d167d93 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/docker/docker-compose.yml +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/docker/docker-compose.yml @@ -47,7 +47,7 @@ services: - $HOME/.tower/db/redis:/data migrate: - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v24.2.4 + image: cr.seqera.io/enterprise/platform/migrate-db:v24.2.4 platform: linux/amd64 command: -c "/migrate-db.sh" networks: @@ -64,7 +64,7 @@ services: condition: service_healthy cron: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4 + image: cr.seqera.io/enterprise/platform/backend:v24.2.4 platform: linux/amd64 command: -c '/tower.sh' networks: @@ -85,7 +85,7 @@ services: backend: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4 + image: cr.seqera.io/enterprise/platform/backend:v24.2.4 platform: linux/amd64 command: -c '/wait-for-it.sh db:3306 -t 60; /tower.sh' networks: @@ -110,7 +110,7 @@ services: - cron frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.2.4 + image: cr.seqera.io/enterprise/platform/frontend:v24.2.4 platform: linux/amd64 networks: - frontend @@ -122,7 +122,7 @@ services: # Uncomment the following section to enable Data Studios functionality. See [Data Studios configuration](../../data-studios.mdx) for more information. # connect-proxy: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.7.2 +# image: cr.seqera.io/enterprise/studios/proxy:0.7.2 # platform: linux/amd64 # env_file: # - data-studios.env @@ -136,7 +136,7 @@ services: # - redis # # connect-server: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.7.2 +# image: cr.seqera.io/enterprise/studios/server:0.7.2 # platform: linux/amd64 # env_file: # - data-studios.env @@ -149,7 +149,7 @@ services: # Uncomment the following section to enable the pipeline resource optimization service. Add TOWER_ENABLE_GROUNDSWELL # or GROUNDSWELL_SERVER_URL to tower.env environment variables # groundswell: - # image: cr.seqera.io/private/nf-tower-enterprise/groundswell:0.3.3 + # image: cr.seqera.io/enterprise/platform/pipeline-optimization:0.3.3 # command: bash -c 'bin/wait-for-it.sh db:3306 -t 60; bin/migrate-db.sh; bin/serve.sh' # networks: # - backend diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/proxy.yml b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/proxy.yml index d64c3010e..2be96117b 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/proxy.yml +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/proxy.yml @@ -19,7 +19,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: proxy - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.7.2 + image: cr.seqera.io/enterprise/studios/proxy:0.7.2 command: - caddy - serve diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/server.yml b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/server.yml index 31f247bca..af5b6ac34 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/server.yml +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/data_studios/server.yml @@ -21,7 +21,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: server - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.7.2 + image: cr.seqera.io/enterprise/studios/server:0.7.2 ports: - containerPort: 7070 name: server diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/groundswell.yml b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/groundswell.yml index 425f585c1..db6dc2895 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/groundswell.yml +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/groundswell.yml @@ -96,7 +96,7 @@ spec: name: tower-groundswell-cfg - name: migrate-db - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" command: ['/opt/groundswell/bin/migrate-db.sh'] envFrom: - configMapRef: @@ -106,7 +106,7 @@ spec: containers: - name: groundswell - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" env: - name: MPLCONFIGDIR value: "/tmp" diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-cron.yml b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-cron.yml index 0f75b3e90..5660ac094 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-cron.yml +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-cron.yml @@ -21,7 +21,7 @@ spec: name: tower-yml initContainers: - name: migrate-db - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v24.2.4 + image: cr.seqera.io/enterprise/platform/migrate-db:v24.2.4 command: ["sh", "-c", "/migrate-db.sh"] envFrom: - configMapRef: @@ -32,7 +32,7 @@ spec: subPath: tower.yml containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4 + image: cr.seqera.io/enterprise/platform/backend:v24.2.4 envFrom: - configMapRef: name: tower-backend-cfg diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-svc.yml b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-svc.yml index a4bf47752..74c94612e 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-svc.yml +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/_templates/k8s/tower-svc.yml @@ -29,7 +29,7 @@ spec: # secretName: platform-oidc-certs containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4 + image: cr.seqera.io/enterprise/platform/backend:v24.2.4 envFrom: - configMapRef: name: tower-backend-cfg @@ -91,7 +91,7 @@ spec: - name: "cr.seqera.io" containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.2.4 + image: cr.seqera.io/enterprise/platform/frontend:v24.2.4 ports: - containerPort: 80 restartPolicy: Always diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/kubernetes.mdx b/platform-enterprise_versioned_docs/version-24.2/enterprise/kubernetes.mdx index ae72b78c2..d6442ba1d 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/kubernetes.mdx +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/kubernetes.mdx @@ -168,7 +168,7 @@ To deploy the manifest to your cluster, run the following: An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): ```yaml --- @@ -182,7 +182,7 @@ spec: ... containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.2.4-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v24.2.4-unprivileged env: - name: NGINX_LISTEN_PORT # If not defined, defaults to 8000. value: 8000 diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/overview.md b/platform-enterprise_versioned_docs/version-24.2/enterprise/overview.md index 4f2e203ca..6d640a9ed 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/overview.md +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/overview.md @@ -80,9 +80,9 @@ Seqera Enterprise is distributed as a collection of Docker containers available 3. Pull the application container images: ```bash - docker pull cr.seqera.io/private/nf-tower-enterprise/backend:v24.2.4 + docker pull cr.seqera.io/enterprise/platform/backend:v24.2.4 - docker pull cr.seqera.io/private/nf-tower-enterprise/frontend:v24.2.4 + docker pull cr.seqera.io/enterprise/platform/frontend:v24.2.4 ``` ## Support diff --git a/platform-enterprise_versioned_docs/version-24.2/enterprise/prerequisites/common.md b/platform-enterprise_versioned_docs/version-24.2/enterprise/prerequisites/common.md index 3116fa19b..3aef1fcce 100644 --- a/platform-enterprise_versioned_docs/version-24.2/enterprise/prerequisites/common.md +++ b/platform-enterprise_versioned_docs/version-24.2/enterprise/prerequisites/common.md @@ -39,16 +39,16 @@ We recommend installing the latest version of Skopeo (or at least v1.15+ to work 1. Listing the available tags for a given image can be done with the `list-tags` command: ```console - skopeo list-tags docker://cr.seqera.io/private/nf-tower-enterprise + skopeo list-tags docker://cr.seqera.io/enterprise/platform ``` -1. Syncing images can be done with the `sync` command. For example, to sync all images stored in the `cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server` repository to your internal registry, run: +1. Syncing images can be done with the `sync` command. For example, to sync all images stored in the `cr.seqera.io/enterprise/studios/server` repository to your internal registry, run: ```console - skopeo sync --scoped --src docker --dest docker cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server YOUR_INTERNAL_REGISTRY + skopeo sync --scoped --src docker --dest docker cr.seqera.io/enterprise/studios/server YOUR_INTERNAL_REGISTRY ``` - Note that `--scoped` will populate your internal registry with images like `YOUR_INTERNAL_REGISTRY/cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server`. + Note that `--scoped` will populate your internal registry with images like `YOUR_INTERNAL_REGISTRY/cr.seqera.io/enterprise/studios/server`. More advanced usage examples are available in the Skopeo documentation: https://github.com/containers/skopeo/blob/main/docs/skopeo-sync.1.md#examples To avoid duplicating several years of Seqera images, we recommend using the `images-by-semver` option in the `sync` command. This option allows you to specify semantic versioning constraints for each image to be synced. For example, to sync all images with tags greater than or equal to a certain version, create a YAML file (for example, `seqera-container-registry.yaml`) with content similar to the following (adapt it to the versions you want to sync and the images you need): @@ -56,13 +56,13 @@ To avoid duplicating several years of Seqera images, we recommend using the `ima ```yaml cr.seqera.io: images-by-semver: - private/nf-tower-enterprise/backend: ">= v25.2.0" - private/nf-tower-enterprise/frontend: ">= v25.2.0" - private/nf-tower-enterprise/migrate-db: ">= v25.2.0" - private/nf-tower-enterprise/data-studio/connect-server: ">= 0.8.0" - private/nf-tower-enterprise/data-studio/connect-proxy: ">= 0.8.0" - private/nf-tower-enterprise/wave: ">= v1.23.0" - private/nf-tower-enterprise/groundswell: ">= 0.4.0" + enterprise/platform/backend: ">= v25.2.0" + enterprise/platform/frontend: ">= v25.2.0" + enterprise/platform/migrate-db: ">= v25.2.0" + enterprise/studios/server: ">= 0.8.0" + enterprise/studios/proxy: ">= 0.8.0" + enterprise/wave/server: ">= v1.23.0" + enterprise/platform/pipeline-optimization: ">= 0.4.0" ``` Note that some image tags are prefixed with `v` while others are not. @@ -91,13 +91,13 @@ The general process to manually replicate images involves: 1. Downloading the image from the Seqera container registry. ```console - docker pull cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 + docker pull cr.seqera.io/enterprise/platform/backend:v25.2.3 ``` 1. Re-tagging the image. ```console - docker tag cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 YOUR_INTERNAL_REGISTRY/your-repo/backend:v25.2.3 + docker tag cr.seqera.io/enterprise/platform/backend:v25.2.3 YOUR_INTERNAL_REGISTRY/your-repo/backend:v25.2.3 ``` 1. Pushing the image to your preferred container registry (for example, ECR, GCR, Docker Hub). diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/docker/docker-compose.yml b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/docker/docker-compose.yml index 20496a9a5..5b145bb70 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/docker/docker-compose.yml +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/docker/docker-compose.yml @@ -40,7 +40,7 @@ services: - $HOME/.tower/db/redis:/data migrate: - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.1.1 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.1.1 platform: linux/amd64 command: -c "/migrate-db.sh" networks: @@ -57,7 +57,7 @@ services: condition: service_healthy cron: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.1.1 + image: cr.seqera.io/enterprise/platform/backend:v25.1.1 platform: linux/amd64 command: -c '/tower.sh' networks: @@ -78,7 +78,7 @@ services: backend: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.1.1 + image: cr.seqera.io/enterprise/platform/backend:v25.1.1 platform: linux/amd64 command: -c '/wait-for-it.sh db:3306 -t 60; /tower.sh' networks: @@ -103,7 +103,7 @@ services: - cron frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.1.1 + image: cr.seqera.io/enterprise/platform/frontend:v25.1.1 platform: linux/amd64 networks: - frontend @@ -115,7 +115,7 @@ services: # Uncomment the following section to enable Data Studios functionality. See [Data Studios configuration](../../data-studios.mdx) for more information. # connect-proxy: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.8.0 +# image: cr.seqera.io/enterprise/studios/proxy:0.8.0 # platform: linux/amd64 # env_file: # - data-studios.env @@ -129,7 +129,7 @@ services: # - redis # # connect-server: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.8.0 +# image: cr.seqera.io/enterprise/studios/server:0.8.0 # platform: linux/amd64 # env_file: # - data-studios.env @@ -142,7 +142,7 @@ services: # Uncomment the following section to enable the pipeline optimization service. Add TOWER_ENABLE_GROUNDSWELL # or GROUNDSWELL_SERVER_URL to tower.env environment variables # groundswell: - # image: cr.seqera.io/private/nf-tower-enterprise/groundswell:0.3.3 + # image: cr.seqera.io/enterprise/platform/pipeline-optimization:0.3.3 # command: bash -c 'bin/wait-for-it.sh db:3306 -t 60; bin/migrate-db.sh; bin/serve.sh' # networks: # - backend diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/proxy.yml b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/proxy.yml index 661e28fe9..bdf78cf2e 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/proxy.yml +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/proxy.yml @@ -19,7 +19,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: proxy - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.8.0 + image: cr.seqera.io/enterprise/studios/proxy:0.8.0 env: - name: CONNECT_HTTP_PORT value: "8081" diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/server.yml b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/server.yml index 548edebf5..15326d7e2 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/server.yml +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/data_studios/server.yml @@ -21,7 +21,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: server - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.8.0 + image: cr.seqera.io/enterprise/studios/server:0.8.0 ports: - containerPort: 7070 name: server diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/groundswell.yml b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/groundswell.yml index 425f585c1..db6dc2895 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/groundswell.yml +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/groundswell.yml @@ -96,7 +96,7 @@ spec: name: tower-groundswell-cfg - name: migrate-db - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" command: ['/opt/groundswell/bin/migrate-db.sh'] envFrom: - configMapRef: @@ -106,7 +106,7 @@ spec: containers: - name: groundswell - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" env: - name: MPLCONFIGDIR value: "/tmp" diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-cron.yml b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-cron.yml index 336e69d02..28830b675 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-cron.yml +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-cron.yml @@ -21,7 +21,7 @@ spec: name: tower-yml initContainers: - name: migrate-db - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.1.1 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.1.1 command: ["sh", "-c", "/migrate-db.sh"] envFrom: - configMapRef: @@ -32,7 +32,7 @@ spec: subPath: tower.yml containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.1.1 + image: cr.seqera.io/enterprise/platform/backend:v25.1.1 envFrom: - configMapRef: name: tower-backend-cfg diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-svc.yml b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-svc.yml index c8c1a380b..c680de92d 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-svc.yml +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/_templates/k8s/tower-svc.yml @@ -29,7 +29,7 @@ spec: # secretName: platform-oidc-certs containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.1.1 + image: cr.seqera.io/enterprise/platform/backend:v25.1.1 envFrom: - configMapRef: name: tower-backend-cfg @@ -91,7 +91,7 @@ spec: - name: "cr.seqera.io" containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.1.1 + image: cr.seqera.io/enterprise/platform/frontend:v25.1.1 ports: - containerPort: 80 restartPolicy: Always diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/configuration/mirroring.md b/platform-enterprise_versioned_docs/version-25.1/enterprise/configuration/mirroring.md index fc0dab45d..79e8fcf94 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/configuration/mirroring.md +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/configuration/mirroring.md @@ -30,9 +30,9 @@ Create a YAML file (`seqera-images.yaml`) to specify which images to sync: ```yaml cr.seqera.io: images-by-semver: - private/nf-tower-enterprise/backend: ">= v25.3.1" - private/nf-tower-enterprise/frontend: ">= v25.3.1" - private/nf-tower-enterprise/migrate-db: ">= v25.3.1" + enterprise/platform/backend: ">= v25.3.1" + enterprise/platform/frontend: ">= v25.3.1" + enterprise/platform/migrate-db: ">= v25.3.1" ``` Run the sync: diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-docker-compose.md b/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-docker-compose.md index f4df5d66f..8b04359b2 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-docker-compose.md +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-docker-compose.md @@ -80,11 +80,11 @@ For more information on configuration, see [Configuration options](./configurati An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: ```yaml frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged platform: linux/amd64 environment: NGINX_LISTEN_PORT: 8001 # If not defined, defaults to 8000 diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-kubernetes.md b/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-kubernetes.md index 2ae3a7ae3..b27ef4909 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-kubernetes.md +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/platform-kubernetes.md @@ -105,7 +105,7 @@ kubectl apply -f tower-svc.yml An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): ```yaml --- @@ -119,7 +119,7 @@ spec: ... containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.0-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v25.3.0-unprivileged env: - name: NGINX_LISTEN_PORT # If not defined, defaults to 8000. value: 8000 diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/docker/docker-compose.yml b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/docker/docker-compose.yml index 97c454a4f..daef9b04a 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/docker/docker-compose.yml +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/docker/docker-compose.yml @@ -40,7 +40,7 @@ services: - $HOME/.tower/db/redis:/data migrate: - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.2.3 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.2.3 platform: linux/amd64 command: -c "/migrate-db.sh" networks: @@ -57,7 +57,7 @@ services: condition: service_healthy cron: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 + image: cr.seqera.io/enterprise/platform/backend:v25.2.3 platform: linux/amd64 command: -c '/tower.sh' networks: @@ -78,7 +78,7 @@ services: backend: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 + image: cr.seqera.io/enterprise/platform/backend:v25.2.3 platform: linux/amd64 command: -c '/wait-for-it.sh db:3306 -t 60; /tower.sh' networks: @@ -103,7 +103,7 @@ services: - cron frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.2.3 + image: cr.seqera.io/enterprise/platform/frontend:v25.2.3 platform: linux/amd64 networks: - frontend @@ -115,7 +115,7 @@ services: # Uncomment the following section to enable Studios functionality. See [Studios configuration](../../../studios/overview) for more information. # connect-proxy: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.8.3 +# image: cr.seqera.io/enterprise/studios/proxy:0.8.3 # platform: linux/amd64 # env_file: # - data-studios.env @@ -131,7 +131,7 @@ services: # - $HOME/.tower/connect:/data # # connect-server: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.8.3 +# image: cr.seqera.io/enterprise/studios/server:0.8.3 # platform: linux/amd64 # env_file: # - data-studios.env @@ -144,7 +144,7 @@ services: # Uncomment the following section to enable the pipeline optimization service. Add TOWER_ENABLE_GROUNDSWELL # or GROUNDSWELL_SERVER_URL to tower.env environment variables # groundswell: - # image: cr.seqera.io/private/nf-tower-enterprise/groundswell:0.3.3 + # image: cr.seqera.io/enterprise/platform/pipeline-optimization:0.3.3 # command: bash -c 'bin/wait-for-it.sh db:3306 -t 60; bin/migrate-db.sh; bin/serve.sh' # networks: # - backend diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/proxy.yml b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/proxy.yml index 9cf8b8cd8..21aa02f2a 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/proxy.yml +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/proxy.yml @@ -19,7 +19,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: proxy - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.8.3 + image: cr.seqera.io/enterprise/studios/proxy:0.8.3 env: - name: CONNECT_HTTP_PORT value: "8081" diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/server.yml b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/server.yml index ba90493a5..37e139ca1 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/server.yml +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/data_studios/server.yml @@ -21,7 +21,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: server - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.8.3 + image: cr.seqera.io/enterprise/studios/server:0.8.3 ports: - containerPort: 7070 name: server diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/groundswell.yml b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/groundswell.yml index 425f585c1..db6dc2895 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/groundswell.yml +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/groundswell.yml @@ -96,7 +96,7 @@ spec: name: tower-groundswell-cfg - name: migrate-db - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" command: ['/opt/groundswell/bin/migrate-db.sh'] envFrom: - configMapRef: @@ -106,7 +106,7 @@ spec: containers: - name: groundswell - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" env: - name: MPLCONFIGDIR value: "/tmp" diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-cron.yml b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-cron.yml index 12ef4d268..5dc6a8abd 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-cron.yml +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-cron.yml @@ -21,7 +21,7 @@ spec: name: tower-yml initContainers: - name: migrate-db - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.2.3 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.2.3 command: ["sh", "-c", "/migrate-db.sh"] envFrom: - configMapRef: @@ -32,7 +32,7 @@ spec: subPath: tower.yml containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 + image: cr.seqera.io/enterprise/platform/backend:v25.2.3 envFrom: - configMapRef: name: tower-backend-cfg diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-svc.yml b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-svc.yml index 735b3bf7a..0a36d9c47 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-svc.yml +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/_templates/k8s/tower-svc.yml @@ -29,7 +29,7 @@ spec: # secretName: platform-oidc-certs containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.2.3 + image: cr.seqera.io/enterprise/platform/backend:v25.2.3 envFrom: - configMapRef: name: tower-backend-cfg @@ -91,7 +91,7 @@ spec: - name: "cr.seqera.io" containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.2.3 + image: cr.seqera.io/enterprise/platform/frontend:v25.2.3 ports: - containerPort: 80 restartPolicy: Always diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/configuration/mirroring.md b/platform-enterprise_versioned_docs/version-25.2/enterprise/configuration/mirroring.md index fc0dab45d..79e8fcf94 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/configuration/mirroring.md +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/configuration/mirroring.md @@ -30,9 +30,9 @@ Create a YAML file (`seqera-images.yaml`) to specify which images to sync: ```yaml cr.seqera.io: images-by-semver: - private/nf-tower-enterprise/backend: ">= v25.3.1" - private/nf-tower-enterprise/frontend: ">= v25.3.1" - private/nf-tower-enterprise/migrate-db: ">= v25.3.1" + enterprise/platform/backend: ">= v25.3.1" + enterprise/platform/frontend: ">= v25.3.1" + enterprise/platform/migrate-db: ">= v25.3.1" ``` Run the sync: diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-docker-compose.md b/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-docker-compose.md index f4df5d66f..8b04359b2 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-docker-compose.md +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-docker-compose.md @@ -80,11 +80,11 @@ For more information on configuration, see [Configuration options](./configurati An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: ```yaml frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged platform: linux/amd64 environment: NGINX_LISTEN_PORT: 8001 # If not defined, defaults to 8000 diff --git a/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-kubernetes.md b/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-kubernetes.md index 2ae3a7ae3..b27ef4909 100644 --- a/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-kubernetes.md +++ b/platform-enterprise_versioned_docs/version-25.2/enterprise/platform-kubernetes.md @@ -105,7 +105,7 @@ kubectl apply -f tower-svc.yml An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): ```yaml --- @@ -119,7 +119,7 @@ spec: ... containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.0-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v25.3.0-unprivileged env: - name: NGINX_LISTEN_PORT # If not defined, defaults to 8000. value: 8000 diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/docker/docker-compose.yml b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/docker/docker-compose.yml index 26d4b3c51..67b47206c 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/docker/docker-compose.yml +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/docker/docker-compose.yml @@ -47,7 +47,7 @@ services: - $HOME/.tower/db/redis:/data migrate: - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.3.6 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.3.6 platform: linux/amd64 command: -c "/migrate-db.sh" networks: @@ -64,7 +64,7 @@ services: condition: service_healthy cron: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.6 + image: cr.seqera.io/enterprise/platform/backend:v25.3.6 platform: linux/amd64 command: -c '/tower.sh' networks: @@ -85,7 +85,7 @@ services: backend: - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.6 + image: cr.seqera.io/enterprise/platform/backend:v25.3.6 platform: linux/amd64 command: -c '/wait-for-it.sh db:3306 -t 60; /tower.sh' networks: @@ -110,7 +110,7 @@ services: - cron frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.6 + image: cr.seqera.io/enterprise/platform/frontend:v25.3.6 platform: linux/amd64 networks: - frontend @@ -122,7 +122,7 @@ services: # Uncomment the following section to enable Studios functionality. See [Studios configuration](../../../studios/overview) for more information. # connect-proxy: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.11.0 +# image: cr.seqera.io/enterprise/studios/proxy:0.11.0 # platform: linux/amd64 # env_file: # - data-studios.env @@ -139,7 +139,7 @@ services: # - $HOME/.tower/connect:/data # # connect-server: -# image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.11.0 +# image: cr.seqera.io/enterprise/studios/server:0.11.0 # platform: linux/amd64 # env_file: # - data-studios.env @@ -152,7 +152,7 @@ services: # Uncomment the following section to enable the pipeline optimization service. Add TOWER_ENABLE_GROUNDSWELL # or GROUNDSWELL_SERVER_URL to tower.env environment variables # groundswell: - # image: cr.seqera.io/private/nf-tower-enterprise/groundswell:0.3.3 + # image: cr.seqera.io/enterprise/platform/pipeline-optimization:0.3.3 # command: bash -c 'bin/wait-for-it.sh db:3306 -t 60; bin/migrate-db.sh; bin/serve.sh' # networks: # - backend diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/proxy.yml b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/proxy.yml index 3121c2261..89cfa4d10 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/proxy.yml +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/proxy.yml @@ -19,7 +19,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: proxy - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-proxy:0.11.0 + image: cr.seqera.io/enterprise/studios/proxy:0.11.0 env: - name: CONNECT_HTTP_PORT value: "8081" diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/server.yml b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/server.yml index a18b74a25..9dd68e001 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/server.yml +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/data_studios/server.yml @@ -21,7 +21,7 @@ spec: kubernetes.io/arch: amd64 containers: - name: server - image: cr.seqera.io/private/nf-tower-enterprise/data-studio/connect-server:0.11.0 + image: cr.seqera.io/enterprise/studios/server:0.11.0 ports: - containerPort: 7070 name: server diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/groundswell.yml b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/groundswell.yml index 425f585c1..db6dc2895 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/groundswell.yml +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/groundswell.yml @@ -96,7 +96,7 @@ spec: name: tower-groundswell-cfg - name: migrate-db - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" command: ['/opt/groundswell/bin/migrate-db.sh'] envFrom: - configMapRef: @@ -106,7 +106,7 @@ spec: containers: - name: groundswell - image: "cr.seqera.io/private/nf-tower-enterprise/groundswell:0.4.7" + image: "cr.seqera.io/enterprise/platform/pipeline-optimization:0.4.7" env: - name: MPLCONFIGDIR value: "/tmp" diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-cron.yml b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-cron.yml index 81036c44e..7351ac30f 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-cron.yml +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-cron.yml @@ -21,7 +21,7 @@ spec: name: tower-yml initContainers: - name: migrate-db - image: cr.seqera.io/private/nf-tower-enterprise/migrate-db:v25.3.6 + image: cr.seqera.io/enterprise/platform/migrate-db:v25.3.6 command: ["sh", "-c", "/migrate-db.sh"] envFrom: - configMapRef: @@ -32,7 +32,7 @@ spec: subPath: tower.yml containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.5 + image: cr.seqera.io/enterprise/platform/backend:v25.3.5 envFrom: - configMapRef: name: tower-backend-cfg diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-svc.yml b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-svc.yml index c865c1eac..f9b27eff9 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-svc.yml +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/_templates/k8s/tower-svc.yml @@ -29,7 +29,7 @@ spec: # secretName: platform-oidc-certs containers: - name: backend - image: cr.seqera.io/private/nf-tower-enterprise/backend:v25.3.6 + image: cr.seqera.io/enterprise/platform/backend:v25.3.6 envFrom: - configMapRef: name: tower-backend-cfg @@ -91,7 +91,7 @@ spec: - name: "cr.seqera.io" containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.6 + image: cr.seqera.io/enterprise/platform/frontend:v25.3.6 ports: - containerPort: 80 restartPolicy: Always diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/configuration/mirroring.md b/platform-enterprise_versioned_docs/version-25.3/enterprise/configuration/mirroring.md index 677b4235b..24f34005a 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/configuration/mirroring.md +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/configuration/mirroring.md @@ -30,9 +30,9 @@ Create a YAML file (`seqera-images.yaml`) to specify which images to sync: ```yaml cr.seqera.io: images-by-semver: - private/nf-tower-enterprise/backend: ">= v25.3.6" - private/nf-tower-enterprise/frontend: ">= v25.3.6" - private/nf-tower-enterprise/migrate-db: ">= v25.3.6" + enterprise/platform/backend: ">= v25.3.6" + enterprise/platform/frontend: ">= v25.3.6" + enterprise/platform/migrate-db: ">= v25.3.6" ``` Run the sync: diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-docker-compose.md b/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-docker-compose.md index 751847ca6..f72877a49 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-docker-compose.md +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-docker-compose.md @@ -80,11 +80,11 @@ For more information on configuration, see [Configuration options](./configurati An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. Then update the `frontend` section of the `docker-compose.yml` file as follows, replacing the port mappings as needed: ```yaml frontend: - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged platform: linux/amd64 environment: NGINX_LISTEN_PORT: 8001 # If not defined, defaults to 8000 diff --git a/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-kubernetes.md b/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-kubernetes.md index 48ce997af..d19aa6e43 100644 --- a/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-kubernetes.md +++ b/platform-enterprise_versioned_docs/version-25.3/enterprise/platform-kubernetes.md @@ -105,7 +105,7 @@ kubectl apply -f tower-svc.yml An unprivileged version of the Seqera frontend image is also available. This image listens on an unprivileged port and therefore doesn't need to be run as the root user. -Replace the tag of the frontend image `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x` with `cr.seqera.io/private/nf-tower-enterprise/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): +Replace the tag of the frontend image `cr.seqera.io/enterprise/platform/frontend:v24.x.x` with `cr.seqera.io/enterprise/platform/frontend:v24.x.x-unprivileged`. In the `frontend` service below, specify the `targetPort` to match the environment variable `NGINX_LISTEN_PORT` (see below): ```yaml --- @@ -119,7 +119,7 @@ spec: ... containers: - name: frontend - image: cr.seqera.io/private/nf-tower-enterprise/frontend:v25.3.6-unprivileged + image: cr.seqera.io/enterprise/platform/frontend:v25.3.6-unprivileged env: - name: NGINX_LISTEN_PORT # If not defined, defaults to 8000. value: 8000