migrate to "export default"
also, set no-use-before-define in linter
This commit is contained in:
327
src/apps.js
327
src/apps.js
@@ -1,43 +1,43 @@
|
||||
import * as appTaskManager from './apptaskmanager.js';
|
||||
import * as appstore from './appstore.js';
|
||||
import * as archives from './archives.js';
|
||||
import appTaskManager from './apptaskmanager.js';
|
||||
import appstore from './appstore.js';
|
||||
import archives from './archives.js';
|
||||
import assert from 'node:assert';
|
||||
import backups from './backups.js';
|
||||
import * as backupSites from './backupsites.js';
|
||||
import backupSites from './backupsites.js';
|
||||
import BoxError from './boxerror.js';
|
||||
import constants from './constants.js';
|
||||
import crypto from 'node:crypto';
|
||||
import { CronTime } from 'cron';
|
||||
import * as dashboard from './dashboard.js';
|
||||
import * as database from './database.js';
|
||||
import dashboard from './dashboard.js';
|
||||
import database from './database.js';
|
||||
import debugModule from 'debug';
|
||||
import * as dns from './dns.js';
|
||||
import * as docker from './docker.js';
|
||||
import * as domains from './domains.js';
|
||||
import dns from './dns.js';
|
||||
import docker from './docker.js';
|
||||
import domains from './domains.js';
|
||||
import eventlog from './eventlog.js';
|
||||
import fs from 'node:fs';
|
||||
import Location from './location.js';
|
||||
import locks from './locks.js';
|
||||
import * as logs from './logs.js';
|
||||
import * as mail from './mail.js';
|
||||
import logs from './logs.js';
|
||||
import mail from './mail.js';
|
||||
import manifestFormat from '@cloudron/manifest-format';
|
||||
import mysql from 'mysql2';
|
||||
import * as notifications from './notifications.js';
|
||||
import notifications from './notifications.js';
|
||||
import once from './once.js';
|
||||
import path from 'node:path';
|
||||
import paths from './paths.js';
|
||||
import { PassThrough } from 'node:stream';
|
||||
import * as reverseProxy from './reverseproxy.js';
|
||||
import reverseProxy from './reverseproxy.js';
|
||||
import safe from 'safetydance';
|
||||
import semver from 'semver';
|
||||
import services from './services.js';
|
||||
import shellModule from './shell.js';
|
||||
import tasks from './tasks.js';
|
||||
import { Transform as TransformStream } from 'node:stream';
|
||||
import * as users from './users.js';
|
||||
import users from './users.js';
|
||||
import util from 'node:util';
|
||||
import * as volumes from './volumes.js';
|
||||
import * as _ from './underscore.js';
|
||||
import volumes from './volumes.js';
|
||||
import _ from './underscore.js';
|
||||
|
||||
const debug = debugModule('box:apps');
|
||||
const shell = shellModule('apps');
|
||||
@@ -69,153 +69,6 @@ const ACCESS_LEVEL_OPERATOR = 'operator';
|
||||
const ACCESS_LEVEL_USER = 'user';
|
||||
const ACCESS_LEVEL_NONE = '';
|
||||
|
||||
export default {
|
||||
canAccess,
|
||||
isOperator,
|
||||
accessLevel,
|
||||
pickFields,
|
||||
|
||||
// database crud
|
||||
add,
|
||||
update,
|
||||
setHealth,
|
||||
del,
|
||||
|
||||
get,
|
||||
getByIpAddress,
|
||||
getByFqdn,
|
||||
list,
|
||||
listByUser,
|
||||
|
||||
// user actions
|
||||
install,
|
||||
unarchive,
|
||||
uninstall,
|
||||
archive,
|
||||
|
||||
setAccessRestriction,
|
||||
setOperators,
|
||||
setCrontab,
|
||||
setUpstreamUri,
|
||||
setLabel,
|
||||
setIcon,
|
||||
setTags,
|
||||
setNotes,
|
||||
setChecklistItem,
|
||||
setMemoryLimit,
|
||||
setCpuQuota,
|
||||
setMounts,
|
||||
setDevices,
|
||||
setAutomaticBackup,
|
||||
setAutomaticUpdate,
|
||||
setReverseProxyConfig,
|
||||
setCertificate,
|
||||
setDebugMode,
|
||||
setEnvironment,
|
||||
setMailbox,
|
||||
setInbox,
|
||||
setTurn,
|
||||
setRedis,
|
||||
setLocation,
|
||||
setStorage,
|
||||
repair,
|
||||
|
||||
restore,
|
||||
importApp,
|
||||
exportApp,
|
||||
clone,
|
||||
|
||||
updateApp,
|
||||
|
||||
backup,
|
||||
listBackups,
|
||||
updateBackup,
|
||||
getBackupDownloadStream,
|
||||
|
||||
getTask,
|
||||
getLogPaths,
|
||||
getLogs,
|
||||
|
||||
appendLogLine,
|
||||
|
||||
start,
|
||||
stop,
|
||||
restart,
|
||||
|
||||
createExec,
|
||||
startExec,
|
||||
getExec,
|
||||
|
||||
checkManifest,
|
||||
|
||||
restoreApps,
|
||||
configureApps,
|
||||
schedulePendingTasks,
|
||||
restartAppsUsingAddons,
|
||||
|
||||
getStorageDir,
|
||||
getIcon,
|
||||
getMemoryLimit,
|
||||
getSchedulerConfig,
|
||||
|
||||
listEventlog,
|
||||
|
||||
downloadFile,
|
||||
uploadFile,
|
||||
|
||||
writeConfig,
|
||||
loadConfig,
|
||||
|
||||
canBackupApp,
|
||||
|
||||
PORT_TYPE_TCP,
|
||||
PORT_TYPE_UDP,
|
||||
|
||||
// task codes - the installation state is now a misnomer (keep in sync in UI)
|
||||
ISTATE_PENDING_INSTALL,
|
||||
ISTATE_PENDING_CLONE,
|
||||
ISTATE_PENDING_CONFIGURE,
|
||||
ISTATE_PENDING_RECREATE_CONTAINER,
|
||||
ISTATE_PENDING_LOCATION_CHANGE,
|
||||
ISTATE_PENDING_SERVICES_CHANGE,
|
||||
ISTATE_PENDING_DATA_DIR_MIGRATION,
|
||||
ISTATE_PENDING_RESIZE,
|
||||
ISTATE_PENDING_DEBUG,
|
||||
ISTATE_PENDING_UNINSTALL,
|
||||
ISTATE_PENDING_RESTORE,
|
||||
ISTATE_PENDING_IMPORT,
|
||||
ISTATE_PENDING_UPDATE,
|
||||
ISTATE_PENDING_START,
|
||||
ISTATE_PENDING_STOP,
|
||||
ISTATE_PENDING_RESTART,
|
||||
ISTATE_ERROR,
|
||||
ISTATE_INSTALLED,
|
||||
|
||||
// run states
|
||||
RSTATE_RUNNING,
|
||||
RSTATE_STOPPED,
|
||||
|
||||
// health states (keep in sync in UI)
|
||||
HEALTH_HEALTHY: 'healthy',
|
||||
HEALTH_UNHEALTHY: 'unhealthy',
|
||||
HEALTH_ERROR: 'error',
|
||||
HEALTH_DEAD: 'dead',
|
||||
|
||||
// app access levels
|
||||
ACCESS_LEVEL_ADMIN,
|
||||
ACCESS_LEVEL_OPERATOR,
|
||||
ACCESS_LEVEL_USER,
|
||||
ACCESS_LEVEL_NONE,
|
||||
|
||||
// exported for testing
|
||||
_checkForPortBindingConflict: checkForPortBindingConflict,
|
||||
_validatePorts: validatePorts,
|
||||
_validateAccessRestriction: validateAccessRestriction,
|
||||
_validateUpstreamUri: validateUpstreamUri,
|
||||
_validateLocations: validateLocations,
|
||||
_parseCrontab: parseCrontab,
|
||||
_clear: clear
|
||||
};
|
||||
|
||||
// NOTE: when adding fields here, update the clone and unarchive logic as well
|
||||
const APPS_FIELDS_PREFIXED = [ 'apps.id', 'apps.appStoreId', 'apps.versionsUrl', 'apps.installationState', 'apps.errorJson', 'apps.runState',
|
||||
@@ -3134,3 +2987,151 @@ async function loadConfig(app) {
|
||||
|
||||
await update(app.id, data);
|
||||
}
|
||||
|
||||
export default {
|
||||
canAccess,
|
||||
isOperator,
|
||||
accessLevel,
|
||||
pickFields,
|
||||
|
||||
// database crud
|
||||
add,
|
||||
update,
|
||||
setHealth,
|
||||
del,
|
||||
|
||||
get,
|
||||
getByIpAddress,
|
||||
getByFqdn,
|
||||
list,
|
||||
listByUser,
|
||||
|
||||
// user actions
|
||||
install,
|
||||
unarchive,
|
||||
uninstall,
|
||||
archive,
|
||||
|
||||
setAccessRestriction,
|
||||
setOperators,
|
||||
setCrontab,
|
||||
setUpstreamUri,
|
||||
setLabel,
|
||||
setIcon,
|
||||
setTags,
|
||||
setNotes,
|
||||
setChecklistItem,
|
||||
setMemoryLimit,
|
||||
setCpuQuota,
|
||||
setMounts,
|
||||
setDevices,
|
||||
setAutomaticBackup,
|
||||
setAutomaticUpdate,
|
||||
setReverseProxyConfig,
|
||||
setCertificate,
|
||||
setDebugMode,
|
||||
setEnvironment,
|
||||
setMailbox,
|
||||
setInbox,
|
||||
setTurn,
|
||||
setRedis,
|
||||
setLocation,
|
||||
setStorage,
|
||||
repair,
|
||||
|
||||
restore,
|
||||
importApp,
|
||||
exportApp,
|
||||
clone,
|
||||
|
||||
updateApp,
|
||||
|
||||
backup,
|
||||
listBackups,
|
||||
updateBackup,
|
||||
getBackupDownloadStream,
|
||||
|
||||
getTask,
|
||||
getLogPaths,
|
||||
getLogs,
|
||||
|
||||
appendLogLine,
|
||||
|
||||
start,
|
||||
stop,
|
||||
restart,
|
||||
|
||||
createExec,
|
||||
startExec,
|
||||
getExec,
|
||||
|
||||
checkManifest,
|
||||
|
||||
restoreApps,
|
||||
configureApps,
|
||||
schedulePendingTasks,
|
||||
restartAppsUsingAddons,
|
||||
|
||||
getStorageDir,
|
||||
getIcon,
|
||||
getMemoryLimit,
|
||||
getSchedulerConfig,
|
||||
|
||||
listEventlog,
|
||||
|
||||
downloadFile,
|
||||
uploadFile,
|
||||
|
||||
writeConfig,
|
||||
loadConfig,
|
||||
|
||||
canBackupApp,
|
||||
|
||||
PORT_TYPE_TCP,
|
||||
PORT_TYPE_UDP,
|
||||
|
||||
// task codes - the installation state is now a misnomer (keep in sync in UI)
|
||||
ISTATE_PENDING_INSTALL,
|
||||
ISTATE_PENDING_CLONE,
|
||||
ISTATE_PENDING_CONFIGURE,
|
||||
ISTATE_PENDING_RECREATE_CONTAINER,
|
||||
ISTATE_PENDING_LOCATION_CHANGE,
|
||||
ISTATE_PENDING_SERVICES_CHANGE,
|
||||
ISTATE_PENDING_DATA_DIR_MIGRATION,
|
||||
ISTATE_PENDING_RESIZE,
|
||||
ISTATE_PENDING_DEBUG,
|
||||
ISTATE_PENDING_UNINSTALL,
|
||||
ISTATE_PENDING_RESTORE,
|
||||
ISTATE_PENDING_IMPORT,
|
||||
ISTATE_PENDING_UPDATE,
|
||||
ISTATE_PENDING_START,
|
||||
ISTATE_PENDING_STOP,
|
||||
ISTATE_PENDING_RESTART,
|
||||
ISTATE_ERROR,
|
||||
ISTATE_INSTALLED,
|
||||
|
||||
// run states
|
||||
RSTATE_RUNNING,
|
||||
RSTATE_STOPPED,
|
||||
|
||||
// health states (keep in sync in UI)
|
||||
HEALTH_HEALTHY: 'healthy',
|
||||
HEALTH_UNHEALTHY: 'unhealthy',
|
||||
HEALTH_ERROR: 'error',
|
||||
HEALTH_DEAD: 'dead',
|
||||
|
||||
// app access levels
|
||||
ACCESS_LEVEL_ADMIN,
|
||||
ACCESS_LEVEL_OPERATOR,
|
||||
ACCESS_LEVEL_USER,
|
||||
ACCESS_LEVEL_NONE,
|
||||
|
||||
// exported for testing
|
||||
_checkForPortBindingConflict: checkForPortBindingConflict,
|
||||
_validatePorts: validatePorts,
|
||||
_validateAccessRestriction: validateAccessRestriction,
|
||||
_validateUpstreamUri: validateUpstreamUri,
|
||||
_validateLocations: validateLocations,
|
||||
_parseCrontab: parseCrontab,
|
||||
_clear: clear
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user