argo-cd

Форк
0
/
clusters-service.ts 
38 строк · 1.4 Кб
1
import * as models from '../models';
2
import requests from './requests';
3

4
export class ClustersService {
5
    public list(): Promise<models.Cluster[]> {
6
        return requests
7
            .get('/clusters')
8
            .then(res => res.body as models.ClusterList)
9
            .then(list => list.items || []);
10
    }
11

12
    public get(url: string, name: string): Promise<models.Cluster> {
13
        const requestUrl = `/clusters/${url ? encodeURIComponent(url) : encodeURIComponent(name)}?id.type=${url ? 'url' : 'name_escaped'}`;
14
        return requests.get(requestUrl).then(res => res.body as models.Cluster);
15
    }
16

17
    public update(cluster: models.Cluster, ...paths: string[]): Promise<models.Cluster> {
18
        return requests
19
            .put(`/clusters/${encodeURIComponent(cluster.server)}`)
20
            .query({updatedFields: paths})
21
            .send(cluster)
22
            .then(res => res.body as models.Cluster);
23
    }
24

25
    public invalidateCache(url: string): Promise<models.Cluster> {
26
        return requests
27
            .post(`/clusters/${encodeURIComponent(url)}/invalidate-cache`)
28
            .send({})
29
            .then(res => res.body as models.Cluster);
30
    }
31

32
    public delete(server: string): Promise<models.Cluster> {
33
        return requests
34
            .delete(`/clusters/${encodeURIComponent(server)}`)
35
            .send()
36
            .then(res => res.body as models.Cluster);
37
    }
38
}
39

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.