apn-app-manager 0.0.11 → 0.1.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 (67) hide show
  1. package/.prettierrc +11 -11
  2. package/CT APP Clone Tester.zip +0 -0
  3. package/README.md +60 -26
  4. package/lib/aim/LICENSE/NOTICE.html +711 -711
  5. package/lib/aim/deploy-application.bat +1 -1
  6. package/lib/aim/deploy-application.sh +162 -162
  7. package/lib/aim/import-manager_template.properties +50 -50
  8. package/lib/aim/lib/appian-adm-import-client-2.5.17.jar +0 -0
  9. package/lib/aim/lib/log4j.properties +17 -17
  10. package/lib/aim/metrics.properties +10 -10
  11. package/manifest.json +29 -29
  12. package/out/temp/META-INF/MANIFEST.MF +4 -0
  13. package/out/temp/META-INF/export.log +876 -0
  14. package/out/temp/META-INF/plugins.txt +4 -0
  15. package/out/temp/application/_a-0000e88d-6440-8000-9bf2-011c48011c48_855378-new.xml +358 -0
  16. package/out/temp/connectedSystem/_a-0000e88d-6440-8000-9bf2-011c48011c48_864509-new.xml +63 -0
  17. package/out/temp/content/1d6e665c-14b4-4bb9-88fb-ae64e1eddbf3-new.xml +75 -0
  18. package/out/temp/content/6b262b50-0d7a-4dc9-a31b-473fd11f347a-new.xml +100 -0
  19. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_855525-new.xml +181 -0
  20. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863563/file.png +0 -0
  21. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863563-new.xml +50 -0
  22. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863564-new.xml +55 -0
  23. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863573-new.xml +49 -0
  24. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863584-new.xml +54 -0
  25. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863603/file.properties +1 -0
  26. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863603.xml +50 -0
  27. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863609.xml +57 -0
  28. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_863616.xml +55 -0
  29. package/out/temp/content/_a-0000e88d-6440-8000-9bf2-011c48011c48_864578.xml +162 -0
  30. package/out/temp/content/b639666e-eb53-4a1a-b963-c2a21ca400f7.xml +89 -0
  31. package/out/temp/content/c1448a43-e704-42c3-8588-2180b74a138a.xml +255 -0
  32. package/out/temp/content/fcb9b72f-10dd-4744-8870-a44a7fcb4aeb.xml +77 -0
  33. package/out/temp/dataStore/_a-0000e88d-6440-8000-9bf2-011c48011c48_855385.xml +55 -0
  34. package/out/temp/datatype/%7Burn%3Acom%3Aappian%3Atypes%3ACT%3AAPP%7DCT_APP_TEST_TABLE.xsd +48 -0
  35. package/out/temp/datatype/%7Burn%3Acom%3Aappian%3Atypes%3ACT%3AAPP%7DCT_APP_TEST_TABLE_REFERENCE.xsd +31 -0
  36. package/out/temp/group/_e-0000e88d-6440-8000-9b3f-01075c01075c_805.xml +29 -0
  37. package/out/temp/group/_e-0000e88d-6440-8000-9b3f-01075c01075c_807.xml +29 -0
  38. package/out/temp/groupType/_f-0000e88d-6440-8000-9b3f-01075c01075c_1.xml +13 -0
  39. package/out/temp/processModel/0002e8ba-9f2b-8000-1196-7f0000014e7a.xml +1338 -0
  40. package/out/temp/processModelFolder/_g-0000e88d-6441-8000-10c5-7f0000014e7a_197.xml +44 -0
  41. package/out/temp/recordType/00262392-ae09-4941-8b80-d46df28c734f.xml +325 -0
  42. package/out/temp/recordType/0c9e7b5a-c28d-496b-a7c1-8ad7227e513a.xml +155 -0
  43. package/out/temp/recordType/cbbc5029-b0c1-43a2-9430-24fa704c512c.xml +223 -0
  44. package/out/temp/site/15c1e536-fd29-4412-879d-219b02bd1c59.xml +47 -0
  45. package/out/temp/tempoReport/eb755f20-5148-4f8f-92cc-fd69980d6082.xml +27 -0
  46. package/out/temp/webApi/3a013f66-bd81-414a-a72e-bbd03c8befe9.xml +62 -0
  47. package/package.json +47 -32
  48. package/resources/force_update_.properties +1 -0
  49. package/src/actions/buildAction.js +61 -0
  50. package/src/actions/cloneAction.js +100 -65
  51. package/src/actions/packageAction.js +219 -0
  52. package/src/actions/renameAction.js +92 -0
  53. package/src/cons.js +35 -22
  54. package/src/handlers/excelHandler.js +65 -88
  55. package/src/handlers/fileSelectHandler.js +31 -0
  56. package/src/handlers/importHandler.js +138 -138
  57. package/src/handlers/objectExtractHandler.js +110 -77
  58. package/src/handlers/objectMapsUpdateHandler.js +75 -0
  59. package/src/handlers/objectModifyHandler.js +115 -163
  60. package/src/handlers/promptHandler.js +81 -71
  61. package/src/index.js +87 -72
  62. package/src/objectProps.js +472 -309
  63. package/src/packageConfigs.json +162 -0
  64. package/src/util.js +489 -437
  65. package/lib/aim/deploymentautomation.log +0 -452
  66. package/lib/aim/lib/appian-adm-import-client-2.5.9.jar +0 -0
  67. package/src/debug.js +0 -51
package/.prettierrc CHANGED
@@ -1,11 +1,11 @@
1
- {
2
- "printWidth": 140,
3
- "tabWidth": 2,
4
- "useTabs": false,
5
- "semi": true,
6
- "singleQuote": false,
7
- "trailingComma": "es5",
8
- "bracketSpacing": true,
9
- "jsxBracketSameLine": false,
10
- "arrowParens": "avoid"
11
- }
1
+ {
2
+ "printWidth": 140,
3
+ "tabWidth": 2,
4
+ "useTabs": false,
5
+ "semi": true,
6
+ "singleQuote": false,
7
+ "trailingComma": "es5",
8
+ "bracketSpacing": true,
9
+ "jsxBracketSameLine": false,
10
+ "arrowParens": "avoid"
11
+ }
Binary file
package/README.md CHANGED
@@ -1,26 +1,60 @@
1
- Node.js: apn-app-manager
2
- =================
3
-
4
- `apn-app-manager` is a command line tool for managing Appian applications
5
-
6
- Why?
7
- ----
8
-
9
- Todo...
10
-
11
- Installation
12
- ------------
13
-
14
- npm i -g apn-app-manager
15
-
16
-
17
- Usage
18
- -----
19
-
20
- Todo...
21
-
22
-
23
- License
24
- -------
25
-
26
- Todo...
1
+ # Node.js: apn-app-manager
2
+
3
+ `apn-app-manager` is a command line tool for managing Appian applications
4
+
5
+ ## Why?
6
+
7
+ Todo...
8
+
9
+ ## Installation
10
+
11
+ 1. Download and install [the latest version of node](https://nodejs.org/en/download/) if you don't already have it
12
+ 1. Clone this repository
13
+ 1. Navigate to `[repo]\node\app-manager` in your command line
14
+ 1. Run `npm i`
15
+ 1. Run `npm link`
16
+
17
+ ## Building Solutions Application Package
18
+
19
+ 1. First, ensure you have the latest version of this package installed. Within your Git tool, fetch and pull the latest version from master.
20
+ 2. Open up your command line and run the command `apn package --prefix <prefix>` where `<prefix>` should be one of the following:
21
+ - `IO` - Institutional Onboarding
22
+ - `KYC` - Know your Customer
23
+ - `RM` - Requirements Management
24
+ - `WS` - Workforce Safety
25
+ - `AM` - Award Management
26
+ - `MS` - (GAM) Management Suite
27
+ 3. This should begin the packaging process, and once complete, all of the files will be available to import into your test environment in a new folder called `/out` which will be inside of the folder in which you ran the command
28
+ - To wipe the existing database tables, first run the SQL file that contains the word `WIPE`, then the other SQL file
29
+
30
+ #### Notes regarding packaging
31
+
32
+ - **Important** If the package script fails (it will be obvious), then navigate to the folder in your file explorer, delete the newly generated folder called `out`, and just re-run the packaging command.
33
+ - The little metrics about how many files are mapped/updated are currently inaccurate. Don't pay them attention at this time.
34
+
35
+ ## Renaming Objects in Bulk (currently broken)
36
+
37
+ 1. Download an application package of objects you'd like to rename
38
+ - If you are renaming CDTs, ensure that all direct dependents of the CDTs are also included in the application package
39
+ 1. Navigate to the folder containing the application package in your command line
40
+ 1. Run `apn r`
41
+ - If this doesn't work, there was likely an issue when running `npm link` above
42
+ 1. Follow the prompts to select the application package and provide the new namespace
43
+ - If you are not renaming to a new namespace, just provide the same value for current and new namespace
44
+ 1. Modify the Excel file (appears in a new `/out` directory) with the new names for names, descriptions, and any other values
45
+ - DO NOT modify the structure of the Excel file or modify any columns that do not end in `_new`
46
+ 1. Save the Excel file and the resultant application package will appear in the new `/out` directory
47
+ 1. Import your new application package to your environment, including [force_update\_.properties](resources/force_update_.properties) as the properties file to ensure the objects are updated
48
+
49
+ #### Notes regarding renaming
50
+
51
+ - It is recommend to always test the import against a sandbox site (e.g. CI site) before importing to your actual site - At worst, the tool may not perform as expected, however it shouldn't corrupt any files - For the future notes about unsupported behavior, you can always try it out and see if it works ¯\\_(ツ)_/¯
52
+ - The prompt for current and new namespace will auto-replace all instances of the current namespace to the new namespace, and is meant to be a shortcut to common renaming use cases - As mentioned above, providing the same value for current and new namespace will result in nothing being auto-renamed prior to the Excel output
53
+ - Renaming multiple objects that currently have the same name to each have different names is not currently supported - e.g. Changing the name of a data store entity and a CDT, which are currently the same, to be different - This INCLUDES setting the description on a number of objects whose description is currently null
54
+ - Description fields with special characters (&, carriage returns, etc) are not currently supported
55
+ - Be careful if renaming any fields that are array types (such as data store entity names), maintain the exact same delimination as exists in the Excel file
56
+ - CDTs cannot actual be renamed, instead new CDTs will be created with the new names, and you'll have to manually delete the old CDTs (all references should be updated)
57
+
58
+ ## License
59
+
60
+ Todo...