Dre4m Shell
Server IP : 85.214.239.14  /  Your IP : 3.144.100.197
Web Server : Apache/2.4.62 (Debian)
System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.18
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/ansible_collections/community/okd/plugins/connection/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /lib/python3/dist-packages/ansible_collections/community/okd/plugins/connection/oc.py
# Based on the docker connection plugin
#
# Connection plugin for configuring kubernetes containers with kubectl
# (c) 2017, XuXinkun <xuxinkun@gmail.com>
#
# This file is part of Ansible
#
# Ansible is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Ansible is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Ansible.  If not, see <http://www.gnu.org/licenses/>.
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type

DOCUMENTATION = '''
    author:
        - xuxinkun (@xuxinkun)

    name: oc

    short_description: Execute tasks in pods running on OpenShift.

    description:
        - Use the oc exec command to run tasks in, or put/fetch files to, pods running on the OpenShift
          container platform.


    requirements:
      - oc (go binary)

    options:
      oc_pod:
        description:
          - Pod name. Required when the host name does not match pod name.
        default: ''
        vars:
          - name: ansible_oc_pod
        env:
          - name: K8S_AUTH_POD
      oc_container:
        description:
          - Container name. Required when a pod contains more than one container.
        default: ''
        vars:
          - name: ansible_oc_container
        env:
          - name: K8S_AUTH_CONTAINER
      oc_namespace:
        description:
          - The namespace of the pod
        default: ''
        vars:
          - name: ansible_oc_namespace
        env:
          - name: K8S_AUTH_NAMESPACE
      oc_extra_args:
        description:
          - Extra arguments to pass to the oc command line.
        default: ''
        vars:
          - name: ansible_oc_extra_args
        env:
          - name: K8S_AUTH_EXTRA_ARGS
      oc_kubeconfig:
        description:
          - Path to a oc config file. Defaults to I(~/.kube/config)
        default: ''
        vars:
          - name: ansible_oc_kubeconfig
          - name: ansible_oc_config
        env:
          - name: K8S_AUTH_KUBECONFIG
      oc_context:
        description:
          - The name of a context found in the K8s config file.
        default: ''
        vars:
          - name: ansible_oc_context
        env:
          - name: K8S_AUTH_CONTEXT
      oc_host:
        description:
          - URL for accessing the API.
        default: ''
        vars:
          - name: ansible_oc_host
          - name: ansible_oc_server
        env:
          - name: K8S_AUTH_HOST
          - name: K8S_AUTH_SERVER
      oc_token:
        description:
          - API authentication bearer token.
        vars:
          - name: ansible_oc_token
          - name: ansible_oc_api_key
        env:
          - name: K8S_AUTH_TOKEN
          - name: K8S_AUTH_API_KEY
      client_cert:
        description:
          - Path to a certificate used to authenticate with the API.
        default: ''
        vars:
          - name: ansible_oc_cert_file
          - name: ansible_oc_client_cert
        env:
          - name: K8S_AUTH_CERT_FILE
        aliases: [ oc_cert_file ]
      client_key:
        description:
          - Path to a key file used to authenticate with the API.
        default: ''
        vars:
          - name: ansible_oc_key_file
          - name: ansible_oc_client_key
        env:
          - name: K8S_AUTH_KEY_FILE
        aliases: [ oc_key_file ]
      ca_cert:
        description:
          - Path to a CA certificate used to authenticate with the API.
        default: ''
        vars:
          - name: ansible_oc_ssl_ca_cert
          - name: ansible_oc_ca_cert
        env:
          - name: K8S_AUTH_SSL_CA_CERT
        aliases: [ oc_ssl_ca_cert ]
      validate_certs:
        description:
          - Whether or not to verify the API server's SSL certificate. Defaults to I(true).
        default: ''
        vars:
          - name: ansible_oc_verify_ssl
          - name: ansible_oc_validate_certs
        env:
          - name: K8S_AUTH_VERIFY_SSL
        aliases: [ oc_verify_ssl ]
'''

from ansible_collections.kubernetes.core.plugins.connection.kubectl import Connection as KubectlConnection


CONNECTION_TRANSPORT = 'oc'

CONNECTION_OPTIONS = {
    'oc_container': '-c',
    'oc_namespace': '-n',
    'oc_kubeconfig': '--kubeconfig',
    'oc_context': '--context',
    'oc_host': '--server',
    'client_cert': '--client-certificate',
    'client_key': '--client-key',
    'ca_cert': '--certificate-authority',
    'validate_certs': '--insecure-skip-tls-verify',
    'oc_token': '--token'
}


class Connection(KubectlConnection):
    ''' Local oc based connections '''
    transport = CONNECTION_TRANSPORT
    connection_options = CONNECTION_OPTIONS
    documentation = DOCUMENTATION

Anon7 - 2022
AnonSec Team