@tigrisdata/cli 2.10.0 → 2.11.0

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.
Files changed (61) hide show
  1. package/README.md +240 -1
  2. package/dist/auth/s3-client.js +1 -1
  3. package/dist/chunk-Q4KOY3VK.js +1 -0
  4. package/dist/{chunk-SJCYBKF2.js → chunk-RAGPUVH2.js} +1 -1
  5. package/dist/chunk-SAAGVLRE.js +1 -0
  6. package/dist/{chunk-N7F2D3XT.js → chunk-YSHC5EJY.js} +1 -1
  7. package/dist/cli.js +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/lib/access-keys/assign.js +1 -1
  10. package/dist/lib/access-keys/create.js +1 -1
  11. package/dist/lib/access-keys/delete.js +1 -1
  12. package/dist/lib/access-keys/get.js +1 -1
  13. package/dist/lib/access-keys/list.js +1 -1
  14. package/dist/lib/buckets/create.js +1 -1
  15. package/dist/lib/buckets/delete.js +1 -1
  16. package/dist/lib/buckets/get.js +1 -1
  17. package/dist/lib/buckets/list.js +1 -1
  18. package/dist/lib/buckets/set-cors.js +1 -0
  19. package/dist/lib/buckets/set-migration.js +1 -0
  20. package/dist/lib/buckets/set-notifications.js +1 -0
  21. package/dist/lib/buckets/set-transition.js +1 -0
  22. package/dist/lib/buckets/set-ttl.js +1 -0
  23. package/dist/lib/buckets/set.js +1 -1
  24. package/dist/lib/cp.js +1 -1
  25. package/dist/lib/credentials/test.js +1 -1
  26. package/dist/lib/forks/create.js +1 -1
  27. package/dist/lib/forks/list.js +1 -1
  28. package/dist/lib/iam/policies/create.js +1 -1
  29. package/dist/lib/iam/policies/delete.js +1 -1
  30. package/dist/lib/iam/policies/edit.js +1 -1
  31. package/dist/lib/iam/policies/get.js +1 -1
  32. package/dist/lib/iam/policies/list.js +1 -1
  33. package/dist/lib/iam/users/invite.js +1 -1
  34. package/dist/lib/iam/users/list.js +1 -1
  35. package/dist/lib/iam/users/remove.js +1 -1
  36. package/dist/lib/iam/users/revoke-invitation.js +1 -1
  37. package/dist/lib/iam/users/update-role.js +1 -1
  38. package/dist/lib/login/select.js +1 -1
  39. package/dist/lib/ls.js +1 -1
  40. package/dist/lib/mk.js +1 -1
  41. package/dist/lib/mv.js +1 -1
  42. package/dist/lib/objects/delete.js +1 -1
  43. package/dist/lib/objects/get.js +1 -1
  44. package/dist/lib/objects/list.js +1 -1
  45. package/dist/lib/objects/put.js +1 -1
  46. package/dist/lib/objects/set.js +1 -1
  47. package/dist/lib/organizations/create.js +1 -1
  48. package/dist/lib/organizations/list.js +1 -1
  49. package/dist/lib/organizations/select.js +1 -1
  50. package/dist/lib/rm.js +1 -1
  51. package/dist/lib/snapshots/list.js +1 -1
  52. package/dist/lib/snapshots/take.js +1 -1
  53. package/dist/lib/stat.js +1 -1
  54. package/dist/lib/touch.js +1 -1
  55. package/dist/lib/whoami.js +1 -1
  56. package/dist/specs.yaml +254 -8
  57. package/dist/utils/concurrency.js +1 -0
  58. package/dist/utils/locations.js +1 -0
  59. package/dist/utils/update-check.js +1 -1
  60. package/package.json +2 -2
  61. /package/dist/{chunk-USCKVLDO.js → chunk-YEF2ZFBJ.js} +0 -0
package/dist/specs.yaml CHANGED
@@ -19,6 +19,17 @@ definitions:
19
19
  value: GLACIER_IR
20
20
  description: Lowest-cost storage for long-lived data that is rarely accessed and requires retrieval in milliseconds.
21
21
 
22
+ transition_tier_options: &transition_tier_options
23
+ - name: Infrequent Access
24
+ value: STANDARD_IA
25
+ description: Lower-cost storage for data that is accessed less frequently but requires rapid access when needed.
26
+ - name: Archive
27
+ value: GLACIER
28
+ description: Low-cost storage for data archiving. Long-term data archiving with infrequent access.
29
+ - name: Instant Retrieval Archive
30
+ value: GLACIER_IR
31
+ description: Lowest-cost storage for long-lived data that is rarely accessed and requires retrieval in milliseconds.
32
+
22
33
  consistency_options: &consistency_options
23
34
  - name: Default
24
35
  value: default
@@ -28,6 +39,8 @@ definitions:
28
39
  description: Strict read-after-write consistency globally. Latency will be higher than the default.
29
40
 
30
41
  region_options: &region_options
42
+
43
+ location_options: &location_options
31
44
  - name: Global
32
45
  value: 'global'
33
46
  description: Global
@@ -243,6 +256,7 @@ commands:
243
256
  alias: create
244
257
  examples:
245
258
  - "tigris mk my-bucket"
259
+ - "tigris mk my-bucket --access public --region iad"
246
260
  - "tigris mk my-bucket/images/"
247
261
  - "tigris mk t3://my-bucket"
248
262
  messages:
@@ -257,6 +271,39 @@ commands:
257
271
  - my-bucket/my-path
258
272
  - t3://my-bucket
259
273
  - t3://my-bucket/my-path
274
+ - name: access
275
+ description: Access level (only applies when creating a bucket)
276
+ alias: a
277
+ options: *access_options
278
+ default: private
279
+ - name: public
280
+ description: Shorthand for --access public (only applies when creating a bucket)
281
+ type: flag
282
+ - name: enable-snapshots
283
+ description: Enable snapshots for the bucket (only applies when creating a bucket)
284
+ alias: s
285
+ type: flag
286
+ default: false
287
+ - name: default-tier
288
+ description: Default storage tier (only applies when creating a bucket)
289
+ alias: t
290
+ options: *tier_options
291
+ default: STANDARD
292
+ - name: consistency
293
+ description: (Deprecated, use --locations) Consistency level (only applies when creating a bucket)
294
+ alias: c
295
+ options: *consistency_options
296
+ deprecated: true
297
+ - name: region
298
+ description: (Deprecated, use --locations) Region (only applies when creating a bucket)
299
+ alias: r
300
+ options: *region_options
301
+ deprecated: true
302
+ - name: locations
303
+ description: Location for the bucket (only applies when creating a bucket)
304
+ alias: l
305
+ options: *location_options
306
+ default: 'global'
260
307
 
261
308
  # touch
262
309
  - name: touch
@@ -501,11 +548,11 @@ commands:
501
548
  default: table
502
549
  # create
503
550
  - name: create
504
- description: Create a new bucket with optional access, tier, consistency, and region settings
551
+ description: Create a new bucket with optional access, tier, and location settings
505
552
  alias: c
506
553
  examples:
507
554
  - "tigris buckets create my-bucket"
508
- - "tigris buckets create my-bucket --access public --region iad"
555
+ - "tigris buckets create my-bucket --access public --locations iad"
509
556
  - "tigris buckets create my-bucket --enable-snapshots --default-tier STANDARD_IA"
510
557
  messages:
511
558
  onStart: 'Creating bucket...'
@@ -523,6 +570,9 @@ commands:
523
570
  alias: a
524
571
  options: *access_options
525
572
  default: private
573
+ - name: public
574
+ description: Shorthand for --access public
575
+ type: flag
526
576
  - name: enable-snapshots
527
577
  description: Enable snapshots for the bucket
528
578
  alias: s
@@ -534,14 +584,19 @@ commands:
534
584
  options: *tier_options
535
585
  default: STANDARD
536
586
  - name: consistency
537
- description: Choose the consistency level for the bucket
587
+ description: (Deprecated, use --locations) Choose the consistency level for the bucket
538
588
  alias: c
539
589
  options: *consistency_options
540
- default: default
590
+ deprecated: true
541
591
  - name: region
542
- description: Region
592
+ description: (Deprecated, use --locations) Region
543
593
  alias: r
544
594
  options: *region_options
595
+ deprecated: true
596
+ - name: locations
597
+ description: Location for the bucket
598
+ alias: l
599
+ options: *location_options
545
600
  default: 'global'
546
601
  # get
547
602
  - name: get
@@ -581,11 +636,11 @@ commands:
581
636
  - my-bucket
582
637
  # set
583
638
  - name: set
584
- description: Update settings on an existing bucket such as access level, region, caching, or custom domain
639
+ description: Update settings on an existing bucket such as access level, location, caching, or custom domain
585
640
  alias: s
586
641
  examples:
587
642
  - "tigris buckets set my-bucket --access public"
588
- - "tigris buckets set my-bucket --region iad,fra --cache-control 'max-age=3600'"
643
+ - "tigris buckets set my-bucket --locations iad,fra --cache-control 'max-age=3600'"
589
644
  - "tigris buckets set my-bucket --custom-domain assets.example.com"
590
645
  messages:
591
646
  onStart: 'Updating bucket...'
@@ -602,9 +657,14 @@ commands:
602
657
  description: Bucket access level
603
658
  options: *access_options
604
659
  - name: region
605
- description: Allowed regions (can specify multiple)
660
+ description: (Deprecated, use --locations) Allowed regions (can specify multiple)
606
661
  options: *region_options
607
662
  multiple: true
663
+ deprecated: true
664
+ - name: locations
665
+ description: Bucket location (can specify up to two for dual-region)
666
+ options: *location_options
667
+ multiple: true
608
668
  - name: allow-object-acl
609
669
  description: Enable object-level ACL
610
670
  type: boolean
@@ -618,6 +678,192 @@ commands:
618
678
  - name: enable-delete-protection
619
679
  description: Enable delete protection
620
680
  type: boolean
681
+ - name: enable-additional-headers
682
+ description: Enable additional HTTP headers (X-Content-Type-Options nosniff)
683
+ type: boolean
684
+ # set-ttl
685
+ - name: set-ttl
686
+ description: Configure object expiration (TTL) on a bucket. Objects expire after a number of days or on a specific date
687
+ examples:
688
+ - "tigris buckets set-ttl my-bucket --days 30"
689
+ - "tigris buckets set-ttl my-bucket --date 2026-06-01"
690
+ - "tigris buckets set-ttl my-bucket --disable"
691
+ messages:
692
+ onStart: 'Updating TTL settings...'
693
+ onSuccess: 'TTL settings updated for bucket {{name}}'
694
+ onFailure: 'Failed to update TTL settings'
695
+ arguments:
696
+ - name: name
697
+ description: Name of the bucket
698
+ type: positional
699
+ required: true
700
+ examples:
701
+ - my-bucket
702
+ - name: days
703
+ description: Expire objects after this many days
704
+ alias: d
705
+ - name: date
706
+ description: Expire objects on this date (ISO-8601, e.g. 2026-06-01)
707
+ - name: enable
708
+ description: Enable TTL on the bucket (uses existing lifecycle rules)
709
+ type: flag
710
+ - name: disable
711
+ description: Disable TTL on the bucket
712
+ type: flag
713
+ # set-migration
714
+ - name: set-migration
715
+ description: Configure data migration from an external S3-compatible source bucket. Tigris will pull objects on demand from the source
716
+ examples:
717
+ - "tigris buckets set-migration my-bucket --bucket source-bucket --endpoint https://s3.amazonaws.com --region us-east-1 --access-key AKIA... --secret-key wJal..."
718
+ - "tigris buckets set-migration my-bucket --bucket source-bucket --endpoint https://s3.amazonaws.com --region us-east-1 --access-key AKIA... --secret-key wJal... --write-through"
719
+ - "tigris buckets set-migration my-bucket --disable"
720
+ messages:
721
+ onStart: 'Updating migration settings...'
722
+ onSuccess: 'Migration settings updated for bucket {{name}}'
723
+ onFailure: 'Failed to update migration settings'
724
+ arguments:
725
+ - name: name
726
+ description: Name of the bucket
727
+ type: positional
728
+ required: true
729
+ examples:
730
+ - my-bucket
731
+ - name: bucket
732
+ description: Name of the source bucket to migrate from
733
+ alias: b
734
+ - name: endpoint
735
+ description: Endpoint URL of the source S3-compatible service
736
+ alias: e
737
+ - name: region
738
+ description: Region of the source bucket
739
+ alias: r
740
+ - name: access-key
741
+ description: Access key for the source bucket
742
+ alias: key
743
+ - name: secret-key
744
+ description: Secret key for the source bucket
745
+ alias: secret
746
+ - name: write-through
747
+ description: Enable write-through mode (writes go to both source and Tigris)
748
+ type: flag
749
+ - name: disable
750
+ description: Disable migration and clear all migration settings
751
+ type: flag
752
+ # set-transition
753
+ - name: set-transition
754
+ description: Configure a lifecycle transition rule on a bucket. Automatically move objects to a different storage class after a number of days or on a specific date
755
+ examples:
756
+ - "tigris buckets set-transition my-bucket --storage-class STANDARD_IA --days 30"
757
+ - "tigris buckets set-transition my-bucket --storage-class GLACIER --date 2026-06-01"
758
+ - "tigris buckets set-transition my-bucket --enable"
759
+ - "tigris buckets set-transition my-bucket --disable"
760
+ messages:
761
+ onStart: 'Updating lifecycle transition rule...'
762
+ onSuccess: 'Lifecycle transition rule updated for bucket {{name}}'
763
+ onFailure: 'Failed to update lifecycle transition rule'
764
+ arguments:
765
+ - name: name
766
+ description: Name of the bucket
767
+ type: positional
768
+ required: true
769
+ examples:
770
+ - my-bucket
771
+ - name: storage-class
772
+ description: Target storage class to transition objects to
773
+ alias: s
774
+ options: *transition_tier_options
775
+ - name: days
776
+ description: Transition objects after this many days
777
+ alias: d
778
+ - name: date
779
+ description: Transition objects on this date (ISO-8601, e.g. 2026-06-01)
780
+ - name: enable
781
+ description: Enable lifecycle transition rules on the bucket
782
+ type: flag
783
+ - name: disable
784
+ description: Disable lifecycle transition rules on the bucket
785
+ type: flag
786
+ # set-notifications
787
+ - name: set-notifications
788
+ description: Configure object event notifications on a bucket. Sends webhook requests to a URL when objects are created, updated, or deleted
789
+ examples:
790
+ - "tigris buckets set-notifications my-bucket --url https://example.com/webhook"
791
+ - "tigris buckets set-notifications my-bucket --url https://example.com/webhook --token secret123"
792
+ - "tigris buckets set-notifications my-bucket --url https://example.com/webhook --username admin --password secret"
793
+ - "tigris buckets set-notifications my-bucket --url https://example.com/webhook --filter 'images/*'"
794
+ - "tigris buckets set-notifications my-bucket --enable"
795
+ - "tigris buckets set-notifications my-bucket --disable"
796
+ - "tigris buckets set-notifications my-bucket --reset"
797
+ messages:
798
+ onStart: 'Updating notification settings...'
799
+ onSuccess: 'Notification settings updated for bucket {{name}}'
800
+ onFailure: 'Failed to update notification settings'
801
+ arguments:
802
+ - name: name
803
+ description: Name of the bucket
804
+ type: positional
805
+ required: true
806
+ examples:
807
+ - my-bucket
808
+ - name: url
809
+ description: Webhook URL to send notifications to (must be http or https)
810
+ alias: u
811
+ - name: filter
812
+ description: Event filter pattern (e.g. 'images/*')
813
+ alias: f
814
+ - name: token
815
+ description: Token for webhook authentication
816
+ alias: t
817
+ - name: username
818
+ description: Username for basic webhook authentication
819
+ - name: password
820
+ description: Password for basic webhook authentication
821
+ - name: enable
822
+ description: Enable notifications on the bucket (uses existing config)
823
+ type: flag
824
+ - name: disable
825
+ description: Disable notifications on the bucket (preserves existing config)
826
+ type: flag
827
+ - name: reset
828
+ description: Clear all notification settings on the bucket
829
+ type: flag
830
+ # set-cors
831
+ - name: set-cors
832
+ description: Configure CORS rules on a bucket. Each invocation adds a rule unless --override or --reset is used
833
+ examples:
834
+ - "tigris buckets set-cors my-bucket --origins '*' --methods GET,HEAD"
835
+ - "tigris buckets set-cors my-bucket --origins https://example.com --methods GET,POST --headers Content-Type,Authorization --max-age 3600"
836
+ - "tigris buckets set-cors my-bucket --origins https://example.com --override"
837
+ - "tigris buckets set-cors my-bucket --reset"
838
+ messages:
839
+ onStart: 'Updating CORS settings...'
840
+ onSuccess: 'CORS settings updated for bucket {{name}}'
841
+ onFailure: 'Failed to update CORS settings'
842
+ arguments:
843
+ - name: name
844
+ description: Name of the bucket
845
+ type: positional
846
+ required: true
847
+ examples:
848
+ - my-bucket
849
+ - name: origins
850
+ description: Allowed origins (comma-separated, or '*' for all)
851
+ alias: o
852
+ - name: methods
853
+ description: Allowed HTTP methods (comma-separated, e.g. GET,POST,PUT)
854
+ alias: m
855
+ - name: headers
856
+ description: Allowed request headers (comma-separated, or '*' for all)
857
+ - name: expose-headers
858
+ description: Response headers to expose (comma-separated)
859
+ - name: max-age
860
+ description: 'Preflight cache duration in seconds (default: 3600)'
861
+ - name: override
862
+ description: Replace all existing CORS rules instead of appending
863
+ type: flag
864
+ - name: reset
865
+ description: Clear all CORS rules on the bucket
866
+ type: flag
621
867
 
622
868
  #########################
623
869
  # Manage forks
@@ -0,0 +1 @@
1
+ import{a}from"../chunk-SAAGVLRE.js";export{a as executeWithConcurrency};
@@ -0,0 +1 @@
1
+ import{a,b,c}from"../chunk-Q4KOY3VK.js";export{a as multiRegionChoices,c as parseLocations,b as singleRegionChoices};
@@ -1 +1 @@
1
- import{b as a,c as b}from"../chunk-SJCYBKF2.js";import"../chunk-2XAO2OYD.js";export{b as checkForUpdates,a as isNewerVersion};
1
+ import{b as a,c as b}from"../chunk-RAGPUVH2.js";import"../chunk-2XAO2OYD.js";export{b as checkForUpdates,a as isNewerVersion};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tigrisdata/cli",
3
- "version": "2.10.0",
3
+ "version": "2.11.0",
4
4
  "description": "Command line interface for Tigris object storage",
5
5
  "type": "module",
6
6
  "exports": {
@@ -86,7 +86,7 @@
86
86
  "@aws-sdk/credential-providers": "^3.994.0",
87
87
  "@smithy/shared-ini-file-loader": "^4.4.3",
88
88
  "@tigrisdata/iam": "^1.3.0",
89
- "@tigrisdata/storage": "^2.13.0",
89
+ "@tigrisdata/storage": "^2.15.0",
90
90
  "axios": "^1.13.5",
91
91
  "commander": "^14.0.3",
92
92
  "enquirer": "^2.4.1",
File without changes