From 4e76a35f42add19b4775eb0e0a27d8d07790941b Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 10:57:00 +0400 Subject: [PATCH 1/9] fix: README.md --- codefresh/README.md | 197 +++++++++++++++++++----------------- codefresh/README.md.gotmpl | 199 ++++++++++++++++++++----------------- 2 files changed, 214 insertions(+), 182 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index 742e464ca..429c29c51 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -24,7 +24,6 @@ Helm chart for deploying [Codefresh On-Premises](https://codefresh.io/docs/docs/ - [Configuration with ALB (Application Load Balancer)](#configuration-with-alb-application-load-balancer) - [Configuration with Private Registry](#configuration-with-private-registry) - [Configuration with multi-role CF-API](#configuration-with-multi-role-cf-api) - - [Indexes in MongoDB](#indexes-in-mongodb) - [High Availability](#high-availability) - [Mounting private CA certs](#mounting-private-ca-certs) - [Installing on OpenShift](#installing-on-openshift) @@ -36,6 +35,7 @@ Helm chart for deploying [Codefresh On-Premises](https://codefresh.io/docs/docs/ - [X-Frame-Options response header](#x-frame-options-response-header) - [Image digests in containers](#image-digests-in-containers) - [Configuring OIDC Provider](#configuring-oidc-provider) +- [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) - [Upgrading](#upgrading) - [To 2.0.0](#to-2-0-0) - [To 2.0.12](#to-2-0-12) @@ -80,8 +80,6 @@ See [Use OCI-based registries](https://helm.sh/docs/topics/registries/) **Important:** only helm 3.8.0+ is supported -**Important:** Read about [Indexes in MongoDB](#indexes-in-mongodb) before installation - Edit default `values.yaml` or create empty `cf-values.yaml` - Pass `sa.json` (as a single line) to `.Values.imageCredentials.password` @@ -94,7 +92,7 @@ imageCredentials: password: '{ "type": "service_account", "project_id": "codefresh-enterprise", "private_key_id": ... }' ``` -- Specify `.Values.global.appUrl`, `.Values.global.firebaseUrl` and `.Values.global.firebaseSecret` +- Specify `.Values.global.appUrl`, `.Values.global.firebaseUrl`, `.Values.global.firebaseSecret`, `.Values.global.env.MONGOOSE_AUTO_INDEX`, `.Values.global.env.MONGO_AUTOMATIC_INDEX_CREATION` ```yaml global: @@ -119,9 +117,9 @@ global: # name: my-secret # key: firebase-secret - # -- Enable auto-index creation in MongoDB + # -- Enable index creation in MongoDB # This is required for first-time installations! - # For upgrades, you should set it to `false`! + # Before usage in Production, you must set it to `false` or remove it! env: MONGOOSE_AUTO_INDEX: "true" MONGO_AUTOMATIC_INDEX_CREATION: "true" @@ -181,6 +179,17 @@ ingress-nginx: --timeout 15m ``` +### ⚠️ **MANDATORY** Post-Installation Action Items + +Once your Codefresh On-Prem instance is installed, configured, and confirmed to be ready for production use, the following variables must be set to `false` or removed: + +```yaml +global: + env: + MONGOOSE_AUTO_INDEX: "false" + MONGO_AUTOMATIC_INDEX_CREATION: "false" +``` + ## Chart Configuration See [Customizing the Chart Before Installing](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing). To see all configurable options with detailed comments, visit the chart's [values.yaml](./values.yaml), or run these configuration commands: @@ -785,64 +794,6 @@ cfapi-test-reporting: enabled: true ``` -⚠️ ⚠️ ⚠️ -### Indexes in MongoDB -⚠️ ⚠️ ⚠️ - -Indexes in MongoDB are essential for efficient query performance, especially as your data grows. Without proper indexes, MongoDB must perform full collection scans to find matching documents, which can significantly slow down operations and increase resource usage. For production environments, ensuring that all frequently queried fields are indexed is vital to maintain optimal performance and scalability. - -Auto-index creation in MongoDB is disabled by default in Codefresh On-Prem to prevent unexpected performance issues in production environments during upgrades. When enabled, MongoDB will automatically create indexes for fields used in queries, which can lead to high CPU and disk usage, increased I/O, and potential service disruptions—especially on large datasets. By requiring manual index management, administrators can plan index creation during maintenance windows, ensuring system stability and predictable performance before upgrading Codefresh On-Prem. - -It is critical to ensure that your MongoDB indexes are always aligned with the latest recommended state for your Codefresh On-Prem version. Outdated or missing indexes can lead to degraded performance, slow queries, and increased resource consumption. Always review release notes and update or create indexes as specified during upgrades or when new collections/fields are introduced. Regularly auditing and maintaining your indexes helps ensure optimal system reliability and scalability. - -The indexes list is located at the [codefresh-io/codefresh-onprem-helm](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes) repository. -The indexes are stored in JSON files with keys and options specified. - -The directory structure is: - -```console -codefresh-onprem-helm -├── indexes -│ ├── # MongoDB database name -│ │ ├── .json # MongoDB indexes for the specified collection -``` - -#### Enabling auto-index creation - -For first-time installations, you **must** enable auto-index creation by setting the following values: - -```yaml -global: - env: - MONGOOSE_AUTO_INDEX: "true" - MONGO_AUTOMATIC_INDEX_CREATION: "true" -``` - -You **should** disable it for the next upgrades by setting these variables to `false`: - -```yaml -global: - env: - MONGOOSE_AUTO_INDEX: "false" - MONGO_AUTOMATIC_INDEX_CREATION: "false" -``` - -#### Creating Indexes manually - -> **Note!** If you have a large amount of MongoDB data, it is recommended to create indexes manually. Enabling auto-index creation can cause performance degradation during the index creation process with large datasets. - -Depending on your MongoDB service (e.g., Atlas, self-hosted), you can create indexes using the MongoDB shell or the Atlas UI. - -Ref: -- [Create an Index in Atlas DB](https://www.mongodb.com/docs/atlas/atlas-ui/indexes/#create-an-index) -- [Create an Index with mongosh](https://www.mongodb.com/docs/manual/reference/method/db.collection.createIndex/) - -##### ⚠️ Upgrading when the indexes are maintained manually - -If you maintain indexes manually and you upgrade your On-Prem installation you must create all indexes which were introduced from your current version up to the version you upgrade to manually. - -You can follow [Upgrading section](#upgrading) to see what changes were made for indexes in every specific release. - ### High Availability The chart installs the non-HA version of Codefresh by default. If you want to run Codefresh in HA mode, use the example values below. @@ -1492,6 +1443,86 @@ To see all the claims supported by Codefresh OIDC provider, see `claims_supporte Use [obtain-oidc-id-token](https://github.com/codefresh-io/steps/blob/822afc0a9a128384e76459c6573628020a2cf404/incubating/obtain-oidc-id-token/step.yaml#L27-L58) and [aws-sts-assume-role-with-web-identity](https://github.com/codefresh-io/steps/blob/822afc0a9a128384e76459c6573628020a2cf404/incubating/aws-sts-assume-role-with-web-identity/step.yaml#L29-L63) steps to exchange the OIDC token (JWT) for a cloud access token. +## Maintaining MongoDB Indexes + +Sometimes, in new releases of Codefresh On-Prem, index requirements change. When this happens, it's mentioned in the [Upgrading section](#upgrading) for the specific release. + +> ℹ️ If you're upgrading from version `X` to version `Y`, and index requirements were updated in any of the intermediate versions, you only need to align your indexes with the index requirements of version `Y`. To do that, follow [Index alignment](#index-alignment) instructions. + +### Index alignment + +The required index definitions for each release can be found at the following resources: + +- `2.6` +- `2.7` +- `2.8` + +The indexes are stored in JSON files with keys and options specified. + +The directory structure is: + +```console +indexes +├── # MongoDB database name +│ ├── .json # MongoDB indexes for the specified collection +``` + +**Overview of the index alignment process:** + +1. Identify the differences between the indexes in your MongoDB instance and the required index definitions. +2. Create any missing indexes one by one. (It's important not to create them in bulk.) +3. Then remove any unnecessary indexes. + +> ⚠️ **Note! Any changes to indexes should be performed during a defined maintenance window or during periods of lowest traffic to MongoDB.** +> +> Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/index-creation/#index-build-impact-on-database-performance)) +> +> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradationю ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) + +#### Self-hosted MongoDB + +For self-hosted MongoDB, follow the instructions below: + +- Connect to the MongoDB server using the [mongosh](https://www.mongodb.com/docs/mongodb-shell/install/) shell. Open your terminal or command prompt and run the following command, replacing `` with the appropriate MongoDB connection string for your server: + +```shell +mongosh "" +``` + +- Retrieve the list of indexes for a specific collection: + +```js +db.getSiblingDB('').getCollection('').getIndexes() +``` + +- Compare your indexes with the required indexes for the target release, and adjust them by creating any missing indexes or removing any unnecessary ones + +**Index creation** + +> ⚠ **Note! Always create indexes sequentially, one by one. Don't create them in bulk.** + +- To create an index, use the `createIndex()` method: + +```js +db.getSiblingDB('').getCollection('').createIndex(, ) +``` + +After executing the `createIndex()` command, you should see a result indicating that the index was created successfully. + +**Index removal** + +- To remove an index, use the `dropIndex()` method with either the `` or a ``: + +```js +db.getSiblingDB('').getCollection('').dropIndex('' | ) +``` + +#### Atlas Database + +If you're hosting MongoDB on [Atlas](https://www.mongodb.com/atlas/database), use the following [Manage Indexes](https://www.mongodb.com/docs/atlas/atlas-ui/indexes/) guide to View, Create or Remove indexes. + +> ⚠️ **Important!** In Atlas in production environment the indexes must be created in *a rolling fashion* mode, i.e., with `Build index via rolling process` checkbox enabled. + ## Upgrading ### To 2-0-0 @@ -2027,24 +2058,22 @@ cfapi: ### To 2-6-0 +> ⚠️ **WARNING! MongoDB indexes changed!** +> +> Please, follow [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) guide to meet index requirements **BEFORE** the upgrade process. + ### [What's new in 2.6.x](https://codefresh.io/docs/docs/whats-new/on-prem-release-notes/#on-premises-version-26) #### Affected values [Image digests in containers](#image-digests-in-containers) -#### Auto-index creation in MongoDB - -[Auto-index creation in MongoDB](#auto-index-creation-in-mongodb) - -#### ⚠️ New indexes in MongoDB - -If you maintain indexes manually (i.e. [Auto-index creation](#enabling-auto-index-creation) is off) you must create the following index **before** the upgrade: - -- [Database: `read-models`, collection: `images-binaries`, index: `accountId_1_imageName_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/read-models/images-binaries.json#L75-L94) - ### To 2-7-0 +> ⚠️ **WARNING! MongoDB indexes changed!** +> +> Please, follow [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) guide to meet index requirements **BEFORE** the upgrade process. + ### [What's new in 2.7.x](https://codefresh.io/docs/docs/whats-new/on-prem-release-notes/#on-premises-version-27) #### Affected values @@ -2074,17 +2103,12 @@ global: - "value" ``` -#### ⚠️ New indexes in MongoDB - -If you maintain indexes manually (i.e. [Auto-index creation](#enabling-auto-index-creation) is off) you must create the following indexes **before or right after** the upgrade: - -> ⚠ **Note!** In case if you create indexes **before** the upgrade, please, create `codefresh.feature-store-versioned` collection manually in advance. - -- [Database: `codefresh`, collection: `feature-store-versioned`, index: `createdAt_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/feature-store-versioned.json#L2-L9) -- [Database: `codefresh`, collection: `feature-store-versioned`, index: `LDRedisStoreVersion_1__id_-1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/feature-store-versioned.json#L10-L17) - ### To 2-8-0 +> ⚠️ **WARNING! MongoDB indexes changed!** +> +> Please, follow [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) guide to meet index requirements **BEFORE** the upgrade process. + ### [What's new in 2.8.x](https://codefresh.io/docs/docs/whats-new/on-prem-release-notes/#on-premises-version-28) ### ⚠️ ⚠️ ⚠️ Breaking changes. Read before upgrading! @@ -2123,13 +2147,6 @@ mongodb: enabled: false ``` -#### ⚠️ New indexes in MongoDB - -If you maintain indexes manually (i.e. [Auto-index creation](#enabling-auto-index-creation) is off) you must create the following indexes **before** the upgrade: - -- [Database: `codefresh`, collection: `users`, index: `account_1__id_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/users.json#L2-L9) -- [Database: `codefresh`, collection: `users`, index: `role_1_account_1__id_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/users.json#L10-L17) - ### PostgreSQL update Default PostgreSQL image is changed from 13.x to 17.x diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index 2fc1306ac..9396f2701 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -24,7 +24,6 @@ Helm chart for deploying [Codefresh On-Premises](https://codefresh.io/docs/docs/ - [Configuration with ALB (Application Load Balancer)](#configuration-with-alb-application-load-balancer) - [Configuration with Private Registry](#configuration-with-private-registry) - [Configuration with multi-role CF-API](#configuration-with-multi-role-cf-api) - - [Indexes in MongoDB](#indexes-in-mongodb) - [High Availability](#high-availability) - [Mounting private CA certs](#mounting-private-ca-certs) - [Installing on OpenShift](#installing-on-openshift) @@ -36,6 +35,7 @@ Helm chart for deploying [Codefresh On-Premises](https://codefresh.io/docs/docs/ - [X-Frame-Options response header](#x-frame-options-response-header) - [Image digests in containers](#image-digests-in-containers) - [Configuring OIDC Provider](#configuring-oidc-provider) +- [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) - [Upgrading](#upgrading) - [To 2.0.0](#to-2-0-0) - [To 2.0.12](#to-2-0-12) @@ -81,8 +81,6 @@ See [Use OCI-based registries](https://helm.sh/docs/topics/registries/) **Important:** only helm 3.8.0+ is supported -**Important:** Read about [Indexes in MongoDB](#indexes-in-mongodb) before installation - Edit default `values.yaml` or create empty `cf-values.yaml` - Pass `sa.json` (as a single line) to `.Values.imageCredentials.password` @@ -95,7 +93,7 @@ imageCredentials: password: '{ "type": "service_account", "project_id": "codefresh-enterprise", "private_key_id": ... }' ``` -- Specify `.Values.global.appUrl`, `.Values.global.firebaseUrl` and `.Values.global.firebaseSecret` +- Specify `.Values.global.appUrl`, `.Values.global.firebaseUrl`, `.Values.global.firebaseSecret`, `.Values.global.env.MONGOOSE_AUTO_INDEX`, `.Values.global.env.MONGO_AUTOMATIC_INDEX_CREATION` ```yaml global: @@ -120,9 +118,9 @@ global: # name: my-secret # key: firebase-secret - # -- Enable auto-index creation in MongoDB + # -- Enable index creation in MongoDB # This is required for first-time installations! - # For upgrades, you should set it to `false`! + # Before usage in Production, you must set it to `false` or remove it! env: MONGOOSE_AUTO_INDEX: "true" MONGO_AUTOMATIC_INDEX_CREATION: "true" @@ -182,6 +180,17 @@ ingress-nginx: --timeout 15m ``` +### ⚠️ **MANDATORY** Post-Installation Action Items + +Once your Codefresh On-Prem instance is installed, configured, and confirmed to be ready for production use, the following variables must be set to `false` or removed: + +```yaml +global: + env: + MONGOOSE_AUTO_INDEX: "false" + MONGO_AUTOMATIC_INDEX_CREATION: "false" +``` + ## Chart Configuration See [Customizing the Chart Before Installing](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing). To see all configurable options with detailed comments, visit the chart's [values.yaml](./values.yaml), or run these configuration commands: @@ -788,64 +797,6 @@ cfapi-test-reporting: enabled: true ``` -⚠️ ⚠️ ⚠️ -### Indexes in MongoDB -⚠️ ⚠️ ⚠️ - -Indexes in MongoDB are essential for efficient query performance, especially as your data grows. Without proper indexes, MongoDB must perform full collection scans to find matching documents, which can significantly slow down operations and increase resource usage. For production environments, ensuring that all frequently queried fields are indexed is vital to maintain optimal performance and scalability. - -Auto-index creation in MongoDB is disabled by default in Codefresh On-Prem to prevent unexpected performance issues in production environments during upgrades. When enabled, MongoDB will automatically create indexes for fields used in queries, which can lead to high CPU and disk usage, increased I/O, and potential service disruptions—especially on large datasets. By requiring manual index management, administrators can plan index creation during maintenance windows, ensuring system stability and predictable performance before upgrading Codefresh On-Prem. - -It is critical to ensure that your MongoDB indexes are always aligned with the latest recommended state for your Codefresh On-Prem version. Outdated or missing indexes can lead to degraded performance, slow queries, and increased resource consumption. Always review release notes and update or create indexes as specified during upgrades or when new collections/fields are introduced. Regularly auditing and maintaining your indexes helps ensure optimal system reliability and scalability. - -The indexes list is located at the [codefresh-io/codefresh-onprem-helm](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes) repository. -The indexes are stored in JSON files with keys and options specified. - -The directory structure is: - -```console -codefresh-onprem-helm -├── indexes -│ ├── # MongoDB database name -│ │ ├── .json # MongoDB indexes for the specified collection -``` - -#### Enabling auto-index creation - -For first-time installations, you **must** enable auto-index creation by setting the following values: - -```yaml -global: - env: - MONGOOSE_AUTO_INDEX: "true" - MONGO_AUTOMATIC_INDEX_CREATION: "true" -``` - -You **should** disable it for the next upgrades by setting these variables to `false`: - -```yaml -global: - env: - MONGOOSE_AUTO_INDEX: "false" - MONGO_AUTOMATIC_INDEX_CREATION: "false" -``` - -#### Creating Indexes manually - -> **Note!** If you have a large amount of MongoDB data, it is recommended to create indexes manually. Enabling auto-index creation can cause performance degradation during the index creation process with large datasets. - -Depending on your MongoDB service (e.g., Atlas, self-hosted), you can create indexes using the MongoDB shell or the Atlas UI. - -Ref: -- [Create an Index in Atlas DB](https://www.mongodb.com/docs/atlas/atlas-ui/indexes/#create-an-index) -- [Create an Index with mongosh](https://www.mongodb.com/docs/manual/reference/method/db.collection.createIndex/) - -##### ⚠️ Upgrading when the indexes are maintained manually - -If you maintain indexes manually and you upgrade your On-Prem installation you must create all indexes which were introduced from your current version up to the version you upgrade to manually. - -You can follow [Upgrading section](#upgrading) to see what changes were made for indexes in every specific release. - ### High Availability The chart installs the non-HA version of Codefresh by default. If you want to run Codefresh in HA mode, use the example values below. @@ -1499,6 +1450,86 @@ To see all the claims supported by Codefresh OIDC provider, see `claims_supporte Use [obtain-oidc-id-token](https://github.com/codefresh-io/steps/blob/822afc0a9a128384e76459c6573628020a2cf404/incubating/obtain-oidc-id-token/step.yaml#L27-L58) and [aws-sts-assume-role-with-web-identity](https://github.com/codefresh-io/steps/blob/822afc0a9a128384e76459c6573628020a2cf404/incubating/aws-sts-assume-role-with-web-identity/step.yaml#L29-L63) steps to exchange the OIDC token (JWT) for a cloud access token. +## Maintaining MongoDB Indexes + +Sometimes, in new releases of Codefresh On-Prem, index requirements change. When this happens, it's mentioned in the [Upgrading section](#upgrading) for the specific release. + +> ℹ️ If you're upgrading from version `X` to version `Y`, and index requirements were updated in any of the intermediate versions, you only need to align your indexes with the index requirements of version `Y`. To do that, follow [Index alignment](#index-alignment) instructions. + +### Index alignment + +The required index definitions for each release can be found at the following resources: + +- `2.6` +- `2.7` +- `2.8` + +The indexes are stored in JSON files with keys and options specified. + +The directory structure is: + +```console +indexes +├── # MongoDB database name +│ ├── .json # MongoDB indexes for the specified collection +``` + +**Overview of the index alignment process:** + +1. Identify the differences between the indexes in your MongoDB instance and the required index definitions. +2. Create any missing indexes one by one. (It's important not to create them in bulk.) +3. Then remove any unnecessary indexes. + +> ⚠️ **Note! Any changes to indexes should be performed during a defined maintenance window or during periods of lowest traffic to MongoDB.** +> +> Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/index-creation/#index-build-impact-on-database-performance)) +> +> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradationю ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) + +#### Self-hosted MongoDB + +For self-hosted MongoDB, follow the instructions below: + +- Connect to the MongoDB server using the [mongosh](https://www.mongodb.com/docs/mongodb-shell/install/) shell. Open your terminal or command prompt and run the following command, replacing `` with the appropriate MongoDB connection string for your server: + + +```shell +mongosh "" +``` + +- Retrieve the list of indexes for a specific collection: + +```js +db.getSiblingDB('').getCollection('').getIndexes() +``` + +- Compare your indexes with the required indexes for the target release, and adjust them by creating any missing indexes or removing any unnecessary ones + +**Index creation** + +> ⚠ **Note! Always create indexes sequentially, one by one. Don't create them in bulk.** + +- To create an index, use the `createIndex()` method: + +```js +db.getSiblingDB('').getCollection('').createIndex(, ) +``` + +After executing the `createIndex()` command, you should see a result indicating that the index was created successfully. + +**Index removal** + +- To remove an index, use the `dropIndex()` method with either the `` or a ``: + +```js +db.getSiblingDB('').getCollection('').dropIndex('' | ) +``` + +#### Atlas Database + +If you're hosting MongoDB on [Atlas](https://www.mongodb.com/atlas/database), use the following [Manage Indexes](https://www.mongodb.com/docs/atlas/atlas-ui/indexes/) guide to View, Create or Remove indexes. + +> ⚠️ **Important!** In Atlas in production environment the indexes must be created in *a rolling fashion* mode, i.e., with `Build index via rolling process` checkbox enabled. ## Upgrading @@ -2036,24 +2067,22 @@ cfapi: ### To 2-6-0 +> ⚠️ **WARNING! MongoDB indexes changed!** +> +> Please, follow [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) guide to meet index requirements **BEFORE** the upgrade process. + ### [What's new in 2.6.x](https://codefresh.io/docs/docs/whats-new/on-prem-release-notes/#on-premises-version-26) #### Affected values [Image digests in containers](#image-digests-in-containers) -#### Auto-index creation in MongoDB - -[Auto-index creation in MongoDB](#auto-index-creation-in-mongodb) - -#### ⚠️ New indexes in MongoDB - -If you maintain indexes manually (i.e. [Auto-index creation](#enabling-auto-index-creation) is off) you must create the following index **before** the upgrade: - -- [Database: `read-models`, collection: `images-binaries`, index: `accountId_1_imageName_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/read-models/images-binaries.json#L75-L94) - ### To 2-7-0 +> ⚠️ **WARNING! MongoDB indexes changed!** +> +> Please, follow [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) guide to meet index requirements **BEFORE** the upgrade process. + ### [What's new in 2.7.x](https://codefresh.io/docs/docs/whats-new/on-prem-release-notes/#on-premises-version-27) #### Affected values @@ -2083,17 +2112,12 @@ global: - "value" ``` -#### ⚠️ New indexes in MongoDB - -If you maintain indexes manually (i.e. [Auto-index creation](#enabling-auto-index-creation) is off) you must create the following indexes **before or right after** the upgrade: - -> ⚠ **Note!** In case if you create indexes **before** the upgrade, please, create `codefresh.feature-store-versioned` collection manually in advance. - -- [Database: `codefresh`, collection: `feature-store-versioned`, index: `createdAt_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/feature-store-versioned.json#L2-L9) -- [Database: `codefresh`, collection: `feature-store-versioned`, index: `LDRedisStoreVersion_1__id_-1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/feature-store-versioned.json#L10-L17) - ### To 2-8-0 +> ⚠️ **WARNING! MongoDB indexes changed!** +> +> Please, follow [Maintaining MongoDB indexes](#maintaining-mongodb-indexes) guide to meet index requirements **BEFORE** the upgrade process. + ### [What's new in 2.8.x](https://codefresh.io/docs/docs/whats-new/on-prem-release-notes/#on-premises-version-28) ### ⚠️ ⚠️ ⚠️ Breaking changes. Read before upgrading! @@ -2132,15 +2156,6 @@ mongodb: enabled: false ``` -#### ⚠️ New indexes in MongoDB - - -If you maintain indexes manually (i.e. [Auto-index creation](#enabling-auto-index-creation) is off) you must create the following indexes **before** the upgrade: - - -- [Database: `codefresh`, collection: `users`, index: `account_1__id_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/users.json#L2-L9) -- [Database: `codefresh`, collection: `users`, index: `role_1_account_1__id_1`](https://github.com/codefresh-io/codefresh-onprem-helm/tree/release-2.8/indexes/codefresh/users.json#L10-L17) - ### PostgreSQL update Default PostgreSQL image is changed from 13.x to 17.x From 9fdebea59c0bff2457fff0e6a4bba313efddc17b Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 12:18:35 +0400 Subject: [PATCH 2/9] fix: index format --- indexes/codefresh/agenttasks.json | 37 +- .../codefresh/feature-store-versioned.json | 29 +- indexes/codefresh/users.json | 30 +- indexes/codefresh/workflowprocesses.json | 619 ++++++++--------- indexes/read-models/analysisruns.json | 531 +++++++-------- indexes/read-models/images-binaries.json | 131 ++-- indexes/read-models/product-releases.json | 153 ++--- indexes/read-models/releases.json | 277 ++++---- indexes/read-models/rollouts.json | 633 +++++++++--------- 9 files changed, 1145 insertions(+), 1295 deletions(-) diff --git a/indexes/codefresh/agenttasks.json b/indexes/codefresh/agenttasks.json index 8c761fcd0..7e5b1f26f 100644 --- a/indexes/codefresh/agenttasks.json +++ b/indexes/codefresh/agenttasks.json @@ -1,29 +1,20 @@ [ { - "v" : 2.0, - "key" : { - "_id" : 1.0 - }, - "name" : "_id_" - }, - { - "v" : 2.0, - "key" : { - "metadata.accountId" : 1, - "metadata.reIdentifier" : 1, - "metadata.shouldExecute" : 1, - "metadata.startAt" : 1, - "metadata.status" : 1, - "metadata.expireAt" : 1 - }, - "name" : "metadata.accountId_1_metadata.reIdentifier_1_metadata.shouldExecute_1_metadata.startAt_1_metadata.status_1_metadata.expireAt_1" + "keys": { + "metadata.accountId": 1, + "metadata.reIdentifier": 1, + "metadata.shouldExecute": 1, + "metadata.startAt": 1, + "metadata.status": 1, + "metadata.expireAt": 1 + } }, { - "v" : 2.0, - "key" : { - "metadata.expireAt" : 1 + "keys": { + "metadata.expireAt": 1 }, - "name" : "metadata.expireAt_1", - "expireAfterSeconds" : 0.0 + "options": { + "expireAfterSeconds": 0 + } } -] +] \ No newline at end of file diff --git a/indexes/codefresh/feature-store-versioned.json b/indexes/codefresh/feature-store-versioned.json index 4be0e7132..e5c9af57f 100644 --- a/indexes/codefresh/feature-store-versioned.json +++ b/indexes/codefresh/feature-store-versioned.json @@ -1,25 +1,16 @@ [ { - "expireAfterSeconds": 43200.0, - "key": { - "createdAt": 1.0 + "keys": { + "createdAt": 1 }, - "name": "createdAt_1", - "v": 2.0 + "options": { + "expireAfterSeconds": 43200 + } }, { - "key": { - "_id": -1.0, - "LDRedisStoreVersion": 1.0 - }, - "name": "LDRedisStoreVersion_1__id_-1", - "v": 2.0 - }, - { - "key": { - "_id": 1.0 - }, - "name": "_id_", - "v": 2.0 + "keys": { + "_id": -1, + "LDRedisStoreVersion": 1 + } } -] +] \ No newline at end of file diff --git a/indexes/codefresh/users.json b/indexes/codefresh/users.json index 64ea6d343..07200446a 100644 --- a/indexes/codefresh/users.json +++ b/indexes/codefresh/users.json @@ -1,19 +1,15 @@ [ - { - "v": 2.0, - "key": { - "account": 1.0, - "_id": 1.0 + { + "keys": { + "account": 1, + "_id": 1 + } }, - "name": "account_1__id_1" - }, - { - "v": 2.0, - "key": { - "role": 1.0, - "account": 1.0, - "_id": 1.0 - }, - "name": "role_1_account_1__id_1" - } -] + { + "keys": { + "role": 1, + "account": 1, + "_id": 1 + } + } +] \ No newline at end of file diff --git a/indexes/codefresh/workflowprocesses.json b/indexes/codefresh/workflowprocesses.json index e2e6e65a3..0477e6108 100644 --- a/indexes/codefresh/workflowprocesses.json +++ b/indexes/codefresh/workflowprocesses.json @@ -1,460 +1,385 @@ [ { - "v" : 1.0, - "key" : { - "account" : 1.0, - "pendingLicense" : 1.0, - "created" : 1.0 - }, - "name" : "account_1_pendingLicense_1_created_1" + "keys": { + "account": 1, + "pendingLicense": 1, + "created": 1 + } }, { - "v" : 1.0, - "key" : { - "pipeline" : 1.0, - "status" : 1.0 - }, - "name" : "pipeline_1_status_1" + "keys": { + "pipeline": 1, + "status": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1.0, - "triggerType" : 1.0 - }, - "name" : "account_1_triggerType_1" + "keys": { + "account": 1, + "triggerType": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1.0, - "pipelineInfo.pipelineId" : 1.0 - }, - "name" : "account_1_pipelineInfo.pipelineId_1" + "keys": { + "account": 1, + "pipelineInfo.pipelineId": 1 + } }, { - "v" : 1.0, - "key" : { - "account" : 1.0, - "startImmediately" : 1.0, - "status" : 1.0 - }, - "name" : "account_1_startImmediately_1_status_1" + "keys": { + "account": 1, + "startImmediately": 1, + "status": 1 + } }, { - "v" : 1.0, - "key" : { - "account" : 1.0, - "scmMetadata.repoName" : 1.0, - "scmMetadata.repoOwner" : 1.0, - "trigger" : 1.0, - "service" : 1.0 - }, - "name" : "account_1_scmMetadata.repoName_1_scmMetadata.repoOwner_1_trigger_1_service_1" + "keys": { + "account": 1, + "scmMetadata.repoName": 1, + "scmMetadata.repoOwner": 1, + "trigger": 1, + "service": 1 + } }, { - "v" : 1.0, - "key" : { - "isPublic" : 1.0 - }, - "name" : "isPublic_1" + "keys": { + "isPublic": 1 + } }, { - "v" : 2.0, - "key" : { - "codefreshEnv" : 1, - "status" : 1, - "shouldPerformFinishSystem" : 1, - "_id" : 1 - }, - "name" : "codefreshEnv_1_status_1_shouldPerformFinishSystem_1__id_1" + "keys": { + "codefreshEnv": 1, + "status": 1, + "shouldPerformFinishSystem": 1, + "_id": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "helmInfo.boardId" : 1 - }, - "name" : "account_1_helmInfo.boardId_1" + "keys": { + "account": 1, + "helmInfo.boardId": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1.0, - "environs" : 1.0 - }, - "name" : "account_1_environs_1" + "keys": { + "account": 1, + "environs": 1 + } }, { - "v" : 1.0, - "key" : { - "account" : 1.0, - "status" : 1.0, - "trigger" : 1.0 - }, - "name" : "account_1_status_1_trigger_1" + "keys": { + "account": 1, + "status": 1, + "trigger": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "pipeline" : 1, - "trigger" : 1, - "_id" : -1 - }, - "name" : "account_1_pipeline_1_trigger_1__id_-1" + "keys": { + "account": 1, + "pipeline": 1, + "trigger": 1, + "_id": -1 + } }, { - "v" : 1.0, - "key" : { - "scmMetadata.branchName" : 1.0, - "account" : 1.0, - "pipeline" : 1.0, - "created" : -1.0, - "finished" : 1.0 - }, - "name" : "scmMetadata.branchName_1_account_1_pipeline_1_created_-1_finished_1" + "keys": { + "scmMetadata.branchName": 1, + "account": 1, + "pipeline": 1, + "created": -1, + "finished": 1 + } }, { - "v" : 2.0, - "key" : { - "trigger" : 1.0, - "account" : 1.0, - "status" : 1.0, - "_id" : -1.0 - }, - "name" : "trigger_1_account_1_status_1__id_-1" + "keys": { + "trigger": 1, + "account": 1, + "status": 1, + "_id": -1 + } }, { - "v" : 1.0, - "key" : { - "account" : 1.0, - "trigger" : 1.0, - "scmMetadata.repoName" : 1.0, - "service" : 1.0 - }, - "name" : "account_1_trigger_1_scmMetadata.repoName_1_service_1" + "keys": { + "account": 1, + "trigger": 1, + "scmMetadata.repoName": 1, + "service": 1 + } }, { - "v" : 1.0, - "key" : { - "service" : 1.0, - "status" : 1.0 - }, - "name" : "service_1_status_1" + "keys": { + "service": 1, + "status": 1 + } }, { - "v" : 1.0, - "key" : { - "finished" : 1.0 - }, - "name" : "finished_1" + "keys": { + "finished": 1 + } }, { - "v" : 2.0, - "key" : { - "healthStatus.engine.status" : 1.0 - }, - "name" : "healthStatus.engine.status_1" + "keys": { + "healthStatus.engine.status": 1 + } }, { - "v" : 2.0, - "key" : { - "codefreshEnv" : 1, - "status" : 1, - "_id" : 1 - }, - "name" : "codefreshEnv_1_status_1__id_1" + "keys": { + "codefreshEnv": 1, + "status": 1, + "_id": 1 + } }, { - "v" : 1.0, - "key" : { - "account" : 1.0, - "service" : 1.0, - "trigger" : 1.0 - }, - "name" : "account_1_service_1_trigger_1" + "keys": { + "account": 1, + "service": 1, + "trigger": 1 + } }, { - "v" : 1.0, - "key" : { - "scmMetadata.branchName" : 1.0, - "service" : 1.0, - "status" : 1.0, - "created" : -1.0 - }, - "name" : "scmMetadata.branchName_1_service_1_status_1_created_-1" + "keys": { + "scmMetadata.branchName": 1, + "service": 1, + "status": 1, + "created": -1 + } }, { - "v" : 1.0, - "key" : { - "status" : 1.0, - "trigger" : 1.0 - }, - "name" : "status_1_trigger_1" + "keys": { + "status": 1, + "trigger": 1 + } }, { - "v" : 2.0, - "key" : { - "pipeline" : 1.0, - "finished" : -1.0 - }, - "name" : "pipeline_1_finished_-1" + "keys": { + "pipeline": 1, + "finished": -1 + } }, { - "v" : 1.0, - "key" : { - "progress" : 1.0 - }, - "name" : "progress_1" + "keys": { + "progress": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1.0, - "environ" : 1.0 - }, - "name" : "account_1_environ_1" + "keys": { + "account": 1, + "environ": 1 + } }, { - "v" : 2.0, - "key" : { - "status" : 1, - "created" : -1 - }, - "name" : "status_1_created_-1" + "keys": { + "status": 1, + "created": -1 + } }, { - "v" : 2.0, - "key" : { - "createdAt" : 1.0 - }, - "name" : "createdAt_1" + "keys": { + "createdAt": 1 + } }, { - "v" : 1.0, - "key" : { - "request" : 1.0 - }, - "name" : "request_1" + "keys": { + "request": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "_id" : 1, - "scmMetadata.repoName" : 1 - }, - "name" : "account_1__id_1_scmMetadata.repoName_1" + "keys": { + "account": 1, + "_id": 1, + "scmMetadata.repoName": 1 + } }, { - "v" : 2.0, - "key" : { - "pipeline" : 1, - "created" : -1 - }, - "name" : "pipeline_1_created_-1" + "keys": { + "pipeline": 1, + "created": -1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "status" : 1, - "created" : 1 - }, - "name" : "account_1_status_1_created_1" + "keys": { + "account": 1, + "status": 1, + "created": 1 + } }, { - "v" : 2.0, - "key" : { - "status" : 1, - "runtimeEnvironmentMetadata.agent" : 1, - "created" : 1 - }, - "name" : "status_1_runtimeEnvironmentMetadata.agent_1_created_1" + "keys": { + "status": 1, + "runtimeEnvironmentMetadata.agent": 1, + "created": 1 + } }, { - "v" : 2.0, - "key" : { - "created" : 1 + "keys": { + "created": 1 }, - "name" : "created_1", - "expireAfterSeconds" : 31536000.0 + "options": { + "expireAfterSeconds": 31536000 + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "status" : 1, - "trigger" : 1, - "pipeline" : 1, - "keepPVCsForPendingApproval" : 1 - }, - "name" : "account_1_status_1_trigger_1_pipeline_1_keepPVCsForPendingApproval_1", - "partialFilterExpression" : { - "status" : { - "$in" : [ - "pending", - "delayed", - "elected", - "running", - "terminating", - "pending-approval" - ] + "keys": { + "account": 1, + "status": 1, + "trigger": 1, + "pipeline": 1, + "keepPVCsForPendingApproval": 1 + }, + "options": { + "partialFilterExpression": { + "status": { + "$in": [ + "pending", + "delayed", + "elected", + "running", + "terminating", + "pending-approval" + ] + } } } }, { - "v" : 2.0, - "key" : { - "_id" : 1.0 + "keys": { + "account": 1, + "scmMetadata.revision": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "_id_" - }, - { - "v" : 2.0, - "key" : { - "account" : 1, - "scmMetadata.revision" : 1, - "_id" : -1, - "pipeline" : 1 - }, - "name" : "account_1_scmMetadata.revision_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "scmMetadata.revision" : { - "$exists" : true + "options": { + "partialFilterExpression": { + "scmMetadata.revision": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "scmMetadata.userName" : 1, - "_id" : -1, - "pipeline" : 1 + "keys": { + "account": 1, + "trigger": 1, + "scmMetadata.userName": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "account_1_trigger_1_scmMetadata.userName_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "scmMetadata.userName" : { - "$exists" : true + "options": { + "partialFilterExpression": { + "scmMetadata.userName": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "annotations.key" : 1, - "annotations.value" : 1, - "_id" : -1, - "pipeline" : 1 + "keys": { + "account": 1, + "trigger": 1, + "annotations.key": 1, + "annotations.value": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "account_1_trigger_1_annotations.key_1_annotations.value_1__id_-1_pipeline_1", - "sparse" : true + "options": { + "sparse": true + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "pipelineTrigger" : 1, - "_id" : -1, - "pipeline" : 1 + "keys": { + "account": 1, + "trigger": 1, + "pipelineTrigger": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "account_1_trigger_1_pipelineTrigger_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "pipelineTrigger" : { - "$exists" : true + "options": { + "partialFilterExpression": { + "pipelineTrigger": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "scmMetadata.branchName" : 1, - "_id" : -1, - "pipeline" : 1 + "keys": { + "account": 1, + "trigger": 1, + "scmMetadata.branchName": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "account_1_trigger_1_scmMetadata.branchName_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "scmMetadata.branchName" : { - "$exists" : true + "options": { + "partialFilterExpression": { + "scmMetadata.branchName": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "_id" : -1, - "pipeline" : 1 - }, - "name" : "account_1_trigger_1__id_-1_pipeline_1" + "keys": { + "account": 1, + "trigger": 1, + "_id": -1, + "pipeline": 1 + } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "scmMetadata.provider" : 1, - "_id" : -1, - "pipeline" : 1 + "keys": { + "account": 1, + "trigger": 1, + "scmMetadata.provider": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "account_1_trigger_1_scmMetadata.provider_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "scmMetadata.provider" : { - "$exists" : true + "options": { + "partialFilterExpression": { + "scmMetadata.provider": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "scmMetadata.repoName" : 1, - "_id" : -1, - "pipeline" : 1 + "keys": { + "account": 1, + "trigger": 1, + "scmMetadata.repoName": 1, + "_id": -1, + "pipeline": 1 }, - "name" : "account_1_trigger_1_scmMetadata.repoName_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "scmMetadata.repoName" : { - "$exists" : true + "options": { + "partialFilterExpression": { + "scmMetadata.repoName": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "account" : 1, - "trigger" : 1, - "scmMetadata.provider" : 1, - "scmMetadata.event" : 1, - "_id" : -1, - "pipeline" : 1 - }, - "name" : "account_1_trigger_1_scmMetadata.provider_1_scmMetadata.event_1__id_-1_pipeline_1", - "partialFilterExpression" : { - "scmMetadata.event" : { - "$exists" : true - }, - "scmMetadata.provider" : { - "$exists" : true + "keys": { + "account": 1, + "trigger": 1, + "scmMetadata.provider": 1, + "scmMetadata.event": 1, + "_id": -1, + "pipeline": 1 + }, + "options": { + "partialFilterExpression": { + "scmMetadata.event": { + "$exists": true + }, + "scmMetadata.provider": { + "$exists": true + } } } }, { - "v" : 2.0, - "key" : { - "pipeline" : 1, - "_id" : -1 - }, - "name" : "pipeline_1__id_-1" + "keys": { + "pipeline": 1, + "_id": -1 + } } -] +] \ No newline at end of file diff --git a/indexes/read-models/analysisruns.json b/indexes/read-models/analysisruns.json index 2a5c93752..c20d7050f 100644 --- a/indexes/read-models/analysisruns.json +++ b/indexes/read-models/analysisruns.json @@ -1,332 +1,321 @@ [ { - "v" : 2.0, - "key" : { - "_id" : 1.0 + "keys": { + "__passiveReferencedBy.name": 1 }, - "name" : "_id_" - }, - { - "v" : 2.0, - "key" : { - "__passiveReferencedBy.name" : 1.0 - }, - "name" : "__passiveReferencedBy.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__passiveReferencedBy.name" : 1.0, - "__passiveReferencedBy.kind" : 1.0, - "__passiveReferencedBy.namespace" : 1.0, - "__passiveReferencedBy.group" : 1.0, - "__passiveReferencedBy.version" : 1.0 + "keys": { + "__passiveReferencedBy.name": 1, + "__passiveReferencedBy.kind": 1, + "__passiveReferencedBy.namespace": 1, + "__passiveReferencedBy.group": 1, + "__passiveReferencedBy.version": 1 }, - "name" : "__passiveReferencedBy.name_1___passiveReferencedBy.kind_1___passiveReferencedBy.namespace_1___passiveReferencedBy.group_1___passiveReferencedBy.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__passiveReferences.name" : 1.0 + "keys": { + "__passiveReferences.name": 1 }, - "name" : "__passiveReferences.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__passiveReferences.name" : 1.0, - "__passiveReferences.kind" : 1.0, - "__passiveReferences.namespace" : 1.0, - "__passiveReferences.group" : 1.0, - "__passiveReferences.version" : 1.0 + "keys": { + "__passiveReferences.name": 1, + "__passiveReferences.kind": 1, + "__passiveReferences.namespace": 1, + "__passiveReferences.group": 1, + "__passiveReferences.version": 1 }, - "name" : "__passiveReferences.name_1___passiveReferences.kind_1___passiveReferences.namespace_1___passiveReferences.group_1___passiveReferences.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferencedBy.name" : 1.0 + "keys": { + "__inferredReferencedBy.name": 1 }, - "name" : "__inferredReferencedBy.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferencedBy.name" : 1.0, - "__inferredReferencedBy.kind" : 1.0, - "__inferredReferencedBy.namespace" : 1.0, - "__inferredReferencedBy.group" : 1.0, - "__inferredReferencedBy.version" : 1.0 + "keys": { + "__inferredReferencedBy.name": 1, + "__inferredReferencedBy.kind": 1, + "__inferredReferencedBy.namespace": 1, + "__inferredReferencedBy.group": 1, + "__inferredReferencedBy.version": 1 }, - "name" : "__inferredReferencedBy.name_1___inferredReferencedBy.kind_1___inferredReferencedBy.namespace_1___inferredReferencedBy.group_1___inferredReferencedBy.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferences.name" : 1.0 + "keys": { + "__inferredReferences.name": 1 }, - "name" : "__inferredReferences.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferences.name" : 1.0, - "__inferredReferences.kind" : 1.0, - "__inferredReferences.namespace" : 1.0, - "__inferredReferences.group" : 1.0, - "__inferredReferences.version" : 1.0 + "keys": { + "__inferredReferences.name": 1, + "__inferredReferences.kind": 1, + "__inferredReferences.namespace": 1, + "__inferredReferences.group": 1, + "__inferredReferences.version": 1 }, - "name" : "__inferredReferences.name_1___inferredReferences.kind_1___inferredReferences.namespace_1___inferredReferences.group_1___inferredReferences.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "updatedAt" : 1.0 + "keys": { + "updatedAt": 1 }, - "name" : "updatedAt_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "projects" : 1.0 + "keys": { + "projects": 1 }, - "name" : "projects_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.name" : 1.0 + "keys": { + "metadata.name": 1 }, - "name" : "metadata.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.labels" : 1.0 + "keys": { + "metadata.labels": 1 }, - "name" : "metadata.labels_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.accountId" : 1.0, - "metadata.runtime" : 1.0, - "metadata.cluster" : 1.0, - "metadata.namespace" : 1.0, - "metadata.group" : 1.0, - "metadata.version" : 1.0, - "metadata.kind" : 1.0, - "metadata.name" : 1.0, - "metadata.uid" : 1.0, - "metadata.revision" : 1.0 + "keys": { + "metadata.accountId": 1, + "metadata.runtime": 1, + "metadata.cluster": 1, + "metadata.namespace": 1, + "metadata.group": 1, + "metadata.version": 1, + "metadata.kind": 1, + "metadata.name": 1, + "metadata.uid": 1, + "metadata.revision": 1 }, - "name" : "metadata.accountId_1_metadata.runtime_1_metadata.cluster_1_metadata.namespace_1_metadata.group_1_metadata.version_1_metadata.kind_1_metadata.name_1_metadata.uid_1_metadata.revision_1", - "unique" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "unique": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.accountId" : 1, - "revision" : 1, - "metadata.labels.rollout-type" : 1, - "metadata.runtime" : 1, - "metadata.labels.step-index" : 1 - }, - "name" : "metadata.accountId_1_revision_1_metadata.labels.rollout-type_1_metadata.runtime_1_metadata.labels.step-index_1" + "keys": { + "metadata.accountId": 1, + "revision": 1, + "metadata.labels.rollout-type": 1, + "metadata.runtime": 1, + "metadata.labels.step-index": 1 + } }, { - "v" : 2.0, - "key" : { - "metadata.accountId" : 1, - "revision" : 1, - "metadata.labels.rollout-type" : 1, - "metadata.runtime" : 1, - "metadata.creationTimestamp" : -1 - }, - "name" : "metadata.accountId_1_revision_1_metadata.labels.rollout-type_1_metadata.runtime_1_metadata.creationTimestamp_-1" + "keys": { + "metadata.accountId": 1, + "revision": 1, + "metadata.labels.rollout-type": 1, + "metadata.runtime": 1, + "metadata.creationTimestamp": -1 + } }, { - "v" : 2.0, - "key" : { - "ownerReferences.uid" : 1, - "revision" : 1 + "keys": { + "ownerReferences.uid": 1, + "revision": 1 }, - "name" : "ownerReferences.uid_1_revision_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } } -] +] \ No newline at end of file diff --git a/indexes/read-models/images-binaries.json b/indexes/read-models/images-binaries.json index 338df48e6..2cad65377 100644 --- a/indexes/read-models/images-binaries.json +++ b/indexes/read-models/images-binaries.json @@ -1,95 +1,86 @@ [ { - "v" : 2.0, - "key" : { - "_id" : 1.0 + "keys": { + "accountId": 1, + "imageName": 1, + "repositoryName": 1 }, - "name" : "_id_" - }, - { - "v" : 2.0, - "key" : { - "accountId" : 1.0, - "imageName" : 1.0, - "repositoryName" : 1.0 - }, - "name" : "accountId_1_imageName_1_repositoryName_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "accountId" : 1.0, - "repositoryName" : 1.0, - "gitRepository" : 1.0 + "keys": { + "accountId": 1, + "repositoryName": 1, + "gitRepository": 1 }, - "name" : "accountId_1_repositoryName_1_gitRepository_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "accountId" : 1.0, - "repositoryName" : 1.0, - "branch" : 1.0 + "keys": { + "accountId": 1, + "repositoryName": 1, + "branch": 1 }, - "name" : "accountId_1_repositoryName_1_branch_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "runtime.name" : 1.0 + "keys": { + "runtime.name": 1 }, - "name" : "runtime.name_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "accountId" : 1.0, - "repoDigest" : 1.0 + "keys": { + "accountId": 1, + "repoDigest": 1 }, - "name" : "accountId_1_repoDigest_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "accountId" : 1.0, - "internalImageId" : 1.0 + "keys": { + "accountId": 1, + "internalImageId": 1 }, - "name" : "accountId_1_internalImageId_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "accountId" : 1, - "binaryId" : 1, - "lastUpdate" : -1, - "_id" : -1 - }, - "name" : "accountId_1_binaryId_1_lastUpdate_-1__id_-1" + "keys": { + "accountId": 1, + "binaryId": 1, + "lastUpdate": -1, + "_id": -1 + } }, { - "v" : 2.0, - "key" : { - "accountId" : 1, - "imageName" : 1 + "keys": { + "accountId": 1, + "imageName": 1 }, - "name" : "accountId_1_imageName_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } } -] +] \ No newline at end of file diff --git a/indexes/read-models/product-releases.json b/indexes/read-models/product-releases.json index cfc414c5c..318c6fa36 100644 --- a/indexes/read-models/product-releases.json +++ b/indexes/read-models/product-releases.json @@ -1,115 +1,108 @@ [ { - "v": 2, - "key": { - "_id": 1 - }, - "name": "_id_" - }, - { - "v": 2, - "key": { + "keys": { "status": 1 }, - "name": "status_1", - "collation": { - "locale": "en_US", - "caseLevel": false, - "caseFirst": "off", - "strength": 1, - "numericOrdering": false, - "alternate": "non-ignorable", - "maxVariable": "punct", - "normalization": false, - "backwards": false, - "version": "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v": 2, - "key": { + "keys": { "accountId": 1, "updatedAt": -1 }, - "name": "accountId_1_updatedAt_-1", - "collation": { - "locale": "en", - "caseLevel": false, - "caseFirst": "off", - "strength": 2, - "numericOrdering": false, - "alternate": "non-ignorable", - "maxVariable": "punct", - "normalization": false, - "backwards": false, - "version": "57.1" + "options": { + "collation": { + "locale": "en", + "caseLevel": false, + "caseFirst": "off", + "strength": 2, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v": 2, - "key": { + "keys": { "accountId": 1, "productName": 1, "triggerCommit.sha": 1 }, - "name": "accountId_1_productName_1_triggerCommit.sha_1", - "background": true, - "collation": { - "locale": "en_US", - "caseLevel": false, - "caseFirst": "off", - "strength": 1, - "numericOrdering": false, - "alternate": "non-ignorable", - "maxVariable": "punct", - "normalization": false, - "backwards": false, - "version": "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v": 2, - "key": { + "keys": { "accountId": 1, "productName": 1, "status": 1, "triggerEnvironment": 1, "triggerCommit.sha": 1 }, - "name": "accountId_1_productName_1_status_1_triggerEnvironment_1_triggerCommit.sha_1", - "background": true, - "collation": { - "locale": "en_US", - "caseLevel": false, - "caseFirst": "off", - "strength": 1, - "numericOrdering": false, - "alternate": "non-ignorable", - "maxVariable": "punct", - "normalization": false, - "backwards": false, - "version": "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v": 2, - "key": { + "keys": { "accountId": 1, "productName": 1 }, - "name": "accountId_1_productName_1", - "background": true, - "collation": { - "locale": "en_US", - "caseLevel": false, - "caseFirst": "off", - "strength": 1, - "numericOrdering": false, - "alternate": "non-ignorable", - "maxVariable": "punct", - "normalization": false, - "backwards": false, - "version": "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } } ] \ No newline at end of file diff --git a/indexes/read-models/releases.json b/indexes/read-models/releases.json index e48f117e5..e0faf171a 100644 --- a/indexes/read-models/releases.json +++ b/indexes/read-models/releases.json @@ -1,196 +1,177 @@ [ { - "v" : 2.0, - "key" : { - "_id" : 1.0 + "keys": { + "applicationMetadata.name": 1 }, - "name" : "_id_" + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.name" : 1.0 + "keys": { + "applicationMetadata.labels": 1 }, - "name" : "applicationMetadata.name_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.labels" : 1.0 + "keys": { + "application.prs.type": 1 }, - "name" : "applicationMetadata.labels_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "application.prs.type" : 1.0 + "keys": { + "application.prs.key": 1 }, - "name" : "application.prs.type_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "application.prs.key" : 1.0 + "keys": { + "application.prs.accountId": 1 }, - "name" : "application.prs.key_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "application.prs.accountId" : 1.0 + "keys": { + "application.issues.type": 1 }, - "name" : "application.prs.accountId_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "application.issues.type" : 1.0 + "keys": { + "application.issues.key": 1 }, - "name" : "application.issues.type_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "application.issues.key" : 1.0 + "keys": { + "application.issues.accountId": 1 }, - "name" : "application.issues.key_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "application.issues.accountId" : 1.0 + "keys": { + "applicationMetadata.accountId": 1, + "applicationMetadata.runtime": 1, + "applicationMetadata.name": 1, + "applicationMetadata.namespace": 1, + "application.issues.key": 1 }, - "name" : "application.issues.accountId_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.accountId" : 1.0, - "applicationMetadata.runtime" : 1.0, - "applicationMetadata.name" : 1.0, - "applicationMetadata.namespace" : 1.0, - "application.issues.key" : 1.0 + "keys": { + "applicationMetadata.accountId": 1, + "applicationMetadata.runtime": 1, + "applicationMetadata.name": 1, + "applicationMetadata.namespace": 1, + "application.prs.key": 1 }, - "name" : "applicationMetadata.accountId_1_applicationMetadata.runtime_1_applicationMetadata.name_1_applicationMetadata.namespace_1_application.issues.key_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.accountId" : 1.0, - "applicationMetadata.runtime" : 1.0, - "applicationMetadata.name" : 1.0, - "applicationMetadata.namespace" : 1.0, - "application.prs.key" : 1.0 + "keys": { + "applicationMetadata.accountId": 1, + "applicationMetadata.runtime": 1, + "applicationMetadata.name": 1, + "applicationMetadata.namespace": 1, + "application.committers.userName": 1 }, - "name" : "applicationMetadata.accountId_1_applicationMetadata.runtime_1_applicationMetadata.name_1_applicationMetadata.namespace_1_application.prs.key_1", - "background" : true + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.accountId" : 1.0, - "applicationMetadata.runtime" : 1.0, - "applicationMetadata.name" : 1.0, - "applicationMetadata.namespace" : 1.0, - "application.committers.userName" : 1.0 + "keys": { + "applicationMetadata.accountId": 1, + "applicationMetadata.runtime": 1, + "applicationMetadata.name": 1, + "applicationMetadata.namespace": 1, + "applicationMetadata.group": 1, + "applicationMetadata.version": 1, + "applicationMetadata.kind": 1, + "historyId": -1 }, - "name" : "applicationMetadata.accountId_1_applicationMetadata.runtime_1_applicationMetadata.name_1_applicationMetadata.namespace_1_application.committers.userName_1", - "background" : true - }, - { - "v" : 2.0, - "key" : { - "applicationMetadata.accountId" : 1.0, - "applicationMetadata.runtime" : 1.0, - "applicationMetadata.name" : 1.0, - "applicationMetadata.namespace" : 1.0, - "applicationMetadata.group" : 1.0, - "applicationMetadata.version" : 1.0, - "applicationMetadata.kind" : 1.0, - "historyId" : -1.0 - }, - "name" : "applicationMetadata.accountId_1_applicationMetadata.runtime_1_applicationMetadata.name_1_applicationMetadata.namespace_1_applicationMetadata.group_1_applicationMetadata.version_1_applicationMetadata.kind_1_historyId_-1", - "background" : true, - "unique" : true - }, - { - "v" : 2.0, - "key" : { - "applicationMetadata.accountId" : 1.0, - "applicationMetadata.runtime" : 1.0, - "applicationMetadata.name" : 1.0, - "applicationMetadata.namespace" : 1.0, - "applicationMetadata.group" : 1.0, - "applicationMetadata.version" : 1.0, - "reportedToJira" : 1.0, - "historyId" : 1.0, - "application.status.syncStartedAt" : 1.0 - }, - "name" : "applicationMetadata.accountId_1_applicationMetadata.runtime_1_applicationMetadata.name_1_applicationMetadata.namespace_1_applicationMetadata.group_1_applicationMetadata.version_1_reportedToJira_1_historyId_1_application.status.syncStartedAt_1", - "background" : true + "options": { + "background": true, + "unique": true + } }, { - "v" : 2.0, - "key" : { - "fromState.services.revision" : 1, - "fromState.services.name" : 1, - "applicationMetadata.accountId" : 1 + "keys": { + "applicationMetadata.accountId": 1, + "applicationMetadata.runtime": 1, + "applicationMetadata.name": 1, + "applicationMetadata.namespace": 1, + "applicationMetadata.group": 1, + "applicationMetadata.version": 1, + "reportedToJira": 1, + "historyId": 1, + "application.status.syncStartedAt": 1 }, - "name" : "fromState.services.revision_1_fromState.services.name_1_applicationMetadata.accountId_1" + "options": { + "background": true + } }, { - "v" : 2.0, - "key" : { - "syncOperationRevision" : 1, - "applicationMetadata.name" : 1, - "applicationMetadata.accountId" : 1, - "historyId" : -1 - }, - "name" : "syncOperationRevision_1_applicationMetadata.name_1_applicationMetadata.accountId_1_historyId_-1" + "keys": { + "fromState.services.revision": 1, + "fromState.services.name": 1, + "applicationMetadata.accountId": 1 + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.name" : 1, - "applicationMetadata.accountId" : 1, - "historyId" : -1 - }, - "name" : "applicationMetadata.name_1_applicationMetadata.accountId_1_historyId_-1" + "keys": { + "syncOperationRevision": 1, + "applicationMetadata.name": 1, + "applicationMetadata.accountId": 1, + "historyId": -1 + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.name" : 1, - "applicationMetadata.accountId" : 1, - "application.status.healthStatus" : 1 - }, - "name" : "applicationMetadata.name_1_applicationMetadata.accountId_1_application.status.healthStatus_1" + "keys": { + "applicationMetadata.name": 1, + "applicationMetadata.accountId": 1, + "historyId": -1 + } }, { - "v" : 2.0, - "key" : { - "applicationMetadata.name" : 1, - "applicationMetadata.accountId" : 1, - "current" : 1 - }, - "name" : "applicationMetadata.name_1_applicationMetadata.accountId_1_current_1" - }, - { - "v" : 2.0, - "key" : { - "application.status.revision" : 1, - "applicationMetadata.name" : 1, - "applicationMetadata.accountId" : 1 - }, - "name" : "application.status.revision_1_applicationMetadata.name_1_applicationMetadata.accountId_1" + "keys": { + "applicationMetadata.name": 1, + "applicationMetadata.accountId": 1, + "application.status.healthStatus": 1 + } + }, + { + "keys": { + "applicationMetadata.name": 1, + "applicationMetadata.accountId": 1, + "current": 1 + } + }, + { + "keys": { + "application.status.revision": 1, + "applicationMetadata.name": 1, + "applicationMetadata.accountId": 1 + } } -] +] \ No newline at end of file diff --git a/indexes/read-models/rollouts.json b/indexes/read-models/rollouts.json index 7d4519f14..873855b69 100644 --- a/indexes/read-models/rollouts.json +++ b/indexes/read-models/rollouts.json @@ -1,393 +1,386 @@ [ { - "v" : 2.0, - "key" : { - "_id" : 1.0 + "keys": { + "__passiveReferencedBy.name": 1 }, - "name" : "_id_" - }, - { - "v" : 2.0, - "key" : { - "__passiveReferencedBy.name" : 1.0 - }, - "name" : "__passiveReferencedBy.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__passiveReferencedBy.name" : 1.0, - "__passiveReferencedBy.kind" : 1.0, - "__passiveReferencedBy.namespace" : 1.0, - "__passiveReferencedBy.group" : 1.0, - "__passiveReferencedBy.version" : 1.0 + "keys": { + "__passiveReferencedBy.name": 1, + "__passiveReferencedBy.kind": 1, + "__passiveReferencedBy.namespace": 1, + "__passiveReferencedBy.group": 1, + "__passiveReferencedBy.version": 1 }, - "name" : "__passiveReferencedBy.name_1___passiveReferencedBy.kind_1___passiveReferencedBy.namespace_1___passiveReferencedBy.group_1___passiveReferencedBy.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__passiveReferences.name" : 1.0 + "keys": { + "__passiveReferences.name": 1 }, - "name" : "__passiveReferences.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__passiveReferences.name" : 1.0, - "__passiveReferences.kind" : 1.0, - "__passiveReferences.namespace" : 1.0, - "__passiveReferences.group" : 1.0, - "__passiveReferences.version" : 1.0 + "keys": { + "__passiveReferences.name": 1, + "__passiveReferences.kind": 1, + "__passiveReferences.namespace": 1, + "__passiveReferences.group": 1, + "__passiveReferences.version": 1 }, - "name" : "__passiveReferences.name_1___passiveReferences.kind_1___passiveReferences.namespace_1___passiveReferences.group_1___passiveReferences.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferencedBy.name" : 1.0 + "keys": { + "__inferredReferencedBy.name": 1 }, - "name" : "__inferredReferencedBy.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferencedBy.name" : 1.0, - "__inferredReferencedBy.kind" : 1.0, - "__inferredReferencedBy.namespace" : 1.0, - "__inferredReferencedBy.group" : 1.0, - "__inferredReferencedBy.version" : 1.0 + "keys": { + "__inferredReferencedBy.name": 1, + "__inferredReferencedBy.kind": 1, + "__inferredReferencedBy.namespace": 1, + "__inferredReferencedBy.group": 1, + "__inferredReferencedBy.version": 1 }, - "name" : "__inferredReferencedBy.name_1___inferredReferencedBy.kind_1___inferredReferencedBy.namespace_1___inferredReferencedBy.group_1___inferredReferencedBy.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferences.name" : 1.0 + "keys": { + "__inferredReferences.name": 1 }, - "name" : "__inferredReferences.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "__inferredReferences.name" : 1.0, - "__inferredReferences.kind" : 1.0, - "__inferredReferences.namespace" : 1.0, - "__inferredReferences.group" : 1.0, - "__inferredReferences.version" : 1.0 + "keys": { + "__inferredReferences.name": 1, + "__inferredReferences.kind": 1, + "__inferredReferences.namespace": 1, + "__inferredReferences.group": 1, + "__inferredReferences.version": 1 }, - "name" : "__inferredReferences.name_1___inferredReferences.kind_1___inferredReferences.namespace_1___inferredReferences.group_1___inferredReferences.version_1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "updatedAt" : 1.0 + "keys": { + "updatedAt": 1 }, - "name" : "updatedAt_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "projects" : 1.0 + "keys": { + "projects": 1 }, - "name" : "projects_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.name" : 1.0 + "keys": { + "metadata.name": 1 }, - "name" : "metadata.name_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.labels" : 1.0 + "keys": { + "metadata.labels": 1 }, - "name" : "metadata.labels_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "source.syncStartedAt" : 1.0 + "keys": { + "source.syncStartedAt": 1 }, - "name" : "source.syncStartedAt_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "source.gitSource" : 1.0 + "keys": { + "source.gitSource": 1 }, - "name" : "source.gitSource_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.accountId" : 1.0, - "metadata.runtime" : 1.0, - "metadata.cluster" : 1.0, - "metadata.namespace" : 1.0, - "metadata.group" : 1.0, - "metadata.version" : 1.0, - "metadata.kind" : 1.0, - "metadata.name" : 1.0, - "metadata.revision" : 1.0, - "metadata.uid" : 1.0, - "metadata.labels.app\\u002ekubernetes\\u002eio/instance" : 1.0 + "keys": { + "metadata.accountId": 1, + "metadata.runtime": 1, + "metadata.cluster": 1, + "metadata.namespace": 1, + "metadata.group": 1, + "metadata.version": 1, + "metadata.kind": 1, + "metadata.name": 1, + "metadata.revision": 1, + "metadata.uid": 1, + "metadata.labels.app\\u002ekubernetes\\u002eio/instance": 1 }, - "name" : "metadata.accountId_1_metadata.runtime_1_metadata.cluster_1_metadata.namespace_1_metadata.group_1_metadata.version_1_metadata.kind_1_metadata.name_1_metadata.revision_1_metadata.uid_1_metadata.labels.app\\u002ekubernetes\\u002eio/instance_1", - "unique" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "unique": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "source.gitSourceUID" : 1.0 + "keys": { + "source.gitSourceUID": 1 }, - "name" : "source.gitSourceUID_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "source.gitSourceNamespace" : 1.0 + "keys": { + "source.gitSourceNamespace": 1 }, - "name" : "source.gitSourceNamespace_1", - "background" : true, - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "background": true, + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } }, { - "v" : 2.0, - "key" : { - "metadata.appName" : 1, - "metadata.accountId" : 1, - "metadata.runtime" : 1, - "_id" : -1 + "keys": { + "metadata.appName": 1, + "metadata.accountId": 1, + "metadata.runtime": 1, + "_id": -1 }, - "name" : "metadata.appName_1_metadata.accountId_1_metadata.runtime_1__id_-1", - "collation" : { - "locale" : "en_US", - "caseLevel" : false, - "caseFirst" : "off", - "strength" : 1.0, - "numericOrdering" : false, - "alternate" : "non-ignorable", - "maxVariable" : "punct", - "normalization" : false, - "backwards" : false, - "version" : "57.1" + "options": { + "collation": { + "locale": "en_US", + "caseLevel": false, + "caseFirst": "off", + "strength": 1, + "numericOrdering": false, + "alternate": "non-ignorable", + "maxVariable": "punct", + "normalization": false, + "backwards": false, + "version": "57.1" + } } } -] +] \ No newline at end of file From 1c7bbdaa3d2edb1df6b16f276053050b72184c28 Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 12:24:36 +0400 Subject: [PATCH 3/9] fix: typo --- codefresh/README.md | 2 +- codefresh/README.md.gotmpl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index 429c29c51..257f39e5c 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -1477,7 +1477,7 @@ indexes > > Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/index-creation/#index-build-impact-on-database-performance)) > -> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradationю ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) +> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradation ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) #### Self-hosted MongoDB diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index 9396f2701..f431deb19 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -1484,7 +1484,7 @@ indexes > > Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/index-creation/#index-build-impact-on-database-performance)) > -> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradationю ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) +> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradation ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) #### Self-hosted MongoDB From 9bef2314005bad5a4fa85b58bcede32b4b2db0ab Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 12:26:39 +0400 Subject: [PATCH 4/9] fix: typos --- codefresh/README.md | 6 +++--- codefresh/README.md.gotmpl | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index 257f39e5c..d8103cee4 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -1504,17 +1504,17 @@ db.getSiblingDB('').getCollection('').getIndexes() - To create an index, use the `createIndex()` method: ```js -db.getSiblingDB('').getCollection('').createIndex(, ) +db.getSiblingDB('').getCollection('').createIndex(, ) ``` After executing the `createIndex()` command, you should see a result indicating that the index was created successfully. **Index removal** -- To remove an index, use the `dropIndex()` method with either the `` or a ``: +- To remove an index, use the `dropIndex()` method with either the `` or a ``: ```js -db.getSiblingDB('').getCollection('').dropIndex('' | ) +db.getSiblingDB('').getCollection('').dropIndex('' | ) ``` #### Atlas Database diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index f431deb19..f009588f3 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -1512,17 +1512,17 @@ db.getSiblingDB('').getCollection('').getIndexes() - To create an index, use the `createIndex()` method: ```js -db.getSiblingDB('').getCollection('').createIndex(, ) +db.getSiblingDB('').getCollection('').createIndex(, ) ``` After executing the `createIndex()` command, you should see a result indicating that the index was created successfully. **Index removal** -- To remove an index, use the `dropIndex()` method with either the `` or a ``: +- To remove an index, use the `dropIndex()` method with either the `` or a ``: ```js -db.getSiblingDB('').getCollection('').dropIndex('' | ) +db.getSiblingDB('').getCollection('').dropIndex('' | ) ``` #### Atlas Database From 85d003aa0e7f5bb8d483d9a8851d4d77bd910cc5 Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 13:35:29 +0400 Subject: [PATCH 5/9] fix: README.md --- codefresh/README.md | 4 ++-- codefresh/README.md.gotmpl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index d8103cee4..d2b10619f 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -1475,9 +1475,9 @@ indexes > ⚠️ **Note! Any changes to indexes should be performed during a defined maintenance window or during periods of lowest traffic to MongoDB.** > -> Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/index-creation/#index-build-impact-on-database-performance)) +> Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/manual/core/index-creation/#index-build-impact-on-database-performance)) > -> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradation ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) +> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradation ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/manual/core/query-plans/#plan-cache-flushes)) #### Self-hosted MongoDB diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index f009588f3..2809aed0c 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -1482,9 +1482,9 @@ indexes > ⚠️ **Note! Any changes to indexes should be performed during a defined maintenance window or during periods of lowest traffic to MongoDB.** > -> Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/index-creation/#index-build-impact-on-database-performance)) +> Building indexes during time periods where the target collection is under heavy write load can result in reduced write performance and longer index builds. ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/manual/core/index-creation/#index-build-impact-on-database-performance)) > -> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradation ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/core/query-plans/#plan-cache-flushes)) +> Even minor changes to indexes (e.g., index removal) can cause brief but noticeable performance degradation ([*Source: MongoDB official documentation*](https://www.mongodb.com/docs/manual/core/query-plans/#plan-cache-flushes)) #### Self-hosted MongoDB From e7f35385588aaacb8fa8af5c2711bc99c9ddc2d3 Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 14:32:20 +0400 Subject: [PATCH 6/9] fix: README.md --- codefresh/README.md | 3 ++- codefresh/README.md.gotmpl | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index d2b10619f..914499431 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -1471,7 +1471,8 @@ indexes 1. Identify the differences between the indexes in your MongoDB instance and the required index definitions. 2. Create any missing indexes one by one. (It's important not to create them in bulk.) -3. Then remove any unnecessary indexes. +3. Perform the upgrade of Codefresh On-Prem installation. +4. Then remove any unnecessary indexes. > ⚠️ **Note! Any changes to indexes should be performed during a defined maintenance window or during periods of lowest traffic to MongoDB.** > diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index 2809aed0c..76b1cfa6b 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -1478,7 +1478,8 @@ indexes 1. Identify the differences between the indexes in your MongoDB instance and the required index definitions. 2. Create any missing indexes one by one. (It's important not to create them in bulk.) -3. Then remove any unnecessary indexes. +3. Perform the upgrade of Codefresh On-Prem installation. +4. Then remove any unnecessary indexes. > ⚠️ **Note! Any changes to indexes should be performed during a defined maintenance window or during periods of lowest traffic to MongoDB.** > From 1881fee6376f6a669a1be8511504d9466f2d6b52 Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 20:45:05 +0400 Subject: [PATCH 7/9] fix: indexes --- indexes/read-models/analysisruns.json | 8 ----- indexes/read-models/images-binaries.json | 18 ----------- indexes/read-models/product-releases.json | 3 -- indexes/read-models/releases.json | 37 ----------------------- indexes/read-models/rollouts.json | 12 -------- 5 files changed, 78 deletions(-) diff --git a/indexes/read-models/analysisruns.json b/indexes/read-models/analysisruns.json index c20d7050f..7c8071247 100644 --- a/indexes/read-models/analysisruns.json +++ b/indexes/read-models/analysisruns.json @@ -4,7 +4,6 @@ "__passiveReferencedBy.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -47,7 +46,6 @@ "__passiveReferences.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -90,7 +88,6 @@ "__inferredReferencedBy.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -133,7 +130,6 @@ "__inferredReferences.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -176,7 +172,6 @@ "updatedAt": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -196,7 +191,6 @@ "projects": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -216,7 +210,6 @@ "metadata.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -236,7 +229,6 @@ "metadata.labels": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, diff --git a/indexes/read-models/images-binaries.json b/indexes/read-models/images-binaries.json index 2cad65377..c8efda894 100644 --- a/indexes/read-models/images-binaries.json +++ b/indexes/read-models/images-binaries.json @@ -4,9 +4,6 @@ "accountId": 1, "imageName": 1, "repositoryName": 1 - }, - "options": { - "background": true } }, { @@ -14,9 +11,6 @@ "accountId": 1, "repositoryName": 1, "gitRepository": 1 - }, - "options": { - "background": true } }, { @@ -24,35 +18,23 @@ "accountId": 1, "repositoryName": 1, "branch": 1 - }, - "options": { - "background": true } }, { "keys": { "runtime.name": 1 - }, - "options": { - "background": true } }, { "keys": { "accountId": 1, "repoDigest": 1 - }, - "options": { - "background": true } }, { "keys": { "accountId": 1, "internalImageId": 1 - }, - "options": { - "background": true } }, { diff --git a/indexes/read-models/product-releases.json b/indexes/read-models/product-releases.json index 318c6fa36..0588ba775 100644 --- a/indexes/read-models/product-releases.json +++ b/indexes/read-models/product-releases.json @@ -45,7 +45,6 @@ "triggerCommit.sha": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -69,7 +68,6 @@ "triggerCommit.sha": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -90,7 +88,6 @@ "productName": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, diff --git a/indexes/read-models/releases.json b/indexes/read-models/releases.json index e0faf171a..731a06bb0 100644 --- a/indexes/read-models/releases.json +++ b/indexes/read-models/releases.json @@ -2,65 +2,41 @@ { "keys": { "applicationMetadata.name": 1 - }, - "options": { - "background": true } }, { "keys": { "applicationMetadata.labels": 1 - }, - "options": { - "background": true } }, { "keys": { "application.prs.type": 1 - }, - "options": { - "background": true } }, { "keys": { "application.prs.key": 1 - }, - "options": { - "background": true } }, { "keys": { "application.prs.accountId": 1 - }, - "options": { - "background": true } }, { "keys": { "application.issues.type": 1 - }, - "options": { - "background": true } }, { "keys": { "application.issues.key": 1 - }, - "options": { - "background": true } }, { "keys": { "application.issues.accountId": 1 - }, - "options": { - "background": true } }, { @@ -70,9 +46,6 @@ "applicationMetadata.name": 1, "applicationMetadata.namespace": 1, "application.issues.key": 1 - }, - "options": { - "background": true } }, { @@ -82,9 +55,6 @@ "applicationMetadata.name": 1, "applicationMetadata.namespace": 1, "application.prs.key": 1 - }, - "options": { - "background": true } }, { @@ -94,9 +64,6 @@ "applicationMetadata.name": 1, "applicationMetadata.namespace": 1, "application.committers.userName": 1 - }, - "options": { - "background": true } }, { @@ -111,7 +78,6 @@ "historyId": -1 }, "options": { - "background": true, "unique": true } }, @@ -126,9 +92,6 @@ "reportedToJira": 1, "historyId": 1, "application.status.syncStartedAt": 1 - }, - "options": { - "background": true } }, { diff --git a/indexes/read-models/rollouts.json b/indexes/read-models/rollouts.json index 873855b69..0bb53806c 100644 --- a/indexes/read-models/rollouts.json +++ b/indexes/read-models/rollouts.json @@ -4,7 +4,6 @@ "__passiveReferencedBy.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -47,7 +46,6 @@ "__passiveReferences.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -90,7 +88,6 @@ "__inferredReferencedBy.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -133,7 +130,6 @@ "__inferredReferences.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -176,7 +172,6 @@ "updatedAt": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -196,7 +191,6 @@ "projects": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -216,7 +210,6 @@ "metadata.name": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -236,7 +229,6 @@ "metadata.labels": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -256,7 +248,6 @@ "source.syncStartedAt": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -276,7 +267,6 @@ "source.gitSource": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -326,7 +316,6 @@ "source.gitSourceUID": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, @@ -346,7 +335,6 @@ "source.gitSourceNamespace": 1 }, "options": { - "background": true, "collation": { "locale": "en_US", "caseLevel": false, From d55c3e2d6637d1a72b2242ff53e102e14e885b3d Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 20:45:57 +0400 Subject: [PATCH 8/9] fix: README.md --- codefresh/README.md | 2 +- codefresh/README.md.gotmpl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index 914499431..c6cae9ce0 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -1522,7 +1522,7 @@ db.getSiblingDB('').getCollection('').dropIndex(' ⚠️ **Important!** In Atlas in production environment the indexes must be created in *a rolling fashion* mode, i.e., with `Build index via rolling process` checkbox enabled. +> ⚠️ **Important!** In Atlas, for production environments, it is recommended to use rolling index builds by enabling the "Build index via rolling process" checkbox. ([*MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/tutorial/build-indexes-on-replica-sets/)) ## Upgrading diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index 76b1cfa6b..635b3f7cc 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -1530,7 +1530,7 @@ db.getSiblingDB('').getCollection('').dropIndex(' ⚠️ **Important!** In Atlas in production environment the indexes must be created in *a rolling fashion* mode, i.e., with `Build index via rolling process` checkbox enabled. +> ⚠️ **Important!** In Atlas, for production environments, it is recommended to use rolling index builds by enabling the "Build index via rolling process" checkbox. ([*MongoDB official documentation*](https://www.mongodb.com/docs/v6.0/tutorial/build-indexes-on-replica-sets/)) ## Upgrading From df841810abe187aed6abf432f0a0607e0e4d220a Mon Sep 17 00:00:00 2001 From: Vasil Sudakou Date: Wed, 4 Jun 2025 20:48:55 +0400 Subject: [PATCH 9/9] fix: README.md --- codefresh/README.md | 4 ++-- codefresh/README.md.gotmpl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/codefresh/README.md b/codefresh/README.md index c6cae9ce0..ae728b2df 100644 --- a/codefresh/README.md +++ b/codefresh/README.md @@ -1512,10 +1512,10 @@ After executing the `createIndex()` command, you should see a result indicating **Index removal** -- To remove an index, use the `dropIndex()` method with either the `` or a ``: +- To remove an index, use the `dropIndex()` method with ``: ```js -db.getSiblingDB('').getCollection('').dropIndex('' | ) +db.getSiblingDB('').getCollection('').dropIndex('') ``` #### Atlas Database diff --git a/codefresh/README.md.gotmpl b/codefresh/README.md.gotmpl index 635b3f7cc..b4e6015b5 100644 --- a/codefresh/README.md.gotmpl +++ b/codefresh/README.md.gotmpl @@ -1520,10 +1520,10 @@ After executing the `createIndex()` command, you should see a result indicating **Index removal** -- To remove an index, use the `dropIndex()` method with either the `` or a ``: +- To remove an index, use the `dropIndex()` method with ``: ```js -db.getSiblingDB('').getCollection('').dropIndex('' | ) +db.getSiblingDB('').getCollection('').dropIndex('') ``` #### Atlas Database