feat(manager.registry): Add external registry management
This commit is contained in:
parent
7654d780b1
commit
da7b866f23
@ -1,5 +1,12 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2024-12-28 - 4.8.0 - feat(manager.registry)
|
||||||
|
Add external registry management
|
||||||
|
|
||||||
|
- Introduced ExternalRegistry class for handling external registry configurations.
|
||||||
|
- Updated IExternalRegistry interface to include registry details.
|
||||||
|
- Enhanced IImage interface to support linking with external registries.
|
||||||
|
|
||||||
## 2024-12-28 - 4.7.1 - fix(secretmanagement)
|
## 2024-12-28 - 4.7.1 - fix(secretmanagement)
|
||||||
Refactor secret bundle actions and improve authorization handling
|
Refactor secret bundle actions and improve authorization handling
|
||||||
|
|
||||||
|
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@serve.zone/cloudly',
|
name: '@serve.zone/cloudly',
|
||||||
version: '4.7.1',
|
version: '4.8.0',
|
||||||
description: 'A comprehensive tool for managing containerized applications across multiple cloud providers using Docker Swarmkit, featuring web, CLI, and API interfaces.'
|
description: 'A comprehensive tool for managing containerized applications across multiple cloud providers using Docker Swarmkit, featuring web, CLI, and API interfaces.'
|
||||||
}
|
}
|
||||||
|
30
ts/manager.regsitry/classes.externalregistry.ts
Normal file
30
ts/manager.regsitry/classes.externalregistry.ts
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
import * as plugins from '../plugins.js';
|
||||||
|
import * as paths from '../paths.js';
|
||||||
|
import type { Cloudly } from 'ts/classes.cloudly.js';
|
||||||
|
|
||||||
|
export class ExternalRegistry extends plugins.smartdata.SmartDataDbDoc<ExternalRegistry, plugins.servezoneInterfaces.data.IExternalRegistry> {
|
||||||
|
// STATIC
|
||||||
|
public async getRegistryById(registryNameArg: string) {
|
||||||
|
this
|
||||||
|
}
|
||||||
|
|
||||||
|
// INSTANCE
|
||||||
|
public cloudlyRef: Cloudly;
|
||||||
|
public smartdataDb: plugins.smartdata.SmartdataDb;
|
||||||
|
|
||||||
|
@plugins.smartdata.svDb()
|
||||||
|
public id: string;
|
||||||
|
|
||||||
|
@plugins.smartdata.svDb()
|
||||||
|
public data: plugins.servezoneInterfaces.data.IExternalRegistry['data'];
|
||||||
|
|
||||||
|
get db() {
|
||||||
|
return this.cloudlyRef.mongodbConnector.smartdataDb;
|
||||||
|
}
|
||||||
|
|
||||||
|
constructor(cloudlyRef: Cloudly) {
|
||||||
|
super();
|
||||||
|
this.cloudlyRef = cloudlyRef;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
12
ts_interfaces/data/externalregistry.ts
Normal file
12
ts_interfaces/data/externalregistry.ts
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
import * as plugins from '../plugins.js';
|
||||||
|
|
||||||
|
export interface IExternalRegistry {
|
||||||
|
id: string;
|
||||||
|
data: {
|
||||||
|
type: 'docker' | 'npm';
|
||||||
|
name: string;
|
||||||
|
url: string;
|
||||||
|
username: string;
|
||||||
|
password: string;
|
||||||
|
};
|
||||||
|
}
|
@ -4,6 +4,10 @@ export interface IImage {
|
|||||||
id: string;
|
id: string;
|
||||||
data: {
|
data: {
|
||||||
name: string;
|
name: string;
|
||||||
|
external?: {
|
||||||
|
externalRegistryId: string;
|
||||||
|
imageName: string;
|
||||||
|
}
|
||||||
description: string;
|
description: string;
|
||||||
versions: Array<{
|
versions: Array<{
|
||||||
versionString: string;
|
versionString: string;
|
||||||
|
@ -4,6 +4,7 @@ export * from './config.js';
|
|||||||
export * from './deployment.js';
|
export * from './deployment.js';
|
||||||
export * from './docker.js';
|
export * from './docker.js';
|
||||||
export * from './event.js';
|
export * from './event.js';
|
||||||
|
export * from './externalregistry.js';
|
||||||
export * from './image.js';
|
export * from './image.js';
|
||||||
export * from './secretbundle.js';
|
export * from './secretbundle.js';
|
||||||
export * from './secretgroup.js'
|
export * from './secretgroup.js'
|
||||||
|
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@serve.zone/cloudly',
|
name: '@serve.zone/cloudly',
|
||||||
version: '4.7.1',
|
version: '4.8.0',
|
||||||
description: 'A comprehensive tool for managing containerized applications across multiple cloud providers using Docker Swarmkit, featuring web, CLI, and API interfaces.'
|
description: 'A comprehensive tool for managing containerized applications across multiple cloud providers using Docker Swarmkit, featuring web, CLI, and API interfaces.'
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user