appydave-tools 0.18.0 → 0.18.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cd677d964c0e8f3f3262afd01281147aea0c2fd85454cac5898080ffc8eabb82
4
- data.tar.gz: f76224ae56fc168d0a09025e5eb63080e4e4da61934ffcba39c7a45d91fdfbc3
3
+ metadata.gz: 8237bb751795be057c4d1b297811c18f600f1ca8d303e6f76bc3cc8fc014baf9
4
+ data.tar.gz: e5b483b1532073c9ade188dec6064d520e3e7b01a6bdad47ddedae5803cd8623
5
5
  SHA512:
6
- metadata.gz: 45c4fe26c59fb70598ff001513e5f39053967042f06df797ad13b10600cfaa1f6b4002cca6f66d1782e5cee3fd6fa68c175f9f101896b706889ed1838dbf51fe
7
- data.tar.gz: 9ed7de2356fffaa3ef7e587a6aa3d0f5db429f352a4f5cc005c00c49ace6e79ef7cfc35ab0e63f4612eba17c6f3043a56f4d6aafd6de00f8979154e432d29306
6
+ metadata.gz: 16e26e8d03e4464bc84cb0147c85e49419424897ee410f1ccbec01caa8f0cc49d97b5f8d98aa3fe8400c8078084df169b8c8a5ffa2c3807f9621aa4b4db5b771
7
+ data.tar.gz: 1102addecab5aac8e3148f4735c74e94351c1a47b4ce92c5e84ac67e8d0b24169beb727128e6f01762b4d67cf60864ed357789b18482af226fa62e73042b3920
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # [0.18.0](https://github.com/appydave/appydave-tools/compare/v0.17.1...v0.18.0) (2025-11-10)
2
+
3
+
4
+ ### Features
5
+
6
+ * migrate VAT to DAM with comprehensive rename and case-insensitive brand resolution ([d776c68](https://github.com/appydave/appydave-tools/commit/d776c686e582e714c07fafa959c07327f1e0d36b))
7
+
1
8
  ## [0.17.1](https://github.com/appydave/appydave-tools/compare/v0.17.0...v0.17.1) (2025-11-10)
2
9
 
3
10
 
data/bin/dam CHANGED
@@ -158,49 +158,80 @@ class VatCLI
158
158
  end
159
159
 
160
160
  # Generate manifest
161
- # rubocop:disable Metrics/MethodLength
162
161
  def manifest_command(args)
163
162
  all_brands = args.include?('--all')
164
163
  args = args.reject { |arg| arg.start_with?('--') }
165
164
  brand_arg = args[0]
166
165
 
167
166
  if all_brands
168
- # Generate manifest for all brands
169
- Appydave::Tools::Configuration::Config.configure
170
- brands_config = Appydave::Tools::Configuration::Config.brands
167
+ generate_all_manifests
168
+ elsif brand_arg
169
+ generate_single_manifest(brand_arg)
170
+ else
171
+ show_manifest_usage
172
+ end
173
+ rescue StandardError => e
174
+ puts "❌ Error: #{e.message}"
175
+ exit 1
176
+ end
171
177
 
172
- brands_config.brands.each do |brand_info|
173
- brand_key = brand_info.key
174
- puts ''
175
- puts '=' * 60
176
-
177
- generator = Appydave::Tools::Dam::ManifestGenerator.new(brand_key)
178
- generator.generate
179
- end
178
+ def generate_all_manifests
179
+ Appydave::Tools::Configuration::Config.configure
180
+ brands_config = Appydave::Tools::Configuration::Config.brands
180
181
 
182
+ results = []
183
+ brands_config.brands.each do |brand_info|
184
+ brand_key = brand_info.key
181
185
  puts ''
182
186
  puts '=' * 60
183
- puts '✅ All brand manifests generated!'
184
- elsif brand_arg
185
- # Generate manifest for specific brand
186
- Appydave::Tools::Dam::Config.expand_brand(brand_arg)
187
- ENV['BRAND_PATH'] = Appydave::Tools::Dam::Config.brand_path(brand_arg)
188
187
 
189
- generator = Appydave::Tools::Dam::ManifestGenerator.new(brand_arg)
190
- generator.generate
191
- else
192
- puts 'Usage: dam manifest <brand> [--all]'
193
- puts ''
194
- puts 'Examples:'
195
- puts ' dam manifest appydave # Generate manifest for AppyDave brand'
196
- puts ' dam manifest --all # Generate manifests for all brands'
197
- exit 1
188
+ generator = Appydave::Tools::Dam::ManifestGenerator.new(brand_key)
189
+ result = generator.generate
190
+ results << result if result
198
191
  end
199
- rescue StandardError => e
200
- puts "❌ Error: #{e.message}"
192
+
193
+ display_manifest_summary(results)
194
+ end
195
+
196
+ def generate_single_manifest(brand_arg)
197
+ Appydave::Tools::Dam::Config.expand_brand(brand_arg)
198
+ ENV['BRAND_PATH'] = Appydave::Tools::Dam::Config.brand_path(brand_arg)
199
+
200
+ generator = Appydave::Tools::Dam::ManifestGenerator.new(brand_arg)
201
+ generator.generate
202
+ end
203
+
204
+ def show_manifest_usage
205
+ puts 'Usage: dam manifest <brand> [--all]'
206
+ puts ''
207
+ puts 'Examples:'
208
+ puts ' dam manifest appydave # Generate manifest for AppyDave brand'
209
+ puts ' dam manifest --all # Generate manifests for all brands'
201
210
  exit 1
202
211
  end
203
- # rubocop:enable Metrics/MethodLength
212
+
213
+ def display_manifest_summary(results)
214
+ puts ''
215
+ puts '=' * 60
216
+ puts '📋 Summary - Generated Manifests:'
217
+ puts ''
218
+
219
+ successful = results.select { |r| r[:success] }
220
+ failed = results.reject { |r| r[:success] }
221
+
222
+ successful.each do |result|
223
+ brand_display = result[:brand].ljust(15)
224
+ puts "✅ #{brand_display} #{result[:path]}"
225
+ end
226
+
227
+ failed.each do |result|
228
+ brand_display = result[:brand].ljust(15)
229
+ puts "❌ #{brand_display} No projects found"
230
+ end
231
+
232
+ puts ''
233
+ puts "Total manifests generated: #{successful.size}"
234
+ end
204
235
 
205
236
  # Sync light files from SSD to local
206
237
  def sync_ssd_command(args)
@@ -17,6 +17,7 @@ module Appydave
17
17
  end
18
18
 
19
19
  # Generate manifest for this brand
20
+ # @return [Hash] Result with :success, :path, and :brand keys
20
21
  def generate(output_file: nil)
21
22
  output_file ||= File.join(brand_path, 'projects.json')
22
23
  ssd_backup = brand_info.locations.ssd_backup
@@ -36,7 +37,7 @@ module Appydave
36
37
 
37
38
  if all_project_ids.empty?
38
39
  puts "❌ No projects found for brand '#{brand}'"
39
- return
40
+ return { success: false, brand: brand, path: nil }
40
41
  end
41
42
 
42
43
  # Build project entries
@@ -69,6 +70,8 @@ module Appydave
69
70
 
70
71
  # Validations
71
72
  run_validations(projects)
73
+
74
+ { success: true, brand: brand, path: output_file }
72
75
  end
73
76
 
74
77
  private
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Appydave
4
4
  module Tools
5
- VERSION = '0.18.0'
5
+ VERSION = '0.18.1'
6
6
  end
7
7
  end
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "appydave-tools",
3
- "version": "0.18.0",
3
+ "version": "0.18.1",
4
4
  "description": "AppyDave YouTube Automation Tools",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appydave-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.0
4
+ version: 0.18.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys