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 = new Logger();
|
||||
const loadConfig = require('../../../utils/loadConfig');
|
||||
const Category = require('../../../models/Category');
|
||||
|
||||
dockerDefaultCategory = {
|
||||
const dockerDefaultCategory = {
|
||||
id: -2,
|
||||
name: 'Docker',
|
||||
type: 'apps',
|
||||
|
@ -55,6 +56,17 @@ const useDocker = async (apps) => {
|
|||
|
||||
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) {
|
||||
let labels = container.Labels;
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ const k8s = require('@kubernetes/client-node');
|
|||
const Logger = require('../../../utils/Logger');
|
||||
const logger = new Logger();
|
||||
const loadConfig = require('../../../utils/loadConfig');
|
||||
const Category = require('../../../models/Category');
|
||||
|
||||
const kubernetesDefaultCategory = {
|
||||
id: -3,
|
||||
|
@ -39,6 +40,17 @@ const useKubernetes = async (apps) => {
|
|||
|
||||
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) {
|
||||
const annotations = ingress.metadata.annotations;
|
||||
|
||||
|
|
|
@ -15,15 +15,7 @@ const getAllApps = asyncWrapper(async (req, res, next) => {
|
|||
kubernetesApps: useKubernetesAPI,
|
||||
} = await loadConfig();
|
||||
|
||||
let apps;
|
||||
|
||||
if (useDockerAPI) {
|
||||
await useDocker(apps);
|
||||
}
|
||||
|
||||
if (useKubernetesAPI) {
|
||||
await useKubernetes(apps);
|
||||
}
|
||||
let apps = await loadIntegrationsApps();
|
||||
|
||||
// apps visibility
|
||||
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'),
|
||||
updateApp: require('./updateApp'),
|
||||
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 { Sequelize } = require('sequelize');
|
||||
const loadConfig = require('../../utils/loadConfig');
|
||||
const getAllApps = require('../apps/getAllApps');
|
||||
const loadIntegrationsApps = require('../apps/getAllApps').loadIntegrationsApps;
|
||||
|
||||
// @desc Get all categories
|
||||
// @route GET /api/categories
|
||||
|
@ -13,7 +13,7 @@ const getAllCategories = asyncWrapper(async (req, res, next) => {
|
|||
const { useOrdering: orderType } = await loadConfig();
|
||||
|
||||
// Load apps to create apps from integrations (Docker, Kubernetes, etc.)
|
||||
await getAllApps(req, res, next);
|
||||
await loadIntegrationsApps();
|
||||
|
||||
let categories;
|
||||
let output;
|
||||
|
@ -34,7 +34,7 @@ const getAllCategories = asyncWrapper(async (req, res, next) => {
|
|||
[{ model: Bookmark, as: 'bookmarks' }, orderType, 'ASC'],
|
||||
];
|
||||
|
||||
categories = categories = await Category.findAll({
|
||||
categories = await Category.findAll({
|
||||
include: [
|
||||
{
|
||||
model: App,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue