diff --git a/scripts/internal_events/cli/metric.rb b/scripts/internal_events/cli/metric.rb index 7bd141aeaae362878905826185db3510a61bb086..f6049a333d318f86c5a7770d3375b2bcbaea56ec 100755 --- a/scripts/internal_events/cli/metric.rb +++ b/scripts/internal_events/cli/metric.rb @@ -16,6 +16,7 @@ module InternalEventsCli :product_category, :distribution, :tier, + :tiers, :events ].freeze diff --git a/scripts/internal_events/cli/metric_definer.rb b/scripts/internal_events/cli/metric_definer.rb index b8b3370503ed831823f32922ebd7a14c98df8560..f8e9d3f090be07b8fd00a8dd4add4a93d3b78428 100755 --- a/scripts/internal_events/cli/metric_definer.rb +++ b/scripts/internal_events/cli/metric_definer.rb @@ -290,6 +290,8 @@ def prompt_for_tier(defaults) ) end + assign_shared_attr(:tiers) { |metric| [*metric.tier] } + assign_shared_attr(:distribution) do |metric| metric.tier.include?('free') ? %w[ce ee] : %w[ee] end @@ -532,6 +534,7 @@ def collect_values_for_shared_event_properties fields[:section] << find_section(event.product_group) fields[:distribution] << event.distributions&.sort fields[:tier] << event.tiers&.sort + fields[:tiers] << event.tiers&.sort end # Keep event values if every selected event is the same diff --git a/spec/fixtures/scripts/internal_events/metrics/ee_total_28d_single_event.yml b/spec/fixtures/scripts/internal_events/metrics/ee_total_28d_single_event.yml index 4e3f2918031959e5e7a7086f942de33f9fc08b17..92315aed777b830b45a6dd3111ac2ef95494d969 100644 --- a/spec/fixtures/scripts/internal_events/metrics/ee_total_28d_single_event.yml +++ b/spec/fixtures/scripts/internal_events/metrics/ee_total_28d_single_event.yml @@ -15,5 +15,8 @@ distribution: tier: - premium - ultimate +tiers: +- premium +- ultimate events: - name: internal_events_cli_used diff --git a/spec/fixtures/scripts/internal_events/metrics/ee_total_7d_single_event.yml b/spec/fixtures/scripts/internal_events/metrics/ee_total_7d_single_event.yml index b9bb0c3580c89287e638f8859593f9a3c6e1dd23..8bf955e6b655ad7ae3a09af67bb881359f045f32 100644 --- a/spec/fixtures/scripts/internal_events/metrics/ee_total_7d_single_event.yml +++ b/spec/fixtures/scripts/internal_events/metrics/ee_total_7d_single_event.yml @@ -15,5 +15,8 @@ distribution: tier: - premium - ultimate +tiers: +- premium +- ultimate events: - name: internal_events_cli_used diff --git a/spec/fixtures/scripts/internal_events/metrics/ee_total_single_event.yml b/spec/fixtures/scripts/internal_events/metrics/ee_total_single_event.yml index 91297eb80f26a285bb53d4c780c4c72dab95cb5a..829e2df4f8bfe61cf58b71aedc7df6217dcb79f5 100644 --- a/spec/fixtures/scripts/internal_events/metrics/ee_total_single_event.yml +++ b/spec/fixtures/scripts/internal_events/metrics/ee_total_single_event.yml @@ -15,5 +15,8 @@ distribution: tier: - premium - ultimate +tiers: +- premium +- ultimate events: - name: internal_events_cli_used diff --git a/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_28d.yml b/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_28d.yml index 03f1a41dfec1d934a23c5cc295bb430afc4d91ea..8b6335ba8971ac25dcf5e5c6f37ffd16a9a45861 100644 --- a/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_28d.yml +++ b/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_28d.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: random_name unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_7d.yml b/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_7d.yml index efa1df68b7216821441e2e2f1add0e169af4471f..7f22aa80771389136fea53077c10fae2fd3e4ffb 100644 --- a/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_7d.yml +++ b/spec/fixtures/scripts/internal_events/metrics/keyboard_smashed_metric_7d.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: random_name unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/label_28d_single_event_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/label_28d_single_event_additional_props.yml index 165423d56883b32f162101f1aa271a9239399393..8b3ca468a0cfa09cadb5fee39d17b524c14d97be 100644 --- a/spec/fixtures/scripts/internal_events/metrics/label_28d_single_event_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/label_28d_single_event_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: label diff --git a/spec/fixtures/scripts/internal_events/metrics/label_7d_single_event_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/label_7d_single_event_additional_props.yml index 6f2aac0a8012aaa2aeef4f31af55a2df2b8943ef..b67a333c9bff1ce13555d244c40ccb9d51db77ce 100644 --- a/spec/fixtures/scripts/internal_events/metrics/label_7d_single_event_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/label_7d_single_event_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: label diff --git a/spec/fixtures/scripts/internal_events/metrics/project_id_28d_multiple_events.yml b/spec/fixtures/scripts/internal_events/metrics/project_id_28d_multiple_events.yml index d6b2a0c40bfa5013e3224255324f61c67baf692e..6efd5619cbe9f4b096a9092f1870963261a67003 100644 --- a/spec/fixtures/scripts/internal_events/metrics/project_id_28d_multiple_events.yml +++ b/spec/fixtures/scripts/internal_events/metrics/project_id_28d_multiple_events.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_closed unique: project.id diff --git a/spec/fixtures/scripts/internal_events/metrics/project_id_7d_multiple_events.yml b/spec/fixtures/scripts/internal_events/metrics/project_id_7d_multiple_events.yml index 9df22f3825450a92e6f9010d724f417e5a30bef9..7f47884b4b2504a1261a3e3353086fe8005c3763 100644 --- a/spec/fixtures/scripts/internal_events/metrics/project_id_7d_multiple_events.yml +++ b/spec/fixtures/scripts/internal_events/metrics/project_id_7d_multiple_events.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_closed unique: project.id diff --git a/spec/fixtures/scripts/internal_events/metrics/total_multi_event_some_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/total_multi_event_some_additional_props.yml index 33700efec1e198ed5d21291d94ff2bf6536e55e4..cd6180dc47f2e3f0b380ed0a11fe85443e9a317d 100644 --- a/spec/fixtures/scripts/internal_events/metrics/total_multi_event_some_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/total_multi_event_some_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_closed - name: internal_events_cli_used diff --git a/spec/fixtures/scripts/internal_events/metrics/total_multiple_events_with_rename.yml b/spec/fixtures/scripts/internal_events/metrics/total_multiple_events_with_rename.yml index 79aec02e8300d286930a2f195c3339789575773a..3463caa680cd2ea7a02f759c93f950fa3b8ec784 100644 --- a/spec/fixtures/scripts/internal_events/metrics/total_multiple_events_with_rename.yml +++ b/spec/fixtures/scripts/internal_events/metrics/total_multiple_events_with_rename.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_closed - name: internal_events_cli_opened diff --git a/spec/fixtures/scripts/internal_events/metrics/total_single_event.yml b/spec/fixtures/scripts/internal_events/metrics/total_single_event.yml index 6a07c346ca5188626c5945d25fd334b1a8b9c647..a3ae9a80e08526bbf6d7ea4c5f74cfb0b2ce0499 100644 --- a/spec/fixtures/scripts/internal_events/metrics/total_single_event.yml +++ b/spec/fixtures/scripts/internal_events/metrics/total_single_event.yml @@ -17,5 +17,9 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used diff --git a/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event.yml b/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event.yml index d866143a50b74641621d63ecbc80d09b8e80b372..4d5ba4ea99ea0a8c7c59aa987d1ef65857a70523 100644 --- a/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event.yml +++ b/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_additional_props.yml index 58fa9a5a2a38a4a80bfd1703100fa6b2370ef45f..46847738253b40362ba9eac05e2bca36430e0b78 100644 --- a/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_all_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_all_additional_props.yml index d03ece44b06c1ce03267bf264f4ba98ec49b66b0..ddda99a397c21aada55c20e24684c527ec094475 100644 --- a/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_all_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/user_id_28d_single_event_all_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event.yml b/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event.yml index d0f4edc384b6794006c615ca3ea060ec642faa15..253005c84c304ca9678c0c0540a4d4bdcfbf175e 100644 --- a/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event.yml +++ b/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_additional_props.yml index 4503f0fe882a666455920c959aa69f846e592463..0bad13709c2ad87f0402041491dfeea38149e32b 100644 --- a/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: user.id diff --git a/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_all_additional_props.yml b/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_all_additional_props.yml index 47c9415c3fcff10fe563699d5e44b1325402b6f6..6eb8392bd416366d7d3871e6d0fda1a22949b4d5 100644 --- a/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_all_additional_props.yml +++ b/spec/fixtures/scripts/internal_events/metrics/user_id_7d_single_event_all_additional_props.yml @@ -17,6 +17,10 @@ tier: - free - premium - ultimate +tiers: +- free +- premium +- ultimate events: - name: internal_events_cli_used unique: user.id