Commit Graph
149 Commits
Author SHA1 Message Date
4078838f56 feat(mongo): Add MongoDB connection support for Boundary CLI PORT (#6069)
* feat(mongo): add mongo for boundary cli

* Fix: remove changes added by mistake during testing

* feat(enos): install MongoDB client (mongosh) in e2e Docker test runtime

* Remove explicit Boundary DB/server startup from target_tcp_connect_mongo_test.go

* Add a full stop and trigger CI

* feat: add mongosh support to boundary connect mongo

* feat: add mongosh support to boundary connect mongo

* feat: add auth-source flag for MongoDB connect command

- Add -auth-source flag with default value 'admin' for root users
- Add BOUNDARY_CONNECT_MONGO_AUTH_SOURCE environment variable support
- Update documentation with new flag and correct mongosh default
- Improve MongoDB test with explicit auth-source parameter
- Fix Docker configuration formatting for better readability

This ensures MongoDB root users authenticate against the admin database
by default while allowing flexibility for custom authentication databases.

* test(e2e): Fixed false positive in Mongo connect test; use UriNetwork and container hostname

* make gen

* fix: Removed unnecessary variable containerName from the MongoDB E2E test

* feat(connect/mongo): Build URI compatible with mongosh and set default authSource

* feat(connect/mongo): use mongosh flags following PostgreSQL pattern

* remove 'connection string' from auth-source usage text

* Update internal/cmd/commands/connect/mongo.go

Co-authored-by: Bharath Gajjala <120367134+bgajjala8@users.noreply.github.com>

* remove 'connection string' from auth-source usage text

* refacotr: replace authSource flag with authenticationDatabase

---------

Co-authored-by: Enbiya <100806254+enbiyagoral@users.noreply.github.com>
Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>
2025-10-09 11:13:47 -05:00
dillanb-hashi f1cac7046f small change in docker enos build (#6120)
* small change in docker build to enable enos github runner
2025-10-07 10:49:05 -07:00
Pradeep Sekar fac22dfc4a chore: updated ec2 configurations to require imdsv2 (#6005) 2025-09-30 13:40:18 -04:00
Tony bc40164871 chore(e2e): Update framework to remove boundary_docker_image_name (#6092)
* remove name var necessity in docker scenario

* rm log

* parse from docker load

* rm docker image name var from enos-variables

* rm boundary_docker_image_name from files
2025-09-30 10:25:37 -04:00
Michael Li 3a7f5d08c5 chore(e2e): Allow AWS to select default db version (#6090)
Rather than hard-coding a version and needing to update this every time it becomes deprecated, we just pick the current default that AWS has set (which should be close to the latest).
2025-09-26 09:26:05 -04:00
Michael Li 2593b62430 fix(e2e): Use worker config from variable (#6081) 2025-09-24 13:46:58 -04:00
Justin Nguyen 4548028efe ICU-14484: redis connect helper (#6001)
* add redis connect support
* Setup redis in docker for e2e testing
* Update docs and changelog
* Commenting out e2e tests for now, will revisit in a separate task
2025-09-19 16:20:11 -05:00
Michael Li f8a5894e29 chore(e2e): Update windows worker module to support other configs (#6077) 2025-09-19 16:12:29 -04:00
Michael Li 487107e958 chore(e2e): Ensure permissions on key file are correct (#6062) 2025-09-18 16:27:43 -04:00
Michael Li 57d69637f8 chore(e2e): Update firewall rules for instances in the windows domain (#6059)
* chore(e2e): Update firewall rules

* fix(e2e): Add ipv6_address
2025-09-18 12:57:06 -04:00
Michael Li c2585d8fb8 chore(e2e): Allow worker task on windows instances to run indefinitely (#6043)
* chore(e2e): Allow worker to run indefinitely

* chore(e2e): Add time sync to ensure windows instances are in sync

* CR: Remove semicolons
2025-09-12 14:02:12 -04:00
dillanb-hashi 31ab2cdce8 chore(e2e): fixed enos scripts to allow for crt builder in windows scenario (#6042) 2025-09-09 11:12:17 -07:00
Johan Brandhorst-Satzkorn 30d97687b5 Upgrade Go to 1.25 (#6011)
* Upgrade Go to 1.25

* Upgrade to golangci-lint v2

* Remove use of apt-key
2025-09-02 18:27:22 -04:00
dillanb-hashi 8d6f0d4e28 chore(e2e): Added the option to make member server kerberos only (#5997)
* chore(e2e): Added the option to make member server kerberos only
2025-08-22 14:06:32 -07:00
Michael Li 8647e3f347 chore(e2e): Add support for Windows Server 2016 (#5994)
* chore: Fix spacing

* chore(e2e): Add support for windows server 2016

* fix(e2e): Pass region into worker module

* CR: Rename scenario

* CR: enos fmt

* CR: Add username to enos vpc

* CR: Add vault environment variables
2025-08-21 16:11:42 -04:00
dillanb-hashi 2e17f06cd2 chore(e2e): Added checks to userdata scripts to reduce setup flakiness (#5991)
* chore(e2e): Added checks to userdata scripts to reduce setup flakiness
2025-08-20 15:30:12 -07:00
Michael Li 41e5cacb7c chore(e2e): Enable audio service (#5988) 2025-08-20 11:43:23 -04:00
Michael Li f91e10630d chore(e2e): Ensure domain controller reboots (#5986) 2025-08-20 10:40:27 -04:00
Michael Li 049109fb10 chore(e2e): Increase test timeout to 30m (#5987) 2025-08-19 12:20:11 -04:00
dillanb-hashi f39e0b07c7 chore(e2e): Added windows based boundary worker scenario and module (#5973)
* Added windows based boundary worker scenario and module
* powershell script to run boundary on startup
* merged member server scenario
2025-08-18 07:53:24 -07:00
Michael Li 71fc7a5ec4 chore(e2e): Add module for rdp member server (#5976)
* chore(e2e): Add module for rdp member server

* CR: Update Domain mode to be compatible with newer versions of Windows

* CR: Add comments to ports

* CR: Simplify adding computer to the domain
2025-08-12 18:02:18 -04:00
dillanb-hashi 76fccfb912 test(e2e): Created module for windows client (#5942)
e2e(test): Created module and scenario for windows client for rdp testing
2025-08-06 09:55:15 -07:00
Ryan DerrandBharath Gajjala 4d3cb76c28 Cassandra Connect Support (#5952)
* Init cassandra

* Init cassandra

* Initial Cassandra Command Support For cqlsh

* Add Make Gen

* adding cassandra test

* Cleanup cassandra docker setup

* Adding container wait

* Container restart

* Minor Fix

* Cleanup docker and test

* Adding final tests

* Removing comment

* Fixing cleanup (uncomment)

* Removing bad yaml

* Cleanup

* Cleanup

* Adressing PR review comments

* Adding test support

* fix spacing

* Adding changelog

* docs

* docs

* adding cassandra page

* nav

* Versbose commenting

* cleanup naming of file

* updating helper func to return errors

* doc change

* Removed an incorrect comment and now passing the config by reference.

* Comment cleanup

* Fix option warning in cassandra connect command (#5951)

* Add healthcheck to caller function as it's resposible for container health

* Resolve Comments

* Update Log Typo

---------

Co-authored-by: Bharath Gajjala <120367134+bgajjala8@users.noreply.github.com>
2025-07-30 16:21:11 -05:00
Michael Li 9778cb95f8 chore(e2e): Fix availability zone check (#5935) 2025-07-17 16:30:27 -04:00
dillanb-hashi 05fe8f9511 chore(e2e): created an enos scenario for an rdp target (#5932)
* chore(e2e): created an enos scenario for an rdp target
2025-07-16 10:01:41 -07:00
Michael Li 9ce79ab8fe chore(e2e): Add recovery key to boundary config (#5933) 2025-07-15 14:07:50 -04:00
Michael Li e000aeafcd chore(e2e): Fix bucket lifecycle warning (#5912)
The provider was returning the following warning, which will become an error in future versions of the provider.

No attribute specified when one (and only one) of [rule[0].filter,rules[0].prefix] is required
2025-07-09 12:14:49 -04:00
8b8fb28228 feat: add MySQL command support PORT (#5891)
* feat: add MySQL command support

* Fix MySQL connection according to review feedback

* Update internal/cmd/commands/connect/mysql.go

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>

* Update internal/cmd/commands/connect/mysql.go

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>

* Update internal/cmd/commands/connect/mysql.go

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>

* feat: add MySQL support to boundary connect

* docs: add MySQL to navigation menu

   Fixes content check error by adding mysql.mdx to docs navigation.
   MySQL page now appears in Commands > connect section alongside postgres.

* Update testing/internal/e2e/tests/base_plus/target_tcp_connect_mysql_test.go

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>

* test: add containerized MySQL connection test for target functionality

* Remove MySQL environment variables from e2e test config

* test: move MySQL e2e test from base_plus to base folder

* Fix MySQL test to support both MySQL and MariaDB clients

* Fix MySQL test to support both MySQL and MariaDB clients

* lint cleanup

* adding error checks

* Make gen

* Test case testing

* Reverting bad comment

* cleaning up extra test file

* Add Mysql to runner (#5893)

* Adding back correct test file

* Removing base plus test file

* Removing base plus test file

* Revert "Removing base plus test file"

This reverts commit ace9cb3e90a028adc1f7c8ef55436ca843abfc15.

* forcing enos docker network name

* Revert "forcing enos docker network name"

This reverts commit 631bdb4a0ef87f5435e06456e8ec0a4573ab3e49.

* changing hosts to looks for sql container

* fix container name

* Adjusting for e2e tests and a bit of cleanup

* missed a commented string

* Bgajjala mysql e2etest v2 (#5900)

* Using Env Vars rather than parsing uri

* Comments fix

* spacing

* Update testing/internal/e2e/tests/base/target_tcp_connect_mysql_test.go

* Spacing

* Update internal/cmd/commands/connect/mysql.go

* adding error checks

* Make gen

* Update testing/internal/e2e/tests/base/target_tcp_connect_mysql_test.go

* Update internal/cmd/commands/connect/mysql.go

* Make gen

* derving target port from uri

* nit

* updating test to use url strings

* nit: spacing

* nit: code organization

* nit: code organization
Co-authored-by: Enbiya Göral

---------

Co-authored-by: Enbiya <menbiyagoral@gmail.com>
Co-authored-by: Enbiya Göral <100806254+enbiyagoral@users.noreply.github.com>
Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>
Co-authored-by: Ryan Derr <54389874+RyanDerr@users.noreply.github.com>
2025-07-08 17:07:27 -05:00
hashicc 67207899cb Migrate ui-related scripts to use pnpm instead of yarn (#5815) 2025-06-16 13:27:38 -07:00
Michael Li 284cb5e7aa chore(e2e): Set auth_storage_path to a non-temp directory (#5786) 2025-06-02 09:27:58 -04:00
Hugo 08bd39f9fa fix(enos): Remove brackets from standalone IPv6 addresses (#5739) 2025-05-14 18:00:34 +01:00
dillanb-hashi 1e8c345126 chore(e2e): Added support for boundary license to be an env for enos (#5704)
* chore(e2e): Added support for boundary license to be an env for enos
2025-05-07 12:47:09 -07:00
Michael Li 90b7d2c0d6 chore(e2e): Add encryption to target ec2 instance (#5672) 2025-04-28 08:29:22 -04:00
Michael Li 14e0b00cce chore(e2e): Update to use ubuntu 22 (#5664) 2025-04-18 10:38:31 -04:00
Michael Li 4304ec0c1c chore(e2e): Address issue with deleting roles/policies (#5646)
On destroy, there was an issue with deleting IAM roles due to the following error: DeleteConflict: Cannot delete entity, must detach all policies first

This commit adds an option to force the policy detachment, preventing the error.
2025-04-15 11:31:12 -04:00
Ryan Derr 6d8615045e Lowercase GH Handle When Defining User Label For GCP (#5605) 2025-03-17 13:25:55 -05:00
Michael Li 132a52c5d9 chore(e2e): Set up ec2 instance storage with encryption (#5580) 2025-03-06 09:55:18 -05:00
Michael Li 14808d197f test(e2e): Differentiate between public and private vault addresses (#5553) 2025-02-20 10:27:43 -05:00
dd9c7b9d60 Create IPv6 and dual stack enos tests (#5212)
Co-authored-by: Danielle Miu <29378233+DanielleMiu@users.noreply.github.com>
Co-authored-by: Damian Debkowski <damian.debkowski@hashicorp.com>
2025-01-21 07:37:04 -08:00
Michael Li 554195f49f test(e2e): Add test for connect http (#5423)
* test(e2e): Add comment to test

* test(e2e): Add test for connect http

* CR
2025-01-09 12:43:21 -05:00
Damian Debkowski dc66aa0556 fix(enos): bump default db version to new required minimum (#5426) 2025-01-08 22:42:08 -08:00
Michael Li ab94d5cf59 chore(e2e): Modify bucket policy to 7 days (#5410) 2025-01-06 17:29:03 -05:00
Michael Li 629d7a93ee chore(e2e): Modify gcp label to meet format constraints (#5400)
GCP label constraints include the following:

The value can only contain lowercase letters, numeric characters, underscores and dashes. The value can be at most 63 characters long. International characters are allowed.
2025-01-03 10:47:08 -05:00
Michael Li 3d0f667151 chore(e2e): Update vault addresses in AWS scenarios (#5395) 2025-01-02 09:42:23 -05:00
Michael LiandJohan Brandhorst-Satzkorn 6ed077c69e test(e2e): Add test for vault oidc provider (#5384)
* test(e2e): Simplify vault address in docker network

* test(e2e): Add oidc test using vault

* Update enos/modules/docker_vault/main.tf

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>

---------

Co-authored-by: Johan Brandhorst-Satzkorn <johan.brandhorst@gmail.com>
2024-12-19 17:06:01 -05:00
Elim Tsiagbey a4f2a704fd test(e2e): add GCP dynamic host catalog e2e tests (#5294)
* test(e2e): add GCP infra resources and tests for enos testing

- add 1 new `gcp_target` module that creates a GCP VM instance with labels for filtering
- add GCP dynamic host catalog e2e tests
2024-12-17 14:06:14 -05:00
Michael Li 5896a3b44b chore(e2e): Add object expiration policy to s3 bucket (#5298)
* chore(e2e): Add expiration date to aws bucket objects

* chore(e2e): Add user tag to bucket
2024-12-05 09:51:53 -05:00
Michael Li ae0ca0c5aa test(e2e): Update module to account for docker image changes (#5295)
There were some directory changes made to the openssh server docker container. These changes were made to account for that update.
2024-12-02 16:20:07 -05:00
Michael Li 820eb395a3 chore(e2e): Increase worker instance size (#5251)
* chore(e2e): Update to use t2.small instances

Using the updated AWS SDK required more memory and was causing workers to crash.

* chore(e2e): Add identifier to aws instance
2024-11-18 15:02:19 -05:00
Michael Li 9398248c32 test(e2e): Add user name to AWS resources (#5149)
This change makes it easier to identify who generated these resources when looking at the AWS console
2024-10-07 14:12:00 -04:00