mirror of
https://github.com/pawelmalak/flame.git
synced 2025-08-02 01:15:17 +02:00
attempt to fix integrations
This commit is contained in:
parent
5474fe324f
commit
e5154576b4
5 changed files with 53 additions and 15 deletions
|
@ -3,8 +3,9 @@ const axios = require('axios');
|
||||||
const Logger = require('../../../utils/Logger');
|
const Logger = require('../../../utils/Logger');
|
||||||
const logger = new Logger();
|
const logger = new Logger();
|
||||||
const loadConfig = require('../../../utils/loadConfig');
|
const loadConfig = require('../../../utils/loadConfig');
|
||||||
|
const Category = require('../../../models/Category');
|
||||||
|
|
||||||
dockerDefaultCategory = {
|
const dockerDefaultCategory = {
|
||||||
id: -2,
|
id: -2,
|
||||||
name: 'Docker',
|
name: 'Docker',
|
||||||
type: 'apps',
|
type: 'apps',
|
||||||
|
@ -55,6 +56,17 @@ const useDocker = async (apps) => {
|
||||||
|
|
||||||
const dockerApps = [];
|
const dockerApps = [];
|
||||||
|
|
||||||
|
const categories = await Category.findAll({
|
||||||
|
where: {
|
||||||
|
type: 'apps'
|
||||||
|
},
|
||||||
|
order: [[orderType, 'ASC']]
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!categories.find(category => category.id === dockerDefaultCategory.id)) {
|
||||||
|
categories.push(await Category.create(dockerDefaultCategory));
|
||||||
|
}
|
||||||
|
|
||||||
for (const container of containers) {
|
for (const container of containers) {
|
||||||
let labels = container.Labels;
|
let labels = container.Labels;
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@ const k8s = require('@kubernetes/client-node');
|
||||||
const Logger = require('../../../utils/Logger');
|
const Logger = require('../../../utils/Logger');
|
||||||
const logger = new Logger();
|
const logger = new Logger();
|
||||||
const loadConfig = require('../../../utils/loadConfig');
|
const loadConfig = require('../../../utils/loadConfig');
|
||||||
|
const Category = require('../../../models/Category');
|
||||||
|
|
||||||
const kubernetesDefaultCategory = {
|
const kubernetesDefaultCategory = {
|
||||||
id: -3,
|
id: -3,
|
||||||
|
@ -39,6 +40,17 @@ const useKubernetes = async (apps) => {
|
||||||
|
|
||||||
const kubernetesApps = [];
|
const kubernetesApps = [];
|
||||||
|
|
||||||
|
const categories = await Category.findAll({
|
||||||
|
where: {
|
||||||
|
type: 'apps'
|
||||||
|
},
|
||||||
|
order: [[orderType, 'ASC']]
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!categories.find(category => category.id === kubernetesDefaultCategory.id)) {
|
||||||
|
categories.push(await Category.create(kubernetesDefaultCategory));
|
||||||
|
}
|
||||||
|
|
||||||
for (const ingress of ingresses) {
|
for (const ingress of ingresses) {
|
||||||
const annotations = ingress.metadata.annotations;
|
const annotations = ingress.metadata.annotations;
|
||||||
|
|
||||||
|
|
|
@ -15,15 +15,7 @@ const getAllApps = asyncWrapper(async (req, res, next) => {
|
||||||
kubernetesApps: useKubernetesAPI,
|
kubernetesApps: useKubernetesAPI,
|
||||||
} = await loadConfig();
|
} = await loadConfig();
|
||||||
|
|
||||||
let apps;
|
let apps = await loadIntegrationsApps();
|
||||||
|
|
||||||
if (useDockerAPI) {
|
|
||||||
await useDocker(apps);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (useKubernetesAPI) {
|
|
||||||
await useKubernetes(apps);
|
|
||||||
}
|
|
||||||
|
|
||||||
// apps visibility
|
// apps visibility
|
||||||
const where = req.isAuthenticated ? {} : { isPublic: true };
|
const where = req.isAuthenticated ? {} : { isPublic: true };
|
||||||
|
@ -52,4 +44,26 @@ const getAllApps = asyncWrapper(async (req, res, next) => {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = getAllApps;
|
const loadIntegrationsApps = asyncWrapper(async () => {
|
||||||
|
const {
|
||||||
|
dockerApps: useDockerAPI,
|
||||||
|
kubernetesApps: useKubernetesAPI,
|
||||||
|
} = await loadConfig();
|
||||||
|
|
||||||
|
let apps;
|
||||||
|
|
||||||
|
if (useDockerAPI) {
|
||||||
|
await useDocker(apps);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (useKubernetesAPI) {
|
||||||
|
await useKubernetes(apps);
|
||||||
|
}
|
||||||
|
|
||||||
|
return apps;
|
||||||
|
});
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
getAllApps,
|
||||||
|
loadIntegrationsApps
|
||||||
|
}
|
||||||
|
|
|
@ -4,5 +4,5 @@ module.exports = {
|
||||||
deleteApp: require('./deleteApp'),
|
deleteApp: require('./deleteApp'),
|
||||||
updateApp: require('./updateApp'),
|
updateApp: require('./updateApp'),
|
||||||
reorderApps: require('./reorderApps'),
|
reorderApps: require('./reorderApps'),
|
||||||
getAllApps: require('./getAllApps'),
|
getAllApps: require('./getAllApps').getAllApps,
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,7 +4,7 @@ const App = require('../../models/App');
|
||||||
const Bookmark = require('../../models/Bookmark');
|
const Bookmark = require('../../models/Bookmark');
|
||||||
const { Sequelize } = require('sequelize');
|
const { Sequelize } = require('sequelize');
|
||||||
const loadConfig = require('../../utils/loadConfig');
|
const loadConfig = require('../../utils/loadConfig');
|
||||||
const getAllApps = require('../apps/getAllApps');
|
const loadIntegrationsApps = require('../apps/getAllApps').loadIntegrationsApps;
|
||||||
|
|
||||||
// @desc Get all categories
|
// @desc Get all categories
|
||||||
// @route GET /api/categories
|
// @route GET /api/categories
|
||||||
|
@ -13,7 +13,7 @@ const getAllCategories = asyncWrapper(async (req, res, next) => {
|
||||||
const { useOrdering: orderType } = await loadConfig();
|
const { useOrdering: orderType } = await loadConfig();
|
||||||
|
|
||||||
// Load apps to create apps from integrations (Docker, Kubernetes, etc.)
|
// Load apps to create apps from integrations (Docker, Kubernetes, etc.)
|
||||||
await getAllApps(req, res, next);
|
await loadIntegrationsApps();
|
||||||
|
|
||||||
let categories;
|
let categories;
|
||||||
let output;
|
let output;
|
||||||
|
@ -34,7 +34,7 @@ const getAllCategories = asyncWrapper(async (req, res, next) => {
|
||||||
[{ model: Bookmark, as: 'bookmarks' }, orderType, 'ASC'],
|
[{ model: Bookmark, as: 'bookmarks' }, orderType, 'ASC'],
|
||||||
];
|
];
|
||||||
|
|
||||||
categories = categories = await Category.findAll({
|
categories = await Category.findAll({
|
||||||
include: [
|
include: [
|
||||||
{
|
{
|
||||||
model: App,
|
model: App,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue