clever-tools 3.13.1 → 3.14.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.
package/bin/clever.js CHANGED
@@ -872,7 +872,7 @@ async function run () {
872
872
  const keycloakVersionsCommands = cliparse.command('version', {
873
873
  description: 'Check Keycloak deployed version',
874
874
  args: [args.addonIdOrName],
875
- options: [opts.humanJsonOutputFormat],
875
+ privateOptions: [opts.humanJsonOutputFormat],
876
876
  commands: [keycloakVersionCheckCommand, keycloakVersionUpdateCommand],
877
877
  }, keycloak.checkVersion);
878
878
  const keycloakCommand = cliparse.command('keycloak', {
@@ -991,7 +991,7 @@ async function run () {
991
991
  const metabaseVersionsCommands = cliparse.command('version', {
992
992
  description: 'Manage Metabase deployed version',
993
993
  args: [args.addonIdOrName],
994
- options: [opts.humanJsonOutputFormat],
994
+ privateOptions: [opts.humanJsonOutputFormat],
995
995
  commands: [metabaseVersionCheckCommand, metabaseVersionUpdateCommand],
996
996
  }, metabase.checkVersion);
997
997
  const metabaseCommand = cliparse.command('metabase', {
@@ -1121,7 +1121,7 @@ async function run () {
1121
1121
  const otoroshiVersionsCommands = cliparse.command('version', {
1122
1122
  description: 'Manage Otoroshi deployed version',
1123
1123
  args: [args.addonIdOrName],
1124
- options: [opts.humanJsonOutputFormat],
1124
+ privateOptions: [opts.humanJsonOutputFormat],
1125
1125
  commands: [otoroshiVersionCheckCommand, otoroshiVersionUpdateCommand],
1126
1126
  }, otoroshi.checkVersion);
1127
1127
  const otoroshiCommand = cliparse.command('otoroshi', {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clever-tools",
3
- "version": "3.13.1",
3
+ "version": "3.14.0",
4
4
  "description": "Command Line Interface for Clever Cloud.",
5
5
  "main": "bin/clever.js",
6
6
  "type": "module",
@@ -17,6 +17,7 @@
17
17
  "license": "Apache-2.0",
18
18
  "bin": {
19
19
  "clever": "bin/clever.js",
20
+ "clever-tools": "bin/clever.js",
20
21
  "install-clever-completion": "scripts/install-autocomplete.sh",
21
22
  "uninstall-clever-completion": "scripts/uninstall-autocomplete.sh"
22
23
  },
@@ -73,7 +73,7 @@ async function displayAppCreation (app, alias, github, taskCommand) {
73
73
  printFieldsAsTable(2, {
74
74
  Type: colors.blue(`⬢ ${app.instance.variant.name}`),
75
75
  ID: app.id,
76
- 'Org ID': app.ownerId,
76
+ 'Organisation ID': app.ownerId,
77
77
  Name: app.name,
78
78
  GitHub: github != null && `${github.owner}/${github.name}`,
79
79
  Alias: hasDistinctAlias && alias,
@@ -56,7 +56,7 @@ export async function deploy (params) {
56
56
  Logger.println(dedent`
57
57
  ${colors.bold(`🚀 Deploying ${colors.green(appData.name)}`)}
58
58
  Application ID ${colors.grey(`${appId}`)}
59
- Org ID ${colors.grey(`${ownerId}`)}
59
+ Organisation ID ${colors.grey(`${ownerId}`)}
60
60
  `);
61
61
 
62
62
  Logger.println();
@@ -1,3 +1,4 @@
1
+ import colors from 'colors/safe.js';
1
2
  import * as Addon from '../models/addon.js';
2
3
  import * as Application from '../models/application.js';
3
4
  import { Logger } from '../logger.js';
@@ -38,14 +39,21 @@ export async function list (params) {
38
39
  }
39
40
  case 'human':
40
41
  default: {
41
- if (formattedServices.applications) {
42
+ const { applications = [], addons = [] } = formattedServices;
43
+
44
+ if (applications.length === 0 && addons.length === 0) {
45
+ Logger.printInfo(`No linked services found, use ${colors.bold.blue('clever service link-app')} or ${colors.bold.blue('clever service link-addon')} to link services to an application`);
46
+ return;
47
+ }
48
+
49
+ if (applications.length > 0) {
42
50
  Logger.println('Applications:');
43
- formattedServices.applications.forEach(({ isLinked, name }) => Logger.println(`${isLinked ? '*' : ' '} ${name}`));
51
+ applications.forEach(({ isLinked, name }) => Logger.println(`${isLinked ? '*' : ' '} ${name}`));
44
52
  }
45
53
 
46
- if (formattedServices.addons) {
54
+ if (addons.length > 0) {
47
55
  Logger.println('Addons:');
48
- formattedServices.addons.forEach(({ isLinked, name, realId }) => Logger.println(`${isLinked ? '*' : ' '} ${name} (${realId})`));
56
+ addons.forEach(({ isLinked, name, realId }) => Logger.println(`${isLinked ? '*' : ' '} ${name} (${realId})`));
49
57
  }
50
58
  }
51
59
  }
package/src/logger.js CHANGED
@@ -58,6 +58,9 @@ Logger.println = console.log;
58
58
  // Logger for success with a green check before the message
59
59
  Logger.printSuccess = (message) => console.log(`${colors.bold.green('✓')} ${message}`);
60
60
 
61
+ // Logger for information with a blue 'i' before the message
62
+ Logger.printInfo = (message) => console.log(`${colors.bold.blue('i')} ${message}`);
63
+
61
64
  // No decoration for Logger.println
62
65
  Logger.printJson = (obj) => {
63
66
  console.log(JSON.stringify(obj, null, 2));
@@ -43,9 +43,8 @@ export async function list (ownerId, appId, showAll) {
43
43
  }
44
44
 
45
45
  const myAddons = await getAllLinkedAddons({ id: ownerId, appId }).then(sendToApi);
46
-
47
- if (showAll == null) {
48
- return myAddons;
46
+ if (!showAll) {
47
+ return myAddons.map((addon) => ({ ...addon, isLinked: true }));
49
48
  }
50
49
 
51
50
  const myAddonIds = myAddons.map((addon) => addon.id);