appydave-tools 0.18.3 → 0.18.4

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: 224b91f6d2a3b037091d744166f54b656f408695edd9a3b4d5f8f0599f84c841
4
- data.tar.gz: aad4d21145e880dd65b31073e3c83e5165173638d4192a35d1da836d75159d60
3
+ metadata.gz: 13697577cf21ab548b3ab152ad3a12194cf26c034eeaf2fdf5325b49730fe120
4
+ data.tar.gz: b1d7ee7daf7b60c00b80b0ec399ca7d5664d38d41cdacec959f8f8ba3f440d64
5
5
  SHA512:
6
- metadata.gz: bf4d62d414afa97cd91115b7cea9e534d81641da2483528e551d4dcd043338055f8edd6be206ce0e8e0c3a1a8746568c1662110f275956c4b02fd2a201708f46
7
- data.tar.gz: 198cf5f25d43543b9cc7861cfde567a3452ae35f5c18c9e525e9958fd3efe8fc2c9fb0af751123f3df2bfd5f40f47e4e943a89a188736e8056df27d7f9d8b71b
6
+ metadata.gz: 8d6d9643703e76b3946ca0f5923b74972e04b3981a5cd2ca3ebbac315d2d42c98064dc5e6dc12dbc0833073e1b7b36c5b41f1276b38acb5a01dd86802f7aabce
7
+ data.tar.gz: 390852362fe0ecc9c45bf4c45bfb87ef8fc697051026b89e3f93eacdfd55a8ed9796f2892870e2d661ab4491fc0183ac07d4046ae6051588fe4111b1b0140c21
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## [0.18.3](https://github.com/appydave/appydave-tools/compare/v0.18.2...v0.18.3) (2025-11-10)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * resolve archived structure detection and range folder calculation for DAM manifest and sync ([dec1400](https://github.com/appydave/appydave-tools/commit/dec1400c561f11959fb6aecd7761e916ca525082))
7
+ * resolve rubocop violations in manifest_generator (refactor build_project_entry, simplify SSD check) ([ced61be](https://github.com/appydave/appydave-tools/commit/ced61be41c3da352831d46e3486968f5ee55842c))
8
+
1
9
  ## [0.18.2](https://github.com/appydave/appydave-tools/compare/v0.18.1...v0.18.2) (2025-11-10)
2
10
 
3
11
 
data/docs/dam/usage.md CHANGED
@@ -561,17 +561,70 @@ dam s3-down
561
561
  dam s3-status
562
562
  ```
563
563
 
564
- ### Dry-Run Mode
564
+ ### Command Safety Features
565
565
 
566
- Preview actions without making changes:
566
+ #### Dry-Run Support
567
+
568
+ All filesystem-modifying commands support `--dry-run` to preview changes before execution:
569
+
570
+ | Command | Dry-Run Support | Force Flag Required | What It Previews |
571
+ |---------|----------------|---------------------|------------------|
572
+ | **s3-up** | ✅ Yes | No | Files to upload to S3 |
573
+ | **s3-down** | ✅ Yes | No | Files to download from S3 |
574
+ | **s3-cleanup-remote** | ✅ Yes | **Yes (`--force`)** | S3 files to delete |
575
+ | **s3-cleanup-local** | ✅ Yes | **Yes (`--force`)** | Local s3-staging files to delete |
576
+ | **archive** | ✅ Yes | Optional (`--force` = delete local) | Project to copy to SSD |
577
+ | **sync-ssd** | ✅ Yes | No | Light files to restore from SSD |
578
+
579
+ #### Read-Only Commands (No Dry-Run Needed)
580
+
581
+ These commands only read data and don't modify files:
582
+
583
+ | Command | Type | What It Does |
584
+ |---------|------|--------------|
585
+ | **list** | Read-only | List brands/projects |
586
+ | **manifest** | Generates JSON | Generate `projects.json` manifest |
587
+ | **s3-status** | Read-only | Check sync status |
588
+ | **help** | Read-only | Show help information |
589
+
590
+ #### Safety Workflow Examples
591
+
592
+ **Always preview destructive operations first:**
567
593
 
568
594
  ```bash
595
+ # Preview S3 upload
569
596
  dam s3-up appydave b65 --dry-run
570
- dam s3-down voz boy-baker --dry-run
571
- dam s3-cleanup-remote aitldr movie-posters --dry-run
572
- dam s3-cleanup-local appydave b65 --dry-run
597
+ # Review output, then execute
598
+ dam s3-up appydave b65
599
+
600
+ # Preview S3 cleanup (requires --force)
601
+ dam s3-cleanup-remote appydave b65 --force --dry-run
602
+ # Review output, then execute
603
+ dam s3-cleanup-remote appydave b65 --force
604
+
605
+ # Preview archive (with or without local deletion)
606
+ dam archive appydave b63 --dry-run # Copy only
607
+ dam archive appydave b63 --force --dry-run # Copy + delete local
608
+ # Review output, then execute
609
+ dam archive appydave b63 # Copy only
610
+ dam archive appydave b63 --force # Copy + delete local
611
+
612
+ # Preview SSD sync
613
+ dam sync-ssd appydave --dry-run
614
+ # Review output, then execute
615
+ dam sync-ssd appydave
573
616
  ```
574
617
 
618
+ #### Force Flag Behavior
619
+
620
+ Commands requiring `--force` provide extra protection for destructive operations:
621
+
622
+ - **s3-cleanup-remote**: Must use `--force` to delete S3 files (prevents accidental deletion)
623
+ - **s3-cleanup-local**: Must use `--force` to delete local staging files
624
+ - **archive**: Optional `--force` flag deletes local copy after successful SSD backup
625
+ - Without `--force`: Copies to SSD, keeps local copy intact
626
+ - With `--force`: Copies to SSD, then deletes local copy (frees disk space)
627
+
575
628
  ### Interactive Selection
576
629
 
577
630
  When multiple projects match short name:
@@ -113,6 +113,62 @@ dam list
113
113
 
114
114
  ---
115
115
 
116
+ ## Command Safety Features Reference
117
+
118
+ ### Dry-Run and Force Flag Support
119
+
120
+ All filesystem-modifying commands support `--dry-run` to preview changes before execution:
121
+
122
+ | Command | Dry-Run Support | Force Flag Required | What It Does |
123
+ |---------|----------------|---------------------|--------------|
124
+ | **s3-up** | ✅ Yes | No | Preview files to upload to S3 |
125
+ | **s3-down** | ✅ Yes | No | Preview files to download from S3 |
126
+ | **s3-cleanup-remote** | ✅ Yes | **Yes (`--force`)** | Preview S3 files to delete |
127
+ | **s3-cleanup-local** | ✅ Yes | **Yes (`--force`)** | Preview local s3-staging files to delete |
128
+ | **archive** | ✅ Yes | Optional (`--force` = delete local) | Preview project copy to SSD |
129
+ | **sync-ssd** | ✅ Yes | No | Preview light files to restore from SSD |
130
+
131
+ ### Read-Only Commands (No Dry-Run Needed)
132
+
133
+ These commands only read data and don't modify files:
134
+
135
+ | Command | Type | What It Does |
136
+ |---------|------|--------------|
137
+ | **list** | Read-only | List brands/projects |
138
+ | **manifest** | Generates JSON | Generate `projects.json` manifest |
139
+ | **s3-status** | Read-only | Check sync status |
140
+ | **help** | Read-only | Show help information |
141
+
142
+ ### Force Flag Behavior
143
+
144
+ Commands requiring `--force` provide extra protection for destructive operations:
145
+
146
+ - **s3-cleanup-remote**: Must use `--force` to delete S3 files (prevents accidental deletion)
147
+ - **s3-cleanup-local**: Must use `--force` to delete local staging files
148
+ - **archive**: Optional `--force` flag deletes local copy after successful SSD backup
149
+ - Without `--force`: Copies to SSD, keeps local copy intact
150
+ - With `--force`: Copies to SSD, then deletes local copy (frees disk space)
151
+
152
+ ### Safety Testing Workflow
153
+
154
+ **Always test with dry-run first:**
155
+
156
+ ```bash
157
+ # 1. Preview with dry-run
158
+ dam s3-up appydave b65 --dry-run
159
+ dam s3-cleanup-remote appydave b65 --force --dry-run
160
+ dam archive appydave b63 --dry-run
161
+
162
+ # 2. Review output carefully
163
+
164
+ # 3. Execute if safe
165
+ dam s3-up appydave b65
166
+ dam s3-cleanup-remote appydave b65 --force
167
+ dam archive appydave b63
168
+ ```
169
+
170
+ ---
171
+
116
172
  ## Test Suite
117
173
 
118
174
  ### Phase 1: Unit Tests (Automated - RSpec)
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Appydave
4
4
  module Tools
5
- VERSION = '0.18.3'
5
+ VERSION = '0.18.4'
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.3",
3
+ "version": "0.18.4",
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.3
4
+ version: 0.18.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys