From 2930084089198dc048ded665441f0dbf08cdc7e5 Mon Sep 17 00:00:00 2001 From: john-rock Date: Thu, 26 Oct 2023 15:44:38 -0400 Subject: [PATCH 1/8] add sync file back --- .github/workflows/repo-sync.yml | 111 ++++++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) create mode 100644 .github/workflows/repo-sync.yml diff --git a/.github/workflows/repo-sync.yml b/.github/workflows/repo-sync.yml new file mode 100644 index 00000000000..8f2320217b2 --- /dev/null +++ b/.github/workflows/repo-sync.yml @@ -0,0 +1,111 @@ +name: Repo Sync + +# **What it does**: Syncs docs.getdbt.com public repo into the docs private repo +# This GitHub Actions workflow keeps the `current` branch of those two repos in sync. +# **Why we have it**: To keep the open-source repository up-to-date +# while still having an internal repository for sensitive work. +# For more details, see https://github.com/repo-sync/repo-sync#how-it-works + +on: + schedule: + - cron: '0 6,12,18 * * *' # Run at 6:00 AM, 12:00 PM, and 6:00 PM + +jobs: + repo-sync: + permissions: + contents: write + pull-requests: write + name: Repo Sync + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + # Use the INTERMEDIATE_BRANCH as the checkout reference + ref: ${{ secrets.INTERMEDIATE_BRANCH }} + token: ${{ secrets.GITHUB_TOKEN }} + # Fetch all history for all branches and tags + fetch-depth: 0 + + # Sync the source repo to the destination branch using repo-sync/github-sync + - uses: repo-sync/github-sync@v2 + name: Sync repo to branch + with: + # Source repository to sync from + source_repo: ${{ secrets.SOURCE_REPO }} + # Source branch to sync from + source_branch: current + # Destination branch to sync to + destination_branch: ${{ secrets.INTERMEDIATE_BRANCH }} + github_token: ${{ secrets.WORKFLOW_TOKEN }} + + - name: Ship pull request + uses: actions/github-script@v6 + with: + github-token: ${{ secrets.WORKFLOW_TOKEN }} + result-encoding: string + script: | + const {owner, repo} = context.repo; + const head = '${{ secrets.INTERMEDIATE_BRANCH }}'; + const base = 'current' + + async function closePullRequest(prNumber) { + console.log('closing PR', prNumber) + await github.rest.pulls.update({ + owner, + repo, + pull_number: prNumber, + state: 'closed' + }); + console.log('closed PR', prNumber) + } + + console.log('Creating new PR') + let pull, pull_number + try { + const response = await github.rest.pulls.create({ + owner, + repo, + head, + base, + title: 'REPO SYNC - Public to Private', + body: 'This is an automated pull request to sync changes between the public and private repos.', + }); + pull = response.data + pull_number = pull.number + console.log('Created pull request successfully', pull.html_url) + + } catch (err) { + // Don't error/alert if there's no commits to sync + if (err.message?.includes('No commits')) { + console.log(err.message) + return + } + throw err + } + + const { data: prFiles } = await github.rest.pulls.listFiles({ owner, repo, pull_number }) + if (prFiles.length) { + console.log(prFiles.length, 'files have changed') + } else { + console.log('No files changed, closing') + await closePullRequest(pull_number) + return + } + + console.log('Checking for merge conflicts') + if (pull.mergeable_state === 'dirty') { + console.log('Pull request has a conflict', pull.html_url) + await closePullRequest(pull_number) + throw new Error('PR has a conflict, please resolve manually') + } + console.log('No detected merge conflicts') + + + console.log('Merging the PR') + await github.rest.pulls.merge({ + owner, + repo, + pull_number, + merge_method: 'merge', + }) + console.log('Merged the PR successfully') From 86fb067817280aad5e25f28457c2e31caa854210 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 1 Nov 2023 11:57:38 +0000 Subject: [PATCH 2/8] update billing page --- website/docs/docs/build/sl-getting-started.md | 9 ++- website/docs/docs/cloud/billing.md | 64 +++++++++---------- .../release-notes/03-Oct-2023/sl-ga.md | 4 +- .../use-dbt-semantic-layer/quickstart-sl.md | 10 +-- 4 files changed, 44 insertions(+), 43 deletions(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 64cec11c302..b10c065948b 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -84,14 +84,17 @@ If you're encountering some issues when defining your metrics or setting up the How are you storing my data? User data passes through the Semantic Layer on its way back from the warehouse. dbt Labs ensures security by authenticating through the customer's data warehouse. Currently, we don't cache data for the long term, but it might temporarily stay in the system for up to 10 minutes, usually less. In the future, we'll introduce a caching feature that allows us to cache data on our infrastructure for up to 24 hours. +
-Is the dbt Semantic Layer open source? -The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE or the MetricFlow CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users will must be on a dbt Cloud Team or Enterprise plan.
+ Is the dbt Semantic Layer open source? + The dbt Semantic Layer is proprietary; however, some components of the dbt Semantic Layer are open source, such as dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE, dbt Cloud CLI, or dbt Core CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users must be on a dbt Cloud Team or Enterprise plan.

Refer to Billing for more information. + + ## Next steps - [About MetricFlow](/docs/build/about-metricflow) - [Build your metrics](/docs/build/build-metrics-intro) -- [Get started with the dbt Semantic Layer](/docs/use-dbt-semantic-layer/quickstart-sl) - [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) - Demo on [how to define and query metrics with MetricFlow](https://www.loom.com/share/60a76f6034b0441788d73638808e92ac?sid=861a94ac-25eb-4fd8-a310-58e159950f5a) +- [Billing](/docs/cloud/billing) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index 1d71d33e9a1..02b8ed642b3 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -11,9 +11,11 @@ dbt Cloud offers a variety of [plans and pricing](https://www.getdbt.com/pricing ## How does dbt Cloud pricing work? -As a customer, you pay for the number of seats you have and the amount of usage consumed each month. Seats are billed primarily on the amount of Developer and Read licenses purchased. Usage is based on the number of [Successful Models Built](#what-counts-as-a-successful-model-built) and, if purchased and used, Semantic Layer Query Units subject to reasonable usage. All billing computations are conducted in Coordinated Universal Time (UTC). +As a customer, you pay for the number of seats you have and the amount of usage consumed each month. Seats are billed primarily on the amount of Developer and Read licenses purchased. -### What counts as a seat license? +Usage is based on the number of [Successful Models Built](#what-counts-as-a-successful-model-built) and, if purchased and used, Semantic Layer [Queried Metrics](#what-counts-as-a-query-metric) subject to reasonable usage. All billing computations are conducted in Coordinated Universal Time (UTC). + +### What counts as a seat license? There are three types of possible seat licenses: @@ -37,47 +39,46 @@ Any models built in a dbt Cloud development environment (for example, via the ID | Seeds | ❌ | | Snapshots | ❌ | -### What counts as a Query Unit?​ +### What counts as a Query Metric? -The dbt Semantic Layer, powered by MetricFlow, measures usage in distinct query units. Every successful request you make to render or run SQL to the Semantic Layer API counts as at least one query unit, even if no data is returned. If the query calculates or renders SQL for multiple metrics, each calculated metric will be counted as a query unit. -If a request to run a query is not executed successfully in the data platform or if a query results in an error without completion, it is not counted as a query unit. Requests for metadata from the Semantic Layer are also not counted as query units. +The dbt Semantic Layer, powered by MetricFlow, measures usage in distinct queried metrics. -Examples of query units include: +- Every successful request you make to render or run SQL to the Semantic Layer API counts as at least one query metric, even if no data is returned. +- If the query calculates or renders SQL for multiple metrics, each calculated metric will be counted as a query metric. +- If a request to run a query is not executed successfully in the data platform or if a query results in an error without completion, it is not counted as a query metric. +- Requests for metadata from the Semantic Layer are also not counted as queried metrics. -Querying one metric, grouping by one dimension → 1 query unit +Examples of queried metrics include: -```shell -dbt sl query --metrics revenue --group_by metric_time -``` -Querying one metric, grouping by two dimensions → 1 query unit +- Querying one metric, grouping by one dimension → 1 query metric -```shell -dbt sl query --metrics revenue --group_by metric_time,user__country -``` + ```shell + dbt sl query --metrics revenue --group_by metric_time + ``` -Querying two metrics, grouping by two dimensions → 2 query units +- Querying one metric, grouping by two dimensions → 1 query metric -```shell -dbt sl query --metrics revenue,gross_sales --group_by metric_time,user__country -``` + ```shell + dbt sl query --metrics revenue --group_by metric_time,user__country + ``` -Running an explain for one metric → 1 query unit +- Querying two metrics, grouping by two dimensions → 2 queried metrics -```shell -dbt sl query --metrics revenue --group_by metric_time --explain -``` + ```shell + dbt sl query --metrics revenue,gross_sales --group_by metric_time,user__country + ``` -Running an explain for two metrics → 2 query units +- Running an explain for one metric → 1 query metric -```shell -dbt sl query --metrics revenue,gross_sales --group_by metric_time --explain -``` + ```shell + dbt sl query --metrics revenue --group_by metric_time --explain + ``` -Running a query for only dimensions such as dimension_values or a query with no metrics → 1 query unit +- Running an explain for two metrics → 2 queried metrics -```shell -bt sl list dimension-values --dimension user__country -``` + ```shell + dbt sl query --metrics revenue,gross_sales --group_by metric_time --explain + ``` ### Viewing usage in the product @@ -253,8 +254,7 @@ _Yes. Your dbt Cloud account will be upgraded without impacting your existing pr _The best option is to consult with our sales team. They'll help you figure out what is right for your needs. We also offer a free two-week trial on the Team plan._ * What are the Semantic Layer trial terms? -_Team and Enterprise customers can sign up for a free trial of the dbt Semantic Layer, powered by MetricFlow, for use of up to 1,000 query units per month. The trial will be available at least through January 2024. dbt Labs may extend the trial period in its sole discretion. During the trial period, we may reach out to discuss pricing options or ask for feedback. At the end of the trial, free access may be removed and a purchase may be required to continue use. dbt Labs reserves the right to change limits in a free trial or institute pricing when required or at any time in its sole discretion._ +_Team and Enterprise customers can sign up for a free trial of the dbt Semantic Layer, powered by MetricFlow, for use of up to 1,000 queried metrics per month. The trial will be available at least through January 2024. dbt Labs may extend the trial period in its sole discretion. During the trial period, we may reach out to discuss pricing options or ask for feedback. At the end of the trial, free access may be removed and a purchase may be required to continue use. dbt Labs reserves the right to change limits in a free trial or institute pricing when required or at any time in its sole discretion._ * What is the reasonable use limitation for the dbt Semantic Layer powered by MetricFlow during the trial? _Each account will be limited to 1,000 Queried Metrics per month during the trial period and may be changed at the sole discretion of dbt Labs._ - diff --git a/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md b/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md index 5e53363f62a..95cd4a82946 100644 --- a/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md +++ b/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md @@ -23,7 +23,5 @@ It aims to bring the best of modeling and semantics to downstream applications b The dbt Semantic Layer is available to [dbt Cloud Team or Enterprise](https://www.getdbt.com/) multi-tenant plans on dbt v1.6 or higher. -- Team and Enterprise customers can use 1,000 Queried Units per month for no additional cost on a limited trial basis, subject to reasonable use limitations. Refer to [Billing](/docs/cloud/billing#what-counts-as-a-query-unit) for more information. +- Team and Enterprise customers can use 1,000 Queried Metrics per month for no additional cost on a limited trial basis, subject to reasonable use limitations. Refer to [Billing](/docs/cloud/billing#what-counts-as-a-query-metric) for more information. - dbt Cloud Developer plans and dbt Core users can define metrics but won't be able to query them with integrated tools. - - diff --git a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md index cca899d227e..42f08a90401 100644 --- a/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md +++ b/website/docs/docs/use-dbt-semantic-layer/quickstart-sl.md @@ -99,16 +99,16 @@ If you're encountering some issues when defining your metrics or setting up the User data passes through the Semantic Layer on its way back from the warehouse. dbt Labs ensures security by authenticating through the customer's data warehouse. Currently, we don't cache data for the long term, but it might temporarily stay in the system for up to 10 minutes, usually less. In the future, we'll introduce a caching feature that allows us to cache data on our infrastructure for up to 24 hours.
-Is the dbt Semantic Layer open source? -The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE or the MetricFlow CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users will must be on a dbt Cloud Team or Enterprise plan.
-

+ Is the dbt Semantic Layer open source? + The dbt Semantic Layer is proprietary; however, some components of the dbt Semantic Layer are open source, such as dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE, dbt Cloud CLI, or dbt Core CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users must be on a dbt Cloud Team or Enterprise plan.

Refer to Billing for more information. + -## Next steps -- [Build your metrics](/docs/build/build-metrics-intro) +## Next steps - [Set up dbt Semantic Layer](docs/use-dbt-semantic-layer/setup-dbt-sl) - [Available integrations](/docs/use-dbt-semantic-layer/avail-sl-integrations) - Demo on [how to define and query metrics with MetricFlow](https://www.loom.com/share/60a76f6034b0441788d73638808e92ac?sid=861a94ac-25eb-4fd8-a310-58e159950f5a) +- [Billing](/docs/cloud/billing) From e08618f7aab55b8fb08c615b25206c45b94b71e8 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Wed, 1 Nov 2023 12:12:53 +0000 Subject: [PATCH 3/8] Update website/docs/docs/build/sl-getting-started.md --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index b10c065948b..04cd3126bdb 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -87,7 +87,7 @@ User data passes through the Semantic Layer on its way back from the warehouse.
Is the dbt Semantic Layer open source? - The dbt Semantic Layer is proprietary; however, some components of the dbt Semantic Layer are open source, such as dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE, dbt Cloud CLI, or dbt Core CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users must be on a dbt Cloud Team or Enterprise plan.

Refer to Billing for more information. +The dbt Semantic Layer is proprietary; however, some components of the dbt Semantic Layer are open source, such as dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE, dbt Cloud CLI, or dbt Core CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users must be on a dbt Cloud Team or Enterprise plan.

Refer to Billing for more information.
From 76ae7d395042b806119fab65ddcf6ec89436a86a Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 1 Nov 2023 17:14:07 +0000 Subject: [PATCH 4/8] update to 'queried' --- website/docs/docs/cloud/billing.md | 20 +++++++++---------- .../release-notes/03-Oct-2023/sl-ga.md | 4 ++-- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index 02b8ed642b3..9687fd6b6f6 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -13,7 +13,7 @@ dbt Cloud offers a variety of [plans and pricing](https://www.getdbt.com/pricing As a customer, you pay for the number of seats you have and the amount of usage consumed each month. Seats are billed primarily on the amount of Developer and Read licenses purchased. -Usage is based on the number of [Successful Models Built](#what-counts-as-a-successful-model-built) and, if purchased and used, Semantic Layer [Queried Metrics](#what-counts-as-a-query-metric) subject to reasonable usage. All billing computations are conducted in Coordinated Universal Time (UTC). +Usage is based on the number of [Successful Models Built](#what-counts-as-a-successful-model-built) and, if purchased and used, Semantic Layer [Queried Metrics](#what-counts-as-a-queried-metric) subject to reasonable usage. All billing computations are conducted in Coordinated Universal Time (UTC). ### What counts as a seat license? @@ -39,24 +39,24 @@ Any models built in a dbt Cloud development environment (for example, via the ID | Seeds | ❌ | | Snapshots | ❌ | -### What counts as a Query Metric? +### What counts as a Queried Metric? -The dbt Semantic Layer, powered by MetricFlow, measures usage in distinct queried metrics. +The dbt Semantic Layer, powered by MetricFlow, measures usage in distinct queried metrics. -- Every successful request you make to render or run SQL to the Semantic Layer API counts as at least one query metric, even if no data is returned. -- If the query calculates or renders SQL for multiple metrics, each calculated metric will be counted as a query metric. -- If a request to run a query is not executed successfully in the data platform or if a query results in an error without completion, it is not counted as a query metric. +- Every successful request you make to render or run SQL to the Semantic Layer API counts as at least one queried metric, even if no data is returned. +- If the query calculates or renders SQL for multiple metrics, each calculated metric will be counted as a queried metric. +- If a request to run a query is not executed successfully in the data platform or if a query results in an error without completion, it is not counted as a queried metric. - Requests for metadata from the Semantic Layer are also not counted as queried metrics. Examples of queried metrics include: -- Querying one metric, grouping by one dimension → 1 query metric +- Querying one metric, grouping by one dimension → 1 queried metric ```shell dbt sl query --metrics revenue --group_by metric_time ``` -- Querying one metric, grouping by two dimensions → 1 query metric +- Querying one metric, grouping by two dimensions → 1 queried metric ```shell dbt sl query --metrics revenue --group_by metric_time,user__country @@ -68,7 +68,7 @@ Examples of queried metrics include: dbt sl query --metrics revenue,gross_sales --group_by metric_time,user__country ``` -- Running an explain for one metric → 1 query metric +- Running an explain for one metric → 1 queried metric ```shell dbt sl query --metrics revenue --group_by metric_time --explain @@ -254,7 +254,7 @@ _Yes. Your dbt Cloud account will be upgraded without impacting your existing pr _The best option is to consult with our sales team. They'll help you figure out what is right for your needs. We also offer a free two-week trial on the Team plan._ * What are the Semantic Layer trial terms? -_Team and Enterprise customers can sign up for a free trial of the dbt Semantic Layer, powered by MetricFlow, for use of up to 1,000 queried metrics per month. The trial will be available at least through January 2024. dbt Labs may extend the trial period in its sole discretion. During the trial period, we may reach out to discuss pricing options or ask for feedback. At the end of the trial, free access may be removed and a purchase may be required to continue use. dbt Labs reserves the right to change limits in a free trial or institute pricing when required or at any time in its sole discretion._ +_Team and Enterprise customers can sign up for a free trial of the dbt Semantic Layer, powered by MetricFlow, for use of up to 1,000 Queried Metrics per month. The trial will be available at least through January 2024. dbt Labs may extend the trial period in its sole discretion. During the trial period, we may reach out to discuss pricing options or ask for feedback. At the end of the trial, free access may be removed and a purchase may be required to continue use. dbt Labs reserves the right to change limits in a free trial or institute pricing when required or at any time in its sole discretion._ * What is the reasonable use limitation for the dbt Semantic Layer powered by MetricFlow during the trial? _Each account will be limited to 1,000 Queried Metrics per month during the trial period and may be changed at the sole discretion of dbt Labs._ diff --git a/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md b/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md index 95cd4a82946..8ba71e9d825 100644 --- a/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md +++ b/website/docs/docs/dbt-versions/release-notes/03-Oct-2023/sl-ga.md @@ -20,8 +20,8 @@ It aims to bring the best of modeling and semantics to downstream applications b - dbt Cloud [multi-tenant regional](/docs/cloud/about-cloud/regions-ip-addresses) support for North America, EMEA, and APAC. Single-tenant support coming soon. - Use the APIs to call an export (a way to build tables in your data platform), then access them in your preferred BI tool. Starting from dbt v1.7 or higher, you will be able to schedule exports as part of your dbt job. - + The dbt Semantic Layer is available to [dbt Cloud Team or Enterprise](https://www.getdbt.com/) multi-tenant plans on dbt v1.6 or higher. -- Team and Enterprise customers can use 1,000 Queried Metrics per month for no additional cost on a limited trial basis, subject to reasonable use limitations. Refer to [Billing](/docs/cloud/billing#what-counts-as-a-query-metric) for more information. +- Team and Enterprise customers can use 1,000 Queried Metrics per month for no additional cost on a limited trial basis, subject to reasonable use limitations. Refer to [Billing](/docs/cloud/billing#what-counts-as-a-queried-metric) for more information. - dbt Cloud Developer plans and dbt Core users can define metrics but won't be able to query them with integrated tools. From be3ea6747e38a49f7eded2c8172c69146f04d69b Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Wed, 1 Nov 2023 17:15:50 +0000 Subject: [PATCH 5/8] capitalize --- website/docs/docs/cloud/billing.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/cloud/billing.md b/website/docs/docs/cloud/billing.md index 9687fd6b6f6..5175a8bda08 100644 --- a/website/docs/docs/cloud/billing.md +++ b/website/docs/docs/cloud/billing.md @@ -41,7 +41,7 @@ Any models built in a dbt Cloud development environment (for example, via the ID ### What counts as a Queried Metric? -The dbt Semantic Layer, powered by MetricFlow, measures usage in distinct queried metrics. +The dbt Semantic Layer, powered by MetricFlow, measures usage in distinct Queried Metrics. - Every successful request you make to render or run SQL to the Semantic Layer API counts as at least one queried metric, even if no data is returned. - If the query calculates or renders SQL for multiple metrics, each calculated metric will be counted as a queried metric. From 90183df3462fd0b694af00f7df792112cbec97c2 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 3 Nov 2023 15:13:35 +0000 Subject: [PATCH 6/8] Delete .github/workflows/repo-sync.yml --- .github/workflows/repo-sync.yml | 111 -------------------------------- 1 file changed, 111 deletions(-) delete mode 100644 .github/workflows/repo-sync.yml diff --git a/.github/workflows/repo-sync.yml b/.github/workflows/repo-sync.yml deleted file mode 100644 index 8f2320217b2..00000000000 --- a/.github/workflows/repo-sync.yml +++ /dev/null @@ -1,111 +0,0 @@ -name: Repo Sync - -# **What it does**: Syncs docs.getdbt.com public repo into the docs private repo -# This GitHub Actions workflow keeps the `current` branch of those two repos in sync. -# **Why we have it**: To keep the open-source repository up-to-date -# while still having an internal repository for sensitive work. -# For more details, see https://github.com/repo-sync/repo-sync#how-it-works - -on: - schedule: - - cron: '0 6,12,18 * * *' # Run at 6:00 AM, 12:00 PM, and 6:00 PM - -jobs: - repo-sync: - permissions: - contents: write - pull-requests: write - name: Repo Sync - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - # Use the INTERMEDIATE_BRANCH as the checkout reference - ref: ${{ secrets.INTERMEDIATE_BRANCH }} - token: ${{ secrets.GITHUB_TOKEN }} - # Fetch all history for all branches and tags - fetch-depth: 0 - - # Sync the source repo to the destination branch using repo-sync/github-sync - - uses: repo-sync/github-sync@v2 - name: Sync repo to branch - with: - # Source repository to sync from - source_repo: ${{ secrets.SOURCE_REPO }} - # Source branch to sync from - source_branch: current - # Destination branch to sync to - destination_branch: ${{ secrets.INTERMEDIATE_BRANCH }} - github_token: ${{ secrets.WORKFLOW_TOKEN }} - - - name: Ship pull request - uses: actions/github-script@v6 - with: - github-token: ${{ secrets.WORKFLOW_TOKEN }} - result-encoding: string - script: | - const {owner, repo} = context.repo; - const head = '${{ secrets.INTERMEDIATE_BRANCH }}'; - const base = 'current' - - async function closePullRequest(prNumber) { - console.log('closing PR', prNumber) - await github.rest.pulls.update({ - owner, - repo, - pull_number: prNumber, - state: 'closed' - }); - console.log('closed PR', prNumber) - } - - console.log('Creating new PR') - let pull, pull_number - try { - const response = await github.rest.pulls.create({ - owner, - repo, - head, - base, - title: 'REPO SYNC - Public to Private', - body: 'This is an automated pull request to sync changes between the public and private repos.', - }); - pull = response.data - pull_number = pull.number - console.log('Created pull request successfully', pull.html_url) - - } catch (err) { - // Don't error/alert if there's no commits to sync - if (err.message?.includes('No commits')) { - console.log(err.message) - return - } - throw err - } - - const { data: prFiles } = await github.rest.pulls.listFiles({ owner, repo, pull_number }) - if (prFiles.length) { - console.log(prFiles.length, 'files have changed') - } else { - console.log('No files changed, closing') - await closePullRequest(pull_number) - return - } - - console.log('Checking for merge conflicts') - if (pull.mergeable_state === 'dirty') { - console.log('Pull request has a conflict', pull.html_url) - await closePullRequest(pull_number) - throw new Error('PR has a conflict, please resolve manually') - } - console.log('No detected merge conflicts') - - - console.log('Merging the PR') - await github.rest.pulls.merge({ - owner, - repo, - pull_number, - merge_method: 'merge', - }) - console.log('Merged the PR successfully') From 6ec2908f7426db601b5d532c683a4ebe3f57bf81 Mon Sep 17 00:00:00 2001 From: mirnawong1 <89008547+mirnawong1@users.noreply.github.com> Date: Fri, 3 Nov 2023 15:14:03 +0000 Subject: [PATCH 7/8] Update website/docs/docs/build/sl-getting-started.md --- website/docs/docs/build/sl-getting-started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/docs/build/sl-getting-started.md b/website/docs/docs/build/sl-getting-started.md index 04cd3126bdb..11453dde578 100644 --- a/website/docs/docs/build/sl-getting-started.md +++ b/website/docs/docs/build/sl-getting-started.md @@ -86,7 +86,7 @@ User data passes through the Semantic Layer on its way back from the warehouse.
- Is the dbt Semantic Layer open source? +Is the dbt Semantic Layer open source? The dbt Semantic Layer is proprietary; however, some components of the dbt Semantic Layer are open source, such as dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE, dbt Cloud CLI, or dbt Core CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users must be on a dbt Cloud Team or Enterprise plan.

Refer to Billing for more information.
From ad2f36c30cfd8524ac612dd14b6bc1a908faef14 Mon Sep 17 00:00:00 2001 From: mirnawong1 Date: Fri, 3 Nov 2023 15:16:34 +0000 Subject: [PATCH 8/8] update faqs --- .../use-dbt-semantic-layer/sl-architecture.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md index dc75016eb91..ff4beba1a9a 100644 --- a/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md +++ b/website/docs/docs/use-dbt-semantic-layer/sl-architecture.md @@ -19,12 +19,13 @@ The dbt Semantic Layer allows you to define metrics and use various interfaces t The dbt Semantic Layer includes the following components: -| Components | Information | Developer plans | Team plans | Enterprise plans | License | + +| Components | Information | dbt Core users | Developer plans | Team plans | Enterprise plans | License | | --- | --- | :---: | :---: | :---: | --- | -| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with YAML specifications. | ✅ | ✅ | ✅ | BSL package (code is source available) | -| **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| -| **Semantic Layer Gateway** | A service that passes queries to MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

❌| ✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | -| **Semantic Layer APIs** | The interfaces that allow users to submit metric queries using the GraphQL and JDBC APIs. They also serve as the foundation for building first-class integrations with various tools. | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| +| **[MetricFlow](/docs/build/about-metricflow)** | MetricFlow in dbt allows users to centrally define their semantic models and metrics with YAML specifications. | ✅ | ✅ | ✅ | ✅ | BSL package (code is source available) | +| **MetricFlow Server**| A proprietary server that takes metric requests and generates optimized SQL for the specific data platform. | ❌ | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| +| **Semantic Layer Gateway** | A service that passes queries to the MetricFlow server and executes the SQL generated by MetricFlow against the data platform|

❌ | ❌ |✅ | ✅ | Proprietary, Cloud (Team & Enterprise) | +| **Semantic Layer APIs** | The interfaces allow users to submit metric queries using GraphQL and JDBC APIs. They also serve as the foundation for building first-class integrations with various tools. | ❌ | ❌ | ✅ | ✅ | Proprietary, Cloud (Team & Enterprise)| ## Related questions @@ -41,8 +42,9 @@ The dbt Semantic Layer includes the following components: User data passes through the Semantic Layer on its way back from the warehouse. dbt Labs ensures security by authenticating through the customer's data warehouse. Currently, we don't cache data for the long term, but it might temporarily stay in the system for up to 10 minutes, usually less. In the future, we'll introduce a caching feature that allows us to cache data on our infrastructure for up to 24 hours.
-Is the dbt Semantic Layer open source? -The dbt Semantic Layer is proprietary, however, some components of the dbt Semantic Layer are open source, like dbt-core and MetricFlow.

The universal dbt Semantic Layer is available to all Team and Enterprise Plans during public beta. Users on dbt Cloud Developer plans or dbt Core users can use MetricFlow to only define and test metrics locally.
+ Is the dbt Semantic Layer open source? +The dbt Semantic Layer is proprietary; however, some components of the dbt Semantic Layer are open source, such as dbt-core and MetricFlow.

dbt Cloud Developer or dbt Core users can define metrics in their project, including a local dbt Core project, using the dbt Cloud IDE, dbt Cloud CLI, or dbt Core CLI. However, to experience the universal dbt Semantic Layer and access those metrics using the API or downstream tools, users must be on a dbt Cloud Team or Enterprise plan.

Refer to Billing for more information. +
Is there a dbt Semantic Layer discussion hub?