definition.yml 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. title: Git
  2. icon: '/_assets/icons/ultraviolet-git.svg'
  3. banner: '/_assets/storage/git.jpg'
  4. description: Git is a version control system for tracking changes in computer files and coordinating work on those files among multiple people. If using GitHub, use the GitHub module instead!
  5. vendor: Software Freedom Conservancy, Inc.
  6. website: 'https://git-scm.com'
  7. assetDelivery:
  8. isStreamingSupported: true
  9. isDirectAccessSupported: false
  10. defaultStreamingEnabled: true
  11. defaultDirectAccessEnabled: false
  12. contentTypes:
  13. defaultTypesEnabled: ['pages', 'images', 'documents', 'others', 'large']
  14. defaultLargeThreshold: '5MB'
  15. versioning:
  16. isSupported: true
  17. defaultEnabled: true
  18. isForceEnabled: true
  19. sync:
  20. supportedModes:
  21. - sync
  22. - push
  23. - pull
  24. defaultMode: sync
  25. schedule: PT5M
  26. props:
  27. authType:
  28. type: String
  29. default: 'ssh'
  30. title: Authentication Type
  31. hint: Use SSH for maximum security.
  32. icon: security-configuration
  33. enum:
  34. - basic|Basic
  35. - ssh|SSH
  36. enumDisplay: buttons
  37. order: 1
  38. repoUrl:
  39. type: String
  40. title: Repository URI
  41. hint: Git-compliant URI (e.g. git@server.com:org/repo.git for ssh, https://server.com/org/repo.git for basic)
  42. icon: dns
  43. order: 2
  44. branch:
  45. type: String
  46. default: 'main'
  47. title: Branch
  48. hint: The branch to use during pull / push
  49. icon: code-fork
  50. order: 3
  51. sshPrivateKeyMode:
  52. type: String
  53. title: SSH Private Key Mode
  54. hint: The mode to use to load the private key. Fill in the corresponding field below.
  55. icon: grand-master-key
  56. order: 11
  57. default: inline
  58. enum:
  59. - path|File Path
  60. - inline|Inline Contents
  61. enumDisplay: buttons
  62. if:
  63. - { key: 'authType', eq: 'ssh' }
  64. sshPrivateKeyPath:
  65. type: String
  66. title: SSH Private Key Path
  67. hint: Absolute path to the key. The key must NOT be passphrase-protected.
  68. icon: key
  69. order: 12
  70. if:
  71. - { key: 'authType', eq: 'ssh' }
  72. - { key: 'sshPrivateKeyMode', eq: 'path' }
  73. sshPrivateKeyContent:
  74. type: String
  75. title: SSH Private Key Contents
  76. hint: Paste the contents of the private key. The key must NOT be passphrase-protected.
  77. icon: key
  78. multiline: true
  79. sensitive: true
  80. order: 13
  81. if:
  82. - { key: 'authType', eq: 'ssh' }
  83. - { key: 'sshPrivateKeyMode', eq: 'inline' }
  84. verifySSL:
  85. type: Boolean
  86. default: true
  87. title: Verify SSL Certificate
  88. hint: Some hosts requires SSL certificate checking to be disabled. Leave enabled for proper security.
  89. icon: security-ssl
  90. order: 14
  91. basicUsername:
  92. type: String
  93. title: Username
  94. hint: Basic Authentication Only
  95. icon: test-account
  96. order: 20
  97. if:
  98. - { key: 'authType', eq: 'basic' }
  99. basicPassword:
  100. type: String
  101. title: Password / PAT
  102. hint: Basic Authentication Only
  103. icon: password
  104. sensitive: true
  105. order: 21
  106. if:
  107. - { key: 'authType', eq: 'basic' }
  108. defaultEmail:
  109. type: String
  110. title: Default Author Email
  111. default: 'name@company.com'
  112. hint: 'Used as fallback in case the author of the change is not present.'
  113. icon: email
  114. order: 30
  115. defaultName:
  116. type: String
  117. title: Default Author Name
  118. default: 'John Smith'
  119. hint: 'Used as fallback in case the author of the change is not present.'
  120. icon: customer
  121. order: 31
  122. localRepoPath:
  123. type: String
  124. title: Local Repository Path
  125. default: './data/repo'
  126. hint: 'Path where the local git repository will be created.'
  127. icon: symlink-directory
  128. order: 32
  129. gitBinaryPath:
  130. type: String
  131. title: Git Binary Path
  132. default: ''
  133. hint: Optional - Absolute path to the Git binary, when not available in PATH. Leave empty to use the default PATH location (recommended).
  134. icon: run-command
  135. order: 50
  136. actions:
  137. syncUntracked:
  138. label: Add Untracked Changes
  139. hint: Output all content from the DB to the local Git repository to ensure all untracked content is saved. If you enabled Git after content was created or you temporarily disabled Git, you'll want to execute this action to add the missing untracked changes.
  140. icon: database-daily-export
  141. sync:
  142. label: Force Sync
  143. hint: Will trigger an immediate sync operation, regardless of the current sync schedule. The sync direction is respected.
  144. icon: synchronize
  145. importAll:
  146. label: Import Everything
  147. hint: Will import all content currently in the local Git repository, regardless of the latest commit state. Useful for importing content from the remote repository created before git was enabled.
  148. icon: database-daily-import
  149. purge:
  150. label: Purge Local Repository
  151. hint: If you have unrelated merge histories, clearing the local repository can resolve this issue. This will not affect the remote repository or perform any commit.
  152. icon: trash