sfdx-hardis 5.32.0 → 5.32.2-beta202505101931.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 (88) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/commands/hardis/doc/project2markdown.js +14 -3
  3. package/lib/commands/hardis/doc/project2markdown.js.map +1 -1
  4. package/lib/common/aiProvider/index.js +6 -1
  5. package/lib/common/aiProvider/index.js.map +1 -1
  6. package/lib/common/aiProvider/langChainProviders/langChainAnthropicProvider.d.ts +6 -0
  7. package/lib/common/aiProvider/langChainProviders/langChainAnthropicProvider.js +22 -0
  8. package/lib/common/aiProvider/langChainProviders/langChainAnthropicProvider.js.map +1 -0
  9. package/lib/common/aiProvider/langChainProviders/langChainBaseProvider.d.ts +24 -0
  10. package/lib/common/aiProvider/langChainProviders/langChainBaseProvider.js +16 -0
  11. package/lib/common/aiProvider/langChainProviders/langChainBaseProvider.js.map +1 -0
  12. package/lib/common/aiProvider/langChainProviders/langChainGoogleGenAi.d.ts +6 -0
  13. package/lib/common/aiProvider/langChainProviders/langChainGoogleGenAi.js +22 -0
  14. package/lib/common/aiProvider/langChainProviders/langChainGoogleGenAi.js.map +1 -0
  15. package/lib/common/aiProvider/langChainProviders/langChainOllamaProvider.d.ts +6 -0
  16. package/lib/common/aiProvider/langChainProviders/langChainOllamaProvider.js +18 -0
  17. package/lib/common/aiProvider/langChainProviders/langChainOllamaProvider.js.map +1 -0
  18. package/lib/common/aiProvider/langChainProviders/langChainOpenAIProvider.d.ts +6 -0
  19. package/lib/common/aiProvider/langChainProviders/langChainOpenAIProvider.js +22 -0
  20. package/lib/common/aiProvider/langChainProviders/langChainOpenAIProvider.js.map +1 -0
  21. package/lib/common/aiProvider/langChainProviders/langChainProviderFactory.d.ts +4 -0
  22. package/lib/common/aiProvider/langChainProviders/langChainProviderFactory.js +22 -0
  23. package/lib/common/aiProvider/langChainProviders/langChainProviderFactory.js.map +1 -0
  24. package/lib/common/aiProvider/langchainProvider.d.ts +10 -0
  25. package/lib/common/aiProvider/langchainProvider.js +86 -0
  26. package/lib/common/aiProvider/langchainProvider.js.map +1 -0
  27. package/lib/common/aiProvider/promptTemplates/PROMPT_COMPLETE_OBJECT_ATTRIBUTES_MD.d.ts +3 -0
  28. package/lib/common/aiProvider/promptTemplates/PROMPT_COMPLETE_OBJECT_ATTRIBUTES_MD.js +51 -0
  29. package/lib/common/aiProvider/promptTemplates/PROMPT_COMPLETE_OBJECT_ATTRIBUTES_MD.js.map +1 -0
  30. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_APEX.d.ts +3 -0
  31. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_APEX.js +40 -0
  32. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_APEX.js.map +1 -0
  33. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_APPROVAL_PROCESS.d.ts +3 -0
  34. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_APPROVAL_PROCESS.js +40 -0
  35. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_APPROVAL_PROCESS.js.map +1 -0
  36. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_ASSIGNMENT_RULES.d.ts +3 -0
  37. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_ASSIGNMENT_RULES.js +43 -0
  38. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_ASSIGNMENT_RULES.js.map +1 -0
  39. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_AUTORESPONSE_RULES.d.ts +3 -0
  40. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_AUTORESPONSE_RULES.js +42 -0
  41. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_AUTORESPONSE_RULES.js.map +1 -0
  42. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_ESCALATION_RULES.d.ts +3 -0
  43. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_ESCALATION_RULES.js +40 -0
  44. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_ESCALATION_RULES.js.map +1 -0
  45. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_FLOW.d.ts +3 -0
  46. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_FLOW.js +40 -0
  47. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_FLOW.js.map +1 -0
  48. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_FLOW_DIFF.d.ts +3 -0
  49. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_FLOW_DIFF.js +50 -0
  50. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_FLOW_DIFF.js.map +1 -0
  51. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_LWC.d.ts +3 -0
  52. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_LWC.js +68 -0
  53. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_LWC.js.map +1 -0
  54. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_OBJECT.d.ts +3 -0
  55. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_OBJECT.js +66 -0
  56. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_OBJECT.js.map +1 -0
  57. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PAGE.d.ts +3 -0
  58. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PAGE.js +40 -0
  59. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PAGE.js.map +1 -0
  60. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PERMISSION_SET.d.ts +3 -0
  61. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PERMISSION_SET.js +43 -0
  62. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PERMISSION_SET.js.map +1 -0
  63. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PERMISSION_SET_GROUP.d.ts +3 -0
  64. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PERMISSION_SET_GROUP.js +40 -0
  65. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PERMISSION_SET_GROUP.js.map +1 -0
  66. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PROFILE.d.ts +3 -0
  67. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PROFILE.js +43 -0
  68. package/lib/common/aiProvider/promptTemplates/PROMPT_DESCRIBE_PROFILE.js.map +1 -0
  69. package/lib/common/aiProvider/promptTemplates/PROMPT_SOLVE_DEPLOYMENT_ERROR.d.ts +3 -0
  70. package/lib/common/aiProvider/promptTemplates/PROMPT_SOLVE_DEPLOYMENT_ERROR.js +40 -0
  71. package/lib/common/aiProvider/promptTemplates/PROMPT_SOLVE_DEPLOYMENT_ERROR.js.map +1 -0
  72. package/lib/common/aiProvider/promptTemplates/index.d.ts +2 -0
  73. package/lib/common/aiProvider/promptTemplates/index.js +33 -0
  74. package/lib/common/aiProvider/promptTemplates/index.js.map +1 -0
  75. package/lib/common/aiProvider/promptTemplates/types.d.ts +11 -0
  76. package/lib/common/aiProvider/promptTemplates/types.js +2 -0
  77. package/lib/common/aiProvider/promptTemplates/types.js.map +1 -0
  78. package/lib/common/aiProvider/promptTemplates.d.ts +0 -92
  79. package/lib/common/aiProvider/promptTemplates.js +28 -433
  80. package/lib/common/aiProvider/promptTemplates.js.map +1 -1
  81. package/lib/common/aiProvider/utils.d.ts +1 -0
  82. package/lib/common/aiProvider/utils.js +6 -0
  83. package/lib/common/aiProvider/utils.js.map +1 -1
  84. package/lib/common/utils/rulesBuilderUtil.js +6 -2
  85. package/lib/common/utils/rulesBuilderUtil.js.map +1 -1
  86. package/oclif.lock +272 -49
  87. package/oclif.manifest.json +1472 -1472
  88. package/package.json +15 -6
@@ -57,13 +57,12 @@
57
57
  "world:hello"
58
58
  ]
59
59
  },
60
- "hardis:auth:login": {
60
+ "hardis:cache:clear": {
61
61
  "aliases": [],
62
62
  "args": {},
63
- "description": "Login to salesforce org",
63
+ "description": "Clear cache generated by sfdx-hardis",
64
64
  "examples": [
65
- "$ sf hardis:auth:login",
66
- "CI=true sf hardis:auth:login"
65
+ "$ sf hardis:cache:clear"
67
66
  ],
68
67
  "flags": {
69
68
  "json": {
@@ -81,28 +80,6 @@
81
80
  "multiple": false,
82
81
  "type": "option"
83
82
  },
84
- "instanceurl": {
85
- "char": "r",
86
- "description": "URL of org instance",
87
- "name": "instanceurl",
88
- "hasDynamicHelp": false,
89
- "multiple": false,
90
- "type": "option"
91
- },
92
- "devhub": {
93
- "char": "h",
94
- "description": "Also connect associated DevHub",
95
- "name": "devhub",
96
- "allowNo": false,
97
- "type": "boolean"
98
- },
99
- "scratchorg": {
100
- "char": "s",
101
- "description": "Scratch org",
102
- "name": "scratchorg",
103
- "allowNo": false,
104
- "type": "boolean"
105
- },
106
83
  "debug": {
107
84
  "char": "d",
108
85
  "description": "Activate debug mode (more logs)",
@@ -126,38 +103,39 @@
126
103
  },
127
104
  "hasDynamicHelp": false,
128
105
  "hiddenAliases": [],
129
- "id": "hardis:auth:login",
106
+ "id": "hardis:cache:clear",
130
107
  "pluginAlias": "sfdx-hardis",
131
108
  "pluginName": "sfdx-hardis",
132
109
  "pluginType": "core",
133
110
  "strict": true,
134
111
  "enableJsonFlag": true,
135
- "title": "Login",
112
+ "title": "Clear sfdx-hardis cache",
136
113
  "requiresProject": false,
137
114
  "isESM": true,
138
115
  "relativePath": [
139
116
  "lib",
140
117
  "commands",
141
118
  "hardis",
142
- "auth",
143
- "login.js"
119
+ "cache",
120
+ "clear.js"
144
121
  ],
145
122
  "aliasPermutations": [],
146
123
  "permutations": [
147
- "hardis:auth:login",
148
- "auth:hardis:login",
149
- "auth:login:hardis",
150
- "hardis:login:auth",
151
- "login:hardis:auth",
152
- "login:auth:hardis"
124
+ "hardis:cache:clear",
125
+ "cache:hardis:clear",
126
+ "cache:clear:hardis",
127
+ "hardis:clear:cache",
128
+ "clear:hardis:cache",
129
+ "clear:cache:hardis"
153
130
  ]
154
131
  },
155
- "hardis:cache:clear": {
132
+ "hardis:auth:login": {
156
133
  "aliases": [],
157
134
  "args": {},
158
- "description": "Clear cache generated by sfdx-hardis",
135
+ "description": "Login to salesforce org",
159
136
  "examples": [
160
- "$ sf hardis:cache:clear"
137
+ "$ sf hardis:auth:login",
138
+ "CI=true sf hardis:auth:login"
161
139
  ],
162
140
  "flags": {
163
141
  "json": {
@@ -175,6 +153,28 @@
175
153
  "multiple": false,
176
154
  "type": "option"
177
155
  },
156
+ "instanceurl": {
157
+ "char": "r",
158
+ "description": "URL of org instance",
159
+ "name": "instanceurl",
160
+ "hasDynamicHelp": false,
161
+ "multiple": false,
162
+ "type": "option"
163
+ },
164
+ "devhub": {
165
+ "char": "h",
166
+ "description": "Also connect associated DevHub",
167
+ "name": "devhub",
168
+ "allowNo": false,
169
+ "type": "boolean"
170
+ },
171
+ "scratchorg": {
172
+ "char": "s",
173
+ "description": "Scratch org",
174
+ "name": "scratchorg",
175
+ "allowNo": false,
176
+ "type": "boolean"
177
+ },
178
178
  "debug": {
179
179
  "char": "d",
180
180
  "description": "Activate debug mode (more logs)",
@@ -198,30 +198,30 @@
198
198
  },
199
199
  "hasDynamicHelp": false,
200
200
  "hiddenAliases": [],
201
- "id": "hardis:cache:clear",
201
+ "id": "hardis:auth:login",
202
202
  "pluginAlias": "sfdx-hardis",
203
203
  "pluginName": "sfdx-hardis",
204
204
  "pluginType": "core",
205
205
  "strict": true,
206
206
  "enableJsonFlag": true,
207
- "title": "Clear sfdx-hardis cache",
207
+ "title": "Login",
208
208
  "requiresProject": false,
209
209
  "isESM": true,
210
210
  "relativePath": [
211
211
  "lib",
212
212
  "commands",
213
213
  "hardis",
214
- "cache",
215
- "clear.js"
214
+ "auth",
215
+ "login.js"
216
216
  ],
217
217
  "aliasPermutations": [],
218
218
  "permutations": [
219
- "hardis:cache:clear",
220
- "cache:hardis:clear",
221
- "cache:clear:hardis",
222
- "hardis:clear:cache",
223
- "clear:hardis:cache",
224
- "clear:cache:hardis"
219
+ "hardis:auth:login",
220
+ "auth:hardis:login",
221
+ "auth:login:hardis",
222
+ "hardis:login:auth",
223
+ "login:hardis:auth",
224
+ "login:auth:hardis"
225
225
  ]
226
226
  },
227
227
  "hardis:config:get": {
@@ -781,7 +781,7 @@
781
781
  "hardis:doc:project2markdown": {
782
782
  "aliases": [],
783
783
  "args": {},
784
- "description": "Generates a markdown documentation from a SFDX project\n\n- Objects\n- Flows\n- Apex\n- Lightning Pages\n- SFDX-Hardis Config\n- Branches & Orgs\n- Installed Packages\n- Manifests\n\nCan work on any sfdx project, no need for it to be a sfdx-hardis flavored one.\n\nGenerates markdown files will be written in **docs** folder (except README.md where a link to doc index is added)\n\n- You can customize the pages following [mkdocs-material setup documentation](https://squidfunk.github.io/mkdocs-material/setup/)\n- You can manually add new markdown files in the \"docs\" folder to extend this documentation and add references to them in \"mkdocs.yml\"\n- You can also add images in folder \"docs/assets\" and embed them in markdown files.\n\nTo read Flow documentations if your markdown reader doesn't handle MermaidJS syntax, this command could require @mermaid-js/mermaid-cli\n\n- Run `npm install @mermaid-js/mermaid-cli --global` if puppeteer works in your environment\n- It can also be run as a docker image\n\nBoth modes will be tried by default, but you can also force one of them by defining environment variable `MERMAID_MODES=docker` or `MERMAID_MODES=cli`\n\n_sfdx-hardis docker image is alpine-based and does not succeed to run mermaid/puppeteer: if you can help, please submit a PR !_\n\nIf Flow history doc always display a single state, you probably need to update your workflow configuration:\n\n- on Gitlab: Env variable [`GIT_FETCH_EXTRA_FLAGS: --depth 10000`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.gitlab-ci.yml#L11)\n- on GitHub: [`fetch-depth: 0`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.github/workflows/org-monitoring.yml#L58)\n- on Azure: [`fetchDepth: \"0\"`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/azure-pipelines.yml#L39)\n- on Bitbucket: [`step: clone: depth: full`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/bitbucket-pipelines.yml#L18)\n\n![Screenshot flow doc](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-flow-doc.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-project-doc.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-project-doc-2.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-object-diagram.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-project-doc-profile.gif)\n\nIf it is a sfdx-hardis CI/CD project, a diagram of the branches and orgs strategy will be generated.\n\n![](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-doc-branches-strategy.jpg)\n\nIf [AI integration](https://sfdx-hardis.cloudity.com/salesforce-ai-setup/) is configured, documentation will contain a summary of the Flow.\n\nIf you have a complex strategy, you might need to input property **mergeTargets** in branch-scoped sfdx-hardis.yml file to have a correct diagram.\n\n## Doc HTML Pages\n\nTo read the documentation as HTML pages, run the following code (you need [**Python**](https://www.python.org/downloads/) on your computer)\n\n```python\npip install mkdocs-material mkdocs-exclude-search mdx_truly_sane_lists || python -m pip install mkdocs-material mkdocs-exclude-search mdx_truly_sane_lists || py -m pip install mkdocs-material mkdocs-exclude-search mdx_truly_sane_lists\nmkdocs serve -v || python -m mkdocs serve -v || py -m mkdocs serve -v\n```\n\nTo just generate HTML pages that you can host anywhere, run `mkdocs build -v || python -m mkdocs build -v || py -m mkdocs build -v`\n\n",
784
+ "description": "Generates a markdown documentation from a SFDX project\n\n- Objects (with fields, validation rules, relationships and dependencies)\n- Automations\n - Approval Processes\n - Assignment Rules\n - AutoResponse Rules\n - Escalation Rules\n - Flows\n- Authorizations\n - Profiles\n - Permission Set Groups\n - Permission Sets\n- Code\n - Apex\n - Lightning Web Components\n- Lightning Pages\n- SFDX-Hardis Config\n- Branches & Orgs\n- Installed Packages\n- Manifests\n\nCan work on any sfdx project, no need for it to be a sfdx-hardis flavored one.\n\nGenerates markdown files will be written in **docs** folder (except README.md where a link to doc index is added)\n\n- You can customize the pages following [mkdocs-material setup documentation](https://squidfunk.github.io/mkdocs-material/setup/)\n- You can manually add new markdown files in the \"docs\" folder to extend this documentation and add references to them in \"mkdocs.yml\"\n- You can also add images in folder \"docs/assets\" and embed them in markdown files.\n\nTo read Flow documentations if your markdown reader doesn't handle MermaidJS syntax, this command could require @mermaid-js/mermaid-cli\n\n- Run `npm install @mermaid-js/mermaid-cli --global` if puppeteer works in your environment\n- It can also be run as a docker image\n\nBoth modes will be tried by default, but you can also force one of them by defining environment variable `MERMAID_MODES=docker` or `MERMAID_MODES=cli`\n\n_sfdx-hardis docker image is alpine-based and does not succeed to run mermaid/puppeteer: if you can help, please submit a PR !_\n\nIf Flow history doc always display a single state, you probably need to update your workflow configuration:\n\n- on Gitlab: Env variable [`GIT_FETCH_EXTRA_FLAGS: --depth 10000`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.gitlab-ci.yml#L11)\n- on GitHub: [`fetch-depth: 0`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.github/workflows/org-monitoring.yml#L58)\n- on Azure: [`fetchDepth: \"0\"`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/azure-pipelines.yml#L39)\n- on Bitbucket: [`step: clone: depth: full`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/bitbucket-pipelines.yml#L18)\n\n![Screenshot flow doc](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-flow-doc.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-project-doc.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-project-doc-2.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-object-diagram.jpg)\n\n![Screenshot project documentation](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-project-doc-profile.gif)\n\nIf it is a sfdx-hardis CI/CD project, a diagram of the branches and orgs strategy will be generated.\n\n![](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/screenshot-doc-branches-strategy.jpg)\n\nIf [AI integration](https://sfdx-hardis.cloudity.com/salesforce-ai-setup/) is configured, documentation will contain a summary of the Flow.\n\nIf you have a complex strategy, you might need to input property **mergeTargets** in branch-scoped sfdx-hardis.yml file to have a correct diagram.\n\n## Doc HTML Pages\n\nTo read the documentation as HTML pages, run the following code (you need [**Python**](https://www.python.org/downloads/) on your computer)\n\n```python\npip install mkdocs-material mkdocs-exclude-search mdx_truly_sane_lists || python -m pip install mkdocs-material mkdocs-exclude-search mdx_truly_sane_lists || py -m pip install mkdocs-material mkdocs-exclude-search mdx_truly_sane_lists\nmkdocs serve -v || python -m mkdocs serve -v || py -m mkdocs serve -v\n```\n\nTo just generate HTML pages that you can host anywhere, run `mkdocs build -v || python -m mkdocs build -v || py -m mkdocs build -v`\n\n",
785
785
  "examples": [
786
786
  "$ sf hardis:doc:project2markdown",
787
787
  "$ sf hardis:doc:project2markdown --with-history",
@@ -1740,12 +1740,12 @@
1740
1740
  "toml2csv:misc:hardis"
1741
1741
  ]
1742
1742
  },
1743
- "hardis:package:create": {
1743
+ "hardis:org:connect": {
1744
1744
  "aliases": [],
1745
1745
  "args": {},
1746
- "description": "Create a new package",
1746
+ "description": "Connect to an org without setting it as default username, then proposes to open the org in web browser\n ",
1747
1747
  "examples": [
1748
- "$ sf hardis:package:create"
1748
+ "$ sf hardis:org:connect"
1749
1749
  ],
1750
1750
  "flags": {
1751
1751
  "json": {
@@ -1782,56 +1782,42 @@
1782
1782
  "name": "skipauth",
1783
1783
  "allowNo": false,
1784
1784
  "type": "boolean"
1785
- },
1786
- "target-dev-hub": {
1787
- "aliases": [
1788
- "targetdevhubusername"
1789
- ],
1790
- "char": "v",
1791
- "deprecateAliases": true,
1792
- "name": "target-dev-hub",
1793
- "noCacheDefault": true,
1794
- "required": true,
1795
- "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
1796
- "hasDynamicHelp": true,
1797
- "multiple": false,
1798
- "type": "option"
1799
1785
  }
1800
1786
  },
1801
- "hasDynamicHelp": true,
1787
+ "hasDynamicHelp": false,
1802
1788
  "hiddenAliases": [],
1803
- "id": "hardis:package:create",
1789
+ "id": "hardis:org:connect",
1804
1790
  "pluginAlias": "sfdx-hardis",
1805
1791
  "pluginName": "sfdx-hardis",
1806
1792
  "pluginType": "core",
1807
1793
  "strict": true,
1808
1794
  "enableJsonFlag": true,
1809
- "title": "Create a new package",
1810
- "requiresProject": true,
1795
+ "title": "Connect to an org",
1796
+ "requiresProject": false,
1811
1797
  "isESM": true,
1812
1798
  "relativePath": [
1813
1799
  "lib",
1814
1800
  "commands",
1815
1801
  "hardis",
1816
- "package",
1817
- "create.js"
1802
+ "org",
1803
+ "connect.js"
1818
1804
  ],
1819
1805
  "aliasPermutations": [],
1820
1806
  "permutations": [
1821
- "hardis:package:create",
1822
- "package:hardis:create",
1823
- "package:create:hardis",
1824
- "hardis:create:package",
1825
- "create:hardis:package",
1826
- "create:package:hardis"
1807
+ "hardis:org:connect",
1808
+ "org:hardis:connect",
1809
+ "org:connect:hardis",
1810
+ "hardis:connect:org",
1811
+ "connect:hardis:org",
1812
+ "connect:org:hardis"
1827
1813
  ]
1828
1814
  },
1829
- "hardis:package:install": {
1815
+ "hardis:org:create": {
1830
1816
  "aliases": [],
1831
1817
  "args": {},
1832
- "description": "Install a package in an org using its id (starting with **04t**)\n\nAssisted menu to propose to update `installedPackages` property in `.sfdx-hardis.yml`\n",
1818
+ "description": "Create and initialize sandbox org",
1833
1819
  "examples": [
1834
- "$ sf hardis:package:install"
1820
+ "$ sf hardis:org:create"
1835
1821
  ],
1836
1822
  "flags": {
1837
1823
  "json": {
@@ -1849,14 +1835,6 @@
1849
1835
  "multiple": false,
1850
1836
  "type": "option"
1851
1837
  },
1852
- "package": {
1853
- "char": "p",
1854
- "description": "Package Version Id to install (04t...)",
1855
- "name": "package",
1856
- "hasDynamicHelp": false,
1857
- "multiple": false,
1858
- "type": "option"
1859
- },
1860
1838
  "debug": {
1861
1839
  "char": "d",
1862
1840
  "description": "Activate debug mode (more logs)",
@@ -1871,72 +1849,54 @@
1871
1849
  "multiple": false,
1872
1850
  "type": "option"
1873
1851
  },
1874
- "installationkey": {
1875
- "char": "k",
1876
- "description": "installation key for key-protected package (default: null)",
1877
- "name": "installationkey",
1878
- "default": "",
1879
- "hasDynamicHelp": false,
1880
- "multiple": false,
1881
- "type": "option"
1882
- },
1883
1852
  "skipauth": {
1884
1853
  "description": "Skip authentication check when a default username is required",
1885
1854
  "name": "skipauth",
1886
1855
  "allowNo": false,
1887
1856
  "type": "boolean"
1888
- },
1889
- "target-org": {
1890
- "aliases": [
1891
- "targetusername",
1892
- "u"
1893
- ],
1894
- "char": "o",
1895
- "deprecateAliases": true,
1896
- "name": "target-org",
1897
- "noCacheDefault": true,
1898
- "required": true,
1899
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
1900
- "hasDynamicHelp": true,
1901
- "multiple": false,
1902
- "type": "option"
1903
1857
  }
1904
1858
  },
1905
- "hasDynamicHelp": true,
1859
+ "hasDynamicHelp": false,
1906
1860
  "hiddenAliases": [],
1907
- "id": "hardis:package:install",
1861
+ "id": "hardis:org:create",
1908
1862
  "pluginAlias": "sfdx-hardis",
1909
1863
  "pluginName": "sfdx-hardis",
1910
1864
  "pluginType": "core",
1911
1865
  "strict": true,
1912
1866
  "enableJsonFlag": true,
1913
- "title": "Install packages in an org",
1867
+ "title": "Create sandbox org",
1868
+ "supportsDevhubUsername": true,
1869
+ "requiresProject": true,
1870
+ "requiresSfdxPlugins": [
1871
+ "sfdmu"
1872
+ ],
1914
1873
  "isESM": true,
1915
1874
  "relativePath": [
1916
1875
  "lib",
1917
1876
  "commands",
1918
1877
  "hardis",
1919
- "package",
1920
- "install.js"
1878
+ "org",
1879
+ "create.js"
1921
1880
  ],
1922
1881
  "aliasPermutations": [],
1923
1882
  "permutations": [
1924
- "hardis:package:install",
1925
- "package:hardis:install",
1926
- "package:install:hardis",
1927
- "hardis:install:package",
1928
- "install:hardis:package",
1929
- "install:package:hardis"
1883
+ "hardis:org:create",
1884
+ "org:hardis:create",
1885
+ "org:create:hardis",
1886
+ "hardis:create:org",
1887
+ "create:hardis:org",
1888
+ "create:org:hardis"
1930
1889
  ]
1931
1890
  },
1932
- "hardis:package:mergexml": {
1891
+ "hardis:org:multi-org-query": {
1933
1892
  "aliases": [],
1934
1893
  "args": {},
1935
- "description": "Select and merge package.xml files",
1894
+ "description": "Executes a SOQL query in multiple orgs and generate a single report from it\n \nYou can send a custom query using --query, or use one of the predefined queries using --query-template.\n\nIf you use the command from a CI/CD job, you must previously authenticate to the usernames present in --target-orgs.\n\n[![Use in VsCode SFDX Hardis !](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/multi-org-query-demo.gif)](https://marketplace.visualstudio.com/items?itemName=NicolasVuillamy.vscode-sfdx-hardis)\n",
1936
1895
  "examples": [
1937
- "$ sf hardis:package:mergexml",
1938
- "$ sf hardis:package:mergexml --folder packages --pattern /**/*.xml --result myMergedPackage.xml",
1939
- "$ sf hardis:package:mergexml --packagexmls \"config/mypackage1.xml,config/mypackage2.xml,config/mypackage3.xml\" --result myMergedPackage.xml"
1896
+ "$ sf hardis:org:multi-org-query",
1897
+ "$ sf hardis:org:multi-org-query --query \"SELECT Id,Username FROM User\"",
1898
+ "$ sf hardis:org:multi-org-query --query \"SELECT Id,Username FROM User\" --target-orgs nico@cloudity.com nico@cloudity.com.preprod nico@cloudity.com.uat",
1899
+ "$ sf hardis:org:multi-org-query --query-template active-users --target-orgs nico@cloudity.com nico@cloudity.com.preprod nico@cloudity.com.uat"
1940
1900
  ],
1941
1901
  "flags": {
1942
1902
  "json": {
@@ -1954,42 +1914,51 @@
1954
1914
  "multiple": false,
1955
1915
  "type": "option"
1956
1916
  },
1957
- "folder": {
1958
- "char": "f",
1959
- "description": "Root folder",
1960
- "name": "folder",
1961
- "default": "manifest",
1917
+ "query": {
1918
+ "char": "q",
1919
+ "description": "SOQL Query to run on multiple orgs",
1920
+ "exclusive": [
1921
+ "query-template"
1922
+ ],
1923
+ "name": "query",
1962
1924
  "hasDynamicHelp": false,
1963
1925
  "multiple": false,
1964
1926
  "type": "option"
1965
1927
  },
1966
- "packagexmls": {
1967
- "char": "p",
1968
- "description": "Comma separated list of package.xml files to merge. Will be prompted to user if not provided",
1969
- "name": "packagexmls",
1928
+ "query-template": {
1929
+ "char": "t",
1930
+ "description": "Use one of predefined SOQL Query templates",
1931
+ "exclusive": [
1932
+ "query"
1933
+ ],
1934
+ "name": "query-template",
1970
1935
  "hasDynamicHelp": false,
1971
1936
  "multiple": false,
1937
+ "options": [
1938
+ "active-users",
1939
+ "all-users"
1940
+ ],
1972
1941
  "type": "option"
1973
1942
  },
1974
- "pattern": {
1943
+ "target-orgs": {
1975
1944
  "char": "x",
1976
- "description": "Name criteria to list package.xml files",
1977
- "name": "pattern",
1978
- "default": "/**/*package*.xml",
1945
+ "description": "List of org usernames or aliases.",
1946
+ "name": "target-orgs",
1979
1947
  "hasDynamicHelp": false,
1980
- "multiple": false,
1948
+ "multiple": true,
1981
1949
  "type": "option"
1982
1950
  },
1983
- "result": {
1984
- "char": "r",
1985
- "description": "Result package.xml file name",
1986
- "name": "result",
1951
+ "outputfile": {
1952
+ "char": "f",
1953
+ "description": "Force the path and name of output report file. Must end with .csv",
1954
+ "name": "outputfile",
1987
1955
  "hasDynamicHelp": false,
1988
1956
  "multiple": false,
1989
1957
  "type": "option"
1990
1958
  },
1991
1959
  "debug": {
1992
- "description": "debug",
1960
+ "char": "d",
1961
+ "description": "Activate debug mode (more logs)",
1993
1962
  "name": "debug",
1994
1963
  "allowNo": false,
1995
1964
  "type": "boolean"
@@ -2010,38 +1979,37 @@
2010
1979
  },
2011
1980
  "hasDynamicHelp": false,
2012
1981
  "hiddenAliases": [],
2013
- "id": "hardis:package:mergexml",
1982
+ "id": "hardis:org:multi-org-query",
2014
1983
  "pluginAlias": "sfdx-hardis",
2015
1984
  "pluginName": "sfdx-hardis",
2016
1985
  "pluginType": "core",
2017
1986
  "strict": true,
2018
1987
  "enableJsonFlag": true,
2019
- "title": "Merge package.xml files",
2020
- "requiresProject": false,
1988
+ "title": "Multiple Orgs SOQL Query",
2021
1989
  "isESM": true,
2022
1990
  "relativePath": [
2023
1991
  "lib",
2024
1992
  "commands",
2025
1993
  "hardis",
2026
- "package",
2027
- "mergexml.js"
1994
+ "org",
1995
+ "multi-org-query.js"
2028
1996
  ],
2029
1997
  "aliasPermutations": [],
2030
1998
  "permutations": [
2031
- "hardis:package:mergexml",
2032
- "package:hardis:mergexml",
2033
- "package:mergexml:hardis",
2034
- "hardis:mergexml:package",
2035
- "mergexml:hardis:package",
2036
- "mergexml:package:hardis"
1999
+ "hardis:org:multi-org-query",
2000
+ "org:hardis:multi-org-query",
2001
+ "org:multi-org-query:hardis",
2002
+ "hardis:multi-org-query:org",
2003
+ "multi-org-query:hardis:org",
2004
+ "multi-org-query:org:hardis"
2037
2005
  ]
2038
2006
  },
2039
- "hardis:org:connect": {
2007
+ "hardis:org:select": {
2040
2008
  "aliases": [],
2041
2009
  "args": {},
2042
- "description": "Connect to an org without setting it as default username, then proposes to open the org in web browser\n ",
2010
+ "description": "Interactive org selection for user",
2043
2011
  "examples": [
2044
- "$ sf hardis:org:connect"
2012
+ "$ sf hardis:org:select"
2045
2013
  ],
2046
2014
  "flags": {
2047
2015
  "json": {
@@ -2059,6 +2027,20 @@
2059
2027
  "multiple": false,
2060
2028
  "type": "option"
2061
2029
  },
2030
+ "devhub": {
2031
+ "char": "h",
2032
+ "description": "Also connect associated DevHub",
2033
+ "name": "devhub",
2034
+ "allowNo": false,
2035
+ "type": "boolean"
2036
+ },
2037
+ "scratch": {
2038
+ "char": "s",
2039
+ "description": "Select scratch org related to default DevHub",
2040
+ "name": "scratch",
2041
+ "allowNo": false,
2042
+ "type": "boolean"
2043
+ },
2062
2044
  "debug": {
2063
2045
  "char": "d",
2064
2046
  "description": "Activate debug mode (more logs)",
@@ -2082,13 +2064,13 @@
2082
2064
  },
2083
2065
  "hasDynamicHelp": false,
2084
2066
  "hiddenAliases": [],
2085
- "id": "hardis:org:connect",
2067
+ "id": "hardis:org:select",
2086
2068
  "pluginAlias": "sfdx-hardis",
2087
2069
  "pluginName": "sfdx-hardis",
2088
2070
  "pluginType": "core",
2089
2071
  "strict": true,
2090
2072
  "enableJsonFlag": true,
2091
- "title": "Connect to an org",
2073
+ "title": "Select org",
2092
2074
  "requiresProject": false,
2093
2075
  "isESM": true,
2094
2076
  "relativePath": [
@@ -2096,24 +2078,24 @@
2096
2078
  "commands",
2097
2079
  "hardis",
2098
2080
  "org",
2099
- "connect.js"
2081
+ "select.js"
2100
2082
  ],
2101
2083
  "aliasPermutations": [],
2102
2084
  "permutations": [
2103
- "hardis:org:connect",
2104
- "org:hardis:connect",
2105
- "org:connect:hardis",
2106
- "hardis:connect:org",
2107
- "connect:hardis:org",
2108
- "connect:org:hardis"
2085
+ "hardis:org:select",
2086
+ "org:hardis:select",
2087
+ "org:select:hardis",
2088
+ "hardis:select:org",
2089
+ "select:hardis:org",
2090
+ "select:org:hardis"
2109
2091
  ]
2110
2092
  },
2111
- "hardis:org:create": {
2093
+ "hardis:package:create": {
2112
2094
  "aliases": [],
2113
2095
  "args": {},
2114
- "description": "Create and initialize sandbox org",
2096
+ "description": "Create a new package",
2115
2097
  "examples": [
2116
- "$ sf hardis:org:create"
2098
+ "$ sf hardis:package:create"
2117
2099
  ],
2118
2100
  "flags": {
2119
2101
  "json": {
@@ -2150,49 +2132,56 @@
2150
2132
  "name": "skipauth",
2151
2133
  "allowNo": false,
2152
2134
  "type": "boolean"
2135
+ },
2136
+ "target-dev-hub": {
2137
+ "aliases": [
2138
+ "targetdevhubusername"
2139
+ ],
2140
+ "char": "v",
2141
+ "deprecateAliases": true,
2142
+ "name": "target-dev-hub",
2143
+ "noCacheDefault": true,
2144
+ "required": true,
2145
+ "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
2146
+ "hasDynamicHelp": true,
2147
+ "multiple": false,
2148
+ "type": "option"
2153
2149
  }
2154
2150
  },
2155
- "hasDynamicHelp": false,
2151
+ "hasDynamicHelp": true,
2156
2152
  "hiddenAliases": [],
2157
- "id": "hardis:org:create",
2153
+ "id": "hardis:package:create",
2158
2154
  "pluginAlias": "sfdx-hardis",
2159
2155
  "pluginName": "sfdx-hardis",
2160
2156
  "pluginType": "core",
2161
2157
  "strict": true,
2162
2158
  "enableJsonFlag": true,
2163
- "title": "Create sandbox org",
2164
- "supportsDevhubUsername": true,
2159
+ "title": "Create a new package",
2165
2160
  "requiresProject": true,
2166
- "requiresSfdxPlugins": [
2167
- "sfdmu"
2168
- ],
2169
2161
  "isESM": true,
2170
2162
  "relativePath": [
2171
2163
  "lib",
2172
2164
  "commands",
2173
2165
  "hardis",
2174
- "org",
2166
+ "package",
2175
2167
  "create.js"
2176
2168
  ],
2177
2169
  "aliasPermutations": [],
2178
2170
  "permutations": [
2179
- "hardis:org:create",
2180
- "org:hardis:create",
2181
- "org:create:hardis",
2182
- "hardis:create:org",
2183
- "create:hardis:org",
2184
- "create:org:hardis"
2171
+ "hardis:package:create",
2172
+ "package:hardis:create",
2173
+ "package:create:hardis",
2174
+ "hardis:create:package",
2175
+ "create:hardis:package",
2176
+ "create:package:hardis"
2185
2177
  ]
2186
2178
  },
2187
- "hardis:org:multi-org-query": {
2179
+ "hardis:package:install": {
2188
2180
  "aliases": [],
2189
2181
  "args": {},
2190
- "description": "Executes a SOQL query in multiple orgs and generate a single report from it\n \nYou can send a custom query using --query, or use one of the predefined queries using --query-template.\n\nIf you use the command from a CI/CD job, you must previously authenticate to the usernames present in --target-orgs.\n\n[![Use in VsCode SFDX Hardis !](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/multi-org-query-demo.gif)](https://marketplace.visualstudio.com/items?itemName=NicolasVuillamy.vscode-sfdx-hardis)\n",
2182
+ "description": "Install a package in an org using its id (starting with **04t**)\n\nAssisted menu to propose to update `installedPackages` property in `.sfdx-hardis.yml`\n",
2191
2183
  "examples": [
2192
- "$ sf hardis:org:multi-org-query",
2193
- "$ sf hardis:org:multi-org-query --query \"SELECT Id,Username FROM User\"",
2194
- "$ sf hardis:org:multi-org-query --query \"SELECT Id,Username FROM User\" --target-orgs nico@cloudity.com nico@cloudity.com.preprod nico@cloudity.com.uat",
2195
- "$ sf hardis:org:multi-org-query --query-template active-users --target-orgs nico@cloudity.com nico@cloudity.com.preprod nico@cloudity.com.uat"
2184
+ "$ sf hardis:package:install"
2196
2185
  ],
2197
2186
  "flags": {
2198
2187
  "json": {
@@ -2210,44 +2199,10 @@
2210
2199
  "multiple": false,
2211
2200
  "type": "option"
2212
2201
  },
2213
- "query": {
2214
- "char": "q",
2215
- "description": "SOQL Query to run on multiple orgs",
2216
- "exclusive": [
2217
- "query-template"
2218
- ],
2219
- "name": "query",
2220
- "hasDynamicHelp": false,
2221
- "multiple": false,
2222
- "type": "option"
2223
- },
2224
- "query-template": {
2225
- "char": "t",
2226
- "description": "Use one of predefined SOQL Query templates",
2227
- "exclusive": [
2228
- "query"
2229
- ],
2230
- "name": "query-template",
2231
- "hasDynamicHelp": false,
2232
- "multiple": false,
2233
- "options": [
2234
- "active-users",
2235
- "all-users"
2236
- ],
2237
- "type": "option"
2238
- },
2239
- "target-orgs": {
2240
- "char": "x",
2241
- "description": "List of org usernames or aliases.",
2242
- "name": "target-orgs",
2243
- "hasDynamicHelp": false,
2244
- "multiple": true,
2245
- "type": "option"
2246
- },
2247
- "outputfile": {
2248
- "char": "f",
2249
- "description": "Force the path and name of output report file. Must end with .csv",
2250
- "name": "outputfile",
2202
+ "package": {
2203
+ "char": "p",
2204
+ "description": "Package Version Id to install (04t...)",
2205
+ "name": "package",
2251
2206
  "hasDynamicHelp": false,
2252
2207
  "multiple": false,
2253
2208
  "type": "option"
@@ -2266,46 +2221,72 @@
2266
2221
  "multiple": false,
2267
2222
  "type": "option"
2268
2223
  },
2224
+ "installationkey": {
2225
+ "char": "k",
2226
+ "description": "installation key for key-protected package (default: null)",
2227
+ "name": "installationkey",
2228
+ "default": "",
2229
+ "hasDynamicHelp": false,
2230
+ "multiple": false,
2231
+ "type": "option"
2232
+ },
2269
2233
  "skipauth": {
2270
2234
  "description": "Skip authentication check when a default username is required",
2271
2235
  "name": "skipauth",
2272
2236
  "allowNo": false,
2273
2237
  "type": "boolean"
2238
+ },
2239
+ "target-org": {
2240
+ "aliases": [
2241
+ "targetusername",
2242
+ "u"
2243
+ ],
2244
+ "char": "o",
2245
+ "deprecateAliases": true,
2246
+ "name": "target-org",
2247
+ "noCacheDefault": true,
2248
+ "required": true,
2249
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
2250
+ "hasDynamicHelp": true,
2251
+ "multiple": false,
2252
+ "type": "option"
2274
2253
  }
2275
2254
  },
2276
- "hasDynamicHelp": false,
2255
+ "hasDynamicHelp": true,
2277
2256
  "hiddenAliases": [],
2278
- "id": "hardis:org:multi-org-query",
2257
+ "id": "hardis:package:install",
2279
2258
  "pluginAlias": "sfdx-hardis",
2280
2259
  "pluginName": "sfdx-hardis",
2281
2260
  "pluginType": "core",
2282
2261
  "strict": true,
2283
2262
  "enableJsonFlag": true,
2284
- "title": "Multiple Orgs SOQL Query",
2263
+ "title": "Install packages in an org",
2285
2264
  "isESM": true,
2286
2265
  "relativePath": [
2287
2266
  "lib",
2288
2267
  "commands",
2289
2268
  "hardis",
2290
- "org",
2291
- "multi-org-query.js"
2269
+ "package",
2270
+ "install.js"
2292
2271
  ],
2293
2272
  "aliasPermutations": [],
2294
2273
  "permutations": [
2295
- "hardis:org:multi-org-query",
2296
- "org:hardis:multi-org-query",
2297
- "org:multi-org-query:hardis",
2298
- "hardis:multi-org-query:org",
2299
- "multi-org-query:hardis:org",
2300
- "multi-org-query:org:hardis"
2274
+ "hardis:package:install",
2275
+ "package:hardis:install",
2276
+ "package:install:hardis",
2277
+ "hardis:install:package",
2278
+ "install:hardis:package",
2279
+ "install:package:hardis"
2301
2280
  ]
2302
2281
  },
2303
- "hardis:org:select": {
2282
+ "hardis:package:mergexml": {
2304
2283
  "aliases": [],
2305
2284
  "args": {},
2306
- "description": "Interactive org selection for user",
2285
+ "description": "Select and merge package.xml files",
2307
2286
  "examples": [
2308
- "$ sf hardis:org:select"
2287
+ "$ sf hardis:package:mergexml",
2288
+ "$ sf hardis:package:mergexml --folder packages --pattern /**/*.xml --result myMergedPackage.xml",
2289
+ "$ sf hardis:package:mergexml --packagexmls \"config/mypackage1.xml,config/mypackage2.xml,config/mypackage3.xml\" --result myMergedPackage.xml"
2309
2290
  ],
2310
2291
  "flags": {
2311
2292
  "json": {
@@ -2323,67 +2304,86 @@
2323
2304
  "multiple": false,
2324
2305
  "type": "option"
2325
2306
  },
2326
- "devhub": {
2327
- "char": "h",
2328
- "description": "Also connect associated DevHub",
2329
- "name": "devhub",
2330
- "allowNo": false,
2331
- "type": "boolean"
2332
- },
2333
- "scratch": {
2334
- "char": "s",
2335
- "description": "Select scratch org related to default DevHub",
2336
- "name": "scratch",
2337
- "allowNo": false,
2338
- "type": "boolean"
2339
- },
2340
- "debug": {
2341
- "char": "d",
2342
- "description": "Activate debug mode (more logs)",
2343
- "name": "debug",
2344
- "allowNo": false,
2345
- "type": "boolean"
2307
+ "folder": {
2308
+ "char": "f",
2309
+ "description": "Root folder",
2310
+ "name": "folder",
2311
+ "default": "manifest",
2312
+ "hasDynamicHelp": false,
2313
+ "multiple": false,
2314
+ "type": "option"
2346
2315
  },
2347
- "websocket": {
2348
- "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
2349
- "name": "websocket",
2316
+ "packagexmls": {
2317
+ "char": "p",
2318
+ "description": "Comma separated list of package.xml files to merge. Will be prompted to user if not provided",
2319
+ "name": "packagexmls",
2350
2320
  "hasDynamicHelp": false,
2351
2321
  "multiple": false,
2352
2322
  "type": "option"
2353
2323
  },
2354
- "skipauth": {
2355
- "description": "Skip authentication check when a default username is required",
2356
- "name": "skipauth",
2357
- "allowNo": false,
2324
+ "pattern": {
2325
+ "char": "x",
2326
+ "description": "Name criteria to list package.xml files",
2327
+ "name": "pattern",
2328
+ "default": "/**/*package*.xml",
2329
+ "hasDynamicHelp": false,
2330
+ "multiple": false,
2331
+ "type": "option"
2332
+ },
2333
+ "result": {
2334
+ "char": "r",
2335
+ "description": "Result package.xml file name",
2336
+ "name": "result",
2337
+ "hasDynamicHelp": false,
2338
+ "multiple": false,
2339
+ "type": "option"
2340
+ },
2341
+ "debug": {
2342
+ "description": "debug",
2343
+ "name": "debug",
2344
+ "allowNo": false,
2345
+ "type": "boolean"
2346
+ },
2347
+ "websocket": {
2348
+ "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
2349
+ "name": "websocket",
2350
+ "hasDynamicHelp": false,
2351
+ "multiple": false,
2352
+ "type": "option"
2353
+ },
2354
+ "skipauth": {
2355
+ "description": "Skip authentication check when a default username is required",
2356
+ "name": "skipauth",
2357
+ "allowNo": false,
2358
2358
  "type": "boolean"
2359
2359
  }
2360
2360
  },
2361
2361
  "hasDynamicHelp": false,
2362
2362
  "hiddenAliases": [],
2363
- "id": "hardis:org:select",
2363
+ "id": "hardis:package:mergexml",
2364
2364
  "pluginAlias": "sfdx-hardis",
2365
2365
  "pluginName": "sfdx-hardis",
2366
2366
  "pluginType": "core",
2367
2367
  "strict": true,
2368
2368
  "enableJsonFlag": true,
2369
- "title": "Select org",
2369
+ "title": "Merge package.xml files",
2370
2370
  "requiresProject": false,
2371
2371
  "isESM": true,
2372
2372
  "relativePath": [
2373
2373
  "lib",
2374
2374
  "commands",
2375
2375
  "hardis",
2376
- "org",
2377
- "select.js"
2376
+ "package",
2377
+ "mergexml.js"
2378
2378
  ],
2379
2379
  "aliasPermutations": [],
2380
2380
  "permutations": [
2381
- "hardis:org:select",
2382
- "org:hardis:select",
2383
- "org:select:hardis",
2384
- "hardis:select:org",
2385
- "select:hardis:org",
2386
- "select:org:hardis"
2381
+ "hardis:package:mergexml",
2382
+ "package:hardis:mergexml",
2383
+ "package:mergexml:hardis",
2384
+ "hardis:mergexml:package",
2385
+ "mergexml:hardis:package",
2386
+ "mergexml:package:hardis"
2387
2387
  ]
2388
2388
  },
2389
2389
  "hardis:packagexml:append": {
@@ -4114,135 +4114,6 @@
4114
4114
  "ws:work:hardis"
4115
4115
  ]
4116
4116
  },
4117
- "hardis:git:pull-requests:extract": {
4118
- "aliases": [],
4119
- "args": {},
4120
- "description": "Extract pull requests with filtering criteria",
4121
- "examples": [
4122
- "$ sf hardis:git:pull-requests:extract",
4123
- "$ sf hardis:git:pull-requests:extract --target-branch main --status merged"
4124
- ],
4125
- "flags": {
4126
- "json": {
4127
- "description": "Format output as json.",
4128
- "helpGroup": "GLOBAL",
4129
- "name": "json",
4130
- "allowNo": false,
4131
- "type": "boolean"
4132
- },
4133
- "flags-dir": {
4134
- "helpGroup": "GLOBAL",
4135
- "name": "flags-dir",
4136
- "summary": "Import flag values from a directory.",
4137
- "hasDynamicHelp": false,
4138
- "multiple": false,
4139
- "type": "option"
4140
- },
4141
- "target-branch": {
4142
- "char": "t",
4143
- "description": "Target branch of PRs",
4144
- "name": "target-branch",
4145
- "hasDynamicHelp": false,
4146
- "multiple": false,
4147
- "type": "option"
4148
- },
4149
- "status": {
4150
- "char": "x",
4151
- "description": "Status of the PR",
4152
- "name": "status",
4153
- "hasDynamicHelp": false,
4154
- "multiple": false,
4155
- "options": [
4156
- "open",
4157
- "merged",
4158
- "abandoned"
4159
- ],
4160
- "type": "option"
4161
- },
4162
- "min-date": {
4163
- "char": "m",
4164
- "description": "Minimum date for PR",
4165
- "name": "min-date",
4166
- "hasDynamicHelp": false,
4167
- "multiple": false,
4168
- "type": "option"
4169
- },
4170
- "outputfile": {
4171
- "char": "f",
4172
- "description": "Force the path and name of output report file. Must end with .csv",
4173
- "name": "outputfile",
4174
- "hasDynamicHelp": false,
4175
- "multiple": false,
4176
- "type": "option"
4177
- },
4178
- "debug": {
4179
- "char": "d",
4180
- "description": "Activate debug mode (more logs)",
4181
- "name": "debug",
4182
- "allowNo": false,
4183
- "type": "boolean"
4184
- },
4185
- "websocket": {
4186
- "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
4187
- "name": "websocket",
4188
- "hasDynamicHelp": false,
4189
- "multiple": false,
4190
- "type": "option"
4191
- },
4192
- "skipauth": {
4193
- "description": "Skip authentication check when a default username is required",
4194
- "name": "skipauth",
4195
- "allowNo": false,
4196
- "type": "boolean"
4197
- }
4198
- },
4199
- "hasDynamicHelp": false,
4200
- "hiddenAliases": [],
4201
- "id": "hardis:git:pull-requests:extract",
4202
- "pluginAlias": "sfdx-hardis",
4203
- "pluginName": "sfdx-hardis",
4204
- "pluginType": "core",
4205
- "strict": true,
4206
- "enableJsonFlag": true,
4207
- "title": "Extract pull requests",
4208
- "requiresProject": true,
4209
- "isESM": true,
4210
- "relativePath": [
4211
- "lib",
4212
- "commands",
4213
- "hardis",
4214
- "git",
4215
- "pull-requests",
4216
- "extract.js"
4217
- ],
4218
- "aliasPermutations": [],
4219
- "permutations": [
4220
- "hardis:git:pull-requests:extract",
4221
- "git:hardis:pull-requests:extract",
4222
- "git:pull-requests:hardis:extract",
4223
- "git:pull-requests:extract:hardis",
4224
- "hardis:pull-requests:git:extract",
4225
- "pull-requests:hardis:git:extract",
4226
- "pull-requests:git:hardis:extract",
4227
- "pull-requests:git:extract:hardis",
4228
- "hardis:pull-requests:extract:git",
4229
- "pull-requests:hardis:extract:git",
4230
- "pull-requests:extract:hardis:git",
4231
- "pull-requests:extract:git:hardis",
4232
- "hardis:git:extract:pull-requests",
4233
- "git:hardis:extract:pull-requests",
4234
- "git:extract:hardis:pull-requests",
4235
- "git:extract:pull-requests:hardis",
4236
- "hardis:extract:git:pull-requests",
4237
- "extract:hardis:git:pull-requests",
4238
- "extract:git:hardis:pull-requests",
4239
- "extract:git:pull-requests:hardis",
4240
- "hardis:extract:pull-requests:git",
4241
- "extract:hardis:pull-requests:git",
4242
- "extract:pull-requests:hardis:git",
4243
- "extract:pull-requests:git:hardis"
4244
- ]
4245
- },
4246
4117
  "hardis:doc:extract:permsetgroups": {
4247
4118
  "aliases": [],
4248
4119
  "args": {},
@@ -4433,12 +4304,13 @@
4433
4304
  "generate:plugin:doc:hardis"
4434
4305
  ]
4435
4306
  },
4436
- "hardis:package:version:create": {
4307
+ "hardis:git:pull-requests:extract": {
4437
4308
  "aliases": [],
4438
4309
  "args": {},
4439
- "description": "Create a new version of an unlocked package",
4310
+ "description": "Extract pull requests with filtering criteria",
4440
4311
  "examples": [
4441
- "$ sf hardis:package:version:create"
4312
+ "$ sf hardis:git:pull-requests:extract",
4313
+ "$ sf hardis:git:pull-requests:extract --target-branch main --status merged"
4442
4314
  ],
4443
4315
  "flags": {
4444
4316
  "json": {
@@ -4456,41 +4328,47 @@
4456
4328
  "multiple": false,
4457
4329
  "type": "option"
4458
4330
  },
4459
- "debug": {
4460
- "char": "d",
4461
- "description": "Activate debug mode (more logs)",
4462
- "name": "debug",
4463
- "allowNo": false,
4464
- "type": "boolean"
4331
+ "target-branch": {
4332
+ "char": "t",
4333
+ "description": "Target branch of PRs",
4334
+ "name": "target-branch",
4335
+ "hasDynamicHelp": false,
4336
+ "multiple": false,
4337
+ "type": "option"
4465
4338
  },
4466
- "package": {
4467
- "char": "p",
4468
- "description": "Package identifier that you want to use to generate a new package version",
4469
- "name": "package",
4470
- "default": "",
4339
+ "status": {
4340
+ "char": "x",
4341
+ "description": "Status of the PR",
4342
+ "name": "status",
4471
4343
  "hasDynamicHelp": false,
4472
4344
  "multiple": false,
4345
+ "options": [
4346
+ "open",
4347
+ "merged",
4348
+ "abandoned"
4349
+ ],
4473
4350
  "type": "option"
4474
4351
  },
4475
- "installkey": {
4476
- "char": "k",
4477
- "description": "Package installation key",
4478
- "name": "installkey",
4479
- "default": "",
4352
+ "min-date": {
4353
+ "char": "m",
4354
+ "description": "Minimum date for PR",
4355
+ "name": "min-date",
4480
4356
  "hasDynamicHelp": false,
4481
4357
  "multiple": false,
4482
4358
  "type": "option"
4483
4359
  },
4484
- "deleteafter": {
4485
- "description": "Delete package version after creating it",
4486
- "name": "deleteafter",
4487
- "allowNo": false,
4488
- "type": "boolean"
4360
+ "outputfile": {
4361
+ "char": "f",
4362
+ "description": "Force the path and name of output report file. Must end with .csv",
4363
+ "name": "outputfile",
4364
+ "hasDynamicHelp": false,
4365
+ "multiple": false,
4366
+ "type": "option"
4489
4367
  },
4490
- "install": {
4491
- "char": "i",
4492
- "description": "Install package version on default org after generation",
4493
- "name": "install",
4368
+ "debug": {
4369
+ "char": "d",
4370
+ "description": "Activate debug mode (more logs)",
4371
+ "name": "debug",
4494
4372
  "allowNo": false,
4495
4373
  "type": "boolean"
4496
4374
  },
@@ -4506,75 +4384,62 @@
4506
4384
  "name": "skipauth",
4507
4385
  "allowNo": false,
4508
4386
  "type": "boolean"
4509
- },
4510
- "target-dev-hub": {
4511
- "aliases": [
4512
- "targetdevhubusername"
4513
- ],
4514
- "char": "v",
4515
- "deprecateAliases": true,
4516
- "name": "target-dev-hub",
4517
- "noCacheDefault": true,
4518
- "required": true,
4519
- "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
4520
- "hasDynamicHelp": true,
4521
- "multiple": false,
4522
- "type": "option"
4523
4387
  }
4524
4388
  },
4525
- "hasDynamicHelp": true,
4389
+ "hasDynamicHelp": false,
4526
4390
  "hiddenAliases": [],
4527
- "id": "hardis:package:version:create",
4391
+ "id": "hardis:git:pull-requests:extract",
4528
4392
  "pluginAlias": "sfdx-hardis",
4529
4393
  "pluginName": "sfdx-hardis",
4530
4394
  "pluginType": "core",
4531
4395
  "strict": true,
4532
4396
  "enableJsonFlag": true,
4533
- "title": "Create a new version of a package",
4397
+ "title": "Extract pull requests",
4534
4398
  "requiresProject": true,
4535
4399
  "isESM": true,
4536
4400
  "relativePath": [
4537
4401
  "lib",
4538
4402
  "commands",
4539
4403
  "hardis",
4540
- "package",
4541
- "version",
4542
- "create.js"
4404
+ "git",
4405
+ "pull-requests",
4406
+ "extract.js"
4543
4407
  ],
4544
4408
  "aliasPermutations": [],
4545
4409
  "permutations": [
4546
- "hardis:package:version:create",
4547
- "package:hardis:version:create",
4548
- "package:version:hardis:create",
4549
- "package:version:create:hardis",
4550
- "hardis:version:package:create",
4551
- "version:hardis:package:create",
4552
- "version:package:hardis:create",
4553
- "version:package:create:hardis",
4554
- "hardis:version:create:package",
4555
- "version:hardis:create:package",
4556
- "version:create:hardis:package",
4557
- "version:create:package:hardis",
4558
- "hardis:package:create:version",
4559
- "package:hardis:create:version",
4560
- "package:create:hardis:version",
4561
- "package:create:version:hardis",
4562
- "hardis:create:package:version",
4563
- "create:hardis:package:version",
4564
- "create:package:hardis:version",
4565
- "create:package:version:hardis",
4566
- "hardis:create:version:package",
4567
- "create:hardis:version:package",
4568
- "create:version:hardis:package",
4569
- "create:version:package:hardis"
4410
+ "hardis:git:pull-requests:extract",
4411
+ "git:hardis:pull-requests:extract",
4412
+ "git:pull-requests:hardis:extract",
4413
+ "git:pull-requests:extract:hardis",
4414
+ "hardis:pull-requests:git:extract",
4415
+ "pull-requests:hardis:git:extract",
4416
+ "pull-requests:git:hardis:extract",
4417
+ "pull-requests:git:extract:hardis",
4418
+ "hardis:pull-requests:extract:git",
4419
+ "pull-requests:hardis:extract:git",
4420
+ "pull-requests:extract:hardis:git",
4421
+ "pull-requests:extract:git:hardis",
4422
+ "hardis:git:extract:pull-requests",
4423
+ "git:hardis:extract:pull-requests",
4424
+ "git:extract:hardis:pull-requests",
4425
+ "git:extract:pull-requests:hardis",
4426
+ "hardis:extract:git:pull-requests",
4427
+ "extract:hardis:git:pull-requests",
4428
+ "extract:git:hardis:pull-requests",
4429
+ "extract:git:pull-requests:hardis",
4430
+ "hardis:extract:pull-requests:git",
4431
+ "extract:hardis:pull-requests:git",
4432
+ "extract:pull-requests:hardis:git",
4433
+ "extract:pull-requests:git:hardis"
4570
4434
  ]
4571
4435
  },
4572
- "hardis:package:version:list": {
4436
+ "hardis:org:community:update": {
4573
4437
  "aliases": [],
4574
4438
  "args": {},
4575
- "description": "List versions of unlocked package",
4439
+ "description": "Activate or deactivate a community by changing it's status:\n\n- Live\n- DownForMaintenance",
4576
4440
  "examples": [
4577
- "$ sf hardis:package:version:list"
4441
+ "$ sf hardis:org:community:update --name 'MyNetworkName' --status DownForMaintenance",
4442
+ "$ sf hardis:org:community:update --name 'MyNetworkName,MySecondNetworkName' --status Live"
4578
4443
  ],
4579
4444
  "flags": {
4580
4445
  "json": {
@@ -4592,36 +4457,42 @@
4592
4457
  "multiple": false,
4593
4458
  "type": "option"
4594
4459
  },
4595
- "debug": {
4596
- "char": "d",
4597
- "description": "Activate debug mode (more logs)",
4598
- "name": "debug",
4599
- "allowNo": false,
4600
- "type": "boolean"
4460
+ "name": {
4461
+ "char": "n",
4462
+ "description": "List of Networks Names that you want to update, separated by comma",
4463
+ "name": "name",
4464
+ "required": true,
4465
+ "hasDynamicHelp": false,
4466
+ "multiple": false,
4467
+ "type": "option"
4601
4468
  },
4602
- "websocket": {
4603
- "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
4604
- "name": "websocket",
4469
+ "status": {
4470
+ "char": "s",
4471
+ "description": "New status for the community, available values are: Live, DownForMaintenance",
4472
+ "name": "status",
4473
+ "required": true,
4605
4474
  "hasDynamicHelp": false,
4606
4475
  "multiple": false,
4607
4476
  "type": "option"
4608
4477
  },
4609
- "skipauth": {
4610
- "description": "Skip authentication check when a default username is required",
4611
- "name": "skipauth",
4478
+ "debug": {
4479
+ "char": "d",
4480
+ "description": "Activate debug mode (more logs)",
4481
+ "name": "debug",
4612
4482
  "allowNo": false,
4613
4483
  "type": "boolean"
4614
4484
  },
4615
- "target-dev-hub": {
4485
+ "target-org": {
4616
4486
  "aliases": [
4617
- "targetdevhubusername"
4487
+ "targetusername",
4488
+ "u"
4618
4489
  ],
4619
- "char": "v",
4490
+ "char": "o",
4620
4491
  "deprecateAliases": true,
4621
- "name": "target-dev-hub",
4492
+ "name": "target-org",
4622
4493
  "noCacheDefault": true,
4623
4494
  "required": true,
4624
- "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
4495
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
4625
4496
  "hasDynamicHelp": true,
4626
4497
  "multiple": false,
4627
4498
  "type": "option"
@@ -4629,58 +4500,56 @@
4629
4500
  },
4630
4501
  "hasDynamicHelp": true,
4631
4502
  "hiddenAliases": [],
4632
- "id": "hardis:package:version:list",
4503
+ "id": "hardis:org:community:update",
4633
4504
  "pluginAlias": "sfdx-hardis",
4634
4505
  "pluginName": "sfdx-hardis",
4635
4506
  "pluginType": "core",
4636
4507
  "strict": true,
4508
+ "summary": "Update a community status.",
4637
4509
  "enableJsonFlag": true,
4638
- "title": "Create a new version of a package",
4639
- "requiresProject": true,
4640
4510
  "isESM": true,
4641
4511
  "relativePath": [
4642
4512
  "lib",
4643
4513
  "commands",
4644
4514
  "hardis",
4645
- "package",
4646
- "version",
4647
- "list.js"
4515
+ "org",
4516
+ "community",
4517
+ "update.js"
4648
4518
  ],
4649
4519
  "aliasPermutations": [],
4650
4520
  "permutations": [
4651
- "hardis:package:version:list",
4652
- "package:hardis:version:list",
4653
- "package:version:hardis:list",
4654
- "package:version:list:hardis",
4655
- "hardis:version:package:list",
4656
- "version:hardis:package:list",
4657
- "version:package:hardis:list",
4658
- "version:package:list:hardis",
4659
- "hardis:version:list:package",
4660
- "version:hardis:list:package",
4661
- "version:list:hardis:package",
4662
- "version:list:package:hardis",
4663
- "hardis:package:list:version",
4664
- "package:hardis:list:version",
4665
- "package:list:hardis:version",
4666
- "package:list:version:hardis",
4667
- "hardis:list:package:version",
4668
- "list:hardis:package:version",
4669
- "list:package:hardis:version",
4670
- "list:package:version:hardis",
4671
- "hardis:list:version:package",
4672
- "list:hardis:version:package",
4673
- "list:version:hardis:package",
4674
- "list:version:package:hardis"
4521
+ "hardis:org:community:update",
4522
+ "org:hardis:community:update",
4523
+ "org:community:hardis:update",
4524
+ "org:community:update:hardis",
4525
+ "hardis:community:org:update",
4526
+ "community:hardis:org:update",
4527
+ "community:org:hardis:update",
4528
+ "community:org:update:hardis",
4529
+ "hardis:community:update:org",
4530
+ "community:hardis:update:org",
4531
+ "community:update:hardis:org",
4532
+ "community:update:org:hardis",
4533
+ "hardis:org:update:community",
4534
+ "org:hardis:update:community",
4535
+ "org:update:hardis:community",
4536
+ "org:update:community:hardis",
4537
+ "hardis:update:org:community",
4538
+ "update:hardis:org:community",
4539
+ "update:org:hardis:community",
4540
+ "update:org:community:hardis",
4541
+ "hardis:update:community:org",
4542
+ "update:hardis:community:org",
4543
+ "update:community:hardis:org",
4544
+ "update:community:org:hardis"
4675
4545
  ]
4676
4546
  },
4677
- "hardis:package:version:promote": {
4547
+ "hardis:org:configure:data": {
4678
4548
  "aliases": [],
4679
4549
  "args": {},
4680
- "description": "Promote package(s) version(s): convert it from beta to released",
4550
+ "description": "Configure Data Export/Import with a [SFDX Data Loader](https://help.sfdmu.com/) Project\n\nSee article:\n\n[![How to detect bad words in Salesforce records using SFDX Data Loader and sfdx-hardis](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-badwords.jpg)](https://nicolas.vuillamy.fr/how-to-detect-bad-words-in-salesforce-records-using-sfdx-data-loader-and-sfdx-hardis-171db40a9bac)\n",
4681
4551
  "examples": [
4682
- "$ sf hardis:package:version:promote",
4683
- "$ sf hardis:package:version:promote --auto"
4552
+ "$ sf hardis:org:configure:data"
4684
4553
  ],
4685
4554
  "flags": {
4686
4555
  "json": {
@@ -4698,13 +4567,6 @@
4698
4567
  "multiple": false,
4699
4568
  "type": "option"
4700
4569
  },
4701
- "auto": {
4702
- "char": "f",
4703
- "description": "Auto-detect which versions of which packages need to be promoted",
4704
- "name": "auto",
4705
- "allowNo": false,
4706
- "type": "boolean"
4707
- },
4708
4570
  "debug": {
4709
4571
  "char": "d",
4710
4572
  "description": "Activate debug mode (more logs)",
@@ -4724,134 +4586,29 @@
4724
4586
  "name": "skipauth",
4725
4587
  "allowNo": false,
4726
4588
  "type": "boolean"
4727
- },
4728
- "target-dev-hub": {
4729
- "aliases": [
4730
- "targetdevhubusername"
4731
- ],
4732
- "char": "v",
4733
- "deprecateAliases": true,
4734
- "name": "target-dev-hub",
4735
- "noCacheDefault": true,
4736
- "required": true,
4737
- "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
4738
- "hasDynamicHelp": true,
4739
- "multiple": false,
4740
- "type": "option"
4741
4589
  }
4742
4590
  },
4743
- "hasDynamicHelp": true,
4591
+ "hasDynamicHelp": false,
4744
4592
  "hiddenAliases": [],
4745
- "id": "hardis:package:version:promote",
4593
+ "id": "hardis:org:configure:data",
4746
4594
  "pluginAlias": "sfdx-hardis",
4747
4595
  "pluginName": "sfdx-hardis",
4748
4596
  "pluginType": "core",
4749
4597
  "strict": true,
4750
4598
  "enableJsonFlag": true,
4751
- "title": "Promote new versions of package(s)",
4752
- "requiresProject": true,
4599
+ "title": "Configure Data project",
4600
+ "requiresProject": false,
4601
+ "requiresSfdxPlugins": [
4602
+ "sfdmu"
4603
+ ],
4753
4604
  "isESM": true,
4754
4605
  "relativePath": [
4755
4606
  "lib",
4756
4607
  "commands",
4757
4608
  "hardis",
4758
- "package",
4759
- "version",
4760
- "promote.js"
4761
- ],
4762
- "aliasPermutations": [],
4763
- "permutations": [
4764
- "hardis:package:version:promote",
4765
- "package:hardis:version:promote",
4766
- "package:version:hardis:promote",
4767
- "package:version:promote:hardis",
4768
- "hardis:version:package:promote",
4769
- "version:hardis:package:promote",
4770
- "version:package:hardis:promote",
4771
- "version:package:promote:hardis",
4772
- "hardis:version:promote:package",
4773
- "version:hardis:promote:package",
4774
- "version:promote:hardis:package",
4775
- "version:promote:package:hardis",
4776
- "hardis:package:promote:version",
4777
- "package:hardis:promote:version",
4778
- "package:promote:hardis:version",
4779
- "package:promote:version:hardis",
4780
- "hardis:promote:package:version",
4781
- "promote:hardis:package:version",
4782
- "promote:package:hardis:version",
4783
- "promote:package:version:hardis",
4784
- "hardis:promote:version:package",
4785
- "promote:hardis:version:package",
4786
- "promote:version:hardis:package",
4787
- "promote:version:package:hardis"
4788
- ]
4789
- },
4790
- "hardis:org:configure:data": {
4791
- "aliases": [],
4792
- "args": {},
4793
- "description": "Configure Data Export/Import with a [SFDX Data Loader](https://help.sfdmu.com/) Project\n\nSee article:\n\n[![How to detect bad words in Salesforce records using SFDX Data Loader and sfdx-hardis](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-badwords.jpg)](https://nicolas.vuillamy.fr/how-to-detect-bad-words-in-salesforce-records-using-sfdx-data-loader-and-sfdx-hardis-171db40a9bac)\n",
4794
- "examples": [
4795
- "$ sf hardis:org:configure:data"
4796
- ],
4797
- "flags": {
4798
- "json": {
4799
- "description": "Format output as json.",
4800
- "helpGroup": "GLOBAL",
4801
- "name": "json",
4802
- "allowNo": false,
4803
- "type": "boolean"
4804
- },
4805
- "flags-dir": {
4806
- "helpGroup": "GLOBAL",
4807
- "name": "flags-dir",
4808
- "summary": "Import flag values from a directory.",
4809
- "hasDynamicHelp": false,
4810
- "multiple": false,
4811
- "type": "option"
4812
- },
4813
- "debug": {
4814
- "char": "d",
4815
- "description": "Activate debug mode (more logs)",
4816
- "name": "debug",
4817
- "allowNo": false,
4818
- "type": "boolean"
4819
- },
4820
- "websocket": {
4821
- "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
4822
- "name": "websocket",
4823
- "hasDynamicHelp": false,
4824
- "multiple": false,
4825
- "type": "option"
4826
- },
4827
- "skipauth": {
4828
- "description": "Skip authentication check when a default username is required",
4829
- "name": "skipauth",
4830
- "allowNo": false,
4831
- "type": "boolean"
4832
- }
4833
- },
4834
- "hasDynamicHelp": false,
4835
- "hiddenAliases": [],
4836
- "id": "hardis:org:configure:data",
4837
- "pluginAlias": "sfdx-hardis",
4838
- "pluginName": "sfdx-hardis",
4839
- "pluginType": "core",
4840
- "strict": true,
4841
- "enableJsonFlag": true,
4842
- "title": "Configure Data project",
4843
- "requiresProject": false,
4844
- "requiresSfdxPlugins": [
4845
- "sfdmu"
4846
- ],
4847
- "isESM": true,
4848
- "relativePath": [
4849
- "lib",
4850
- "commands",
4851
- "hardis",
4852
- "org",
4853
- "configure",
4854
- "data.js"
4609
+ "org",
4610
+ "configure",
4611
+ "data.js"
4855
4612
  ],
4856
4613
  "aliasPermutations": [],
4857
4614
  "permutations": [
@@ -5088,117 +4845,6 @@
5088
4845
  "monitoring:configure:org:hardis"
5089
4846
  ]
5090
4847
  },
5091
- "hardis:org:community:update": {
5092
- "aliases": [],
5093
- "args": {},
5094
- "description": "Activate or deactivate a community by changing it's status:\n\n- Live\n- DownForMaintenance",
5095
- "examples": [
5096
- "$ sf hardis:org:community:update --name 'MyNetworkName' --status DownForMaintenance",
5097
- "$ sf hardis:org:community:update --name 'MyNetworkName,MySecondNetworkName' --status Live"
5098
- ],
5099
- "flags": {
5100
- "json": {
5101
- "description": "Format output as json.",
5102
- "helpGroup": "GLOBAL",
5103
- "name": "json",
5104
- "allowNo": false,
5105
- "type": "boolean"
5106
- },
5107
- "flags-dir": {
5108
- "helpGroup": "GLOBAL",
5109
- "name": "flags-dir",
5110
- "summary": "Import flag values from a directory.",
5111
- "hasDynamicHelp": false,
5112
- "multiple": false,
5113
- "type": "option"
5114
- },
5115
- "name": {
5116
- "char": "n",
5117
- "description": "List of Networks Names that you want to update, separated by comma",
5118
- "name": "name",
5119
- "required": true,
5120
- "hasDynamicHelp": false,
5121
- "multiple": false,
5122
- "type": "option"
5123
- },
5124
- "status": {
5125
- "char": "s",
5126
- "description": "New status for the community, available values are: Live, DownForMaintenance",
5127
- "name": "status",
5128
- "required": true,
5129
- "hasDynamicHelp": false,
5130
- "multiple": false,
5131
- "type": "option"
5132
- },
5133
- "debug": {
5134
- "char": "d",
5135
- "description": "Activate debug mode (more logs)",
5136
- "name": "debug",
5137
- "allowNo": false,
5138
- "type": "boolean"
5139
- },
5140
- "target-org": {
5141
- "aliases": [
5142
- "targetusername",
5143
- "u"
5144
- ],
5145
- "char": "o",
5146
- "deprecateAliases": true,
5147
- "name": "target-org",
5148
- "noCacheDefault": true,
5149
- "required": true,
5150
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
5151
- "hasDynamicHelp": true,
5152
- "multiple": false,
5153
- "type": "option"
5154
- }
5155
- },
5156
- "hasDynamicHelp": true,
5157
- "hiddenAliases": [],
5158
- "id": "hardis:org:community:update",
5159
- "pluginAlias": "sfdx-hardis",
5160
- "pluginName": "sfdx-hardis",
5161
- "pluginType": "core",
5162
- "strict": true,
5163
- "summary": "Update a community status.",
5164
- "enableJsonFlag": true,
5165
- "isESM": true,
5166
- "relativePath": [
5167
- "lib",
5168
- "commands",
5169
- "hardis",
5170
- "org",
5171
- "community",
5172
- "update.js"
5173
- ],
5174
- "aliasPermutations": [],
5175
- "permutations": [
5176
- "hardis:org:community:update",
5177
- "org:hardis:community:update",
5178
- "org:community:hardis:update",
5179
- "org:community:update:hardis",
5180
- "hardis:community:org:update",
5181
- "community:hardis:org:update",
5182
- "community:org:hardis:update",
5183
- "community:org:update:hardis",
5184
- "hardis:community:update:org",
5185
- "community:hardis:update:org",
5186
- "community:update:hardis:org",
5187
- "community:update:org:hardis",
5188
- "hardis:org:update:community",
5189
- "org:hardis:update:community",
5190
- "org:update:hardis:community",
5191
- "org:update:community:hardis",
5192
- "hardis:update:org:community",
5193
- "update:hardis:org:community",
5194
- "update:org:hardis:community",
5195
- "update:org:community:hardis",
5196
- "hardis:update:community:org",
5197
- "update:hardis:community:org",
5198
- "update:community:hardis:org",
5199
- "update:community:org:hardis"
5200
- ]
5201
- },
5202
4848
  "hardis:org:data:delete": {
5203
4849
  "aliases": [],
5204
4850
  "args": {},
@@ -6985,10 +6631,484 @@
6985
6631
  "multiple": false,
6986
6632
  "type": "option"
6987
6633
  },
6988
- "listviews": {
6989
- "char": "l",
6990
- "description": "Comma-separated list of listviews following format Object:ListViewName\nExample: Contact:MyContacts,Contact:MyActiveContacts,Opportunity:MYClosedOpportunities",
6991
- "name": "listviews",
6634
+ "listviews": {
6635
+ "char": "l",
6636
+ "description": "Comma-separated list of listviews following format Object:ListViewName\nExample: Contact:MyContacts,Contact:MyActiveContacts,Opportunity:MYClosedOpportunities",
6637
+ "name": "listviews",
6638
+ "hasDynamicHelp": false,
6639
+ "multiple": false,
6640
+ "type": "option"
6641
+ },
6642
+ "debug": {
6643
+ "char": "d",
6644
+ "description": "Activate debug mode (more logs)",
6645
+ "name": "debug",
6646
+ "allowNo": false,
6647
+ "type": "boolean"
6648
+ },
6649
+ "websocket": {
6650
+ "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
6651
+ "name": "websocket",
6652
+ "hasDynamicHelp": false,
6653
+ "multiple": false,
6654
+ "type": "option"
6655
+ },
6656
+ "skipauth": {
6657
+ "description": "Skip authentication check when a default username is required",
6658
+ "name": "skipauth",
6659
+ "allowNo": false,
6660
+ "type": "boolean"
6661
+ },
6662
+ "target-org": {
6663
+ "aliases": [
6664
+ "targetusername",
6665
+ "u"
6666
+ ],
6667
+ "char": "o",
6668
+ "deprecateAliases": true,
6669
+ "name": "target-org",
6670
+ "noCacheDefault": true,
6671
+ "required": true,
6672
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
6673
+ "hasDynamicHelp": true,
6674
+ "multiple": false,
6675
+ "type": "option"
6676
+ }
6677
+ },
6678
+ "hasDynamicHelp": true,
6679
+ "hiddenAliases": [],
6680
+ "id": "hardis:org:fix:listviewmine",
6681
+ "pluginAlias": "sfdx-hardis",
6682
+ "pluginName": "sfdx-hardis",
6683
+ "pluginType": "core",
6684
+ "strict": true,
6685
+ "enableJsonFlag": true,
6686
+ "title": "Fix listviews with ",
6687
+ "requiresProject": true,
6688
+ "isESM": true,
6689
+ "relativePath": [
6690
+ "lib",
6691
+ "commands",
6692
+ "hardis",
6693
+ "org",
6694
+ "fix",
6695
+ "listviewmine.js"
6696
+ ],
6697
+ "aliasPermutations": [],
6698
+ "permutations": [
6699
+ "hardis:org:fix:listviewmine",
6700
+ "org:hardis:fix:listviewmine",
6701
+ "org:fix:hardis:listviewmine",
6702
+ "org:fix:listviewmine:hardis",
6703
+ "hardis:fix:org:listviewmine",
6704
+ "fix:hardis:org:listviewmine",
6705
+ "fix:org:hardis:listviewmine",
6706
+ "fix:org:listviewmine:hardis",
6707
+ "hardis:fix:listviewmine:org",
6708
+ "fix:hardis:listviewmine:org",
6709
+ "fix:listviewmine:hardis:org",
6710
+ "fix:listviewmine:org:hardis",
6711
+ "hardis:org:listviewmine:fix",
6712
+ "org:hardis:listviewmine:fix",
6713
+ "org:listviewmine:hardis:fix",
6714
+ "org:listviewmine:fix:hardis",
6715
+ "hardis:listviewmine:org:fix",
6716
+ "listviewmine:hardis:org:fix",
6717
+ "listviewmine:org:hardis:fix",
6718
+ "listviewmine:org:fix:hardis",
6719
+ "hardis:listviewmine:fix:org",
6720
+ "listviewmine:hardis:fix:org",
6721
+ "listviewmine:fix:hardis:org",
6722
+ "listviewmine:fix:org:hardis"
6723
+ ]
6724
+ },
6725
+ "hardis:org:generate:packagexmlfull": {
6726
+ "aliases": [],
6727
+ "args": {},
6728
+ "description": "Generates full org package.xml, including managed items",
6729
+ "examples": [
6730
+ "$ sf hardis:org:generate:packagexmlfull",
6731
+ "$ sf hardis:org:generate:packagexmlfull --outputfile /tmp/packagexmlfull.xml",
6732
+ "$ sf hardis:org:generate:packagexmlfull --target-org nico@example.com"
6733
+ ],
6734
+ "flags": {
6735
+ "json": {
6736
+ "description": "Format output as json.",
6737
+ "helpGroup": "GLOBAL",
6738
+ "name": "json",
6739
+ "allowNo": false,
6740
+ "type": "boolean"
6741
+ },
6742
+ "flags-dir": {
6743
+ "helpGroup": "GLOBAL",
6744
+ "name": "flags-dir",
6745
+ "summary": "Import flag values from a directory.",
6746
+ "hasDynamicHelp": false,
6747
+ "multiple": false,
6748
+ "type": "option"
6749
+ },
6750
+ "outputfile": {
6751
+ "description": "Output package.xml file",
6752
+ "name": "outputfile",
6753
+ "hasDynamicHelp": false,
6754
+ "multiple": false,
6755
+ "type": "option"
6756
+ },
6757
+ "debug": {
6758
+ "char": "d",
6759
+ "description": "Activate debug mode (more logs)",
6760
+ "name": "debug",
6761
+ "allowNo": false,
6762
+ "type": "boolean"
6763
+ },
6764
+ "websocket": {
6765
+ "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
6766
+ "name": "websocket",
6767
+ "hasDynamicHelp": false,
6768
+ "multiple": false,
6769
+ "type": "option"
6770
+ },
6771
+ "skipauth": {
6772
+ "description": "Skip authentication check when a default username is required",
6773
+ "name": "skipauth",
6774
+ "allowNo": false,
6775
+ "type": "boolean"
6776
+ },
6777
+ "target-org": {
6778
+ "aliases": [
6779
+ "targetusername",
6780
+ "u"
6781
+ ],
6782
+ "char": "o",
6783
+ "deprecateAliases": true,
6784
+ "name": "target-org",
6785
+ "noCacheDefault": true,
6786
+ "required": true,
6787
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
6788
+ "hasDynamicHelp": true,
6789
+ "multiple": false,
6790
+ "type": "option"
6791
+ }
6792
+ },
6793
+ "hasDynamicHelp": true,
6794
+ "hiddenAliases": [],
6795
+ "id": "hardis:org:generate:packagexmlfull",
6796
+ "pluginAlias": "sfdx-hardis",
6797
+ "pluginName": "sfdx-hardis",
6798
+ "pluginType": "core",
6799
+ "strict": true,
6800
+ "enableJsonFlag": true,
6801
+ "title": "Generate Full Org package.xml",
6802
+ "requiresProject": false,
6803
+ "isESM": true,
6804
+ "relativePath": [
6805
+ "lib",
6806
+ "commands",
6807
+ "hardis",
6808
+ "org",
6809
+ "generate",
6810
+ "packagexmlfull.js"
6811
+ ],
6812
+ "aliasPermutations": [],
6813
+ "permutations": [
6814
+ "hardis:org:generate:packagexmlfull",
6815
+ "org:hardis:generate:packagexmlfull",
6816
+ "org:generate:hardis:packagexmlfull",
6817
+ "org:generate:packagexmlfull:hardis",
6818
+ "hardis:generate:org:packagexmlfull",
6819
+ "generate:hardis:org:packagexmlfull",
6820
+ "generate:org:hardis:packagexmlfull",
6821
+ "generate:org:packagexmlfull:hardis",
6822
+ "hardis:generate:packagexmlfull:org",
6823
+ "generate:hardis:packagexmlfull:org",
6824
+ "generate:packagexmlfull:hardis:org",
6825
+ "generate:packagexmlfull:org:hardis",
6826
+ "hardis:org:packagexmlfull:generate",
6827
+ "org:hardis:packagexmlfull:generate",
6828
+ "org:packagexmlfull:hardis:generate",
6829
+ "org:packagexmlfull:generate:hardis",
6830
+ "hardis:packagexmlfull:org:generate",
6831
+ "packagexmlfull:hardis:org:generate",
6832
+ "packagexmlfull:org:hardis:generate",
6833
+ "packagexmlfull:org:generate:hardis",
6834
+ "hardis:packagexmlfull:generate:org",
6835
+ "packagexmlfull:hardis:generate:org",
6836
+ "packagexmlfull:generate:hardis:org",
6837
+ "packagexmlfull:generate:org:hardis"
6838
+ ]
6839
+ },
6840
+ "hardis:org:monitor:all": {
6841
+ "aliases": [],
6842
+ "args": {},
6843
+ "description": "Monitor org, generate reports and sends notifications\n\nYou can disable some commands defining either a **monitoringDisable** property in `.sfdx-hardis.yml`, or a comma separated list in env variable **MONITORING_DISABLE**\n\nExample in .sfdx-hardis.yml:\n \n```yaml\nmonitoringDisable:\n - METADATA_STATUS\n - MISSING_ATTRIBUTES\n - UNUSED_METADATAS\n```\n \nExample in env var:\n\n```sh\nMONITORING_DISABLE=METADATA_STATUS,MISSING_ATTRIBUTES,UNUSED_METADATAS\n```\n\nA [default list of monitoring commands](https://sfdx-hardis.cloudity.com/salesforce-monitoring-home/#monitoring-commands) is used, if you want to override it you can define property **monitoringCommands** in your .sfdx-hardis.yml file\n\nExample:\n\n```yaml\nmonitoringCommands:\n - title: My Custom command\n command: sf my:custom:command\n - title: My Custom command 2\n command: sf my:other:custom:command\n```\n\nYou can force the daily run of all commands by defining env var `MONITORING_IGNORE_FREQUENCY=true`\n\nThe default list of commands is the following:\n\n| Key | Description | Command | Frequency |\n| :---: | :---- | :---- | :-----: |\n| [AUDIT_TRAIL](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/audittrail) | Detect suspect setup actions in major org | [sf hardis:org:diagnose:audittrail](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/audittrail) | daily |\n| [LEGACY_API](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/legacyapi) | Detect calls to deprecated API versions | [sf hardis:org:diagnose:legacyapi](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/legacyapi) | daily |\n| [ORG_LIMITS](https://sfdx-hardis.cloudity.com/hardis/org/monitor/limits) | Detect if org limits are close to be reached | [sf hardis:org:monitor:limits](https://sfdx-hardis.cloudity.com/hardis/org/monitor/limits) | daily |\n| [LICENSES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/licenses) | Extract licenses information | [sf hardis:org:diagnose:licenses](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/licenses) | weekly |\n| [LINT_ACCESS](https://sfdx-hardis.cloudity.com/hardis/lint/access) | Detect custom elements with no access rights defined in permission sets | [sf hardis:lint:access](https://sfdx-hardis.cloudity.com/hardis/lint/access) | weekly |\n| [UNUSED_LICENSES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedlicenses) | Detect permission set licenses that are assigned to users that do not need them | [sf hardis:org:diagnose:unusedlicenses](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedlicenses) | weekly |\n| [UNUSED_USERS](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | Detect active users without recent logins | [sf hardis:org:diagnose:unusedusers](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | weekly |\n| [ACTIVE_USERS](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | Detect active users with recent logins | [sf hardis:org:diagnose:unusedusers --returnactiveusers](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | weekly |\n| [ORG_INFO](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/instanceupgrade) | Get org info + SF instance info + next major upgrade date | [sf hardis:org:diagnose:instanceupgrade](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/instanceupgrade) | weekly |\n| [RELEASE_UPDATES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/releaseupdates) | Gather warnings about incoming and overdue Release Updates | [sf hardis:org:diagnose:releaseupdates](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/releaseupdates) | weekly |\n| [UNUSED_METADATAS](https://sfdx-hardis.cloudity.com/hardis/lint/unusedmetadatas) | Detect custom labels and custom permissions that are not in use | [sf hardis:lint:unusedmetadatas](https://sfdx-hardis.cloudity.com/hardis/lint/unusedmetadatas) | weekly |\n| [UNUSED_APEX_CLASSES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-apex-classes) | Detect unused Apex classes in an org | [sf hardis:org:diagnose:unused-apex-classes](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-apex-classes) | weekly |\n| [CONNECTED_APPS](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-connected-apps) | Detect unused Connected Apps in an org | [sf hardis:org:diagnose:unused-connected-apps](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-connected-apps) | weekly |\n| [METADATA_STATUS](https://sfdx-hardis.cloudity.com/hardis/lint/metadatastatus) | Detect inactive metadata | [sf hardis:lint:metadatastatus](https://sfdx-hardis.cloudity.com/hardis/lint/metadatastatus) | weekly |\n| [MISSING_ATTRIBUTES](https://sfdx-hardis.cloudity.com/hardis/lint/missingattributes) | Detect missing description on custom field | [sf hardis:lint:missingattributes](https://sfdx-hardis.cloudity.com/hardis/lint/missingattributes) | weekly |\n\n",
6844
+ "examples": [
6845
+ "$ sf hardis:org:monitor:all"
6846
+ ],
6847
+ "flags": {
6848
+ "json": {
6849
+ "description": "Format output as json.",
6850
+ "helpGroup": "GLOBAL",
6851
+ "name": "json",
6852
+ "allowNo": false,
6853
+ "type": "boolean"
6854
+ },
6855
+ "flags-dir": {
6856
+ "helpGroup": "GLOBAL",
6857
+ "name": "flags-dir",
6858
+ "summary": "Import flag values from a directory.",
6859
+ "hasDynamicHelp": false,
6860
+ "multiple": false,
6861
+ "type": "option"
6862
+ },
6863
+ "debug": {
6864
+ "char": "d",
6865
+ "description": "Activate debug mode (more logs)",
6866
+ "name": "debug",
6867
+ "allowNo": false,
6868
+ "type": "boolean"
6869
+ },
6870
+ "websocket": {
6871
+ "description": "Websocket host:port for VsCode SFDX Hardis UI integration",
6872
+ "name": "websocket",
6873
+ "hasDynamicHelp": false,
6874
+ "multiple": false,
6875
+ "type": "option"
6876
+ },
6877
+ "skipauth": {
6878
+ "description": "Skip authentication check when a default username is required",
6879
+ "name": "skipauth",
6880
+ "allowNo": false,
6881
+ "type": "boolean"
6882
+ },
6883
+ "target-org": {
6884
+ "aliases": [
6885
+ "targetusername",
6886
+ "u"
6887
+ ],
6888
+ "char": "o",
6889
+ "deprecateAliases": true,
6890
+ "name": "target-org",
6891
+ "noCacheDefault": true,
6892
+ "required": true,
6893
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
6894
+ "hasDynamicHelp": true,
6895
+ "multiple": false,
6896
+ "type": "option"
6897
+ }
6898
+ },
6899
+ "hasDynamicHelp": true,
6900
+ "hiddenAliases": [],
6901
+ "id": "hardis:org:monitor:all",
6902
+ "pluginAlias": "sfdx-hardis",
6903
+ "pluginName": "sfdx-hardis",
6904
+ "pluginType": "core",
6905
+ "strict": true,
6906
+ "enableJsonFlag": true,
6907
+ "title": "Monitor org",
6908
+ "monitoringCommandsDefault": [
6909
+ {
6910
+ "key": "AUDIT_TRAIL",
6911
+ "title": "Detect suspect setup actions in major org",
6912
+ "command": "sf hardis:org:diagnose:audittrail",
6913
+ "frequency": "daily"
6914
+ },
6915
+ {
6916
+ "key": "LEGACY_API",
6917
+ "title": "Detect calls to deprecated API versions",
6918
+ "command": "sf hardis:org:diagnose:legacyapi",
6919
+ "frequency": "daily"
6920
+ },
6921
+ {
6922
+ "key": "ORG_LIMITS",
6923
+ "title": "Detect if org limits are close to be reached",
6924
+ "command": "sf hardis:org:monitor:limits",
6925
+ "frequency": "daily"
6926
+ },
6927
+ {
6928
+ "key": "LICENSES",
6929
+ "title": "Extract licenses information",
6930
+ "command": "sf hardis:org:diagnose:licenses",
6931
+ "frequency": "weekly"
6932
+ },
6933
+ {
6934
+ "key": "LINT_ACCESS",
6935
+ "title": "Detect custom elements with no access rights defined in permission sets",
6936
+ "command": "sf hardis:lint:access",
6937
+ "frequency": "weekly"
6938
+ },
6939
+ {
6940
+ "key": "UNUSED_LICENSES",
6941
+ "title": "Detect permission set licenses that are assigned to users that do not need them",
6942
+ "command": "sf hardis:org:diagnose:unusedlicenses",
6943
+ "frequency": "weekly"
6944
+ },
6945
+ {
6946
+ "key": "UNUSED_USERS",
6947
+ "title": "Detect active users without recent logins",
6948
+ "command": "sf hardis:org:diagnose:unusedusers",
6949
+ "frequency": "weekly"
6950
+ },
6951
+ {
6952
+ "key": "ACTIVE_USERS",
6953
+ "title": "Detect active users with recent logins",
6954
+ "command": "sf hardis:org:diagnose:unusedusers --returnactiveusers",
6955
+ "frequency": "weekly"
6956
+ },
6957
+ {
6958
+ "key": "ORG_INFO",
6959
+ "title": "Get org info + SF instance info + next major upgrade date",
6960
+ "command": "sf hardis:org:diagnose:instanceupgrade",
6961
+ "frequency": "weekly"
6962
+ },
6963
+ {
6964
+ "key": "RELEASE_UPDATES",
6965
+ "title": "Gather warnings about incoming and overdue Release Updates",
6966
+ "command": "sf hardis:org:diagnose:releaseupdates",
6967
+ "frequency": "weekly"
6968
+ },
6969
+ {
6970
+ "key": "UNUSED_METADATAS",
6971
+ "title": "Detect custom labels and custom permissions that are not in use",
6972
+ "command": "sf hardis:lint:unusedmetadatas",
6973
+ "frequency": "weekly"
6974
+ },
6975
+ {
6976
+ "key": "UNUSED_APEX_CLASSES",
6977
+ "title": "Detect unused Apex classes in an org",
6978
+ "command": "sf hardis:org:diagnose:unused-apex-classes",
6979
+ "frequency": "weekly"
6980
+ },
6981
+ {
6982
+ "key": "CONNECTED_APPS",
6983
+ "title": "Detect unused Connected Apps in an org",
6984
+ "command": "sf hardis:org:diagnose:unused-connected-apps",
6985
+ "frequency": "weekly"
6986
+ },
6987
+ {
6988
+ "key": "METADATA_STATUS",
6989
+ "title": "Detect inactive metadata",
6990
+ "command": "sf hardis:lint:metadatastatus",
6991
+ "frequency": "weekly"
6992
+ },
6993
+ {
6994
+ "key": "MISSING_ATTRIBUTES",
6995
+ "title": "Detect missing description on custom field",
6996
+ "command": "sf hardis:lint:missingattributes",
6997
+ "frequency": "weekly"
6998
+ }
6999
+ ],
7000
+ "requiresProject": true,
7001
+ "triggerNotification": true,
7002
+ "isESM": true,
7003
+ "relativePath": [
7004
+ "lib",
7005
+ "commands",
7006
+ "hardis",
7007
+ "org",
7008
+ "monitor",
7009
+ "all.js"
7010
+ ],
7011
+ "aliasPermutations": [],
7012
+ "permutations": [
7013
+ "hardis:org:monitor:all",
7014
+ "org:hardis:monitor:all",
7015
+ "org:monitor:hardis:all",
7016
+ "org:monitor:all:hardis",
7017
+ "hardis:monitor:org:all",
7018
+ "monitor:hardis:org:all",
7019
+ "monitor:org:hardis:all",
7020
+ "monitor:org:all:hardis",
7021
+ "hardis:monitor:all:org",
7022
+ "monitor:hardis:all:org",
7023
+ "monitor:all:hardis:org",
7024
+ "monitor:all:org:hardis",
7025
+ "hardis:org:all:monitor",
7026
+ "org:hardis:all:monitor",
7027
+ "org:all:hardis:monitor",
7028
+ "org:all:monitor:hardis",
7029
+ "hardis:all:org:monitor",
7030
+ "all:hardis:org:monitor",
7031
+ "all:org:hardis:monitor",
7032
+ "all:org:monitor:hardis",
7033
+ "hardis:all:monitor:org",
7034
+ "all:hardis:monitor:org",
7035
+ "all:monitor:hardis:org",
7036
+ "all:monitor:org:hardis"
7037
+ ]
7038
+ },
7039
+ "hardis:org:monitor:backup": {
7040
+ "aliases": [],
7041
+ "args": {},
7042
+ "description": "Retrieve sfdx sources in the context of a monitoring backup\n\nThe command exists in 2 modes: filtered(default & recommended) and full.\n\n## Filtered mode (default, better performances)\n\nAutomatically skips metadatas from installed packages with namespace. \n\nYou can remove more metadata types from backup, especially in case you have too many metadatas and that provokes a crash, using:\n\n- Manual update of `manifest/package-skip-items.xml` config file (then commit & push in the same branch)\n\n - Works with full wildcard (`<members>*</members>`) , named metadata (`<members>Account.Name</members>`) or partial wildcards names (`<members>pi__*</members>` , `<members>*__dlm</members>` , or `<members>prefix*suffix</members>`)\n\n- Environment variable MONITORING_BACKUP_SKIP_METADATA_TYPES (example: `MONITORING_BACKUP_SKIP_METADATA_TYPES=CustomLabel,StaticResource,Translation`): that will be applied to all monitoring branches.\n\n## Full mode\n\nActivate it with **--full** parameter, or variable MONITORING_BACKUP_MODE_FULL=true\n\nIgnores filters (namespaces items & manifest/package-skip-items.xml) to retrieve ALL metadatas, including those you might not care about (reports, translations...)\n\nAs we can retrieve only 10000 files by call, the list of all metadatas will be chunked to make multiple calls (and take more time than filtered mode)\n\n- if you use `--full-apply-filters` , manifest/package-skip-items.xml and MONITORING_BACKUP_SKIP_METADATA_TYPES filters will be applied anyway\n- if you use `--exclude-namespaces` , namespaced items will be ignored\n\n_With those both options, it's like if you are not using --full, but with chunked metadata download_\n\n## In CI/CD\n\nThis command is part of [sfdx-hardis Monitoring](https://sfdx-hardis.cloudity.com/salesforce-monitoring-metadata-backup/) and can output Grafana, Slack and MsTeams Notifications.\n\n## Troubleshooting\n\nIf you have unknown errors (it happens !), you can investigate using the full command with smaller chunks.\n\nExample: `sf hardis:org:monitor:backup --full --exclude-namespaces --full-apply-filters --max-by-chunk 500`\n\nIt will allow you the identify the responsible metadata and ignore it using package-skip-items.xml or MONITORING_BACKUP_SKIP_METADATA_TYPES env variable.\n\n## Documentation\n\n[Doc generation (including visual flows)](https://sfdx-hardis.cloudity.com/hardis/doc/project2markdown/) is triggered at the end of the command.\n\nIf you want to also upload HTML Documentation on your Salesforce Org as static resource, use variable **SFDX_HARDIS_DOC_DEPLOY_TO_ORG=\"true\"**\n\nIf you want to also upload HTML Documentation on Cloudflare, use variable **SFDX_HARDIS_DOC_DEPLOY_TO_CLOUDFLARE=\"true\"**\n\nIf Flow history doc always display a single state, you probably need to update your workflow configuration:\n\n- on Gitlab: Env variable [`GIT_FETCH_EXTRA_FLAGS: --depth 10000`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.gitlab-ci.yml#L11)\n- on GitHub: [`fetch-depth: 0`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.github/workflows/org-monitoring.yml#L58)\n- on Azure: [`fetchDepth: \"0\"`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/azure-pipelines.yml#L39)\n- on Bitbucket: [`step: clone: depth: full`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/bitbucket-pipelines.yml#L18)\n",
7043
+ "examples": [
7044
+ "$ sf hardis:org:monitor:backup",
7045
+ "$ sf hardis:org:monitor:backup --full",
7046
+ "$ sf hardis:org:monitor:backup --full --exclude-namespaces",
7047
+ "$ sf hardis:org:monitor:backup --full --exclude-namespaces --full-apply-filters"
7048
+ ],
7049
+ "flags": {
7050
+ "json": {
7051
+ "description": "Format output as json.",
7052
+ "helpGroup": "GLOBAL",
7053
+ "name": "json",
7054
+ "allowNo": false,
7055
+ "type": "boolean"
7056
+ },
7057
+ "flags-dir": {
7058
+ "helpGroup": "GLOBAL",
7059
+ "name": "flags-dir",
7060
+ "summary": "Import flag values from a directory.",
7061
+ "hasDynamicHelp": false,
7062
+ "multiple": false,
7063
+ "type": "option"
7064
+ },
7065
+ "full": {
7066
+ "description": "Dot not take in account filtering using package-skip-items.xml and MONITORING_BACKUP_SKIP_METADATA_TYPES. Efficient but much much slower !",
7067
+ "name": "full",
7068
+ "allowNo": false,
7069
+ "type": "boolean"
7070
+ },
7071
+ "max-by-chunk": {
7072
+ "char": "m",
7073
+ "description": "If mode --full is activated, maximum number of metadatas in a package.xml chunk",
7074
+ "name": "max-by-chunk",
7075
+ "default": 3000,
7076
+ "hasDynamicHelp": false,
7077
+ "multiple": false,
7078
+ "type": "option"
7079
+ },
7080
+ "exclude-namespaces": {
7081
+ "char": "e",
7082
+ "description": "If mode --full is activated, exclude namespaced metadatas",
7083
+ "name": "exclude-namespaces",
7084
+ "allowNo": false,
7085
+ "type": "boolean"
7086
+ },
7087
+ "full-apply-filters": {
7088
+ "char": "z",
7089
+ "description": "If mode --full is activated, apply filters of manifest/package-skip-items.xml and MONITORING_BACKUP_SKIP_METADATA_TYPES anyway",
7090
+ "name": "full-apply-filters",
7091
+ "allowNo": false,
7092
+ "type": "boolean"
7093
+ },
7094
+ "start-chunk": {
7095
+ "description": "Use this parameter to troubleshoot a specific chunk. It will be used as the first chunk to retrieve",
7096
+ "name": "start-chunk",
7097
+ "default": 1,
7098
+ "hasDynamicHelp": false,
7099
+ "multiple": false,
7100
+ "type": "option"
7101
+ },
7102
+ "skip-doc": {
7103
+ "description": "Skip the generation of project documentation at the end of the command",
7104
+ "name": "skip-doc",
7105
+ "allowNo": false,
7106
+ "type": "boolean"
7107
+ },
7108
+ "outputfile": {
7109
+ "char": "f",
7110
+ "description": "Force the path and name of output report file. Must end with .csv",
7111
+ "name": "outputfile",
6992
7112
  "hasDynamicHelp": false,
6993
7113
  "multiple": false,
6994
7114
  "type": "option"
@@ -7031,59 +7151,58 @@
7031
7151
  },
7032
7152
  "hasDynamicHelp": true,
7033
7153
  "hiddenAliases": [],
7034
- "id": "hardis:org:fix:listviewmine",
7154
+ "id": "hardis:org:monitor:backup",
7035
7155
  "pluginAlias": "sfdx-hardis",
7036
7156
  "pluginName": "sfdx-hardis",
7037
7157
  "pluginType": "core",
7038
7158
  "strict": true,
7039
7159
  "enableJsonFlag": true,
7040
- "title": "Fix listviews with ",
7160
+ "title": "Backup DX sources",
7041
7161
  "requiresProject": true,
7162
+ "triggerNotification": true,
7042
7163
  "isESM": true,
7043
7164
  "relativePath": [
7044
7165
  "lib",
7045
7166
  "commands",
7046
7167
  "hardis",
7047
7168
  "org",
7048
- "fix",
7049
- "listviewmine.js"
7169
+ "monitor",
7170
+ "backup.js"
7050
7171
  ],
7051
7172
  "aliasPermutations": [],
7052
7173
  "permutations": [
7053
- "hardis:org:fix:listviewmine",
7054
- "org:hardis:fix:listviewmine",
7055
- "org:fix:hardis:listviewmine",
7056
- "org:fix:listviewmine:hardis",
7057
- "hardis:fix:org:listviewmine",
7058
- "fix:hardis:org:listviewmine",
7059
- "fix:org:hardis:listviewmine",
7060
- "fix:org:listviewmine:hardis",
7061
- "hardis:fix:listviewmine:org",
7062
- "fix:hardis:listviewmine:org",
7063
- "fix:listviewmine:hardis:org",
7064
- "fix:listviewmine:org:hardis",
7065
- "hardis:org:listviewmine:fix",
7066
- "org:hardis:listviewmine:fix",
7067
- "org:listviewmine:hardis:fix",
7068
- "org:listviewmine:fix:hardis",
7069
- "hardis:listviewmine:org:fix",
7070
- "listviewmine:hardis:org:fix",
7071
- "listviewmine:org:hardis:fix",
7072
- "listviewmine:org:fix:hardis",
7073
- "hardis:listviewmine:fix:org",
7074
- "listviewmine:hardis:fix:org",
7075
- "listviewmine:fix:hardis:org",
7076
- "listviewmine:fix:org:hardis"
7174
+ "hardis:org:monitor:backup",
7175
+ "org:hardis:monitor:backup",
7176
+ "org:monitor:hardis:backup",
7177
+ "org:monitor:backup:hardis",
7178
+ "hardis:monitor:org:backup",
7179
+ "monitor:hardis:org:backup",
7180
+ "monitor:org:hardis:backup",
7181
+ "monitor:org:backup:hardis",
7182
+ "hardis:monitor:backup:org",
7183
+ "monitor:hardis:backup:org",
7184
+ "monitor:backup:hardis:org",
7185
+ "monitor:backup:org:hardis",
7186
+ "hardis:org:backup:monitor",
7187
+ "org:hardis:backup:monitor",
7188
+ "org:backup:hardis:monitor",
7189
+ "org:backup:monitor:hardis",
7190
+ "hardis:backup:org:monitor",
7191
+ "backup:hardis:org:monitor",
7192
+ "backup:org:hardis:monitor",
7193
+ "backup:org:monitor:hardis",
7194
+ "hardis:backup:monitor:org",
7195
+ "backup:hardis:monitor:org",
7196
+ "backup:monitor:hardis:org",
7197
+ "backup:monitor:org:hardis"
7077
7198
  ]
7078
7199
  },
7079
- "hardis:org:generate:packagexmlfull": {
7200
+ "hardis:org:monitor:limits": {
7080
7201
  "aliases": [],
7081
7202
  "args": {},
7082
- "description": "Generates full org package.xml, including managed items",
7203
+ "description": "Check limits of a SF org and send notifications about limits are superior to 50%, 75% or 100%.\n\nThis command is part of [sfdx-hardis Monitoring](https://sfdx-hardis.cloudity.com/salesforce-monitoring-org-limits/) and can output Grafana, Slack and MsTeams Notifications.\n",
7083
7204
  "examples": [
7084
- "$ sf hardis:org:generate:packagexmlfull",
7085
- "$ sf hardis:org:generate:packagexmlfull --outputfile /tmp/packagexmlfull.xml",
7086
- "$ sf hardis:org:generate:packagexmlfull --target-org nico@example.com"
7205
+ "$ sf hardis:org:monitor:limits"
7087
7206
  ],
7088
7207
  "flags": {
7089
7208
  "json": {
@@ -7102,7 +7221,8 @@
7102
7221
  "type": "option"
7103
7222
  },
7104
7223
  "outputfile": {
7105
- "description": "Output package.xml file",
7224
+ "char": "f",
7225
+ "description": "Force the path and name of output report file. Must end with .csv",
7106
7226
  "name": "outputfile",
7107
7227
  "hasDynamicHelp": false,
7108
7228
  "multiple": false,
@@ -7146,57 +7266,59 @@
7146
7266
  },
7147
7267
  "hasDynamicHelp": true,
7148
7268
  "hiddenAliases": [],
7149
- "id": "hardis:org:generate:packagexmlfull",
7269
+ "id": "hardis:org:monitor:limits",
7150
7270
  "pluginAlias": "sfdx-hardis",
7151
7271
  "pluginName": "sfdx-hardis",
7152
7272
  "pluginType": "core",
7153
7273
  "strict": true,
7154
7274
  "enableJsonFlag": true,
7155
- "title": "Generate Full Org package.xml",
7156
- "requiresProject": false,
7275
+ "title": "Check org limits",
7276
+ "requiresProject": true,
7277
+ "triggerNotification": true,
7157
7278
  "isESM": true,
7158
7279
  "relativePath": [
7159
7280
  "lib",
7160
7281
  "commands",
7161
7282
  "hardis",
7162
7283
  "org",
7163
- "generate",
7164
- "packagexmlfull.js"
7284
+ "monitor",
7285
+ "limits.js"
7165
7286
  ],
7166
7287
  "aliasPermutations": [],
7167
7288
  "permutations": [
7168
- "hardis:org:generate:packagexmlfull",
7169
- "org:hardis:generate:packagexmlfull",
7170
- "org:generate:hardis:packagexmlfull",
7171
- "org:generate:packagexmlfull:hardis",
7172
- "hardis:generate:org:packagexmlfull",
7173
- "generate:hardis:org:packagexmlfull",
7174
- "generate:org:hardis:packagexmlfull",
7175
- "generate:org:packagexmlfull:hardis",
7176
- "hardis:generate:packagexmlfull:org",
7177
- "generate:hardis:packagexmlfull:org",
7178
- "generate:packagexmlfull:hardis:org",
7179
- "generate:packagexmlfull:org:hardis",
7180
- "hardis:org:packagexmlfull:generate",
7181
- "org:hardis:packagexmlfull:generate",
7182
- "org:packagexmlfull:hardis:generate",
7183
- "org:packagexmlfull:generate:hardis",
7184
- "hardis:packagexmlfull:org:generate",
7185
- "packagexmlfull:hardis:org:generate",
7186
- "packagexmlfull:org:hardis:generate",
7187
- "packagexmlfull:org:generate:hardis",
7188
- "hardis:packagexmlfull:generate:org",
7189
- "packagexmlfull:hardis:generate:org",
7190
- "packagexmlfull:generate:hardis:org",
7191
- "packagexmlfull:generate:org:hardis"
7289
+ "hardis:org:monitor:limits",
7290
+ "org:hardis:monitor:limits",
7291
+ "org:monitor:hardis:limits",
7292
+ "org:monitor:limits:hardis",
7293
+ "hardis:monitor:org:limits",
7294
+ "monitor:hardis:org:limits",
7295
+ "monitor:org:hardis:limits",
7296
+ "monitor:org:limits:hardis",
7297
+ "hardis:monitor:limits:org",
7298
+ "monitor:hardis:limits:org",
7299
+ "monitor:limits:hardis:org",
7300
+ "monitor:limits:org:hardis",
7301
+ "hardis:org:limits:monitor",
7302
+ "org:hardis:limits:monitor",
7303
+ "org:limits:hardis:monitor",
7304
+ "org:limits:monitor:hardis",
7305
+ "hardis:limits:org:monitor",
7306
+ "limits:hardis:org:monitor",
7307
+ "limits:org:hardis:monitor",
7308
+ "limits:org:monitor:hardis",
7309
+ "hardis:limits:monitor:org",
7310
+ "limits:hardis:monitor:org",
7311
+ "limits:monitor:hardis:org",
7312
+ "limits:monitor:org:hardis"
7192
7313
  ]
7193
7314
  },
7194
- "hardis:org:monitor:all": {
7315
+ "hardis:org:purge:apexlog": {
7195
7316
  "aliases": [],
7196
7317
  "args": {},
7197
- "description": "Monitor org, generate reports and sends notifications\n\nYou can disable some commands defining either a **monitoringDisable** property in `.sfdx-hardis.yml`, or a comma separated list in env variable **MONITORING_DISABLE**\n\nExample in .sfdx-hardis.yml:\n \n```yaml\nmonitoringDisable:\n - METADATA_STATUS\n - MISSING_ATTRIBUTES\n - UNUSED_METADATAS\n```\n \nExample in env var:\n\n```sh\nMONITORING_DISABLE=METADATA_STATUS,MISSING_ATTRIBUTES,UNUSED_METADATAS\n```\n\nA [default list of monitoring commands](https://sfdx-hardis.cloudity.com/salesforce-monitoring-home/#monitoring-commands) is used, if you want to override it you can define property **monitoringCommands** in your .sfdx-hardis.yml file\n\nExample:\n\n```yaml\nmonitoringCommands:\n - title: My Custom command\n command: sf my:custom:command\n - title: My Custom command 2\n command: sf my:other:custom:command\n```\n\nYou can force the daily run of all commands by defining env var `MONITORING_IGNORE_FREQUENCY=true`\n\nThe default list of commands is the following:\n\n| Key | Description | Command | Frequency |\n| :---: | :---- | :---- | :-----: |\n| [AUDIT_TRAIL](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/audittrail) | Detect suspect setup actions in major org | [sf hardis:org:diagnose:audittrail](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/audittrail) | daily |\n| [LEGACY_API](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/legacyapi) | Detect calls to deprecated API versions | [sf hardis:org:diagnose:legacyapi](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/legacyapi) | daily |\n| [ORG_LIMITS](https://sfdx-hardis.cloudity.com/hardis/org/monitor/limits) | Detect if org limits are close to be reached | [sf hardis:org:monitor:limits](https://sfdx-hardis.cloudity.com/hardis/org/monitor/limits) | daily |\n| [LICENSES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/licenses) | Extract licenses information | [sf hardis:org:diagnose:licenses](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/licenses) | weekly |\n| [LINT_ACCESS](https://sfdx-hardis.cloudity.com/hardis/lint/access) | Detect custom elements with no access rights defined in permission sets | [sf hardis:lint:access](https://sfdx-hardis.cloudity.com/hardis/lint/access) | weekly |\n| [UNUSED_LICENSES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedlicenses) | Detect permission set licenses that are assigned to users that do not need them | [sf hardis:org:diagnose:unusedlicenses](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedlicenses) | weekly |\n| [UNUSED_USERS](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | Detect active users without recent logins | [sf hardis:org:diagnose:unusedusers](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | weekly |\n| [ACTIVE_USERS](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | Detect active users with recent logins | [sf hardis:org:diagnose:unusedusers --returnactiveusers](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unusedusers) | weekly |\n| [ORG_INFO](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/instanceupgrade) | Get org info + SF instance info + next major upgrade date | [sf hardis:org:diagnose:instanceupgrade](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/instanceupgrade) | weekly |\n| [RELEASE_UPDATES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/releaseupdates) | Gather warnings about incoming and overdue Release Updates | [sf hardis:org:diagnose:releaseupdates](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/releaseupdates) | weekly |\n| [UNUSED_METADATAS](https://sfdx-hardis.cloudity.com/hardis/lint/unusedmetadatas) | Detect custom labels and custom permissions that are not in use | [sf hardis:lint:unusedmetadatas](https://sfdx-hardis.cloudity.com/hardis/lint/unusedmetadatas) | weekly |\n| [UNUSED_APEX_CLASSES](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-apex-classes) | Detect unused Apex classes in an org | [sf hardis:org:diagnose:unused-apex-classes](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-apex-classes) | weekly |\n| [CONNECTED_APPS](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-connected-apps) | Detect unused Connected Apps in an org | [sf hardis:org:diagnose:unused-connected-apps](https://sfdx-hardis.cloudity.com/hardis/org/diagnose/unused-connected-apps) | weekly |\n| [METADATA_STATUS](https://sfdx-hardis.cloudity.com/hardis/lint/metadatastatus) | Detect inactive metadata | [sf hardis:lint:metadatastatus](https://sfdx-hardis.cloudity.com/hardis/lint/metadatastatus) | weekly |\n| [MISSING_ATTRIBUTES](https://sfdx-hardis.cloudity.com/hardis/lint/missingattributes) | Detect missing description on custom field | [sf hardis:lint:missingattributes](https://sfdx-hardis.cloudity.com/hardis/lint/missingattributes) | weekly |\n\n",
7318
+ "description": "Purge apex logs in selected org",
7198
7319
  "examples": [
7199
- "$ sf hardis:org:monitor:all"
7320
+ "$ sf hardis:org:purge:apexlog",
7321
+ "$ sf hardis:org:purge:apexlog --target-org nicolas.vuillamy@gmail.com"
7200
7322
  ],
7201
7323
  "flags": {
7202
7324
  "json": {
@@ -7214,6 +7336,13 @@
7214
7336
  "multiple": false,
7215
7337
  "type": "option"
7216
7338
  },
7339
+ "prompt": {
7340
+ "char": "z",
7341
+ "description": "Prompt for confirmation (true by default, use --no-prompt to skip)",
7342
+ "name": "prompt",
7343
+ "allowNo": true,
7344
+ "type": "boolean"
7345
+ },
7217
7346
  "debug": {
7218
7347
  "char": "d",
7219
7348
  "description": "Activate debug mode (more logs)",
@@ -7244,161 +7373,67 @@
7244
7373
  "name": "target-org",
7245
7374
  "noCacheDefault": true,
7246
7375
  "required": true,
7247
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
7248
- "hasDynamicHelp": true,
7249
- "multiple": false,
7250
- "type": "option"
7251
- }
7252
- },
7253
- "hasDynamicHelp": true,
7254
- "hiddenAliases": [],
7255
- "id": "hardis:org:monitor:all",
7256
- "pluginAlias": "sfdx-hardis",
7257
- "pluginName": "sfdx-hardis",
7258
- "pluginType": "core",
7259
- "strict": true,
7260
- "enableJsonFlag": true,
7261
- "title": "Monitor org",
7262
- "monitoringCommandsDefault": [
7263
- {
7264
- "key": "AUDIT_TRAIL",
7265
- "title": "Detect suspect setup actions in major org",
7266
- "command": "sf hardis:org:diagnose:audittrail",
7267
- "frequency": "daily"
7268
- },
7269
- {
7270
- "key": "LEGACY_API",
7271
- "title": "Detect calls to deprecated API versions",
7272
- "command": "sf hardis:org:diagnose:legacyapi",
7273
- "frequency": "daily"
7274
- },
7275
- {
7276
- "key": "ORG_LIMITS",
7277
- "title": "Detect if org limits are close to be reached",
7278
- "command": "sf hardis:org:monitor:limits",
7279
- "frequency": "daily"
7280
- },
7281
- {
7282
- "key": "LICENSES",
7283
- "title": "Extract licenses information",
7284
- "command": "sf hardis:org:diagnose:licenses",
7285
- "frequency": "weekly"
7286
- },
7287
- {
7288
- "key": "LINT_ACCESS",
7289
- "title": "Detect custom elements with no access rights defined in permission sets",
7290
- "command": "sf hardis:lint:access",
7291
- "frequency": "weekly"
7292
- },
7293
- {
7294
- "key": "UNUSED_LICENSES",
7295
- "title": "Detect permission set licenses that are assigned to users that do not need them",
7296
- "command": "sf hardis:org:diagnose:unusedlicenses",
7297
- "frequency": "weekly"
7298
- },
7299
- {
7300
- "key": "UNUSED_USERS",
7301
- "title": "Detect active users without recent logins",
7302
- "command": "sf hardis:org:diagnose:unusedusers",
7303
- "frequency": "weekly"
7304
- },
7305
- {
7306
- "key": "ACTIVE_USERS",
7307
- "title": "Detect active users with recent logins",
7308
- "command": "sf hardis:org:diagnose:unusedusers --returnactiveusers",
7309
- "frequency": "weekly"
7310
- },
7311
- {
7312
- "key": "ORG_INFO",
7313
- "title": "Get org info + SF instance info + next major upgrade date",
7314
- "command": "sf hardis:org:diagnose:instanceupgrade",
7315
- "frequency": "weekly"
7316
- },
7317
- {
7318
- "key": "RELEASE_UPDATES",
7319
- "title": "Gather warnings about incoming and overdue Release Updates",
7320
- "command": "sf hardis:org:diagnose:releaseupdates",
7321
- "frequency": "weekly"
7322
- },
7323
- {
7324
- "key": "UNUSED_METADATAS",
7325
- "title": "Detect custom labels and custom permissions that are not in use",
7326
- "command": "sf hardis:lint:unusedmetadatas",
7327
- "frequency": "weekly"
7328
- },
7329
- {
7330
- "key": "UNUSED_APEX_CLASSES",
7331
- "title": "Detect unused Apex classes in an org",
7332
- "command": "sf hardis:org:diagnose:unused-apex-classes",
7333
- "frequency": "weekly"
7334
- },
7335
- {
7336
- "key": "CONNECTED_APPS",
7337
- "title": "Detect unused Connected Apps in an org",
7338
- "command": "sf hardis:org:diagnose:unused-connected-apps",
7339
- "frequency": "weekly"
7340
- },
7341
- {
7342
- "key": "METADATA_STATUS",
7343
- "title": "Detect inactive metadata",
7344
- "command": "sf hardis:lint:metadatastatus",
7345
- "frequency": "weekly"
7346
- },
7347
- {
7348
- "key": "MISSING_ATTRIBUTES",
7349
- "title": "Detect missing description on custom field",
7350
- "command": "sf hardis:lint:missingattributes",
7351
- "frequency": "weekly"
7376
+ "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
7377
+ "hasDynamicHelp": true,
7378
+ "multiple": false,
7379
+ "type": "option"
7352
7380
  }
7353
- ],
7354
- "requiresProject": true,
7355
- "triggerNotification": true,
7381
+ },
7382
+ "hasDynamicHelp": true,
7383
+ "hiddenAliases": [],
7384
+ "id": "hardis:org:purge:apexlog",
7385
+ "pluginAlias": "sfdx-hardis",
7386
+ "pluginName": "sfdx-hardis",
7387
+ "pluginType": "core",
7388
+ "strict": true,
7389
+ "enableJsonFlag": true,
7390
+ "title": "Purge Apex Logs",
7391
+ "requiresProject": false,
7356
7392
  "isESM": true,
7357
7393
  "relativePath": [
7358
7394
  "lib",
7359
7395
  "commands",
7360
7396
  "hardis",
7361
7397
  "org",
7362
- "monitor",
7363
- "all.js"
7398
+ "purge",
7399
+ "apexlog.js"
7364
7400
  ],
7365
7401
  "aliasPermutations": [],
7366
7402
  "permutations": [
7367
- "hardis:org:monitor:all",
7368
- "org:hardis:monitor:all",
7369
- "org:monitor:hardis:all",
7370
- "org:monitor:all:hardis",
7371
- "hardis:monitor:org:all",
7372
- "monitor:hardis:org:all",
7373
- "monitor:org:hardis:all",
7374
- "monitor:org:all:hardis",
7375
- "hardis:monitor:all:org",
7376
- "monitor:hardis:all:org",
7377
- "monitor:all:hardis:org",
7378
- "monitor:all:org:hardis",
7379
- "hardis:org:all:monitor",
7380
- "org:hardis:all:monitor",
7381
- "org:all:hardis:monitor",
7382
- "org:all:monitor:hardis",
7383
- "hardis:all:org:monitor",
7384
- "all:hardis:org:monitor",
7385
- "all:org:hardis:monitor",
7386
- "all:org:monitor:hardis",
7387
- "hardis:all:monitor:org",
7388
- "all:hardis:monitor:org",
7389
- "all:monitor:hardis:org",
7390
- "all:monitor:org:hardis"
7403
+ "hardis:org:purge:apexlog",
7404
+ "org:hardis:purge:apexlog",
7405
+ "org:purge:hardis:apexlog",
7406
+ "org:purge:apexlog:hardis",
7407
+ "hardis:purge:org:apexlog",
7408
+ "purge:hardis:org:apexlog",
7409
+ "purge:org:hardis:apexlog",
7410
+ "purge:org:apexlog:hardis",
7411
+ "hardis:purge:apexlog:org",
7412
+ "purge:hardis:apexlog:org",
7413
+ "purge:apexlog:hardis:org",
7414
+ "purge:apexlog:org:hardis",
7415
+ "hardis:org:apexlog:purge",
7416
+ "org:hardis:apexlog:purge",
7417
+ "org:apexlog:hardis:purge",
7418
+ "org:apexlog:purge:hardis",
7419
+ "hardis:apexlog:org:purge",
7420
+ "apexlog:hardis:org:purge",
7421
+ "apexlog:org:hardis:purge",
7422
+ "apexlog:org:purge:hardis",
7423
+ "hardis:apexlog:purge:org",
7424
+ "apexlog:hardis:purge:org",
7425
+ "apexlog:purge:hardis:org",
7426
+ "apexlog:purge:org:hardis"
7391
7427
  ]
7392
7428
  },
7393
- "hardis:org:monitor:backup": {
7429
+ "hardis:org:purge:flow": {
7394
7430
  "aliases": [],
7395
7431
  "args": {},
7396
- "description": "Retrieve sfdx sources in the context of a monitoring backup\n\nThe command exists in 2 modes: filtered(default & recommended) and full.\n\n## Filtered mode (default, better performances)\n\nAutomatically skips metadatas from installed packages with namespace. \n\nYou can remove more metadata types from backup, especially in case you have too many metadatas and that provokes a crash, using:\n\n- Manual update of `manifest/package-skip-items.xml` config file (then commit & push in the same branch)\n\n - Works with full wildcard (`<members>*</members>`) , named metadata (`<members>Account.Name</members>`) or partial wildcards names (`<members>pi__*</members>` , `<members>*__dlm</members>` , or `<members>prefix*suffix</members>`)\n\n- Environment variable MONITORING_BACKUP_SKIP_METADATA_TYPES (example: `MONITORING_BACKUP_SKIP_METADATA_TYPES=CustomLabel,StaticResource,Translation`): that will be applied to all monitoring branches.\n\n## Full mode\n\nActivate it with **--full** parameter, or variable MONITORING_BACKUP_MODE_FULL=true\n\nIgnores filters (namespaces items & manifest/package-skip-items.xml) to retrieve ALL metadatas, including those you might not care about (reports, translations...)\n\nAs we can retrieve only 10000 files by call, the list of all metadatas will be chunked to make multiple calls (and take more time than filtered mode)\n\n- if you use `--full-apply-filters` , manifest/package-skip-items.xml and MONITORING_BACKUP_SKIP_METADATA_TYPES filters will be applied anyway\n- if you use `--exclude-namespaces` , namespaced items will be ignored\n\n_With those both options, it's like if you are not using --full, but with chunked metadata download_\n\n## In CI/CD\n\nThis command is part of [sfdx-hardis Monitoring](https://sfdx-hardis.cloudity.com/salesforce-monitoring-metadata-backup/) and can output Grafana, Slack and MsTeams Notifications.\n\n## Troubleshooting\n\nIf you have unknown errors (it happens !), you can investigate using the full command with smaller chunks.\n\nExample: `sf hardis:org:monitor:backup --full --exclude-namespaces --full-apply-filters --max-by-chunk 500`\n\nIt will allow you the identify the responsible metadata and ignore it using package-skip-items.xml or MONITORING_BACKUP_SKIP_METADATA_TYPES env variable.\n\n## Documentation\n\n[Doc generation (including visual flows)](https://sfdx-hardis.cloudity.com/hardis/doc/project2markdown/) is triggered at the end of the command.\n\nIf you want to also upload HTML Documentation on your Salesforce Org as static resource, use variable **SFDX_HARDIS_DOC_DEPLOY_TO_ORG=\"true\"**\n\nIf you want to also upload HTML Documentation on Cloudflare, use variable **SFDX_HARDIS_DOC_DEPLOY_TO_CLOUDFLARE=\"true\"**\n\nIf Flow history doc always display a single state, you probably need to update your workflow configuration:\n\n- on Gitlab: Env variable [`GIT_FETCH_EXTRA_FLAGS: --depth 10000`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.gitlab-ci.yml#L11)\n- on GitHub: [`fetch-depth: 0`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/.github/workflows/org-monitoring.yml#L58)\n- on Azure: [`fetchDepth: \"0\"`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/azure-pipelines.yml#L39)\n- on Bitbucket: [`step: clone: depth: full`](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/defaults/monitoring/bitbucket-pipelines.yml#L18)\n",
7432
+ "description": "Purge Obsolete flow versions to avoid the 50 max versions limit. Filters on Status and Name",
7397
7433
  "examples": [
7398
- "$ sf hardis:org:monitor:backup",
7399
- "$ sf hardis:org:monitor:backup --full",
7400
- "$ sf hardis:org:monitor:backup --full --exclude-namespaces",
7401
- "$ sf hardis:org:monitor:backup --full --exclude-namespaces --full-apply-filters"
7434
+ "$ sf hardis:org:purge:flow",
7435
+ "$ sf hardis:org:purge:flow --target-org nicolas.vuillamy@gmail.com --no-prompt --delete-flow-interviews",
7436
+ "$ sf hardis:org:purge:flow --target-org nicolas.vuillamy@gmail.com --status \"Obsolete,Draft,InvalidDraft\" --name TestFlow"
7402
7437
  ],
7403
7438
  "flags": {
7404
7439
  "json": {
@@ -7416,53 +7451,48 @@
7416
7451
  "multiple": false,
7417
7452
  "type": "option"
7418
7453
  },
7419
- "full": {
7420
- "description": "Dot not take in account filtering using package-skip-items.xml and MONITORING_BACKUP_SKIP_METADATA_TYPES. Efficient but much much slower !",
7421
- "name": "full",
7422
- "allowNo": false,
7454
+ "prompt": {
7455
+ "char": "z",
7456
+ "description": "Prompt for confirmation (true by default, use --no-prompt to skip)",
7457
+ "name": "prompt",
7458
+ "allowNo": true,
7423
7459
  "type": "boolean"
7424
7460
  },
7425
- "max-by-chunk": {
7426
- "char": "m",
7427
- "description": "If mode --full is activated, maximum number of metadatas in a package.xml chunk",
7428
- "name": "max-by-chunk",
7429
- "default": 3000,
7461
+ "name": {
7462
+ "char": "n",
7463
+ "description": "Filter according to Name criteria",
7464
+ "name": "name",
7430
7465
  "hasDynamicHelp": false,
7431
7466
  "multiple": false,
7432
7467
  "type": "option"
7433
7468
  },
7434
- "exclude-namespaces": {
7435
- "char": "e",
7436
- "description": "If mode --full is activated, exclude namespaced metadatas",
7437
- "name": "exclude-namespaces",
7438
- "allowNo": false,
7439
- "type": "boolean"
7440
- },
7441
- "full-apply-filters": {
7442
- "char": "z",
7443
- "description": "If mode --full is activated, apply filters of manifest/package-skip-items.xml and MONITORING_BACKUP_SKIP_METADATA_TYPES anyway",
7444
- "name": "full-apply-filters",
7445
- "allowNo": false,
7446
- "type": "boolean"
7447
- },
7448
- "start-chunk": {
7449
- "description": "Use this parameter to troubleshoot a specific chunk. It will be used as the first chunk to retrieve",
7450
- "name": "start-chunk",
7451
- "default": 1,
7469
+ "status": {
7470
+ "char": "s",
7471
+ "description": "Filter according to Status criteria",
7472
+ "name": "status",
7452
7473
  "hasDynamicHelp": false,
7453
7474
  "multiple": false,
7454
7475
  "type": "option"
7455
7476
  },
7456
- "skip-doc": {
7457
- "description": "Skip the generation of project documentation at the end of the command",
7458
- "name": "skip-doc",
7477
+ "delete-flow-interviews": {
7478
+ "char": "w",
7479
+ "description": "If the presence of Flow interviews prevent to delete flows versions, delete them before retrying to delete flow versions",
7480
+ "name": "delete-flow-interviews",
7459
7481
  "allowNo": false,
7460
7482
  "type": "boolean"
7461
7483
  },
7462
- "outputfile": {
7484
+ "allowpurgefailure": {
7463
7485
  "char": "f",
7464
- "description": "Force the path and name of output report file. Must end with .csv",
7465
- "name": "outputfile",
7486
+ "description": "Allows purges to fail without exiting with 1. Use --no-allowpurgefailure to disable",
7487
+ "name": "allowpurgefailure",
7488
+ "allowNo": true,
7489
+ "type": "boolean"
7490
+ },
7491
+ "instanceurl": {
7492
+ "char": "r",
7493
+ "description": "URL of org instance",
7494
+ "name": "instanceurl",
7495
+ "default": "https://login.salesforce.com",
7466
7496
  "hasDynamicHelp": false,
7467
7497
  "multiple": false,
7468
7498
  "type": "option"
@@ -7505,58 +7535,58 @@
7505
7535
  },
7506
7536
  "hasDynamicHelp": true,
7507
7537
  "hiddenAliases": [],
7508
- "id": "hardis:org:monitor:backup",
7538
+ "id": "hardis:org:purge:flow",
7509
7539
  "pluginAlias": "sfdx-hardis",
7510
7540
  "pluginName": "sfdx-hardis",
7511
7541
  "pluginType": "core",
7512
7542
  "strict": true,
7513
7543
  "enableJsonFlag": true,
7514
- "title": "Backup DX sources",
7515
- "requiresProject": true,
7516
- "triggerNotification": true,
7544
+ "title": "Purge Flow versions",
7545
+ "requiresProject": false,
7517
7546
  "isESM": true,
7518
7547
  "relativePath": [
7519
7548
  "lib",
7520
7549
  "commands",
7521
7550
  "hardis",
7522
7551
  "org",
7523
- "monitor",
7524
- "backup.js"
7552
+ "purge",
7553
+ "flow.js"
7525
7554
  ],
7526
7555
  "aliasPermutations": [],
7527
7556
  "permutations": [
7528
- "hardis:org:monitor:backup",
7529
- "org:hardis:monitor:backup",
7530
- "org:monitor:hardis:backup",
7531
- "org:monitor:backup:hardis",
7532
- "hardis:monitor:org:backup",
7533
- "monitor:hardis:org:backup",
7534
- "monitor:org:hardis:backup",
7535
- "monitor:org:backup:hardis",
7536
- "hardis:monitor:backup:org",
7537
- "monitor:hardis:backup:org",
7538
- "monitor:backup:hardis:org",
7539
- "monitor:backup:org:hardis",
7540
- "hardis:org:backup:monitor",
7541
- "org:hardis:backup:monitor",
7542
- "org:backup:hardis:monitor",
7543
- "org:backup:monitor:hardis",
7544
- "hardis:backup:org:monitor",
7545
- "backup:hardis:org:monitor",
7546
- "backup:org:hardis:monitor",
7547
- "backup:org:monitor:hardis",
7548
- "hardis:backup:monitor:org",
7549
- "backup:hardis:monitor:org",
7550
- "backup:monitor:hardis:org",
7551
- "backup:monitor:org:hardis"
7557
+ "hardis:org:purge:flow",
7558
+ "org:hardis:purge:flow",
7559
+ "org:purge:hardis:flow",
7560
+ "org:purge:flow:hardis",
7561
+ "hardis:purge:org:flow",
7562
+ "purge:hardis:org:flow",
7563
+ "purge:org:hardis:flow",
7564
+ "purge:org:flow:hardis",
7565
+ "hardis:purge:flow:org",
7566
+ "purge:hardis:flow:org",
7567
+ "purge:flow:hardis:org",
7568
+ "purge:flow:org:hardis",
7569
+ "hardis:org:flow:purge",
7570
+ "org:hardis:flow:purge",
7571
+ "org:flow:hardis:purge",
7572
+ "org:flow:purge:hardis",
7573
+ "hardis:flow:org:purge",
7574
+ "flow:hardis:org:purge",
7575
+ "flow:org:hardis:purge",
7576
+ "flow:org:purge:hardis",
7577
+ "hardis:flow:purge:org",
7578
+ "flow:hardis:purge:org",
7579
+ "flow:purge:hardis:org",
7580
+ "flow:purge:org:hardis"
7552
7581
  ]
7553
7582
  },
7554
- "hardis:org:monitor:limits": {
7583
+ "hardis:org:retrieve:packageconfig": {
7555
7584
  "aliases": [],
7556
7585
  "args": {},
7557
- "description": "Check limits of a SF org and send notifications about limits are superior to 50%, 75% or 100%.\n\nThis command is part of [sfdx-hardis Monitoring](https://sfdx-hardis.cloudity.com/salesforce-monitoring-org-limits/) and can output Grafana, Slack and MsTeams Notifications.\n",
7586
+ "description": "Retrieve package configuration from an org",
7558
7587
  "examples": [
7559
- "$ sf hardis:org:monitor:limits"
7588
+ "$ sf hardis:org:retrieve:packageconfig",
7589
+ "sf hardis:org:retrieve:packageconfig -u myOrg"
7560
7590
  ],
7561
7591
  "flags": {
7562
7592
  "json": {
@@ -7574,14 +7604,6 @@
7574
7604
  "multiple": false,
7575
7605
  "type": "option"
7576
7606
  },
7577
- "outputfile": {
7578
- "char": "f",
7579
- "description": "Force the path and name of output report file. Must end with .csv",
7580
- "name": "outputfile",
7581
- "hasDynamicHelp": false,
7582
- "multiple": false,
7583
- "type": "option"
7584
- },
7585
7607
  "debug": {
7586
7608
  "char": "d",
7587
7609
  "description": "Activate debug mode (more logs)",
@@ -7620,59 +7642,57 @@
7620
7642
  },
7621
7643
  "hasDynamicHelp": true,
7622
7644
  "hiddenAliases": [],
7623
- "id": "hardis:org:monitor:limits",
7645
+ "id": "hardis:org:retrieve:packageconfig",
7624
7646
  "pluginAlias": "sfdx-hardis",
7625
7647
  "pluginName": "sfdx-hardis",
7626
7648
  "pluginType": "core",
7627
7649
  "strict": true,
7628
7650
  "enableJsonFlag": true,
7629
- "title": "Check org limits",
7630
- "requiresProject": true,
7631
- "triggerNotification": true,
7651
+ "title": "Retrieve package configuration from an org",
7652
+ "requiresProject": false,
7632
7653
  "isESM": true,
7633
7654
  "relativePath": [
7634
7655
  "lib",
7635
7656
  "commands",
7636
7657
  "hardis",
7637
7658
  "org",
7638
- "monitor",
7639
- "limits.js"
7659
+ "retrieve",
7660
+ "packageconfig.js"
7640
7661
  ],
7641
7662
  "aliasPermutations": [],
7642
7663
  "permutations": [
7643
- "hardis:org:monitor:limits",
7644
- "org:hardis:monitor:limits",
7645
- "org:monitor:hardis:limits",
7646
- "org:monitor:limits:hardis",
7647
- "hardis:monitor:org:limits",
7648
- "monitor:hardis:org:limits",
7649
- "monitor:org:hardis:limits",
7650
- "monitor:org:limits:hardis",
7651
- "hardis:monitor:limits:org",
7652
- "monitor:hardis:limits:org",
7653
- "monitor:limits:hardis:org",
7654
- "monitor:limits:org:hardis",
7655
- "hardis:org:limits:monitor",
7656
- "org:hardis:limits:monitor",
7657
- "org:limits:hardis:monitor",
7658
- "org:limits:monitor:hardis",
7659
- "hardis:limits:org:monitor",
7660
- "limits:hardis:org:monitor",
7661
- "limits:org:hardis:monitor",
7662
- "limits:org:monitor:hardis",
7663
- "hardis:limits:monitor:org",
7664
- "limits:hardis:monitor:org",
7665
- "limits:monitor:hardis:org",
7666
- "limits:monitor:org:hardis"
7664
+ "hardis:org:retrieve:packageconfig",
7665
+ "org:hardis:retrieve:packageconfig",
7666
+ "org:retrieve:hardis:packageconfig",
7667
+ "org:retrieve:packageconfig:hardis",
7668
+ "hardis:retrieve:org:packageconfig",
7669
+ "retrieve:hardis:org:packageconfig",
7670
+ "retrieve:org:hardis:packageconfig",
7671
+ "retrieve:org:packageconfig:hardis",
7672
+ "hardis:retrieve:packageconfig:org",
7673
+ "retrieve:hardis:packageconfig:org",
7674
+ "retrieve:packageconfig:hardis:org",
7675
+ "retrieve:packageconfig:org:hardis",
7676
+ "hardis:org:packageconfig:retrieve",
7677
+ "org:hardis:packageconfig:retrieve",
7678
+ "org:packageconfig:hardis:retrieve",
7679
+ "org:packageconfig:retrieve:hardis",
7680
+ "hardis:packageconfig:org:retrieve",
7681
+ "packageconfig:hardis:org:retrieve",
7682
+ "packageconfig:org:hardis:retrieve",
7683
+ "packageconfig:org:retrieve:hardis",
7684
+ "hardis:packageconfig:retrieve:org",
7685
+ "packageconfig:hardis:retrieve:org",
7686
+ "packageconfig:retrieve:hardis:org",
7687
+ "packageconfig:retrieve:org:hardis"
7667
7688
  ]
7668
7689
  },
7669
- "hardis:org:purge:apexlog": {
7690
+ "hardis:org:test:apex": {
7670
7691
  "aliases": [],
7671
7692
  "args": {},
7672
- "description": "Purge apex logs in selected org",
7693
+ "description": "Run apex tests in Salesforce org\n\nIf following configuration is defined, it will fail if apex coverage target is not reached:\n\n- Env `APEX_TESTS_MIN_COVERAGE_ORG_WIDE` or `.sfdx-hardis` property `apexTestsMinCoverageOrgWide`\n- Env `APEX_TESTS_MIN_COVERAGE_ORG_WIDE` or `.sfdx-hardis` property `apexTestsMinCoverageOrgWide`\n\nYou can override env var SFDX_TEST_WAIT_MINUTES to wait more than 60 minutes.\n\nThis command is part of [sfdx-hardis Monitoring](https://sfdx-hardis.cloudity.com/salesforce-monitoring-apex-tests/) and can output Grafana, Slack and MsTeams Notifications.\n",
7673
7694
  "examples": [
7674
- "$ sf hardis:org:purge:apexlog",
7675
- "$ sf hardis:org:purge:apexlog --target-org nicolas.vuillamy@gmail.com"
7695
+ "$ sf hardis:org:test:apex"
7676
7696
  ],
7677
7697
  "flags": {
7678
7698
  "json": {
@@ -7690,12 +7710,20 @@
7690
7710
  "multiple": false,
7691
7711
  "type": "option"
7692
7712
  },
7693
- "prompt": {
7694
- "char": "z",
7695
- "description": "Prompt for confirmation (true by default, use --no-prompt to skip)",
7696
- "name": "prompt",
7697
- "allowNo": true,
7698
- "type": "boolean"
7713
+ "testlevel": {
7714
+ "char": "l",
7715
+ "description": "Level of tests to apply to validate deployment",
7716
+ "name": "testlevel",
7717
+ "default": "RunLocalTests",
7718
+ "hasDynamicHelp": false,
7719
+ "multiple": false,
7720
+ "options": [
7721
+ "NoTestRun",
7722
+ "RunSpecifiedTests",
7723
+ "RunLocalTests",
7724
+ "RunAllTestsInOrg"
7725
+ ],
7726
+ "type": "option"
7699
7727
  },
7700
7728
  "debug": {
7701
7729
  "char": "d",
@@ -7735,59 +7763,58 @@
7735
7763
  },
7736
7764
  "hasDynamicHelp": true,
7737
7765
  "hiddenAliases": [],
7738
- "id": "hardis:org:purge:apexlog",
7766
+ "id": "hardis:org:test:apex",
7739
7767
  "pluginAlias": "sfdx-hardis",
7740
7768
  "pluginName": "sfdx-hardis",
7741
7769
  "pluginType": "core",
7742
7770
  "strict": true,
7743
7771
  "enableJsonFlag": true,
7744
- "title": "Purge Apex Logs",
7745
- "requiresProject": false,
7772
+ "title": "Run apex tests",
7746
7773
  "isESM": true,
7747
7774
  "relativePath": [
7748
7775
  "lib",
7749
7776
  "commands",
7750
7777
  "hardis",
7751
7778
  "org",
7752
- "purge",
7753
- "apexlog.js"
7779
+ "test",
7780
+ "apex.js"
7754
7781
  ],
7755
7782
  "aliasPermutations": [],
7756
7783
  "permutations": [
7757
- "hardis:org:purge:apexlog",
7758
- "org:hardis:purge:apexlog",
7759
- "org:purge:hardis:apexlog",
7760
- "org:purge:apexlog:hardis",
7761
- "hardis:purge:org:apexlog",
7762
- "purge:hardis:org:apexlog",
7763
- "purge:org:hardis:apexlog",
7764
- "purge:org:apexlog:hardis",
7765
- "hardis:purge:apexlog:org",
7766
- "purge:hardis:apexlog:org",
7767
- "purge:apexlog:hardis:org",
7768
- "purge:apexlog:org:hardis",
7769
- "hardis:org:apexlog:purge",
7770
- "org:hardis:apexlog:purge",
7771
- "org:apexlog:hardis:purge",
7772
- "org:apexlog:purge:hardis",
7773
- "hardis:apexlog:org:purge",
7774
- "apexlog:hardis:org:purge",
7775
- "apexlog:org:hardis:purge",
7776
- "apexlog:org:purge:hardis",
7777
- "hardis:apexlog:purge:org",
7778
- "apexlog:hardis:purge:org",
7779
- "apexlog:purge:hardis:org",
7780
- "apexlog:purge:org:hardis"
7784
+ "hardis:org:test:apex",
7785
+ "org:hardis:test:apex",
7786
+ "org:test:hardis:apex",
7787
+ "org:test:apex:hardis",
7788
+ "hardis:test:org:apex",
7789
+ "test:hardis:org:apex",
7790
+ "test:org:hardis:apex",
7791
+ "test:org:apex:hardis",
7792
+ "hardis:test:apex:org",
7793
+ "test:hardis:apex:org",
7794
+ "test:apex:hardis:org",
7795
+ "test:apex:org:hardis",
7796
+ "hardis:org:apex:test",
7797
+ "org:hardis:apex:test",
7798
+ "org:apex:hardis:test",
7799
+ "org:apex:test:hardis",
7800
+ "hardis:apex:org:test",
7801
+ "apex:hardis:org:test",
7802
+ "apex:org:hardis:test",
7803
+ "apex:org:test:hardis",
7804
+ "hardis:apex:test:org",
7805
+ "apex:hardis:test:org",
7806
+ "apex:test:hardis:org",
7807
+ "apex:test:org:hardis"
7781
7808
  ]
7782
7809
  },
7783
- "hardis:org:purge:flow": {
7810
+ "hardis:org:user:activateinvalid": {
7784
7811
  "aliases": [],
7785
7812
  "args": {},
7786
- "description": "Purge Obsolete flow versions to avoid the 50 max versions limit. Filters on Status and Name",
7813
+ "description": "Update sandbox users so their email is valid\n\n Example: replaces `toto@company.com.dev.invalid` with `toto@company.com.dev.invalid`\n\nSee article below\n\n[![Reactivate all the sandbox users with .invalid emails in 3 clicks](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-invalid-email.jpg)](https://nicolas.vuillamy.fr/reactivate-all-the-sandbox-users-with-invalid-emails-in-3-clicks-2265af4e3a3d)\n",
7787
7814
  "examples": [
7788
- "$ sf hardis:org:purge:flow",
7789
- "$ sf hardis:org:purge:flow --target-org nicolas.vuillamy@gmail.com --no-prompt --delete-flow-interviews",
7790
- "$ sf hardis:org:purge:flow --target-org nicolas.vuillamy@gmail.com --status \"Obsolete,Draft,InvalidDraft\" --name TestFlow"
7815
+ "$ sf hardis:org:user:activateinvalid",
7816
+ "$ sf hardis:org:user:activateinvalid --target-org my-user@myorg.com",
7817
+ "$ sf hardis:org:user:activateinvalid --profiles 'System Administrator,MyCustomProfile' --target-org my-user@myorg.com"
7791
7818
  ],
7792
7819
  "flags": {
7793
7820
  "json": {
@@ -7805,48 +7832,10 @@
7805
7832
  "multiple": false,
7806
7833
  "type": "option"
7807
7834
  },
7808
- "prompt": {
7809
- "char": "z",
7810
- "description": "Prompt for confirmation (true by default, use --no-prompt to skip)",
7811
- "name": "prompt",
7812
- "allowNo": true,
7813
- "type": "boolean"
7814
- },
7815
- "name": {
7816
- "char": "n",
7817
- "description": "Filter according to Name criteria",
7818
- "name": "name",
7819
- "hasDynamicHelp": false,
7820
- "multiple": false,
7821
- "type": "option"
7822
- },
7823
- "status": {
7824
- "char": "s",
7825
- "description": "Filter according to Status criteria",
7826
- "name": "status",
7827
- "hasDynamicHelp": false,
7828
- "multiple": false,
7829
- "type": "option"
7830
- },
7831
- "delete-flow-interviews": {
7832
- "char": "w",
7833
- "description": "If the presence of Flow interviews prevent to delete flows versions, delete them before retrying to delete flow versions",
7834
- "name": "delete-flow-interviews",
7835
- "allowNo": false,
7836
- "type": "boolean"
7837
- },
7838
- "allowpurgefailure": {
7839
- "char": "f",
7840
- "description": "Allows purges to fail without exiting with 1. Use --no-allowpurgefailure to disable",
7841
- "name": "allowpurgefailure",
7842
- "allowNo": true,
7843
- "type": "boolean"
7844
- },
7845
- "instanceurl": {
7846
- "char": "r",
7847
- "description": "URL of org instance",
7848
- "name": "instanceurl",
7849
- "default": "https://login.salesforce.com",
7835
+ "profiles": {
7836
+ "char": "p",
7837
+ "description": "Comma-separated list of profiles names that you want to reactive users assigned to and with a .invalid email",
7838
+ "name": "profiles",
7850
7839
  "hasDynamicHelp": false,
7851
7840
  "multiple": false,
7852
7841
  "type": "option"
@@ -7889,13 +7878,13 @@
7889
7878
  },
7890
7879
  "hasDynamicHelp": true,
7891
7880
  "hiddenAliases": [],
7892
- "id": "hardis:org:purge:flow",
7881
+ "id": "hardis:org:user:activateinvalid",
7893
7882
  "pluginAlias": "sfdx-hardis",
7894
7883
  "pluginName": "sfdx-hardis",
7895
7884
  "pluginType": "core",
7896
7885
  "strict": true,
7897
7886
  "enableJsonFlag": true,
7898
- "title": "Purge Flow versions",
7887
+ "title": "Reactivate sandbox invalid users",
7899
7888
  "requiresProject": false,
7900
7889
  "isESM": true,
7901
7890
  "relativePath": [
@@ -7903,44 +7892,46 @@
7903
7892
  "commands",
7904
7893
  "hardis",
7905
7894
  "org",
7906
- "purge",
7907
- "flow.js"
7895
+ "user",
7896
+ "activateinvalid.js"
7908
7897
  ],
7909
7898
  "aliasPermutations": [],
7910
7899
  "permutations": [
7911
- "hardis:org:purge:flow",
7912
- "org:hardis:purge:flow",
7913
- "org:purge:hardis:flow",
7914
- "org:purge:flow:hardis",
7915
- "hardis:purge:org:flow",
7916
- "purge:hardis:org:flow",
7917
- "purge:org:hardis:flow",
7918
- "purge:org:flow:hardis",
7919
- "hardis:purge:flow:org",
7920
- "purge:hardis:flow:org",
7921
- "purge:flow:hardis:org",
7922
- "purge:flow:org:hardis",
7923
- "hardis:org:flow:purge",
7924
- "org:hardis:flow:purge",
7925
- "org:flow:hardis:purge",
7926
- "org:flow:purge:hardis",
7927
- "hardis:flow:org:purge",
7928
- "flow:hardis:org:purge",
7929
- "flow:org:hardis:purge",
7930
- "flow:org:purge:hardis",
7931
- "hardis:flow:purge:org",
7932
- "flow:hardis:purge:org",
7933
- "flow:purge:hardis:org",
7934
- "flow:purge:org:hardis"
7900
+ "hardis:org:user:activateinvalid",
7901
+ "org:hardis:user:activateinvalid",
7902
+ "org:user:hardis:activateinvalid",
7903
+ "org:user:activateinvalid:hardis",
7904
+ "hardis:user:org:activateinvalid",
7905
+ "user:hardis:org:activateinvalid",
7906
+ "user:org:hardis:activateinvalid",
7907
+ "user:org:activateinvalid:hardis",
7908
+ "hardis:user:activateinvalid:org",
7909
+ "user:hardis:activateinvalid:org",
7910
+ "user:activateinvalid:hardis:org",
7911
+ "user:activateinvalid:org:hardis",
7912
+ "hardis:org:activateinvalid:user",
7913
+ "org:hardis:activateinvalid:user",
7914
+ "org:activateinvalid:hardis:user",
7915
+ "org:activateinvalid:user:hardis",
7916
+ "hardis:activateinvalid:org:user",
7917
+ "activateinvalid:hardis:org:user",
7918
+ "activateinvalid:org:hardis:user",
7919
+ "activateinvalid:org:user:hardis",
7920
+ "hardis:activateinvalid:user:org",
7921
+ "activateinvalid:hardis:user:org",
7922
+ "activateinvalid:user:hardis:org",
7923
+ "activateinvalid:user:org:hardis"
7935
7924
  ]
7936
7925
  },
7937
- "hardis:org:retrieve:packageconfig": {
7926
+ "hardis:org:user:freeze": {
7938
7927
  "aliases": [],
7939
7928
  "args": {},
7940
- "description": "Retrieve package configuration from an org",
7929
+ "description": "Mass freeze users in org before a maintenance or go live\n\nSee user guide in the following article\n\n<https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3>\n\n[![How to freeze / unfreeze users during a Salesforce deployment](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-freeze.jpg)](https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3)",
7941
7930
  "examples": [
7942
- "$ sf hardis:org:retrieve:packageconfig",
7943
- "sf hardis:org:retrieve:packageconfig -u myOrg"
7931
+ "$ sf hardis:org:user:freeze",
7932
+ "$ sf hardis:org:user:freeze --target-org my-user@myorg.com",
7933
+ "$ sf hardis:org:user:freeze --includeprofiles 'Standard'",
7934
+ "$ sf hardis:org:user:freeze --excludeprofiles 'System Administrator,Some Other Profile'"
7944
7935
  ],
7945
7936
  "flags": {
7946
7937
  "json": {
@@ -7958,6 +7949,39 @@
7958
7949
  "multiple": false,
7959
7950
  "type": "option"
7960
7951
  },
7952
+ "name": {
7953
+ "char": "n",
7954
+ "description": "Filter according to Name criteria",
7955
+ "name": "name",
7956
+ "hasDynamicHelp": false,
7957
+ "multiple": false,
7958
+ "type": "option"
7959
+ },
7960
+ "includeprofiles": {
7961
+ "char": "p",
7962
+ "description": "List of profiles that you want to freeze, separated by commas",
7963
+ "name": "includeprofiles",
7964
+ "hasDynamicHelp": false,
7965
+ "multiple": false,
7966
+ "type": "option"
7967
+ },
7968
+ "excludeprofiles": {
7969
+ "char": "e",
7970
+ "description": "List of profiles that you want to NOT freeze, separated by commas",
7971
+ "name": "excludeprofiles",
7972
+ "hasDynamicHelp": false,
7973
+ "multiple": false,
7974
+ "type": "option"
7975
+ },
7976
+ "maxuserdisplay": {
7977
+ "char": "m",
7978
+ "description": "Maximum users to display in logs",
7979
+ "name": "maxuserdisplay",
7980
+ "default": 100,
7981
+ "hasDynamicHelp": false,
7982
+ "multiple": false,
7983
+ "type": "option"
7984
+ },
7961
7985
  "debug": {
7962
7986
  "char": "d",
7963
7987
  "description": "Activate debug mode (more logs)",
@@ -7996,13 +8020,13 @@
7996
8020
  },
7997
8021
  "hasDynamicHelp": true,
7998
8022
  "hiddenAliases": [],
7999
- "id": "hardis:org:retrieve:packageconfig",
8023
+ "id": "hardis:org:user:freeze",
8000
8024
  "pluginAlias": "sfdx-hardis",
8001
8025
  "pluginName": "sfdx-hardis",
8002
8026
  "pluginType": "core",
8003
8027
  "strict": true,
8004
8028
  "enableJsonFlag": true,
8005
- "title": "Retrieve package configuration from an org",
8029
+ "title": "Freeze user logins",
8006
8030
  "requiresProject": false,
8007
8031
  "isESM": true,
8008
8032
  "relativePath": [
@@ -8010,43 +8034,46 @@
8010
8034
  "commands",
8011
8035
  "hardis",
8012
8036
  "org",
8013
- "retrieve",
8014
- "packageconfig.js"
8037
+ "user",
8038
+ "freeze.js"
8015
8039
  ],
8016
8040
  "aliasPermutations": [],
8017
8041
  "permutations": [
8018
- "hardis:org:retrieve:packageconfig",
8019
- "org:hardis:retrieve:packageconfig",
8020
- "org:retrieve:hardis:packageconfig",
8021
- "org:retrieve:packageconfig:hardis",
8022
- "hardis:retrieve:org:packageconfig",
8023
- "retrieve:hardis:org:packageconfig",
8024
- "retrieve:org:hardis:packageconfig",
8025
- "retrieve:org:packageconfig:hardis",
8026
- "hardis:retrieve:packageconfig:org",
8027
- "retrieve:hardis:packageconfig:org",
8028
- "retrieve:packageconfig:hardis:org",
8029
- "retrieve:packageconfig:org:hardis",
8030
- "hardis:org:packageconfig:retrieve",
8031
- "org:hardis:packageconfig:retrieve",
8032
- "org:packageconfig:hardis:retrieve",
8033
- "org:packageconfig:retrieve:hardis",
8034
- "hardis:packageconfig:org:retrieve",
8035
- "packageconfig:hardis:org:retrieve",
8036
- "packageconfig:org:hardis:retrieve",
8037
- "packageconfig:org:retrieve:hardis",
8038
- "hardis:packageconfig:retrieve:org",
8039
- "packageconfig:hardis:retrieve:org",
8040
- "packageconfig:retrieve:hardis:org",
8041
- "packageconfig:retrieve:org:hardis"
8042
+ "hardis:org:user:freeze",
8043
+ "org:hardis:user:freeze",
8044
+ "org:user:hardis:freeze",
8045
+ "org:user:freeze:hardis",
8046
+ "hardis:user:org:freeze",
8047
+ "user:hardis:org:freeze",
8048
+ "user:org:hardis:freeze",
8049
+ "user:org:freeze:hardis",
8050
+ "hardis:user:freeze:org",
8051
+ "user:hardis:freeze:org",
8052
+ "user:freeze:hardis:org",
8053
+ "user:freeze:org:hardis",
8054
+ "hardis:org:freeze:user",
8055
+ "org:hardis:freeze:user",
8056
+ "org:freeze:hardis:user",
8057
+ "org:freeze:user:hardis",
8058
+ "hardis:freeze:org:user",
8059
+ "freeze:hardis:org:user",
8060
+ "freeze:org:hardis:user",
8061
+ "freeze:org:user:hardis",
8062
+ "hardis:freeze:user:org",
8063
+ "freeze:hardis:user:org",
8064
+ "freeze:user:hardis:org",
8065
+ "freeze:user:org:hardis"
8042
8066
  ]
8043
8067
  },
8044
- "hardis:org:test:apex": {
8068
+ "hardis:org:user:unfreeze": {
8045
8069
  "aliases": [],
8046
8070
  "args": {},
8047
- "description": "Run apex tests in Salesforce org\n\nIf following configuration is defined, it will fail if apex coverage target is not reached:\n\n- Env `APEX_TESTS_MIN_COVERAGE_ORG_WIDE` or `.sfdx-hardis` property `apexTestsMinCoverageOrgWide`\n- Env `APEX_TESTS_MIN_COVERAGE_ORG_WIDE` or `.sfdx-hardis` property `apexTestsMinCoverageOrgWide`\n\nYou can override env var SFDX_TEST_WAIT_MINUTES to wait more than 60 minutes.\n\nThis command is part of [sfdx-hardis Monitoring](https://sfdx-hardis.cloudity.com/salesforce-monitoring-apex-tests/) and can output Grafana, Slack and MsTeams Notifications.\n",
8071
+ "description": "Mass unfreeze users in org after a maintenance or go live\n\nSee user guide in the following article\n\n<https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3>\n\n[![How to freeze / unfreeze users during a Salesforce deployment](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-freeze.jpg)](https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3)",
8048
8072
  "examples": [
8049
- "$ sf hardis:org:test:apex"
8073
+ "$ sf hardis:org:user:unfreeze",
8074
+ "$ sf hardis:org:user:unfreeze --target-org my-user@myorg.com",
8075
+ "$ sf hardis:org:user:unfreeze --includeprofiles 'Standard'",
8076
+ "$ sf hardis:org:user:unfreeze --excludeprofiles 'System Administrator,Some Other Profile'"
8050
8077
  ],
8051
8078
  "flags": {
8052
8079
  "json": {
@@ -8064,19 +8091,37 @@
8064
8091
  "multiple": false,
8065
8092
  "type": "option"
8066
8093
  },
8067
- "testlevel": {
8068
- "char": "l",
8069
- "description": "Level of tests to apply to validate deployment",
8070
- "name": "testlevel",
8071
- "default": "RunLocalTests",
8094
+ "name": {
8095
+ "char": "n",
8096
+ "description": "Filter according to Name criteria",
8097
+ "name": "name",
8098
+ "hasDynamicHelp": false,
8099
+ "multiple": false,
8100
+ "type": "option"
8101
+ },
8102
+ "includeprofiles": {
8103
+ "char": "p",
8104
+ "description": "List of profiles that you want to unfreeze, separated by commas",
8105
+ "name": "includeprofiles",
8106
+ "hasDynamicHelp": false,
8107
+ "multiple": false,
8108
+ "type": "option"
8109
+ },
8110
+ "excludeprofiles": {
8111
+ "char": "e",
8112
+ "description": "List of profiles that you want to NOT unfreeze, separated by commas",
8113
+ "name": "excludeprofiles",
8114
+ "hasDynamicHelp": false,
8115
+ "multiple": false,
8116
+ "type": "option"
8117
+ },
8118
+ "maxuserdisplay": {
8119
+ "char": "m",
8120
+ "description": "Maximum users to display in logs",
8121
+ "name": "maxuserdisplay",
8122
+ "default": 100,
8072
8123
  "hasDynamicHelp": false,
8073
8124
  "multiple": false,
8074
- "options": [
8075
- "NoTestRun",
8076
- "RunSpecifiedTests",
8077
- "RunLocalTests",
8078
- "RunAllTestsInOrg"
8079
- ],
8080
8125
  "type": "option"
8081
8126
  },
8082
8127
  "debug": {
@@ -8117,58 +8162,57 @@
8117
8162
  },
8118
8163
  "hasDynamicHelp": true,
8119
8164
  "hiddenAliases": [],
8120
- "id": "hardis:org:test:apex",
8165
+ "id": "hardis:org:user:unfreeze",
8121
8166
  "pluginAlias": "sfdx-hardis",
8122
8167
  "pluginName": "sfdx-hardis",
8123
8168
  "pluginType": "core",
8124
8169
  "strict": true,
8125
8170
  "enableJsonFlag": true,
8126
- "title": "Run apex tests",
8171
+ "title": "Unfreeze user logins",
8172
+ "requiresProject": false,
8127
8173
  "isESM": true,
8128
8174
  "relativePath": [
8129
8175
  "lib",
8130
8176
  "commands",
8131
8177
  "hardis",
8132
8178
  "org",
8133
- "test",
8134
- "apex.js"
8179
+ "user",
8180
+ "unfreeze.js"
8135
8181
  ],
8136
8182
  "aliasPermutations": [],
8137
8183
  "permutations": [
8138
- "hardis:org:test:apex",
8139
- "org:hardis:test:apex",
8140
- "org:test:hardis:apex",
8141
- "org:test:apex:hardis",
8142
- "hardis:test:org:apex",
8143
- "test:hardis:org:apex",
8144
- "test:org:hardis:apex",
8145
- "test:org:apex:hardis",
8146
- "hardis:test:apex:org",
8147
- "test:hardis:apex:org",
8148
- "test:apex:hardis:org",
8149
- "test:apex:org:hardis",
8150
- "hardis:org:apex:test",
8151
- "org:hardis:apex:test",
8152
- "org:apex:hardis:test",
8153
- "org:apex:test:hardis",
8154
- "hardis:apex:org:test",
8155
- "apex:hardis:org:test",
8156
- "apex:org:hardis:test",
8157
- "apex:org:test:hardis",
8158
- "hardis:apex:test:org",
8159
- "apex:hardis:test:org",
8160
- "apex:test:hardis:org",
8161
- "apex:test:org:hardis"
8184
+ "hardis:org:user:unfreeze",
8185
+ "org:hardis:user:unfreeze",
8186
+ "org:user:hardis:unfreeze",
8187
+ "org:user:unfreeze:hardis",
8188
+ "hardis:user:org:unfreeze",
8189
+ "user:hardis:org:unfreeze",
8190
+ "user:org:hardis:unfreeze",
8191
+ "user:org:unfreeze:hardis",
8192
+ "hardis:user:unfreeze:org",
8193
+ "user:hardis:unfreeze:org",
8194
+ "user:unfreeze:hardis:org",
8195
+ "user:unfreeze:org:hardis",
8196
+ "hardis:org:unfreeze:user",
8197
+ "org:hardis:unfreeze:user",
8198
+ "org:unfreeze:hardis:user",
8199
+ "org:unfreeze:user:hardis",
8200
+ "hardis:unfreeze:org:user",
8201
+ "unfreeze:hardis:org:user",
8202
+ "unfreeze:org:hardis:user",
8203
+ "unfreeze:org:user:hardis",
8204
+ "hardis:unfreeze:user:org",
8205
+ "unfreeze:hardis:user:org",
8206
+ "unfreeze:user:hardis:org",
8207
+ "unfreeze:user:org:hardis"
8162
8208
  ]
8163
8209
  },
8164
- "hardis:org:user:activateinvalid": {
8210
+ "hardis:package:version:create": {
8165
8211
  "aliases": [],
8166
8212
  "args": {},
8167
- "description": "Update sandbox users so their email is valid\n\n Example: replaces `toto@company.com.dev.invalid` with `toto@company.com.dev.invalid`\n\nSee article below\n\n[![Reactivate all the sandbox users with .invalid emails in 3 clicks](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-invalid-email.jpg)](https://nicolas.vuillamy.fr/reactivate-all-the-sandbox-users-with-invalid-emails-in-3-clicks-2265af4e3a3d)\n",
8213
+ "description": "Create a new version of an unlocked package",
8168
8214
  "examples": [
8169
- "$ sf hardis:org:user:activateinvalid",
8170
- "$ sf hardis:org:user:activateinvalid --target-org my-user@myorg.com",
8171
- "$ sf hardis:org:user:activateinvalid --profiles 'System Administrator,MyCustomProfile' --target-org my-user@myorg.com"
8215
+ "$ sf hardis:package:version:create"
8172
8216
  ],
8173
8217
  "flags": {
8174
8218
  "json": {
@@ -8186,18 +8230,41 @@
8186
8230
  "multiple": false,
8187
8231
  "type": "option"
8188
8232
  },
8189
- "profiles": {
8233
+ "debug": {
8234
+ "char": "d",
8235
+ "description": "Activate debug mode (more logs)",
8236
+ "name": "debug",
8237
+ "allowNo": false,
8238
+ "type": "boolean"
8239
+ },
8240
+ "package": {
8190
8241
  "char": "p",
8191
- "description": "Comma-separated list of profiles names that you want to reactive users assigned to and with a .invalid email",
8192
- "name": "profiles",
8242
+ "description": "Package identifier that you want to use to generate a new package version",
8243
+ "name": "package",
8244
+ "default": "",
8193
8245
  "hasDynamicHelp": false,
8194
8246
  "multiple": false,
8195
8247
  "type": "option"
8196
8248
  },
8197
- "debug": {
8198
- "char": "d",
8199
- "description": "Activate debug mode (more logs)",
8200
- "name": "debug",
8249
+ "installkey": {
8250
+ "char": "k",
8251
+ "description": "Package installation key",
8252
+ "name": "installkey",
8253
+ "default": "",
8254
+ "hasDynamicHelp": false,
8255
+ "multiple": false,
8256
+ "type": "option"
8257
+ },
8258
+ "deleteafter": {
8259
+ "description": "Delete package version after creating it",
8260
+ "name": "deleteafter",
8261
+ "allowNo": false,
8262
+ "type": "boolean"
8263
+ },
8264
+ "install": {
8265
+ "char": "i",
8266
+ "description": "Install package version on default org after generation",
8267
+ "name": "install",
8201
8268
  "allowNo": false,
8202
8269
  "type": "boolean"
8203
8270
  },
@@ -8214,17 +8281,16 @@
8214
8281
  "allowNo": false,
8215
8282
  "type": "boolean"
8216
8283
  },
8217
- "target-org": {
8284
+ "target-dev-hub": {
8218
8285
  "aliases": [
8219
- "targetusername",
8220
- "u"
8286
+ "targetdevhubusername"
8221
8287
  ],
8222
- "char": "o",
8288
+ "char": "v",
8223
8289
  "deprecateAliases": true,
8224
- "name": "target-org",
8290
+ "name": "target-dev-hub",
8225
8291
  "noCacheDefault": true,
8226
8292
  "required": true,
8227
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
8293
+ "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
8228
8294
  "hasDynamicHelp": true,
8229
8295
  "multiple": false,
8230
8296
  "type": "option"
@@ -8232,60 +8298,57 @@
8232
8298
  },
8233
8299
  "hasDynamicHelp": true,
8234
8300
  "hiddenAliases": [],
8235
- "id": "hardis:org:user:activateinvalid",
8301
+ "id": "hardis:package:version:create",
8236
8302
  "pluginAlias": "sfdx-hardis",
8237
8303
  "pluginName": "sfdx-hardis",
8238
8304
  "pluginType": "core",
8239
8305
  "strict": true,
8240
8306
  "enableJsonFlag": true,
8241
- "title": "Reactivate sandbox invalid users",
8242
- "requiresProject": false,
8307
+ "title": "Create a new version of a package",
8308
+ "requiresProject": true,
8243
8309
  "isESM": true,
8244
8310
  "relativePath": [
8245
8311
  "lib",
8246
8312
  "commands",
8247
8313
  "hardis",
8248
- "org",
8249
- "user",
8250
- "activateinvalid.js"
8314
+ "package",
8315
+ "version",
8316
+ "create.js"
8251
8317
  ],
8252
8318
  "aliasPermutations": [],
8253
8319
  "permutations": [
8254
- "hardis:org:user:activateinvalid",
8255
- "org:hardis:user:activateinvalid",
8256
- "org:user:hardis:activateinvalid",
8257
- "org:user:activateinvalid:hardis",
8258
- "hardis:user:org:activateinvalid",
8259
- "user:hardis:org:activateinvalid",
8260
- "user:org:hardis:activateinvalid",
8261
- "user:org:activateinvalid:hardis",
8262
- "hardis:user:activateinvalid:org",
8263
- "user:hardis:activateinvalid:org",
8264
- "user:activateinvalid:hardis:org",
8265
- "user:activateinvalid:org:hardis",
8266
- "hardis:org:activateinvalid:user",
8267
- "org:hardis:activateinvalid:user",
8268
- "org:activateinvalid:hardis:user",
8269
- "org:activateinvalid:user:hardis",
8270
- "hardis:activateinvalid:org:user",
8271
- "activateinvalid:hardis:org:user",
8272
- "activateinvalid:org:hardis:user",
8273
- "activateinvalid:org:user:hardis",
8274
- "hardis:activateinvalid:user:org",
8275
- "activateinvalid:hardis:user:org",
8276
- "activateinvalid:user:hardis:org",
8277
- "activateinvalid:user:org:hardis"
8320
+ "hardis:package:version:create",
8321
+ "package:hardis:version:create",
8322
+ "package:version:hardis:create",
8323
+ "package:version:create:hardis",
8324
+ "hardis:version:package:create",
8325
+ "version:hardis:package:create",
8326
+ "version:package:hardis:create",
8327
+ "version:package:create:hardis",
8328
+ "hardis:version:create:package",
8329
+ "version:hardis:create:package",
8330
+ "version:create:hardis:package",
8331
+ "version:create:package:hardis",
8332
+ "hardis:package:create:version",
8333
+ "package:hardis:create:version",
8334
+ "package:create:hardis:version",
8335
+ "package:create:version:hardis",
8336
+ "hardis:create:package:version",
8337
+ "create:hardis:package:version",
8338
+ "create:package:hardis:version",
8339
+ "create:package:version:hardis",
8340
+ "hardis:create:version:package",
8341
+ "create:hardis:version:package",
8342
+ "create:version:hardis:package",
8343
+ "create:version:package:hardis"
8278
8344
  ]
8279
8345
  },
8280
- "hardis:org:user:freeze": {
8346
+ "hardis:package:version:list": {
8281
8347
  "aliases": [],
8282
8348
  "args": {},
8283
- "description": "Mass freeze users in org before a maintenance or go live\n\nSee user guide in the following article\n\n<https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3>\n\n[![How to freeze / unfreeze users during a Salesforce deployment](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-freeze.jpg)](https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3)",
8349
+ "description": "List versions of unlocked package",
8284
8350
  "examples": [
8285
- "$ sf hardis:org:user:freeze",
8286
- "$ sf hardis:org:user:freeze --target-org my-user@myorg.com",
8287
- "$ sf hardis:org:user:freeze --includeprofiles 'Standard'",
8288
- "$ sf hardis:org:user:freeze --excludeprofiles 'System Administrator,Some Other Profile'"
8351
+ "$ sf hardis:package:version:list"
8289
8352
  ],
8290
8353
  "flags": {
8291
8354
  "json": {
@@ -8303,39 +8366,6 @@
8303
8366
  "multiple": false,
8304
8367
  "type": "option"
8305
8368
  },
8306
- "name": {
8307
- "char": "n",
8308
- "description": "Filter according to Name criteria",
8309
- "name": "name",
8310
- "hasDynamicHelp": false,
8311
- "multiple": false,
8312
- "type": "option"
8313
- },
8314
- "includeprofiles": {
8315
- "char": "p",
8316
- "description": "List of profiles that you want to freeze, separated by commas",
8317
- "name": "includeprofiles",
8318
- "hasDynamicHelp": false,
8319
- "multiple": false,
8320
- "type": "option"
8321
- },
8322
- "excludeprofiles": {
8323
- "char": "e",
8324
- "description": "List of profiles that you want to NOT freeze, separated by commas",
8325
- "name": "excludeprofiles",
8326
- "hasDynamicHelp": false,
8327
- "multiple": false,
8328
- "type": "option"
8329
- },
8330
- "maxuserdisplay": {
8331
- "char": "m",
8332
- "description": "Maximum users to display in logs",
8333
- "name": "maxuserdisplay",
8334
- "default": 100,
8335
- "hasDynamicHelp": false,
8336
- "multiple": false,
8337
- "type": "option"
8338
- },
8339
8369
  "debug": {
8340
8370
  "char": "d",
8341
8371
  "description": "Activate debug mode (more logs)",
@@ -8356,17 +8386,16 @@
8356
8386
  "allowNo": false,
8357
8387
  "type": "boolean"
8358
8388
  },
8359
- "target-org": {
8389
+ "target-dev-hub": {
8360
8390
  "aliases": [
8361
- "targetusername",
8362
- "u"
8391
+ "targetdevhubusername"
8363
8392
  ],
8364
- "char": "o",
8393
+ "char": "v",
8365
8394
  "deprecateAliases": true,
8366
- "name": "target-org",
8395
+ "name": "target-dev-hub",
8367
8396
  "noCacheDefault": true,
8368
8397
  "required": true,
8369
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
8398
+ "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
8370
8399
  "hasDynamicHelp": true,
8371
8400
  "multiple": false,
8372
8401
  "type": "option"
@@ -8374,60 +8403,58 @@
8374
8403
  },
8375
8404
  "hasDynamicHelp": true,
8376
8405
  "hiddenAliases": [],
8377
- "id": "hardis:org:user:freeze",
8406
+ "id": "hardis:package:version:list",
8378
8407
  "pluginAlias": "sfdx-hardis",
8379
8408
  "pluginName": "sfdx-hardis",
8380
8409
  "pluginType": "core",
8381
8410
  "strict": true,
8382
8411
  "enableJsonFlag": true,
8383
- "title": "Freeze user logins",
8384
- "requiresProject": false,
8412
+ "title": "Create a new version of a package",
8413
+ "requiresProject": true,
8385
8414
  "isESM": true,
8386
8415
  "relativePath": [
8387
8416
  "lib",
8388
8417
  "commands",
8389
8418
  "hardis",
8390
- "org",
8391
- "user",
8392
- "freeze.js"
8419
+ "package",
8420
+ "version",
8421
+ "list.js"
8393
8422
  ],
8394
8423
  "aliasPermutations": [],
8395
8424
  "permutations": [
8396
- "hardis:org:user:freeze",
8397
- "org:hardis:user:freeze",
8398
- "org:user:hardis:freeze",
8399
- "org:user:freeze:hardis",
8400
- "hardis:user:org:freeze",
8401
- "user:hardis:org:freeze",
8402
- "user:org:hardis:freeze",
8403
- "user:org:freeze:hardis",
8404
- "hardis:user:freeze:org",
8405
- "user:hardis:freeze:org",
8406
- "user:freeze:hardis:org",
8407
- "user:freeze:org:hardis",
8408
- "hardis:org:freeze:user",
8409
- "org:hardis:freeze:user",
8410
- "org:freeze:hardis:user",
8411
- "org:freeze:user:hardis",
8412
- "hardis:freeze:org:user",
8413
- "freeze:hardis:org:user",
8414
- "freeze:org:hardis:user",
8415
- "freeze:org:user:hardis",
8416
- "hardis:freeze:user:org",
8417
- "freeze:hardis:user:org",
8418
- "freeze:user:hardis:org",
8419
- "freeze:user:org:hardis"
8425
+ "hardis:package:version:list",
8426
+ "package:hardis:version:list",
8427
+ "package:version:hardis:list",
8428
+ "package:version:list:hardis",
8429
+ "hardis:version:package:list",
8430
+ "version:hardis:package:list",
8431
+ "version:package:hardis:list",
8432
+ "version:package:list:hardis",
8433
+ "hardis:version:list:package",
8434
+ "version:hardis:list:package",
8435
+ "version:list:hardis:package",
8436
+ "version:list:package:hardis",
8437
+ "hardis:package:list:version",
8438
+ "package:hardis:list:version",
8439
+ "package:list:hardis:version",
8440
+ "package:list:version:hardis",
8441
+ "hardis:list:package:version",
8442
+ "list:hardis:package:version",
8443
+ "list:package:hardis:version",
8444
+ "list:package:version:hardis",
8445
+ "hardis:list:version:package",
8446
+ "list:hardis:version:package",
8447
+ "list:version:hardis:package",
8448
+ "list:version:package:hardis"
8420
8449
  ]
8421
8450
  },
8422
- "hardis:org:user:unfreeze": {
8451
+ "hardis:package:version:promote": {
8423
8452
  "aliases": [],
8424
8453
  "args": {},
8425
- "description": "Mass unfreeze users in org after a maintenance or go live\n\nSee user guide in the following article\n\n<https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3>\n\n[![How to freeze / unfreeze users during a Salesforce deployment](https://github.com/hardisgroupcom/sfdx-hardis/raw/main/docs/assets/images/article-freeze.jpg)](https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3)",
8454
+ "description": "Promote package(s) version(s): convert it from beta to released",
8426
8455
  "examples": [
8427
- "$ sf hardis:org:user:unfreeze",
8428
- "$ sf hardis:org:user:unfreeze --target-org my-user@myorg.com",
8429
- "$ sf hardis:org:user:unfreeze --includeprofiles 'Standard'",
8430
- "$ sf hardis:org:user:unfreeze --excludeprofiles 'System Administrator,Some Other Profile'"
8456
+ "$ sf hardis:package:version:promote",
8457
+ "$ sf hardis:package:version:promote --auto"
8431
8458
  ],
8432
8459
  "flags": {
8433
8460
  "json": {
@@ -8445,38 +8472,12 @@
8445
8472
  "multiple": false,
8446
8473
  "type": "option"
8447
8474
  },
8448
- "name": {
8449
- "char": "n",
8450
- "description": "Filter according to Name criteria",
8451
- "name": "name",
8452
- "hasDynamicHelp": false,
8453
- "multiple": false,
8454
- "type": "option"
8455
- },
8456
- "includeprofiles": {
8457
- "char": "p",
8458
- "description": "List of profiles that you want to unfreeze, separated by commas",
8459
- "name": "includeprofiles",
8460
- "hasDynamicHelp": false,
8461
- "multiple": false,
8462
- "type": "option"
8463
- },
8464
- "excludeprofiles": {
8465
- "char": "e",
8466
- "description": "List of profiles that you want to NOT unfreeze, separated by commas",
8467
- "name": "excludeprofiles",
8468
- "hasDynamicHelp": false,
8469
- "multiple": false,
8470
- "type": "option"
8471
- },
8472
- "maxuserdisplay": {
8473
- "char": "m",
8474
- "description": "Maximum users to display in logs",
8475
- "name": "maxuserdisplay",
8476
- "default": 100,
8477
- "hasDynamicHelp": false,
8478
- "multiple": false,
8479
- "type": "option"
8475
+ "auto": {
8476
+ "char": "f",
8477
+ "description": "Auto-detect which versions of which packages need to be promoted",
8478
+ "name": "auto",
8479
+ "allowNo": false,
8480
+ "type": "boolean"
8480
8481
  },
8481
8482
  "debug": {
8482
8483
  "char": "d",
@@ -8498,17 +8499,16 @@
8498
8499
  "allowNo": false,
8499
8500
  "type": "boolean"
8500
8501
  },
8501
- "target-org": {
8502
+ "target-dev-hub": {
8502
8503
  "aliases": [
8503
- "targetusername",
8504
- "u"
8504
+ "targetdevhubusername"
8505
8505
  ],
8506
- "char": "o",
8506
+ "char": "v",
8507
8507
  "deprecateAliases": true,
8508
- "name": "target-org",
8508
+ "name": "target-dev-hub",
8509
8509
  "noCacheDefault": true,
8510
8510
  "required": true,
8511
- "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
8511
+ "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
8512
8512
  "hasDynamicHelp": true,
8513
8513
  "multiple": false,
8514
8514
  "type": "option"
@@ -8516,49 +8516,49 @@
8516
8516
  },
8517
8517
  "hasDynamicHelp": true,
8518
8518
  "hiddenAliases": [],
8519
- "id": "hardis:org:user:unfreeze",
8519
+ "id": "hardis:package:version:promote",
8520
8520
  "pluginAlias": "sfdx-hardis",
8521
8521
  "pluginName": "sfdx-hardis",
8522
8522
  "pluginType": "core",
8523
8523
  "strict": true,
8524
8524
  "enableJsonFlag": true,
8525
- "title": "Unfreeze user logins",
8526
- "requiresProject": false,
8525
+ "title": "Promote new versions of package(s)",
8526
+ "requiresProject": true,
8527
8527
  "isESM": true,
8528
8528
  "relativePath": [
8529
8529
  "lib",
8530
8530
  "commands",
8531
8531
  "hardis",
8532
- "org",
8533
- "user",
8534
- "unfreeze.js"
8532
+ "package",
8533
+ "version",
8534
+ "promote.js"
8535
8535
  ],
8536
8536
  "aliasPermutations": [],
8537
8537
  "permutations": [
8538
- "hardis:org:user:unfreeze",
8539
- "org:hardis:user:unfreeze",
8540
- "org:user:hardis:unfreeze",
8541
- "org:user:unfreeze:hardis",
8542
- "hardis:user:org:unfreeze",
8543
- "user:hardis:org:unfreeze",
8544
- "user:org:hardis:unfreeze",
8545
- "user:org:unfreeze:hardis",
8546
- "hardis:user:unfreeze:org",
8547
- "user:hardis:unfreeze:org",
8548
- "user:unfreeze:hardis:org",
8549
- "user:unfreeze:org:hardis",
8550
- "hardis:org:unfreeze:user",
8551
- "org:hardis:unfreeze:user",
8552
- "org:unfreeze:hardis:user",
8553
- "org:unfreeze:user:hardis",
8554
- "hardis:unfreeze:org:user",
8555
- "unfreeze:hardis:org:user",
8556
- "unfreeze:org:hardis:user",
8557
- "unfreeze:org:user:hardis",
8558
- "hardis:unfreeze:user:org",
8559
- "unfreeze:hardis:user:org",
8560
- "unfreeze:user:hardis:org",
8561
- "unfreeze:user:org:hardis"
8538
+ "hardis:package:version:promote",
8539
+ "package:hardis:version:promote",
8540
+ "package:version:hardis:promote",
8541
+ "package:version:promote:hardis",
8542
+ "hardis:version:package:promote",
8543
+ "version:hardis:package:promote",
8544
+ "version:package:hardis:promote",
8545
+ "version:package:promote:hardis",
8546
+ "hardis:version:promote:package",
8547
+ "version:hardis:promote:package",
8548
+ "version:promote:hardis:package",
8549
+ "version:promote:package:hardis",
8550
+ "hardis:package:promote:version",
8551
+ "package:hardis:promote:version",
8552
+ "package:promote:hardis:version",
8553
+ "package:promote:version:hardis",
8554
+ "hardis:promote:package:version",
8555
+ "promote:hardis:package:version",
8556
+ "promote:package:hardis:version",
8557
+ "promote:package:version:hardis",
8558
+ "hardis:promote:version:package",
8559
+ "promote:hardis:version:package",
8560
+ "promote:version:hardis:package",
8561
+ "promote:version:package:hardis"
8562
8562
  ]
8563
8563
  },
8564
8564
  "hardis:project:audit:apiversion": {
@@ -14525,5 +14525,5 @@
14525
14525
  ]
14526
14526
  }
14527
14527
  },
14528
- "version": "5.32.0"
14528
+ "version": "5.32.2-beta202505101931.0"
14529
14529
  }