Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

switch disable default config to enable default #43

Open
wants to merge 11 commits into
base: main
Choose a base branch
from

Conversation

fivetran-reneeli
Copy link
Contributor

@fivetran-reneeli fivetran-reneeli commented Dec 19, 2024

PR Overview

This PR will address the following Issue/Feature: #41

This PR will result in the following new package version: v0.13.0

Breaking since this will enable these models for users who originally had these disabled by default. They will need to manually configure them to False is they wish to continue disabling them.

Please provide the finalized CHANGELOG entry which details the relevant changes included in this PR:

Breaking Change

  • Changes the default enable/disable config from disable to enable for the marketo__enable_campaigns and marketo__enable_programs variables since the Quickstart product can dynamically enable/disable such components. If you are not a Quickstart user nor are syncing the respective campaign or program tables, you must configure the variables accordingly. Disable the related models or fields by adding the following to your dbt_project.yml file:
vars:
    marketo__enable_campaigns:   False      # Disable if Fivetran is not syncing the campaign table. This will disable the marketo__campaigns, marketo__programs, marketo__email_stats__by_campaign, marketo__email_stats__by_program models.
    marketo__enable_programs:    False      # Disable if Fivetran is not syncing the program table. This will disable the marketo__programs and marketo__email_stats__by_program models.

Refer to the README for more details.

PR Checklist

Basic Validation

Please acknowledge that you have successfully performed the following commands locally:

  • dbt run –full-refresh && dbt test
  • dbt run (if incremental models are present) && dbt test

Before marking this PR as "ready for review" the following have been applied:

  • The appropriate issue has been linked, tagged, and properly assigned
  • All necessary documentation and version upgrades have been applied
  • docs were regenerated (unless this PR does not include any code or yml updates)
  • BuildKite integration tests are passing
  • Detailed validation steps have been provided below

Detailed Validation

Please share any and all of your validation steps:

Run without the relevant variables configured, then run with them set to False.

If you had to summarize this PR in an emoji, which would it be?

💃

@fivetran-reneeli fivetran-reneeli linked an issue Dec 19, 2024 that may be closed by this pull request
4 tasks
Copy link
Contributor

@fivetran-joemarkiewicz fivetran-joemarkiewicz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fivetran-reneeli great work! I have a few change requests included. Additionally, can you provide a screenshot of the validations passing after this update to make sure there are no unexpected changes we haven't accounted for in this update. Lastly, can you add consistency validation tests for the program and campaign models now that they're enabled by default.

README.md Outdated Show resolved Hide resolved
Comment on lines +2 to +7
# - package: fivetran/marketo_source
# version: [">=0.13.0", "<0.14.0"]

- git: https://github.com/fivetran/dbt_marketo_source.git
revision: default_enable
warn-unpinned: false
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reminder to swap before merge

CHANGELOG.md Show resolved Hide resolved
CHANGELOG.md Outdated
Comment on lines 7 to 11
```yml
vars:
marketo__enable_campaigns: False # Disable if Fivetran is not syncing the campaign table. This will disable the marketo__campaigns, marketo__programs, marketo__email_stats__by_campaign, marketo__email_stats__by_program models.
marketo__enable_programs: False # Disable if Fivetran is not syncing the program table. This will disable the marketo__programs and marketo__email_stats__by_program models.
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like how we're calling out here what will be disabled if these are turned off. However, would you be able to replace this section with a bit more clear direction as to what is being turned on by default, since that's a more relevant change from this update. It would be great as well to have those be included in maybe there own bullets and not hidden as comments within a code block.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

update-- let me know what you think

@fivetran-reneeli
Copy link
Contributor Author

Thanks @fivetran-joemarkiewicz , re: validation tests; see internal ticket thread!

Copy link
Contributor

@fivetran-joemarkiewicz fivetran-joemarkiewicz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fivetran-reneeli thanks for these updates! A few quick validation test requested updates before approving.

## Breaking Change
- Updates the default configuration for the `marketo__enable_campaigns` and `marketo__enable_programs` variables from disabled to enabled.

- Each variable will enable the following models by default:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't capturing all the changes. For example, enabling marketo__enable_campaigns adds the campaign_type and program_id in the marketo__email_sends model. Also it would be good to add in here the upstream staging models these enable as well. Especially since Quickstart users will only see this changelog not and not the upstream one.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a more in-depth changelog section!

Comment on lines 1 to 4
{{ config(
tags="fivetran_validations",
enabled=var('fivetran_validation_tests_enabled', false)
) }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add to this model a variable to disable it if the dependent campaigns are disabled.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah added

Comment on lines 1 to 4
{{ config(
tags="fivetran_validations",
enabled=var('fivetran_validation_tests_enabled', false)
) }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add to this model a variable to disable it if the dependent programs are disabled.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added

models/marketo__email_sends.sql Show resolved Hide resolved
Copy link
Contributor

@fivetran-joemarkiewicz fivetran-joemarkiewicz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks so much @fivetran-reneeli! This last iteration of changes look good to me with one comment in the integration_tests/dbt_project.yml to either remove or comment out some configs.

This is ready for release review.

Comment on lines 11 to 12
marketo__enable_campaigns: false ## Uncomment for testing to disable campaigns
# marketo__enable_programs: false ## Uncomment for testing to disable programs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These both need to either be commented out or removed.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah forgot to comment this back out. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature] Enable Campaigns and Programs by Default
2 participants