6 Commits
Author SHA1 Message Date
Andrew Khoma 9bbc8c8e64 Merged PR 1812893: small enhancement in Rust dev experience
### Does this PR have any customer impact?
yes
### Type (Feature, Refactoring, Bugfix, DevOps, Testing, Perf, etc)
bugfix
### Does it involve schema level changes? (Table, Column, Index, UDF, etc level changes)
no
### Are you introducing any new config? If yes, do you have tests with and without them being set?
no
### ChangeLog (Refer [Template](../oss/CHANGELOG.md))

### Description
- enable building both locally & in docker
- fix the hardcoded paths

----
#### AI description  (iteration 1)
#### PR Classification
Enhancement: Updates to build scripts and Docker configuration to enable building the gateway both locally and in Docker.

#### PR Summary
This pull request revises several scripts and configuration files to integrate local and containerized build processes for the gateway.
- **`/oss/scripts/emulator_entrypoint.sh`**: Refactors the configuration file handling by defining a variable and updating file permissions and copy paths.
- **`/oss/scripts/build_and_start_gateway.sh`**: Introduces a local build process using Cargo (clean, build, and binary copy) and adjusts the binary execution path.
- **`/oss/.github/containers/Build-Ubuntu/Dockerfile_gateway`**: Updates copy paths to place the gateway binary and configuration into the new subfolder.
- **`/oss/rust-toolchain.toml` & `/oss/pg_documentdb_gw/.gitignore`**: Adds the Cargo component to the toolchain and ensures the built binary is ignored.
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->

Signed-off-by: Shuai Tian <shuaitian@microsoft.com>
2025-09-26 10:26:08 -07:00
Vinod Sridharan daf7e833e2 Merged PR 1811468: [OSS] Add documentdb Gateway Host extension
### Does this PR have any customer impact?

### Type (Feature, Refactoring, Bugfix, DevOps, Testing, Perf, etc)

### Does it involve schema level changes? (Table, Column, Index, UDF, etc level changes)

### Are you introducing any new config? If yes, do you have tests with and without them being set?

### ChangeLog (Refer [Template](../oss/CHANGELOG.md))

### Description

- Add a gateway host extension that starts up and maintains the documentdb_gw as a postgres background worker.
- Fix up start_oss_server.sh to support also launching the documentdb_gw as a background worker
- Fix up start_oss_server.sh to support using documentdb_extended_rum as a binary replacement for rum
- Fix up build_and_install_with_pgrx to support packaging a pgrx extension as well as ensuring pgrx is installed correctly.
- Add sanity test to validate the gateway host.

----
#### AI description  (iteration 23)
#### PR Classification
New feature implementation.

#### PR Summary
This PR adds support for a DocumentDB Gateway Host extension that runs as a PostgreSQL background worker, enhancing the OSS extension capabilities. Key changes include:
- **`/.pipelines/templates/oss_documentdb_build.yml`**: Added conditional build jobs for OSS Gateway Host and OSS Gateway with new parameters.
- **`/.pipelines/templates/oss_documentdb_tests.yml`**: Introduced a new testing pipeline to validate the DocumentDB extension with the Gateway Host.
- **`/oss/scripts/build_and_install_with_pgrx.sh`**: Updated cargo-pgrx installation logic with enhanced options and help support.
- **`/oss/scripts/start_oss_server.sh`**: Enhanced the startup script to configure gateway worker mode and extended rum options.
- **File reorganization**: Moved the `pg_documentdb_gw_host` source and control files from `/gateway` to `/oss` and updated the changelog accordingly.
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->

Signed-off-by: Shuai Tian <shuaitian@microsoft.com>
2025-09-24 00:54:14 -07:00
Andrew Khoma 9343e56672 Merged PR 1808570: provide the Rust dev experience to the oss repo
### Does this PR have any customer impact?
yes
### Type (Feature, Refactoring, Bugfix, DevOps, Testing, Perf, etc)
feature
### Does it involve schema level changes? (Table, Column, Index, UDF, etc level changes)
no
### Are you introducing any new config? If yes, do you have tests with and without them being set?
no
### ChangeLog (Refer [Template](../oss/CHANGELOG.md))
Provide Rust dev environment in devcontainer
### Description
- install toolchain from rustup
- ensure we run the proper profile in dockerfile
- make sure tests are working

----
#### AI description  (iteration 1)
#### PR Classification
This pull request introduces a new feature to enhance the Rust development environment in the OSS repository.

#### PR Summary
The changes streamline the Rust dev experience by updating the build infrastructure, adding Rust-specific tools, and fine-tuning test configurations. Key updates include:
- **`Dockerfile_gateway`**: Adjusts the Docker workflow by switching to a non-root user, installing Rust via a new `install_rustup.sh` script, and building with the custom `release-with-symbols` profile.
- **`devcontainer.json`**: Incorporates the Rust analyzer extension and detailed Rust settings for improved performance, code formatting, and project linking.
- **`Cargo.toml`**: Introduces a new release profile (`release-with-symbols`) with tailored debug and optimization settings.
- **Test and common modules**: Updates test assertions and runtime configuration to correctly handle error messages and dynamically set the Postgres system user.
- **New files and minor updates**: Adds `install_rustup.sh` and `rust-toolchain.toml` for robust Rust toolchain management, and updates `.gitignore` by removing `.vscode/`.
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->

Signed-off-by: Shuai Tian <shuaitian@microsoft.com>
2025-09-24 00:54:14 -07:00
Murat Tuncer 6b6a10e03e Add new lib dependencies and fix build breaks 2024-08-26 13:12:13 +03:00
Aditya Kotalwar 0135e97ee5 Merged PR 1388730: Enable billing for multiple accounts for 'SOP 009: Enable or Disable billing for an account or subscription'
### Does this PR have any customer impact?
No
### Type (Feature, Refactoring, Bugfix, DevOps, Testing, Perf, etc)
TSG
### Does it involve schema level changes? (Table, Column, Index, UDF, etc level changes)

### Are you introducing any new config? If yes, do you have tests with and without them being set?

### Release Note (Refer [Template](../docs/release_notes/pgmongo_template.md))

### Description

This change introduces a section in the SOP that includes a script enabling simultaneous updates across multiple accounts under the same subscription.
2024-08-16 18:24:51 +03:00
Vinod SridharanandVinod Sridharan 4c6b6d1fde [Infra] Add devcontainer for build time setup to HelioDB (#4)
* Add devContainer for build time setup to HelioDB
This allows for the development flow to simply be:

Developers open the repository in VsCode
Reopen in DevContainer
make/make install
make check
To run an adhoc server, developers can run in the dev-container

./scripts/start_helio_server.sh
---------

Co-authored-by: Vinod Sridharan <visridha@microsoft.com>
2024-01-15 10:18:24 -08:00