Skip to content
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
15cbb49
CE-337 Creation and updation of 'develop' branch with latest codebase…
ayesharustgi-delphix May 25, 2023
b5142d4
CE-235 Enable CodeQL on Couchbase Repository (#45)
ayesharustgi-delphix May 25, 2023
2229226
CE-341 Fix codeQL (#46)
ayesharustgi-delphix May 25, 2023
83f6ca3
CE-340 Code changes to mask password in "ps" using expect utility (#47)
ayesharustgi-delphix May 26, 2023
aa6f426
CE-352 Remove docs from development branches (#51)
ayesharustgi-delphix May 26, 2023
cdb90cf
CE-506 Code changes to handle prompt changes in cluster-init (#52)
ayesharustgi-delphix Jul 28, 2023
77ab707
CE-517 Couchbase Plugin : Multinode VDB creation fails with password …
ayesharustgi-delphix Aug 3, 2023
ccf34b4
CE-477 Couchbase Version 7.1.3 Support (#54)
ayesharustgi-delphix Sep 20, 2023
56dba3e
CE-554 Implement precommit checks in couchbase repo (#56)
ayesharustgi-delphix Oct 5, 2023
a5aceac
CE-325 Record ZFS Storage Calculation Command (Couchbase) (#58)
satishk1536 Oct 11, 2023
f29b0fd
CE-572 Retry bucket creation if failed (#59)
satishk1536 Oct 26, 2023
7ae6d65
CE-540 bucket size control implementation (#57)
ayesharustgi-delphix Oct 27, 2023
d954362
CE-541 Ingestion from multiple full backups (#60)
ayesharustgi-delphix Oct 27, 2023
38047a3
CE-575 Fix Python error when raising an Exception with traceback. (#62)
satishk1536 Oct 31, 2023
280fbb9
CE-577 Couchbase 1.30 >> Ingestion from multiple full backups >> Virt…
satishk1536 Nov 1, 2023
b25c79c
CE-578 Couchbase 1.30 >> bucket size control implementation >> Bucket…
satishk1536 Nov 3, 2023
f36c9d9
CE-574 Upgrade Logic (#61)
ayesharustgi-delphix Nov 3, 2023
0349fd3
CE-579 Couchbase 1.30 >> Upgrade Logic >> KeyError while upgrading pl…
satishk1536 Nov 3, 2023
012b26a
CE-633 Couchbase Plugin: Dsource sizing not working due to filesystem…
ayesharustgi-delphix Feb 13, 2024
5d70c9c
DLPXECO-12886 RCE fix schema change on couchbase v1.3.1 (#77)
satishk1536 Nov 17, 2025
7682177
DLPXECO-12969 Virtual Source Configure fails due to invalid pretty_na…
satishk1536 Nov 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
push:
branches: [ "master", "develop" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "master", "develop" ]

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'python' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Use only 'java' to analyze code written in Java, Kotlin or both
# Use only 'javascript' to analyze code written in JavaScript, TypeScript or both
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support

steps:
- name: Checkout repository
uses: actions/checkout@v3

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.

# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
queries: security-extended,security-and-quality


# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.

# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{matrix.language}}"
1 change: 1 addition & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
theme: jekyll-theme-minimal
1 change: 0 additions & 1 deletion docs/docs/.pages
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
arrange:
- Overview: 'index.md'
- [Installation]: 'Installation.md'
- PluginDevelopment : 'PluginDevelopment.md'
- Discovery: 'Discovery.md'
- Linking: 'Linking.md'
- Provisioning: 'Provisioning.md'
68 changes: 34 additions & 34 deletions docs/docs/Discovery.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,27 @@ Environment discovery is a process that enables the Couchbase Plugin to determin
. Whenever there is any change (installing a new database home) to an already set up environment in the Delphix application, we need to perform an environment refresh.


Prerequisites
=============
## Prerequisites

- A source environment must be added to the Delphix Engine.
- A stagine or target environment must be added to the Delphix Engine.
- Installation of the Couchbase Plugin is required before the Discovery.
- Environment variable `$COUCHBASE_PATH ` should set on staging/target host, which contains the binary path of Couchbase.


Refreshing an Environment
=========================
Environment refresh will update the metadata associated with that environment and send a new Plugin to the host.
### Configuring a staging environment

1. Login to the **Delphix Management** application.
2. Click **Manage**.
3. Select **Environments**.
4. In the Environments panel, click the name of the environment you want to refresh.
5. Select the **Refresh** icon.
6. In the Refresh confirmation dialog select **Refresh**.
Environments contain repositories, and each environment may have any number of repositories associated with it.
Couchbase is limiting number of Couchbase binaries installed on server to one, and in that case each environment will contain
a single repository with current Couchbase installation.

Repository contains database instances and in each repository any number of source cluster can be configured.
Please keep in mind that only one dSource can be enabled simiultaniusly on a given staging server.

![Screenshot](/couchbase-plugin/image/image9.png)
For next step go to XDCR Setup or Backup Setup sections below

### XDCR Setup

XDCR Setup
===================
Environments exist to contain `repositories`, and each environment may have any number of repositories associated with it.
`Repository` contains database instances and in each repository any number of `SourceConfig` objects, which represent known database instances. Source config is not generated automatically in
Couchbase plugin. Therefore, we need to add `SourceConfig` object through which can create a dSource.
By default Couchbase cluster are not discovered and has to be added manually using the following steps:

1. Login to the **Delphix Management** application.
2. Click **Manage**.
Expand All @@ -40,40 +34,46 @@ Environments exist to contain `repositories`, and each environment may have any
5. Click on **+** icon (Shown in next image).


![Screenshot](/couchbase-plugin/image/image10.png)
![Screenshot](./image/add_repository.png)


6. Add required details in the `Add database` section.
- Enter port number in **Source Couchbase port** section.
- Enter source host address in section **Source Host**.
- Enter source host address in section **Source Host** ( this will be used as Source cluster for XDCR replication )
- Enter unique name for the staging database in **identify field** section.
- Enter Couchbase data path of staging host in **DB data path** section.


![Screenshot](/couchbase-plugin/image/image11.png)

![Screenshot](./image/add_sourceconfig_xdcr.png)

CBBACKUPMGR Setup
=================
### Backup Setup

The steps to add source config remain the same as we saw in XDCR setup. In this approach, we don't connect to source environment as this is zero-touch production approach.
We can enter any random or dummy value in this field of source host name when we choose CBBACKUPMGR option for data ingestion.
By default Couchbase clusters are not discovered and has to be added manually using the following steps:

1. Login to the **Delphix Management** application.
2. Click **Manage**.
3. Select **Environments**.
4. Select the repository.
5. Click on **+** icon (Shown in next image).
![Screenshot](/couchbase-plugin/image/image10.png)
5. Click on **+** icon (Shown in next image).

6. In the **Add Database** section enter the following information:
- `Source Couchbase port`: This is the port number to be used by Couchbase services.
- `Source Host`: Leave this field as blank.
- `identity field`: Provide unique name for staging database.
- `DB data path`: Leave this field as blank.
![Screenshot](./image/add_repository.png)

6. Add required details in the `Add database` section.
- Enter port number in **Source Couchbase port** section ( this can be any dummy number - this field is not used for backup based ingestion )
- Enter source host address in section **Source Host** ( this can be any dummy number - this field is not used for backup based ingestion )
- Enter unique name for the staging database in **identify field** section.
- Enter Couchbase data path of staging host in **DB data path** section.

![Screenshot](/couchbase-plugin/image/image11.png)

## Refreshing an Environment
Environment refresh will update the metadata associated with that environment and send a new Plugin to the host.

1. Login to the **Delphix Management** application.
2. Click **Manage**.
3. Select **Environments**.
4. In the Environments panel, click the name of the environment you want to refresh.
5. Select the **Refresh** icon.
6. In the Refresh confirmation dialog select **Refresh**.

![Screenshot](./image/add_sourceconfig_backup.png)

12 changes: 6 additions & 6 deletions docs/docs/Installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,22 +14,22 @@ Method1: Using GUI
------------------

1. Click on **Manage** (present on top-left of this page) and then **Plugins**.
![Screenshot](/couchbase-plugin/image/image2.png)
![Screenshot](./image/image2.png)

2. Click on **+** icon.
![Screenshot](/couchbase-plugin/image/image3.png)
![Screenshot](./image/image3.png)

3. Click on **Upload** a plugin.
![Screenshot](/couchbase-plugin/image/image4.png)
![Screenshot](./image/image4.png)

4. Select the `build(artifacts.json)` from your device.
![Screenshot](/couchbase-plugin/image/image5.png)
![Screenshot](./image/image5.png)

5. Click on **close** button.
![Screenshot](/couchbase-plugin/image/image6.png)
![Screenshot](./image/image6.png)

6. See the plugin version in **Plugins** section.
![Screenshot](/couchbase-plugin/image/image7.png)
![Screenshot](./image/image7.png)


Method2: Using dvp command
Expand Down
Loading