iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >使用 python 获取 Openshift ConfigMap 数据
  • 155
分享到

使用 python 获取 Openshift ConfigMap 数据

2024-02-22 13:02:20 155人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

问题内容 我正在尝试使用 openshift python 库获取项目中 configmap 的数据。我设法获取了 configmap 的名称,但我可以在文档中找到用于提取数据的函数或

问题内容

我正在尝试使用 openshift python 库获取项目中 configmap 的数据。我设法获取了 configmap 的名称,但我可以在文档中找到用于提取数据的函数或示例。有没有人遇到过这个问题或者知道如何做到这一点?

这是我用来获取 cm 名称的代码(返回一个字典):

import openshift as oc

if __name__ == '__main__':
    project_selector = oc.selector('projects')
    projects = project_selector.objects()
    number_of_projects = len(projects)
    for project in projects:
        name = project.model.metadata.name
        oc.invoke('project', name)
        tokens = oc.invoke('get', ['configmaps']).actions()[0].as_dict()['out'].replace('\n', ' ').split(' ')
        configmap_data = [x for x in tokens if len(x) > 0 and not x.isupper()]
        print(configmap_data)

我确实尝试使用 oc.selector 并使用 with oc.selector(project_name): 来尝试获取一些数据,但找不到获取它的方法。

请注意,我不需要使用 oc cmd 命令,而必须使用 Python。 目前我只需要数据,稍后看看如何更改它。

谢谢。


正确答案


如果您使用 oc.invoke,则需要传递适当的命令行参数。考虑一下如果手动运行相同的命令会发生什么:

$ oc get configmaps
name                                                   data   age
coredns                                                1      54d
extension-apiserver-authentication                     6      54d
kube-apiserver-legacy-service-account-token-tracking   1      54d
kube-proxy                                             2      54d
kube-root-ca.crt                                       1      54d
kubeadm-config                                         1      54d
kubelet-config                                         1      54d

您得到了名称,但没有得到内容。如果你想要内容,则需要选择更合适的输出格式,例如 -o JSON

$ oc get configmaps kubelet-config -o json
{
    "apiversion": "v1",
    "data": {
        ...
    },
    "kind": "configmap",
    "metadata": {
        "name": "kubelet-config",
        "namespace": "kube-system",
    }
}

您需要在对 oc.invoke 的调用中包含相同的参数。像这样的东西演示了事情是如何工作的:

import openshift as oc
import json

project_selector = oc.selector('projects')
projects = project_selector.objects()
for project in projects:
    # get a list of configmap names
    configmaps = oc.invoke('get', ['-n', project.name(), '-o', 'name', 'configmaps'])

    # for each configmap, get the content
    for cm in configmaps.out().splitlines():
        out = oc.invoke('get', ['-n', project.name(), '-o', 'json', cm])
        manifest = json.loads(out.out())
        data = manifest['data']
        print(data)

这可行,但不要这样做。

很明显您已经知道如何使用选择器,因为这就是您迭代项目的方式。您应该使用相同的技术来迭代配置映射:

import openshift as oc

projects = oc.selector('projects')
for project in projects.objects():
    with oc.project(project.name()):
        configmaps = oc.selector('configmaps')
        for cm in configmaps.objects():
            data = cm.as_dict()['data']
            print(data)

这很大程度上基于示例 straight from the documentation。迭代 configmaps.objects() 可为每个 configmap 获取一个 api 对象。您可以访问该名称和内容。

以上就是使用 python 获取 Openshift ConfigMap 数据的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: 使用 python 获取 Openshift ConfigMap 数据

本文链接: https://www.lsjlt.com/news/567183.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用 python 获取 Openshift ConfigMap 数据
    问题内容 我正在尝试使用 openshift python 库获取项目中 configmap 的数据。我设法获取了 configmap 的名称,但我可以在文档中找到用于提取数据的函数或...
    99+
    2024-02-22
  • 使用Python怎么批量获取基金数据
    本篇文章给大家分享的是有关使用Python怎么批量获取基金数据,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。python可以做什么Python是一种编程语言,内置了许多有效的工...
    99+
    2023-06-07
  • 使用 Excel 和 Python 从互联网获取数据
    今天的文章主要分为两个部分,一是用通过Python构建一个数据网站​,二是分别使用Excel和Python从编写的Web网站上获取数据。一、构建测试用网站数据通过Python Flask Web框架分别构建一个Web网站和一个Web API...
    99+
    2023-05-14
    Python Excel 数据资源
  • Python数据获取实现图片数据提取
    目录一、利用exifread提取图片的EXIF信息二、循环遍历图片信息比如我随便从手机上传一张图片到我的电脑里,通过python可以获取这张照片的所有信息。如果是数码相机拍摄的照片,...
    99+
    2024-04-02
  • python怎么获取powerbuilder数据
    要从PowerBuilder中获取数据,可以使用以下方法: 使用ODBC驱动程序连接到PowerBuilder数据库。首先,确保已...
    99+
    2023-10-24
    PowerBuilder python
  • 怎么使用datagrid获取行数据
    要使用DataGrid获取行数据,可以按照以下步骤进行操作:1. 首先,获取到DataGrid控件的实例。可以通过代码获取或者在XA...
    99+
    2023-08-26
    datagrid
  • 怎么使用Excel和Python从互联网获取数据
    这篇文章主要介绍“怎么使用Excel和Python从互联网获取数据”,在日常操作中,相信很多人在怎么使用Excel和Python从互联网获取数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用Excel...
    99+
    2023-07-06
  • python怎么调用接口获取数据
    要调用接口获取数据,可以使用Python中的requests库。下面是一个简单的示例:```pythonimport request...
    99+
    2023-08-30
    python
  • python怎么获取数据行列数
    在Python中,可以使用numpy库来获取数据的行数和列数。下面是一个示例代码:```pythonimport numpy as ...
    99+
    2023-09-27
    python
  • Python数据获取如何实现图片数据提取
    本篇内容主要讲解“Python数据获取如何实现图片数据提取”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python数据获取如何实现图片数据提取”吧!有很多功能…比如用户画...
    99+
    2023-06-30
  • python 获取excel数据 自动登
    import xlrdimport timeimport unittestfrom selenium import webdriverclass u8819(unittest.TestCase): global loginurl ...
    99+
    2023-01-30
    数据 python excel
  • python-获取URL中的json数据
    数据源为某系统提供的URL,打开是json文件,python代码获取如下: URL替换成自己的即可。 import urllib.request def get_record(url): resp = urllib.r...
    99+
    2023-01-31
    数据 python URL
  • python爬虫如何获取数据
    使用Python爬虫获取数据可以分为以下几个步骤: 导入所需的库:通常情况下,使用requests库发送HTTP请求获取网页内容,...
    99+
    2024-02-29
    python
  • python如何获取网页数据
    Python获取网页数据的常用方法有以下几种:1. 使用urllib库:urllib是Python内置的标准库,提供了一系列用于处理...
    99+
    2023-09-07
    python
  • 使用nodejs怎么获取表单数据
    使用nodejs怎么获取表单数据?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。首先npm初始化,下载express包,导入模块后创建服务对象//导入express模块con...
    99+
    2023-06-15
  • python如何获取网络数据
    目录Retrieving Data over HTTPRetrieving Data with urllibRetrieving Data from XMLRetrieving Da...
    99+
    2024-04-02
  • 使用redisTemplate从redis获取所有数据
    目录redisTemplate从redis获取所有数据idea后端效果swagger测试效果说说RedisTemplate的常用方法1.RedisTemplate常用方法2.Stri...
    99+
    2024-04-02
  • python如何获取数据类型
    要获取数据类型,可以使用Python内置的type()函数。例如: x = 5 print(type(x)) # 输出:<c...
    99+
    2024-04-02
  • Python连接impala并获取数据
    环境:Centos6.5 python2.7 1、下载并安装Python package:impyla-0.14.0.tar.gz https://pypi.python.org/packages/6c/30/da9fe733561eb9...
    99+
    2023-01-31
    数据 Python impala
  • Python数据类型怎么获取
    这篇文章主要介绍“Python数据类型怎么获取”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python数据类型怎么获取”文章能帮助大家解决问题。内置数据类型在编程中,数据类型是一个重要的概念。变量...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作