strata-cli 0.1.12 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +12 -0
- data/lib/strata/cli/credentials.rb +2 -0
- data/lib/strata/cli/descriptions/datasource/add.txt +1 -1
- data/lib/strata/cli/sub_commands/datasource.rb +14 -2
- data/lib/strata/cli/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 61be99c9ce107eae809e67fa23dd4108a471dcc90b6adb039a298b5d59005106
|
|
4
|
+
data.tar.gz: '080076fa7d113e1e066caca27a3e33e3c438a0bb8d2e53a602ed75cf7a5b5ec5'
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eaac835415776492c4858204340238a71fc9a8e45ad61183d46f532a22723774d39a16e9dfb30db5841bc897a12547a9a8fe93c1543e3b7e1975daecdf5b2d82
|
|
7
|
+
data.tar.gz: d443533139c4aea533e2bf0fd2d3f14e7de3bf7f1bb87e004e174a7232802b8c9086c7e470bb1640c697522fad07445db6bbfa60185e1a667fbe0f7c838ede58
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
+
## [0.1.13] - 2026-06-20
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- **Documentation**: ClickHouse adapter docs in README, gemspec description, `datasource add` help text, and CHANGELOG notes for the 0.1.12 feature set.
|
|
8
|
+
|
|
9
|
+
## [0.1.12] - 2026-06-20
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- **ClickHouse adapter**: `strata datasource add clickhouse` with connection prompts and optional password credentials.
|
|
14
|
+
- **Security policy scaffolding**: `strata create policy` to add policies to `security.yml`; new projects include a `security.yml` template.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- **dwh dependency**: Require `dwh` `~> 0.5.0` (ClickHouse adapter and dialect keyword/aggregate support).
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- **Datasource introspection**: Pass only `catalog` and `schema` qualifiers to DWH for `tables` and `meta` (avoids leaking CLI flags like `--agent` or `--pattern` to adapters).
|
|
23
|
+
|
|
3
24
|
## [0.1.11] - 2026-05-22
|
|
4
25
|
|
|
5
26
|
### Changed
|
data/README.md
CHANGED
|
@@ -375,6 +375,17 @@ my_databricks:
|
|
|
375
375
|
catalog: main
|
|
376
376
|
schema: default
|
|
377
377
|
auth_mode: oauth_m2m
|
|
378
|
+
|
|
379
|
+
my_clickhouse:
|
|
380
|
+
adapter: clickhouse
|
|
381
|
+
name: ClickHouse
|
|
382
|
+
protocol: http
|
|
383
|
+
host: localhost
|
|
384
|
+
port: 8123
|
|
385
|
+
database: default
|
|
386
|
+
username: default
|
|
387
|
+
tier: warm
|
|
388
|
+
query_timeout: 3600
|
|
378
389
|
```
|
|
379
390
|
|
|
380
391
|
### Databricks authentication
|
|
@@ -403,6 +414,7 @@ Use service principal credentials and run `strata ds auth my_databricks` to save
|
|
|
403
414
|
- **Druid** - Apache Druid support
|
|
404
415
|
- **Redshift** - Amazon Redshift support
|
|
405
416
|
- **Databricks** - Databricks SQL warehouse support
|
|
417
|
+
- **ClickHouse** - ClickHouse HTTP/native SQL support
|
|
406
418
|
- **SQLite** - SQLite database support
|
|
407
419
|
|
|
408
420
|
## Security
|
|
@@ -48,6 +48,8 @@ module Strata
|
|
|
48
48
|
credentials["auth_mode"] = "oauth_m2m"
|
|
49
49
|
credentials["oauth_client_id"] = @prompt.ask("OAuth Client ID:")
|
|
50
50
|
credentials["oauth_client_secret"] = @prompt.ask("OAuth Client Secret:")
|
|
51
|
+
when "clickhouse"
|
|
52
|
+
credentials["password"] = @prompt.mask("Enter Password (leave blank if none):")
|
|
51
53
|
else
|
|
52
54
|
if required?
|
|
53
55
|
unless %w[postgres mysql trino sqlserver].include?(adapter)
|
|
@@ -18,4 +18,4 @@ Examples:
|
|
|
18
18
|
|
|
19
19
|
strata datasource add snowflake # Directly add Snowflake datasource
|
|
20
20
|
|
|
21
|
-
Supported adapters: postgres, mysql, sqlserver, snowflake, athena, trino, duckdb, druid
|
|
21
|
+
Supported adapters: postgres, mysql, sqlserver, snowflake, athena, trino, duckdb, druid, clickhouse, databricks, redshift, sqlite
|
|
@@ -187,7 +187,7 @@ module Strata
|
|
|
187
187
|
return unless ds_key
|
|
188
188
|
|
|
189
189
|
adapter = create_adapter(ds_key)
|
|
190
|
-
tables = adapter.tables(**
|
|
190
|
+
tables = adapter.tables(**adapter_qualifiers)
|
|
191
191
|
tables = tables.select { it =~ /#{options[:pattern]}/ } if options[:pattern]
|
|
192
192
|
|
|
193
193
|
if agent_mode?
|
|
@@ -214,7 +214,7 @@ module Strata
|
|
|
214
214
|
method_option :schema, aliases: "s", type: :string, desc: "Change the schema from the configured one."
|
|
215
215
|
def meta(ds_key, table_name)
|
|
216
216
|
adapter = create_adapter(ds_key)
|
|
217
|
-
md = adapter.metadata(table_name, **
|
|
217
|
+
md = adapter.metadata(table_name, **adapter_qualifiers)
|
|
218
218
|
|
|
219
219
|
if agent_mode?
|
|
220
220
|
columns = md.columns.map do |column|
|
|
@@ -275,6 +275,10 @@ module Strata
|
|
|
275
275
|
false
|
|
276
276
|
end
|
|
277
277
|
|
|
278
|
+
def adapter_qualifiers
|
|
279
|
+
options.transform_keys(&:to_sym).slice(:catalog, :schema)
|
|
280
|
+
end
|
|
281
|
+
|
|
278
282
|
def validate_file_path(file_path, project_path = Dir.pwd)
|
|
279
283
|
expanded = File.expand_path(file_path, project_path)
|
|
280
284
|
project_root = File.expand_path(project_path)
|
|
@@ -370,6 +374,14 @@ module Strata
|
|
|
370
374
|
"schema" => "default",
|
|
371
375
|
"auth_mode" => "oauth_m2m"
|
|
372
376
|
}
|
|
377
|
+
when "clickhouse"
|
|
378
|
+
{
|
|
379
|
+
"protocol" => "http",
|
|
380
|
+
"host" => "localhost",
|
|
381
|
+
"port" => 8123,
|
|
382
|
+
"database" => "test_db",
|
|
383
|
+
"username" => "default"
|
|
384
|
+
}
|
|
373
385
|
else
|
|
374
386
|
{}
|
|
375
387
|
end
|
data/lib/strata/cli/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: strata-cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.13
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ajo Abraham
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 0.
|
|
19
|
+
version: 0.5.0
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 0.
|
|
26
|
+
version: 0.5.0
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: aws-sdk-athena
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -224,7 +224,7 @@ description: |
|
|
|
224
224
|
Comprehensive CLI tool for managing Strata Semantic Analytics projects. Create and initialize
|
|
225
225
|
projects, manage datasource connections, build semantic table models with AI assistance, run
|
|
226
226
|
audits and validations, and deploy projects to Strata servers. Supports multiple data warehouse
|
|
227
|
-
adapters including PostgreSQL, MySQL, SQL Server, Snowflake, Athena, Trino, and more.
|
|
227
|
+
adapters including PostgreSQL, MySQL, SQL Server, Snowflake, Athena, Trino, ClickHouse, and more.
|
|
228
228
|
email:
|
|
229
229
|
- ajo@strata.site
|
|
230
230
|
- allen@strata.site
|