dcdx 1.2.0 → 1.3.0-next.1

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 (68) hide show
  1. package/assets/versions.json +1 -1
  2. package/lib/commands/apt.js +11105 -0
  3. package/lib/commands/build.js +1831 -772
  4. package/lib/commands/database.js +1553 -718
  5. package/lib/commands/debug.js +1872 -865
  6. package/lib/commands/install.js +9456 -0
  7. package/lib/commands/reset.js +1720 -799
  8. package/lib/commands/run.js +1684 -770
  9. package/lib/commands/stop.js +1720 -799
  10. package/lib/commands/update.js +9093 -0
  11. package/lib/index.js +73 -2
  12. package/lib/types/src/applications/bamboo.d.ts +0 -2
  13. package/lib/types/src/applications/base.d.ts +5 -4
  14. package/lib/types/src/applications/bitbucket.d.ts +0 -2
  15. package/lib/types/src/applications/confluence.d.ts +0 -2
  16. package/lib/types/src/applications/jira.d.ts +0 -2
  17. package/lib/types/src/apt/helpers/dcapt.d.ts +6 -0
  18. package/lib/types/src/apt/helpers/generatePerformanceReport.d.ts +2 -0
  19. package/lib/types/src/apt/helpers/generateScalabilityReport.d.ts +2 -0
  20. package/lib/types/src/apt/helpers/getAWSCredentials.d.ts +2 -0
  21. package/lib/types/src/apt/helpers/getAptDirectory.d.ts +1 -0
  22. package/lib/types/src/apt/helpers/getClusterURL.d.ts +2 -0
  23. package/lib/types/src/apt/helpers/getDuration.d.ts +3 -0
  24. package/lib/types/src/apt/helpers/getEnvironmentName.d.ts +1 -0
  25. package/lib/types/src/apt/helpers/getHostLicense.d.ts +4 -0
  26. package/lib/types/src/apt/helpers/getNodeNumberForStage.d.ts +2 -0
  27. package/lib/types/src/apt/helpers/getOutputDirectory.d.ts +1 -0
  28. package/lib/types/src/apt/helpers/getProduct.d.ts +2 -0
  29. package/lib/types/src/apt/helpers/getReindexProgress.d.ts +1 -0
  30. package/lib/types/src/apt/helpers/getReport.d.ts +2 -0
  31. package/lib/types/src/apt/helpers/getReportDirectory.d.ts +1 -0
  32. package/lib/types/src/apt/helpers/getResults.d.ts +2 -0
  33. package/lib/types/src/apt/helpers/getResultsDirectory.d.ts +2 -0
  34. package/lib/types/src/apt/helpers/getRunForStage.d.ts +2 -0
  35. package/lib/types/src/apt/helpers/installApp.d.ts +1 -0
  36. package/lib/types/src/apt/helpers/persistClusterConfiguration.d.ts +1 -0
  37. package/lib/types/src/apt/helpers/persistTestConfiguration.d.ts +2 -0
  38. package/lib/types/src/apt/helpers/persistsAWSCredentials.d.ts +1 -0
  39. package/lib/types/src/apt/helpers/provisionCluster.d.ts +8 -0
  40. package/lib/types/src/apt/helpers/reindex.d.ts +1 -0
  41. package/lib/types/src/apt/helpers/runPerformanceTest.d.ts +2 -0
  42. package/lib/types/src/apt/helpers/runScalabilityTest.d.ts +2 -0
  43. package/lib/types/src/apt/helpers/teardownCluster.d.ts +2 -0
  44. package/lib/types/src/apt/helpers/waitForUserInput.d.ts +2 -0
  45. package/lib/types/src/apt/messages.d.ts +30 -0
  46. package/lib/types/src/apt/performance.d.ts +2 -0
  47. package/lib/types/src/apt/scalability.d.ts +2 -0
  48. package/lib/types/src/commands/apt.d.ts +2 -0
  49. package/lib/types/src/commands/install.d.ts +2 -0
  50. package/lib/types/src/commands/update.d.ts +2 -0
  51. package/lib/types/src/helpers/ActionHandler.d.ts +8 -3
  52. package/lib/types/src/helpers/CustomBuilder.d.ts +12 -0
  53. package/lib/types/src/helpers/FileWatcher.d.ts +2 -2
  54. package/lib/types/src/helpers/Installer.d.ts +3 -0
  55. package/lib/types/src/helpers/amps.d.ts +1 -0
  56. package/lib/types/src/helpers/capitalize.d.ts +1 -0
  57. package/lib/types/src/helpers/generateVersionList.d.ts +3 -0
  58. package/lib/types/src/helpers/getDatabaseEngine.d.ts +1 -1
  59. package/lib/types/src/helpers/getVersions.d.ts +1 -0
  60. package/lib/types/src/helpers/isOfType.d.ts +1 -0
  61. package/lib/types/src/helpers/licences.d.ts +1 -0
  62. package/lib/types/src/helpers/readLinesInFile.d.ts +1 -0
  63. package/lib/types/src/helpers/replaceLinesInFile.d.ts +1 -0
  64. package/lib/types/src/helpers/upm.d.ts +3 -0
  65. package/lib/types/src/types/AMPS.d.ts +40 -13
  66. package/lib/types/src/types/Application.d.ts +15 -11
  67. package/lib/types/src/types/DCAPT.d.ts +302 -0
  68. package/package.json +20 -8
package/lib/index.js CHANGED
@@ -1,16 +1,31 @@
1
1
  #!/usr/bin/env node
2
2
  import { program } from 'commander';
3
+ import { realpathSync, existsSync } from 'fs';
4
+ import { dirname, join } from 'path';
3
5
 
4
- var version = "1.2.0";
6
+ var version = "1.3.0-next.1";
7
+
8
+ const toAbsolutePath = (relativePath) => {
9
+ const [, filePath] = process.argv;
10
+ const executableFileDir = dirname(realpathSync(filePath));
11
+ const basedir = executableFileDir.substring(0, executableFileDir.indexOf('dcdx') + 4);
12
+ return join(basedir, relativePath.replaceAll('../', ''));
13
+ };
5
14
 
6
15
  program
7
16
  .name('dcdx')
8
17
  .description('The Unofficial Atlassian Data Center Plugin Development CLI')
9
18
  .version(version)
10
19
  .showHelpAfterError(true);
20
+ // ------------------------------------------------------------------------------------------ APT
21
+ program
22
+ .command('apt', 'Run the App Performance Toolkit tests', { executableFile: './commands/apt.js' });
11
23
  // ------------------------------------------------------------------------------------------ Build
12
24
  program
13
25
  .command('build', 'Build the Atlassian Data Center plugin based on the Atlassian Maven Plugin Suite (AMPS) configuration', { executableFile: './commands/build.js' });
26
+ // ------------------------------------------------------------------------------------------ Install
27
+ program
28
+ .command('install', 'Install the Atlassian Data Center plugin based on the Atlassian Maven Plugin Suite (AMPS) configuration', { executableFile: './commands/install.js' });
14
29
  // ------------------------------------------------------------------------------------------ Start
15
30
  program
16
31
  .command('debug', 'Start the product in debug mode based on the Atlassian Maven Plugin Suite (AMPS) configuration with the plugin installed', { executableFile: './commands/debug.js' });
@@ -90,5 +105,61 @@ program
90
105
  process.argv.splice(2, 1, ...['profile', command]);
91
106
  program.parse(process.argv);
92
107
  });
108
+ // ------------------------------------------------------------------------------------------ Update
109
+ program
110
+ .command('update', 'Update the DCDX host product version list', { executableFile: './commands/update.js' });
111
+ program
112
+ .command('update:jira')
113
+ .description('Update the DCDX product version list for Atlassian Jira')
114
+ .action(() => {
115
+ process.argv.splice(2, 1, ...['update', 'jira']);
116
+ program.parse(process.argv);
117
+ });
118
+ program
119
+ .command('update:confluence')
120
+ .description('Update the DCDX product version list for Atlassian Confluence')
121
+ .action(() => {
122
+ process.argv.splice(2, 1, ...['update', 'confluence']);
123
+ program.parse(process.argv);
124
+ });
125
+ program
126
+ .command('update:bamboo')
127
+ .description('Update the DCDX product version list for Atlassian Bamboo')
128
+ .action(() => {
129
+ process.argv.splice(2, 1, ...['update', 'bamboo']);
130
+ program.parse(process.argv);
131
+ });
132
+ program
133
+ .command('update:bitbucket')
134
+ .description('Update the DCDX product version list for Atlassian Bitbucket')
135
+ .action(() => {
136
+ process.argv.splice(2, 1, ...['update', 'bitbucket']);
137
+ program.parse(process.argv);
138
+ });
139
+ program
140
+ .command('update:mysql')
141
+ .description('Update the DCDX product version list for MySQL')
142
+ .action(() => {
143
+ process.argv.splice(2, 1, ...['update', 'mysql']);
144
+ program.parse(process.argv);
145
+ });
146
+ program
147
+ .command('update:postgresql')
148
+ .description('Update the DCDX product version list for Postgres SQL')
149
+ .action(() => {
150
+ process.argv.splice(2, 1, ...['update', 'postgresql']);
151
+ program.parse(process.argv);
152
+ });
153
+ program
154
+ .command('update:mssql')
155
+ .description('Update the DCDX product version list for Microsoft SQL Server')
156
+ .action(() => {
157
+ process.argv.splice(2, 1, ...['update', 'mssql']);
158
+ program.parse(process.argv);
159
+ });
160
+ // Check if we need to update our version list before we parse the arguments
161
+ if (!process.argv.includes('update') && !existsSync(toAbsolutePath('../assets/versions.json'))) {
162
+ program.error('Unable to find host product version list, please run `dcdx update`');
163
+ }
93
164
  program.parse();
94
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL2Rpc3Qvc3JjL2luZGV4LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7IHByb2dyYW0gfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHsgdmVyc2lvbiB9IGZyb20gJy4uL3BhY2thZ2UuanNvbic7XG5wcm9ncmFtXG4gICAgLm5hbWUoJ2RjZHgnKVxuICAgIC5kZXNjcmlwdGlvbignVGhlIFVub2ZmaWNpYWwgQXRsYXNzaWFuIERhdGEgQ2VudGVyIFBsdWdpbiBEZXZlbG9wbWVudCBDTEknKVxuICAgIC52ZXJzaW9uKHZlcnNpb24pXG4gICAgLnNob3dIZWxwQWZ0ZXJFcnJvcih0cnVlKTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBCdWlsZFxucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdidWlsZCcsICdCdWlsZCB0aGUgQXRsYXNzaWFuIERhdGEgQ2VudGVyIHBsdWdpbiBiYXNlZCBvbiB0aGUgQXRsYXNzaWFuIE1hdmVuIFBsdWdpbiBTdWl0ZSAoQU1QUykgY29uZmlndXJhdGlvbicsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL2J1aWxkLmpzJyB9KTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBTdGFydFxucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdkZWJ1ZycsICdTdGFydCB0aGUgcHJvZHVjdCBpbiBkZWJ1ZyBtb2RlIGJhc2VkIG9uIHRoZSBBdGxhc3NpYW4gTWF2ZW4gUGx1Z2luIFN1aXRlIChBTVBTKSBjb25maWd1cmF0aW9uIHdpdGggdGhlIHBsdWdpbiBpbnN0YWxsZWQnLCB7IGV4ZWN1dGFibGVGaWxlOiAnLi9jb21tYW5kcy9kZWJ1Zy5qcycgfSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUnVuXG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3J1bicsICdTdGFydCB0aGUgQXRsYXNzaWFuIGhvc3QgYXBwbGljYXRpb24gKHN0YW5kYWxvbmUpJywgeyBleGVjdXRhYmxlRmlsZTogJy4vY29tbWFuZHMvcnVuLmpzJyB9KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgncnVuOmppcmEnKVxuICAgIC5kZXNjcmlwdGlvbignU3RhcnQgQXRsYXNzaWFuIEppcmEnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydydW4nLCAnamlyYSddKTtcbiAgICBwcm9ncmFtLnBhcnNlKHByb2Nlc3MuYXJndik7XG59KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgncnVuOmNvbmZsdWVuY2UnKVxuICAgIC5kZXNjcmlwdGlvbignU3RhcnQgQXRsYXNzaWFuIENvbmZsdWVuY2UnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydydW4nLCAnY29uZmx1ZW5jZSddKTtcbiAgICBwcm9ncmFtLnBhcnNlKHByb2Nlc3MuYXJndik7XG59KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgncnVuOmJpdGJ1Y2tldCcpXG4gICAgLmRlc2NyaXB0aW9uKCdTdGFydCBBdGxhc3NpYW4gQml0YnVja2V0JylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsncnVuJywgJ2JpdGJ1Y2tldCddKTtcbiAgICBwcm9ncmFtLnBhcnNlKHByb2Nlc3MuYXJndik7XG59KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgncnVuOmJhbWJvbycpXG4gICAgLmRlc2NyaXB0aW9uKCdTdGFydCBBdGxhc3NpYW4gQmFtYm9vJylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsncnVuJywgJ2JhbWJvbyddKTtcbiAgICBwcm9ncmFtLnBhcnNlKHByb2Nlc3MuYXJndik7XG59KTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBEYXRhYmFzZVxucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdkYXRhYmFzZScsICdTdGFydCBhIGRhdGFiYXNlIGVuZ2luZSAoc3RhbmRhbG9uZSknLCB7IGV4ZWN1dGFibGVGaWxlOiAnLi9jb21tYW5kcy9kYXRhYmFzZS5qcycgfSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2RhdGFiYXNlOnBvc3RncmVzJylcbiAgICAuZGVzY3JpcHRpb24oJ1N0YXJ0IFBvc3RncmVTUUwnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydkYXRhYmFzZScsICdwb3N0Z3Jlc3FsJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdkYXRhYmFzZTpwb3N0Z3Jlc3FsJylcbiAgICAuZGVzY3JpcHRpb24oJ1N0YXJ0IFBvc3RncmVTUUwnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydkYXRhYmFzZScsICdwb3N0Z3Jlc3FsJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdkYXRhYmFzZTpteXNxbCcpXG4gICAgLmRlc2NyaXB0aW9uKCdTdGFydCBNeVNRTCcpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ2RhdGFiYXNlJywgJ215c3FsJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdkYXRhYmFzZTptc3NxbCcpXG4gICAgLmRlc2NyaXB0aW9uKCdTdGFydCBNaWNyb3NvZnQgU3FsIFNlcnZlcicpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ2RhdGFiYXNlJywgJ21zc3FsJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFN0b3BcbnByb2dyYW1cbiAgICAuY29tbWFuZCgnc3RvcCcsICdTdG9wIHRoZSBob3N0IGFwcGxpY2F0aW9uIGFuZCBkYXRhYmFzZScsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL3N0b3AuanMnIH0pO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFJlc2V0XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3Jlc2V0JywgJ1JlbW92ZSBhbGwgYXBwbGljYXRpb24gZGF0YSAoaW5jbC4gZGF0YWJhc2UpIGFuZCBzdGFydCBmcmVzaCEnLCB7IGV4ZWN1dGFibGVGaWxlOiAnLi9jb21tYW5kcy9yZXNldC5qcycgfSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUHJvZmlsZVxucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdwcm9maWxlJywgJ1J1biBhIHByZWRlZmluZWQgcHJvZmlsZScsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL3Byb2ZpbGUuanMnIH0pXG4gICAgLm9uKCdjb21tYW5kOionLCAoYXJncykgPT4ge1xuICAgIGNvbnN0IGNvbW1hbmQgPSBhcmdzWzBdO1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydwcm9maWxlJywgY29tbWFuZF0pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbS5wYXJzZSgpO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0EsT0FBTztBQUNQLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQztBQUNqQixLQUFLLFdBQVcsQ0FBQyw2REFBNkQsQ0FBQztBQUMvRSxLQUFLLE9BQU8sQ0FBQyxPQUFPLENBQUM7QUFDckIsS0FBSyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM5QjtBQUNBLE9BQU87QUFDUCxLQUFLLE9BQU8sQ0FBQyxPQUFPLEVBQUUsdUdBQXVHLEVBQUUsRUFBRSxjQUFjLEVBQUUscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO0FBQzFLO0FBQ0EsT0FBTztBQUNQLEtBQUssT0FBTyxDQUFDLE9BQU8sRUFBRSwwSEFBMEgsRUFBRSxFQUFFLGNBQWMsRUFBRSxxQkFBcUIsRUFBRSxDQUFDLENBQUM7QUFDN0w7QUFDQSxPQUFPO0FBQ1AsS0FBSyxPQUFPLENBQUMsS0FBSyxFQUFFLG1EQUFtRCxFQUFFLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztBQUNsSCxPQUFPO0FBQ1AsS0FBSyxPQUFPLENBQUMsVUFBVSxDQUFDO0FBQ3hCLEtBQUssV0FBVyxDQUFDLHNCQUFzQixDQUFDO0FBQ3hDLEtBQUssTUFBTSxDQUFDLE1BQU07QUFDbEIsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUNs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
165
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uL2Rpc3Qvc3JjL2hlbHBlcnMvdG9BYnNvbHV0ZVBhdGguanMiLCIuLi9kaXN0L3NyYy9pbmRleC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZWFscGF0aFN5bmMgfSBmcm9tICdmcyc7XG5pbXBvcnQgeyBkaXJuYW1lLCBqb2luIH0gZnJvbSAncGF0aCc7XG5leHBvcnQgY29uc3QgdG9BYnNvbHV0ZVBhdGggPSAocmVsYXRpdmVQYXRoKSA9PiB7XG4gICAgY29uc3QgWywgZmlsZVBhdGhdID0gcHJvY2Vzcy5hcmd2O1xuICAgIGNvbnN0IGV4ZWN1dGFibGVGaWxlRGlyID0gZGlybmFtZShyZWFscGF0aFN5bmMoZmlsZVBhdGgpKTtcbiAgICBjb25zdCBiYXNlZGlyID0gZXhlY3V0YWJsZUZpbGVEaXIuc3Vic3RyaW5nKDAsIGV4ZWN1dGFibGVGaWxlRGlyLmluZGV4T2YoJ2RjZHgnKSArIDQpO1xuICAgIHJldHVybiBqb2luKGJhc2VkaXIsIHJlbGF0aXZlUGF0aC5yZXBsYWNlQWxsKCcuLi8nLCAnJykpO1xufTtcbiIsIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7IHByb2dyYW0gfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHsgZXhpc3RzU3luYyB9IGZyb20gJ2ZzJztcbmltcG9ydCB7IHZlcnNpb24gfSBmcm9tICcuLi9wYWNrYWdlLmpzb24nO1xuaW1wb3J0IHsgdG9BYnNvbHV0ZVBhdGggfSBmcm9tICcuL2hlbHBlcnMvdG9BYnNvbHV0ZVBhdGgnO1xucHJvZ3JhbVxuICAgIC5uYW1lKCdkY2R4JylcbiAgICAuZGVzY3JpcHRpb24oJ1RoZSBVbm9mZmljaWFsIEF0bGFzc2lhbiBEYXRhIENlbnRlciBQbHVnaW4gRGV2ZWxvcG1lbnQgQ0xJJylcbiAgICAudmVyc2lvbih2ZXJzaW9uKVxuICAgIC5zaG93SGVscEFmdGVyRXJyb3IodHJ1ZSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQVBUXG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2FwdCcsICdSdW4gdGhlIEFwcCBQZXJmb3JtYW5jZSBUb29sa2l0IHRlc3RzJywgeyBleGVjdXRhYmxlRmlsZTogJy4vY29tbWFuZHMvYXB0LmpzJyB9KTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBCdWlsZFxucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdidWlsZCcsICdCdWlsZCB0aGUgQXRsYXNzaWFuIERhdGEgQ2VudGVyIHBsdWdpbiBiYXNlZCBvbiB0aGUgQXRsYXNzaWFuIE1hdmVuIFBsdWdpbiBTdWl0ZSAoQU1QUykgY29uZmlndXJhdGlvbicsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL2J1aWxkLmpzJyB9KTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBJbnN0YWxsXG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2luc3RhbGwnLCAnSW5zdGFsbCB0aGUgQXRsYXNzaWFuIERhdGEgQ2VudGVyIHBsdWdpbiBiYXNlZCBvbiB0aGUgQXRsYXNzaWFuIE1hdmVuIFBsdWdpbiBTdWl0ZSAoQU1QUykgY29uZmlndXJhdGlvbicsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL2luc3RhbGwuanMnIH0pO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFN0YXJ0XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2RlYnVnJywgJ1N0YXJ0IHRoZSBwcm9kdWN0IGluIGRlYnVnIG1vZGUgYmFzZWQgb24gdGhlIEF0bGFzc2lhbiBNYXZlbiBQbHVnaW4gU3VpdGUgKEFNUFMpIGNvbmZpZ3VyYXRpb24gd2l0aCB0aGUgcGx1Z2luIGluc3RhbGxlZCcsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL2RlYnVnLmpzJyB9KTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBSdW5cbnByb2dyYW1cbiAgICAuY29tbWFuZCgncnVuJywgJ1N0YXJ0IHRoZSBBdGxhc3NpYW4gaG9zdCBhcHBsaWNhdGlvbiAoc3RhbmRhbG9uZSknLCB7IGV4ZWN1dGFibGVGaWxlOiAnLi9jb21tYW5kcy9ydW4uanMnIH0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdydW46amlyYScpXG4gICAgLmRlc2NyaXB0aW9uKCdTdGFydCBBdGxhc3NpYW4gSmlyYScpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ3J1bicsICdqaXJhJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdydW46Y29uZmx1ZW5jZScpXG4gICAgLmRlc2NyaXB0aW9uKCdTdGFydCBBdGxhc3NpYW4gQ29uZmx1ZW5jZScpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ3J1bicsICdjb25mbHVlbmNlJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdydW46Yml0YnVja2V0JylcbiAgICAuZGVzY3JpcHRpb24oJ1N0YXJ0IEF0bGFzc2lhbiBCaXRidWNrZXQnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydydW4nLCAnYml0YnVja2V0J10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdydW46YmFtYm9vJylcbiAgICAuZGVzY3JpcHRpb24oJ1N0YXJ0IEF0bGFzc2lhbiBCYW1ib28nKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWydydW4nLCAnYmFtYm9vJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIERhdGFiYXNlXG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2RhdGFiYXNlJywgJ1N0YXJ0IGEgZGF0YWJhc2UgZW5naW5lIChzdGFuZGFsb25lKScsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL2RhdGFiYXNlLmpzJyB9KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgnZGF0YWJhc2U6cG9zdGdyZXMnKVxuICAgIC5kZXNjcmlwdGlvbignU3RhcnQgUG9zdGdyZVNRTCcpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ2RhdGFiYXNlJywgJ3Bvc3RncmVzcWwnXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2RhdGFiYXNlOnBvc3RncmVzcWwnKVxuICAgIC5kZXNjcmlwdGlvbignU3RhcnQgUG9zdGdyZVNRTCcpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ2RhdGFiYXNlJywgJ3Bvc3RncmVzcWwnXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2RhdGFiYXNlOm15c3FsJylcbiAgICAuZGVzY3JpcHRpb24oJ1N0YXJ0IE15U1FMJylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsnZGF0YWJhc2UnLCAnbXlzcWwnXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ2RhdGFiYXNlOm1zc3FsJylcbiAgICAuZGVzY3JpcHRpb24oJ1N0YXJ0IE1pY3Jvc29mdCBTcWwgU2VydmVyJylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsnZGF0YWJhc2UnLCAnbXNzcWwnXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gU3RvcFxucHJvZ3JhbVxuICAgIC5jb21tYW5kKCdzdG9wJywgJ1N0b3AgdGhlIGhvc3QgYXBwbGljYXRpb24gYW5kIGRhdGFiYXNlJywgeyBleGVjdXRhYmxlRmlsZTogJy4vY29tbWFuZHMvc3RvcC5qcycgfSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUmVzZXRcbnByb2dyYW1cbiAgICAuY29tbWFuZCgncmVzZXQnLCAnUmVtb3ZlIGFsbCBhcHBsaWNhdGlvbiBkYXRhIChpbmNsLiBkYXRhYmFzZSkgYW5kIHN0YXJ0IGZyZXNoIScsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL3Jlc2V0LmpzJyB9KTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBQcm9maWxlXG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3Byb2ZpbGUnLCAnUnVuIGEgcHJlZGVmaW5lZCBwcm9maWxlJywgeyBleGVjdXRhYmxlRmlsZTogJy4vY29tbWFuZHMvcHJvZmlsZS5qcycgfSlcbiAgICAub24oJ2NvbW1hbmQ6KicsIChhcmdzKSA9PiB7XG4gICAgY29uc3QgY29tbWFuZCA9IGFyZ3NbMF07XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ3Byb2ZpbGUnLCBjb21tYW5kXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVXBkYXRlXG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3VwZGF0ZScsICdVcGRhdGUgdGhlIERDRFggaG9zdCBwcm9kdWN0IHZlcnNpb24gbGlzdCcsIHsgZXhlY3V0YWJsZUZpbGU6ICcuL2NvbW1hbmRzL3VwZGF0ZS5qcycgfSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3VwZGF0ZTpqaXJhJylcbiAgICAuZGVzY3JpcHRpb24oJ1VwZGF0ZSB0aGUgRENEWCBwcm9kdWN0IHZlcnNpb24gbGlzdCBmb3IgQXRsYXNzaWFuIEppcmEnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWyd1cGRhdGUnLCAnamlyYSddKTtcbiAgICBwcm9ncmFtLnBhcnNlKHByb2Nlc3MuYXJndik7XG59KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgndXBkYXRlOmNvbmZsdWVuY2UnKVxuICAgIC5kZXNjcmlwdGlvbignVXBkYXRlIHRoZSBEQ0RYIHByb2R1Y3QgdmVyc2lvbiBsaXN0IGZvciBBdGxhc3NpYW4gQ29uZmx1ZW5jZScpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ3VwZGF0ZScsICdjb25mbHVlbmNlJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xucHJvZ3JhbVxuICAgIC5jb21tYW5kKCd1cGRhdGU6YmFtYm9vJylcbiAgICAuZGVzY3JpcHRpb24oJ1VwZGF0ZSB0aGUgRENEWCBwcm9kdWN0IHZlcnNpb24gbGlzdCBmb3IgQXRsYXNzaWFuIEJhbWJvbycpXG4gICAgLmFjdGlvbigoKSA9PiB7XG4gICAgcHJvY2Vzcy5hcmd2LnNwbGljZSgyLCAxLCAuLi5bJ3VwZGF0ZScsICdiYW1ib28nXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3VwZGF0ZTpiaXRidWNrZXQnKVxuICAgIC5kZXNjcmlwdGlvbignVXBkYXRlIHRoZSBEQ0RYIHByb2R1Y3QgdmVyc2lvbiBsaXN0IGZvciBBdGxhc3NpYW4gQml0YnVja2V0JylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsndXBkYXRlJywgJ2JpdGJ1Y2tldCddKTtcbiAgICBwcm9ncmFtLnBhcnNlKHByb2Nlc3MuYXJndik7XG59KTtcbnByb2dyYW1cbiAgICAuY29tbWFuZCgndXBkYXRlOm15c3FsJylcbiAgICAuZGVzY3JpcHRpb24oJ1VwZGF0ZSB0aGUgRENEWCBwcm9kdWN0IHZlcnNpb24gbGlzdCBmb3IgTXlTUUwnKVxuICAgIC5hY3Rpb24oKCkgPT4ge1xuICAgIHByb2Nlc3MuYXJndi5zcGxpY2UoMiwgMSwgLi4uWyd1cGRhdGUnLCAnbXlzcWwnXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3VwZGF0ZTpwb3N0Z3Jlc3FsJylcbiAgICAuZGVzY3JpcHRpb24oJ1VwZGF0ZSB0aGUgRENEWCBwcm9kdWN0IHZlcnNpb24gbGlzdCBmb3IgUG9zdGdyZXMgU1FMJylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsndXBkYXRlJywgJ3Bvc3RncmVzcWwnXSk7XG4gICAgcHJvZ3JhbS5wYXJzZShwcm9jZXNzLmFyZ3YpO1xufSk7XG5wcm9ncmFtXG4gICAgLmNvbW1hbmQoJ3VwZGF0ZTptc3NxbCcpXG4gICAgLmRlc2NyaXB0aW9uKCdVcGRhdGUgdGhlIERDRFggcHJvZHVjdCB2ZXJzaW9uIGxpc3QgZm9yIE1pY3Jvc29mdCBTUUwgU2VydmVyJylcbiAgICAuYWN0aW9uKCgpID0+IHtcbiAgICBwcm9jZXNzLmFyZ3Yuc3BsaWNlKDIsIDEsIC4uLlsndXBkYXRlJywgJ21zc3FsJ10pO1xuICAgIHByb2dyYW0ucGFyc2UocHJvY2Vzcy5hcmd2KTtcbn0pO1xuLy8gQ2hlY2sgaWYgd2UgbmVlZCB0byB1cGRhdGUgb3VyIHZlcnNpb24gbGlzdCBiZWZvcmUgd2UgcGFyc2UgdGhlIGFyZ3VtZW50c1xuaWYgKCFwcm9jZXNzLmFyZ3YuaW5jbHVkZXMoJ3VwZGF0ZScpICYmICFleGlzdHNTeW5jKHRvQWJzb2x1dGVQYXRoKCcuLi9hc3NldHMvdmVyc2lvbnMuanNvbicpKSkge1xuICAgIHByb2dyYW0uZXJyb3IoJ1VuYWJsZSB0byBmaW5kIGhvc3QgcHJvZHVjdCB2ZXJzaW9uIGxpc3QsIHBsZWFzZSBydW4gYGRjZHggdXBkYXRlYCcpO1xufVxucHJvZ3JhbS5wYXJzZSgpO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFTyxNQUFNLGNBQWMsR0FBRyxDQUFDLFlBQVksS0FBSztBQUNoRCxJQUFJLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO0FBQ3RDLElBQUksTUFBTSxpQkFBaUIsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FB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
@@ -1,10 +1,8 @@
1
1
  import { TApplicationOptions } from '../types/Application';
2
- import { DatabaseEngine } from '../types/Database';
3
2
  import { Service } from '../types/DockerComposeV3';
4
3
  import { Base } from './base';
5
4
  export declare class Bamboo extends Base {
6
5
  name: "bamboo";
7
- database: DatabaseEngine;
8
6
  logFilePath: string;
9
7
  constructor(options: TApplicationOptions);
10
8
  protected getService(): Service;
@@ -3,8 +3,8 @@ import { DatabaseEngine, TSupportedDatabaseEngines } from '../types/Database';
3
3
  import { Service } from '../types/DockerComposeV3';
4
4
  export declare abstract class Base implements Application {
5
5
  protected options: TApplicationOptions;
6
+ database: DatabaseEngine;
6
7
  abstract get name(): TSupportedApplications;
7
- abstract get database(): DatabaseEngine;
8
8
  abstract get logFilePath(): string;
9
9
  constructor(options: TApplicationOptions);
10
10
  protected get baseUrl(): string;
@@ -14,16 +14,17 @@ export declare abstract class Base implements Application {
14
14
  protected abstract getService(): Service;
15
15
  protected getJVMArgs(): Array<string>;
16
16
  protected isApplicationReady(): Promise<boolean>;
17
- protected getDatabaseEngine(name: TSupportedDatabaseEngines): DatabaseEngine;
17
+ protected getDatabaseEngine(name: TSupportedDatabaseEngines, tag?: string): DatabaseEngine;
18
+ protected getDockerBaseTag(): string;
18
19
  private getDockerComposeConfig;
19
20
  private up;
20
21
  private down;
21
22
  private getServiceState;
22
23
  private waitUntilReady;
23
- private getDockerRepositoryUrl;
24
+ private isBuidRequired;
24
25
  private build;
26
+ private getDockerRepositoryUrl;
25
27
  private tailApplicationLogs;
26
- private showDockerLogs;
27
28
  private showApplicationLogs;
28
29
  private getDefaultOptions;
29
30
  }
@@ -1,10 +1,8 @@
1
1
  import { TApplicationOptions } from '../types/Application';
2
- import { DatabaseEngine } from '../types/Database';
3
2
  import { Service } from '../types/DockerComposeV3';
4
3
  import { Base } from './base';
5
4
  export declare class Bitbucket extends Base {
6
5
  name: "bitbucket";
7
- database: DatabaseEngine;
8
6
  logFilePath: string;
9
7
  constructor(options: TApplicationOptions);
10
8
  protected getService(): Service;
@@ -1,10 +1,8 @@
1
1
  import { TApplicationOptions } from '../types/Application';
2
- import { DatabaseEngine } from '../types/Database';
3
2
  import { Service } from '../types/DockerComposeV3';
4
3
  import { Base } from './base';
5
4
  export declare class Confluence extends Base {
6
5
  name: "confluence";
7
- database: DatabaseEngine;
8
6
  logFilePath: string;
9
7
  constructor(options: TApplicationOptions);
10
8
  protected getService(): Service;
@@ -1,10 +1,8 @@
1
1
  import { TApplicationOptions } from '../types/Application';
2
- import { DatabaseEngine } from '../types/Database';
3
2
  import { Service } from '../types/DockerComposeV3';
4
3
  import { Base } from './base';
5
4
  export declare class Jira extends Base {
6
5
  name: "jira";
7
- database: DatabaseEngine;
8
6
  logFilePath: string;
9
7
  constructor(options: TApplicationOptions);
10
8
  protected getService(): Service;
@@ -0,0 +1,6 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const install: (cwd: string) => Promise<void>;
3
+ export declare const runTest: (cwd: string, environment: string, product: TSupportedApplications) => Promise<void>;
4
+ export declare const regressionReport: (cwd: string, run1Dir: string, run2Dir: string) => Promise<void>;
5
+ export declare const scalabilityReport: (cwd: string, run3Dir: string, run4Dir: string, run5Dir: string) => Promise<void>;
6
+ export declare const terminate: (cwd: string, environment: string) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TAPTPerformanceReportOptions } from '../../types/DCAPT';
2
+ export declare const generatePerformanceReport: (options: TAPTPerformanceReportOptions) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TAPTScalabilityReportOptions } from '../../types/DCAPT';
2
+ export declare const generateScalabilityReport: (options: TAPTScalabilityReportOptions) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const getAWSCredentials: (product: TSupportedApplications, force?: boolean) => Promise<[string, string]>;
@@ -0,0 +1 @@
1
+ export declare const getAptDictory: (cwd: string, mustUseDefaultConfiguration: boolean, force?: boolean) => Promise<string>;
@@ -0,0 +1,2 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const getClusterURL: (cwd: string, product: TSupportedApplications) => Promise<any>;
@@ -0,0 +1,3 @@
1
+ export declare const getDuration: (force?: boolean) => (Promise<string> & {
2
+ cancel: () => void;
3
+ }) | "45m";
@@ -0,0 +1 @@
1
+ export declare const getEnvironmentName: () => Promise<string>;
@@ -0,0 +1,4 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const getHostLicense: (product: TSupportedApplications, force?: boolean) => string | (Promise<string> & {
3
+ cancel: () => void;
4
+ });
@@ -0,0 +1,2 @@
1
+ import { TScalabilityTestTypes } from '../../types/DCAPT';
2
+ export declare const getNodeNumberForStage: (stage: TScalabilityTestTypes) => 4 | 2 | 1;
@@ -0,0 +1 @@
1
+ export declare const getOutputDirectory: (timestamp?: string) => string;
@@ -0,0 +1,2 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const getProduct: () => Promise<TSupportedApplications>;
@@ -0,0 +1 @@
1
+ export declare const getReindexProgress: (baseUrl: string) => Promise<[string, boolean, boolean]>;
@@ -0,0 +1,2 @@
1
+ import { TReportTypes } from '../../types/DCAPT';
2
+ export declare const getReport: (baseDir: string, type: TReportTypes) => string;
@@ -0,0 +1 @@
1
+ export declare const getReportDirectory: (cwd: string, force?: boolean) => Promise<string>;
@@ -0,0 +1,2 @@
1
+ import { TTestResults } from '../../types/DCAPT';
2
+ export declare const getResults: (baseDir: string) => Record<TTestResults, string | undefined>;
@@ -0,0 +1,2 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const getResultsDirectory: (cwd: string, product: TSupportedApplications, force?: boolean) => Promise<string>;
@@ -0,0 +1,2 @@
1
+ import { TPerformanceTestTypes, TScalabilityTestTypes } from '../../types/DCAPT';
2
+ export declare const getRunForStage: (stage: TScalabilityTestTypes | TPerformanceTestTypes) => 4 | 2 | 1 | 3 | 5;
@@ -0,0 +1 @@
1
+ export declare const installApp: (baseUrl: string, appKey?: string, license?: string, force?: boolean) => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const persistClusterConfiguration: (cwd: string, environment: string, product: string, license: string, nodes?: number) => void;
@@ -0,0 +1,2 @@
1
+ import { TSupportedApplications } from '../../types/Application';
2
+ export declare const persistTestConfiguration: (cwd: string, product: TSupportedApplications, baseUrl: string, duration: string, withAppSpecificActions?: boolean, force?: boolean) => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const persistAWSCredentials: (cwd: string, aws_access_key_id: string, aws_secret_access_key: string) => void;
@@ -0,0 +1,8 @@
1
+ import { TAPTProvisionOptions } from '../../types/DCAPT';
2
+ export declare const provisionCluster: (options: TAPTProvisionOptions, mustUseDefaultConfiguration: boolean) => Promise<{
3
+ cwd: string;
4
+ environment: string;
5
+ aws_access_key_id: string;
6
+ aws_secret_access_key: string;
7
+ license: string;
8
+ }>;
@@ -0,0 +1 @@
1
+ export declare const reindex: (baseUrl: string, outputDir: string, force?: boolean) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TAPTPerformanceTestMessages, TAPTPerformanceTestOptions, TPerformanceTestTypes } from '../../types/DCAPT';
2
+ export declare const runPerformanceTest: (stage: TPerformanceTestTypes, options: TAPTPerformanceTestOptions, messages: TAPTPerformanceTestMessages) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TAPTScalabilityTestOptions, TScalabilityTestTypes } from '../../types/DCAPT';
2
+ export declare const runScalabilityTest: (stage: TScalabilityTestTypes, options: TAPTScalabilityTestOptions) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TAPTTeardownOptions } from '../../types/DCAPT';
2
+ export declare const teardownCluster: (options: TAPTTeardownOptions) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { KeyDescriptor } from 'inquirer-press-to-continue';
2
+ export declare const waitForUserInput: (message: string, force?: boolean) => Promise<KeyDescriptor>;
@@ -0,0 +1,30 @@
1
+ import { TSupportedApplications } from '../types/Application';
2
+ import { TAPTPerformanceTestMessages, TAPTScalabilityTestMessages } from '../types/DCAPT';
3
+ export declare const emptyLine: () => void;
4
+ export declare const generic: {
5
+ header: string;
6
+ };
7
+ export declare const init: {
8
+ header: (product: TSupportedApplications) => string;
9
+ };
10
+ export declare const provisioning: {
11
+ header: string;
12
+ askForAWSCredentials: (product: TSupportedApplications) => string;
13
+ askForEnvironment: string;
14
+ askForLicense: string;
15
+ ready: string;
16
+ awsCredentialsPersisted: string;
17
+ terraformConfigurationPersisted: string;
18
+ };
19
+ export declare const Run1: TAPTPerformanceTestMessages;
20
+ export declare const Run2: TAPTPerformanceTestMessages;
21
+ export declare const PerformanceReportMessages: {
22
+ header: string;
23
+ };
24
+ export declare const ScalabilityTestMessages: TAPTScalabilityTestMessages;
25
+ export declare const ScalabilityReportMessages: {
26
+ header: string;
27
+ };
28
+ export declare const Teardown: {
29
+ header: string;
30
+ };
@@ -0,0 +1,2 @@
1
+ import { TAPTPerformanceTestArgs } from '../types/DCAPT';
2
+ export declare const Performance: (options: TAPTPerformanceTestArgs) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { TAPTScalabilityTestArgs } from '../types/DCAPT';
2
+ export declare const Scalability: (options: TAPTScalabilityTestArgs) => Promise<void>;
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -17,22 +17,27 @@ export declare const ActionHandler: <T extends {
17
17
  clean: boolean;
18
18
  prune: boolean;
19
19
  tag: string;
20
+ databaseTag: string;
20
21
  xms: string;
21
22
  xmx: string;
22
23
  watch: boolean;
23
- ext: string[];
24
- install: boolean;
25
- outputDirectory: string;
24
+ install?: boolean | undefined;
26
25
  contextPath?: string | undefined;
26
+ ext?: string[] | undefined;
27
+ outputDirectory?: string | undefined;
27
28
  activateProfiles?: string | undefined;
28
29
  cwd?: string | undefined;
29
30
  } | {
30
31
  install: boolean;
32
+ username?: string | undefined;
33
+ password?: string | undefined;
31
34
  watch?: boolean | undefined;
32
35
  ext?: string[] | undefined;
33
36
  outputDirectory?: string | undefined;
34
37
  activateProfiles?: string | undefined;
35
38
  cwd?: string | undefined;
39
+ exec?: string | undefined;
40
+ obr?: boolean | undefined;
36
41
  }>(program: Command, { action, errorHandler }: {
37
42
  action: (options: T) => Promise<void>;
38
43
  errorHandler: (options: T) => Promise<void>;
@@ -0,0 +1,12 @@
1
+ type CustomBuilderOptions = {
2
+ cmd: string;
3
+ cwd?: string;
4
+ };
5
+ export declare class CustomBuilder {
6
+ private options;
7
+ private proc;
8
+ constructor(options: CustomBuilderOptions);
9
+ stop(): void;
10
+ build(): Promise<void>;
11
+ }
12
+ export {};
@@ -1,3 +1,3 @@
1
- import { TBuildOptions } from '../types/AMPS';
1
+ import { TBuildOptions, TDebugOptions } from '../types/AMPS';
2
2
  import { TSupportedApplications } from '../types/Application';
3
- export declare const FileWatcher: (name: TSupportedApplications, options: TBuildOptions, mavenOpts: Array<string>) => import("chokidar").FSWatcher;
3
+ export declare const FileWatcher: (name: TSupportedApplications, options: TBuildOptions | TDebugOptions, mavenOpts: Array<string>, installOnly?: boolean) => import("chokidar").FSWatcher;
@@ -0,0 +1,3 @@
1
+ import { TBuildOptions, TDebugOptions } from '../types/AMPS';
2
+ import { TSupportedApplications } from '../types/Application';
3
+ export declare const Installer: (name: TSupportedApplications, path: string, options: TBuildOptions | TDebugOptions) => Promise<void>;
@@ -13,6 +13,7 @@ export declare class AMPS {
13
13
  getApplicationVersion(): string | undefined;
14
14
  getApplication(): TSupportedApplications | null;
15
15
  getApplications(): Map<TSupportedApplications, string | undefined>;
16
+ private getSupportedApplication;
16
17
  private getVersion;
17
18
  private doPropertyReplacement;
18
19
  private getProperties;
@@ -0,0 +1 @@
1
+ export declare const capitalize: (value: string) => string;
@@ -0,0 +1,3 @@
1
+ import { TSupportedApplications } from '../types/Application';
2
+ import { TSupportedDatabaseEngines } from '../types/Database';
3
+ export declare const generateVersionList: (repository?: TSupportedApplications | TSupportedDatabaseEngines) => Promise<Record<string, string[]>>;
@@ -1,2 +1,2 @@
1
1
  import { DatabaseEngine, TDatabaseOptions } from '../types/Database';
2
- export declare const getDatabaseEngine: (options: TDatabaseOptions) => DatabaseEngine;
2
+ export declare const getDatabaseEngine: (options: TDatabaseOptions, tag?: string) => DatabaseEngine;
@@ -0,0 +1 @@
1
+ export declare const getVersions: () => Record<string, Array<string>>;
@@ -0,0 +1 @@
1
+ export declare const isOfType: <T>(obj: T | unknown, property: keyof T) => obj is T;
@@ -1,2 +1,3 @@
1
1
  import { TSupportedApplications } from '../types/Application';
2
2
  export declare const timebomb: Record<TSupportedApplications, string>;
3
+ export declare const app3hour = "AAABCA0ODAoPeNpdj01PwkAURffzKyZxZ1IyUzARkllQ24gRaQMtGnaP8VEmtjPNfFT59yJVFyzfubkn796Ux0Bz6SmbUM5nbDzj97RISxozHpMUnbSq88poUaLztFEStUN6MJZ2TaiVpu/YY2M6tI6sQrtHmx8qd74EZ+TBIvyUU/AoYs7jiE0jzknWQxMuifA2IBlUbnQ7AulVjwN9AaU9atASs69O2dNFU4wXJLc1aOUGw9w34JwCTTZoe7RPqUgep2X0Vm0n0fNut4gSxl/Jcnj9nFb6Q5tP/Ueu3L+0PHW4ghZFmm2zZV5k6/95CbR7Y9bYGo/zGrV3Ir4jRbDyCA6vt34DO8p3SDAsAhQnJjLD5k9Fr3uaIzkXKf83o5vDdQIUe4XequNCC3D+9ht9ZYhNZFKmnhc=X02dh";
@@ -0,0 +1 @@
1
+ export declare const readLinesInFile: (path: string, callback: (line: string) => void) => void;
@@ -0,0 +1 @@
1
+ export declare const replaceLinesInFile: (path: string, replacer: (line: string) => string) => void;
@@ -0,0 +1,3 @@
1
+ export declare const uploadToUPM: (baseUrl: string, path: string, username?: string, password?: string, verbose?: boolean) => Promise<void>;
2
+ export declare const waitForPluginToBeEnabled: (appKey: string, baseUrl: string, username?: string, password?: string, verbose?: boolean) => Promise<boolean>;
3
+ export declare const registerLicense: (appKey: string, license: string, baseUrl: string, username?: string, password?: string, verbose?: boolean) => Promise<void>;