ops-cli 2.2.0__py3-none-any.whl → 2.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
ops/cli/config.py CHANGED
@@ -8,21 +8,22 @@
8
8
  # OF ANY KIND, either express or implied. See the License for the specific language
9
9
  # governing permissions and limitations under the License.
10
10
 
11
- import collections
12
11
  import os
13
-
14
12
  import yaml
15
13
 
16
14
  from ansible.module_utils.common.collections import ImmutableDict
17
15
  from ansible.parsing.dataloader import DataLoader
18
- from ansible.plugins.loader import PluginLoader
19
16
  from ansible.template import Templar
20
- from ansible.utils.vars import load_extra_vars
17
+ from ansible.utils.vars import combine_vars
21
18
  from ansible.vars.manager import VariableManager
22
19
  from ops.cli import display
23
20
  from ansible import constants as C
24
21
  from ansible import context
25
22
  import logging
23
+ from ansible.errors import AnsibleOptionsError
24
+ from ansible.module_utils._text import to_text
25
+ from ansible.parsing.splitter import parse_kv
26
+ from collections.abc import MutableMapping
26
27
 
27
28
  logger = logging.getLogger(__name__)
28
29
 
@@ -34,6 +35,38 @@ def get_cluster_name(cluster_config_path):
34
35
  '/')[-1].replace('.yaml', '').replace('.yml', '')
35
36
 
36
37
 
38
+ def load_extra_vars(loader):
39
+ """
40
+ Overriding Ansible function using version before slight var loading optimization
41
+ in order to avoid caching issues https://github.com/ansible/ansible/pull/78835/files
42
+ """
43
+
44
+ extra_vars = {}
45
+ for extra_vars_opt in context.CLIARGS.get('extra_vars', tuple()):
46
+ data = None
47
+ extra_vars_opt = to_text(extra_vars_opt, errors='surrogate_or_strict')
48
+ if extra_vars_opt is None or not extra_vars_opt:
49
+ continue
50
+
51
+ if extra_vars_opt.startswith(u"@"):
52
+ # Argument is a YAML file (JSON is a subset of YAML)
53
+ data = loader.load_from_file(extra_vars_opt[1:])
54
+ elif extra_vars_opt[0] in [u'/', u'.']:
55
+ raise AnsibleOptionsError("Please prepend extra_vars filename '%s' with '@'" % extra_vars_opt)
56
+ elif extra_vars_opt[0] in [u'[', u'{']:
57
+ # Arguments as YAML
58
+ data = loader.load(extra_vars_opt)
59
+ else:
60
+ # Arguments as Key-value
61
+ data = parse_kv(extra_vars_opt)
62
+
63
+ if isinstance(data, MutableMapping):
64
+ extra_vars = combine_vars(extra_vars, data)
65
+ else:
66
+ raise AnsibleOptionsError("Invalid extra vars data supplied. '%s' could not be made into a dictionary" % extra_vars_opt)
67
+ return extra_vars
68
+
69
+
37
70
  class ClusterConfig(object):
38
71
  def __init__(self, cluster_config_generator,
39
72
  ops_config, cluster_config_path):
@@ -119,7 +152,6 @@ class JinjaConfigGenerator(object):
119
152
  context_cliargs['extra_vars'] = tuple(extra_vars)
120
153
 
121
154
  context.CLIARGS = ImmutableDict(context_cliargs)
122
- setattr(load_extra_vars, 'extra_vars', {})
123
155
  variable_manager._extra_vars = load_extra_vars(
124
156
  loader=data_loader)
125
157
 
@@ -159,7 +191,6 @@ class ClusterConfigGenerator(object):
159
191
  context_cliargs['extra_vars'] = tuple(extra_vars)
160
192
 
161
193
  context.CLIARGS = ImmutableDict(context_cliargs)
162
- setattr(load_extra_vars, 'extra_vars', {})
163
194
  variable_manager._extra_vars = load_extra_vars(
164
195
  loader=data_loader)
165
196
 
ops/cli/ssh.py CHANGED
@@ -286,7 +286,7 @@ class SshRunner(object):
286
286
  if args.proxy:
287
287
  if scb_enabled:
288
288
  proxy_port = args.local or SshConfigGenerator.generate_ssh_scb_proxy_port(
289
- self.ansible_inventory.generated_path.rstrip("/inventory"),
289
+ self.ansible_inventory.generated_path.removesuffix("/inventory"),
290
290
  args.auto_scb_port,
291
291
  scb_proxy_port
292
292
  )
@@ -90,7 +90,7 @@ class SshConfigGenerator(object):
90
90
  ssh_config_content = ssh_config_template.format(
91
91
  scb_proxy_port=scb_proxy_port
92
92
  )
93
- ssh_config_path = ssh_config_tpl_path.rstrip("_tpl")
93
+ ssh_config_path = ssh_config_tpl_path.removesuffix("_tpl")
94
94
  with open(ssh_config_path, 'w') as f:
95
95
  f.write(ssh_config_content)
96
96
  os.fchmod(f.fileno(), 0o644)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ops-cli
3
- Version: 2.2.0
3
+ Version: 2.2.1
4
4
  Summary: Ops - wrapper for Terraform, Ansible, and SSH for cloud automation
5
5
  Home-page: https://github.com/adobe/ops-cli
6
6
  Author: Adobe
@@ -23,146 +23,146 @@ Classifier: Topic :: Text Processing :: Markup :: HTML
23
23
  Requires-Python: >=3.5
24
24
  Description-Content-Type: text/markdown
25
25
  License-File: LICENSE
26
- Requires-Dist: adal (==1.2.7)
27
- Requires-Dist: ansible (==8.2.0)
28
- Requires-Dist: awscli (==1.29.12)
29
- Requires-Dist: azure (==4.0.0)
30
- Requires-Dist: azure-applicationinsights (==0.1.1)
31
- Requires-Dist: azure-batch (==4.1.3)
32
- Requires-Dist: azure-common (==1.1.28)
33
- Requires-Dist: azure-cosmosdb-nspkg (==2.0.2)
34
- Requires-Dist: azure-cosmosdb-table (==1.0.6)
35
- Requires-Dist: azure-datalake-store (==0.0.53)
36
- Requires-Dist: azure-eventgrid (==1.3.0)
37
- Requires-Dist: azure-graphrbac (==0.40.0)
38
- Requires-Dist: azure-keyvault (==1.1.0)
39
- Requires-Dist: azure-loganalytics (==0.1.1)
40
- Requires-Dist: azure-mgmt (==4.0.0)
41
- Requires-Dist: azure-mgmt-advisor (==1.0.1)
42
- Requires-Dist: azure-mgmt-applicationinsights (==0.1.1)
43
- Requires-Dist: azure-mgmt-authorization (==0.50.0)
44
- Requires-Dist: azure-mgmt-batch (==5.0.1)
45
- Requires-Dist: azure-mgmt-batchai (==2.0.0)
46
- Requires-Dist: azure-mgmt-billing (==0.2.0)
47
- Requires-Dist: azure-mgmt-cdn (==3.1.0)
48
- Requires-Dist: azure-mgmt-cognitiveservices (==3.0.0)
49
- Requires-Dist: azure-mgmt-commerce (==1.0.1)
50
- Requires-Dist: azure-mgmt-compute (==4.6.2)
51
- Requires-Dist: azure-mgmt-consumption (==2.0.0)
52
- Requires-Dist: azure-mgmt-containerinstance (==1.5.0)
53
- Requires-Dist: azure-mgmt-containerregistry (==2.8.0)
54
- Requires-Dist: azure-mgmt-containerservice (==4.4.0)
55
- Requires-Dist: azure-mgmt-cosmosdb (==0.4.1)
56
- Requires-Dist: azure-mgmt-datafactory (==0.6.0)
57
- Requires-Dist: azure-mgmt-datalake-analytics (==0.6.0)
58
- Requires-Dist: azure-mgmt-datalake-nspkg (==3.0.1)
59
- Requires-Dist: azure-mgmt-datalake-store (==0.5.0)
60
- Requires-Dist: azure-mgmt-datamigration (==1.0.0)
61
- Requires-Dist: azure-mgmt-devspaces (==0.1.0)
62
- Requires-Dist: azure-mgmt-devtestlabs (==2.2.0)
63
- Requires-Dist: azure-mgmt-dns (==2.1.0)
64
- Requires-Dist: azure-mgmt-eventgrid (==1.0.0)
65
- Requires-Dist: azure-mgmt-eventhub (==2.6.0)
66
- Requires-Dist: azure-mgmt-hanaonazure (==0.1.1)
67
- Requires-Dist: azure-mgmt-iotcentral (==0.1.0)
68
- Requires-Dist: azure-mgmt-iothub (==0.5.0)
69
- Requires-Dist: azure-mgmt-iothubprovisioningservices (==0.2.0)
70
- Requires-Dist: azure-mgmt-keyvault (==1.1.0)
71
- Requires-Dist: azure-mgmt-loganalytics (==0.2.0)
72
- Requires-Dist: azure-mgmt-logic (==3.0.0)
73
- Requires-Dist: azure-mgmt-machinelearningcompute (==0.4.1)
74
- Requires-Dist: azure-mgmt-managementgroups (==0.1.0)
75
- Requires-Dist: azure-mgmt-managementpartner (==0.1.1)
76
- Requires-Dist: azure-mgmt-maps (==0.1.0)
77
- Requires-Dist: azure-mgmt-marketplaceordering (==0.1.0)
78
- Requires-Dist: azure-mgmt-media (==1.0.1)
79
- Requires-Dist: azure-mgmt-monitor (==0.5.2)
80
- Requires-Dist: azure-mgmt-msi (==0.2.0)
81
- Requires-Dist: azure-mgmt-network (==2.7.0)
82
- Requires-Dist: azure-mgmt-notificationhubs (==2.1.0)
83
- Requires-Dist: azure-mgmt-nspkg (==3.0.2)
84
- Requires-Dist: azure-mgmt-policyinsights (==0.1.0)
85
- Requires-Dist: azure-mgmt-powerbiembedded (==2.0.0)
86
- Requires-Dist: azure-mgmt-rdbms (==1.9.0)
87
- Requires-Dist: azure-mgmt-recoveryservices (==0.3.0)
88
- Requires-Dist: azure-mgmt-recoveryservicesbackup (==0.3.0)
89
- Requires-Dist: azure-mgmt-redis (==5.0.0)
90
- Requires-Dist: azure-mgmt-relay (==0.1.0)
91
- Requires-Dist: azure-mgmt-reservations (==0.2.1)
92
- Requires-Dist: azure-mgmt-resource (==2.2.0)
93
- Requires-Dist: azure-mgmt-scheduler (==2.0.0)
94
- Requires-Dist: azure-mgmt-search (==2.1.0)
95
- Requires-Dist: azure-mgmt-servicebus (==0.5.3)
96
- Requires-Dist: azure-mgmt-servicefabric (==0.2.0)
97
- Requires-Dist: azure-mgmt-signalr (==0.1.1)
98
- Requires-Dist: azure-mgmt-sql (==0.9.1)
99
- Requires-Dist: azure-mgmt-storage (==2.0.0)
100
- Requires-Dist: azure-mgmt-subscription (==0.2.0)
101
- Requires-Dist: azure-mgmt-trafficmanager (==0.50.0)
102
- Requires-Dist: azure-mgmt-web (==0.35.0)
103
- Requires-Dist: azure-nspkg (==3.0.2)
104
- Requires-Dist: azure-servicebus (==0.21.1)
105
- Requires-Dist: azure-servicefabric (==6.3.0.0)
106
- Requires-Dist: azure-servicemanagement-legacy (==0.20.7)
107
- Requires-Dist: azure-storage-blob (==1.5.0)
108
- Requires-Dist: azure-storage-common (==1.4.2)
109
- Requires-Dist: azure-storage-file (==1.4.0)
110
- Requires-Dist: azure-storage-queue (==1.4.0)
111
- Requires-Dist: boto (==2.49.0)
112
- Requires-Dist: boto3 (==1.28.12)
113
- Requires-Dist: cffi (==1.15.1)
114
- Requires-Dist: deepmerge (==1.1.0)
115
- Requires-Dist: gitpython (==3.1.32)
116
- Requires-Dist: hashmerge (==0.2)
117
- Requires-Dist: himl (==0.15.0)
118
- Requires-Dist: hvac (==1.1.1)
119
- Requires-Dist: inflection (==0.5.1)
120
- Requires-Dist: isodate (==0.6.1)
121
- Requires-Dist: jinja2 (==3.1.2)
122
- Requires-Dist: kubernetes (==26.1.0)
123
- Requires-Dist: lru-cache (==0.2.3)
124
- Requires-Dist: msal (==1.23.0)
125
- Requires-Dist: msrestazure (==0.6.4)
126
- Requires-Dist: passgen (==1.1.1)
127
- Requires-Dist: pathlib2 (==2.3.7.post1)
128
- Requires-Dist: pycparser (==2.21)
129
- Requires-Dist: pyhcl (==0.4.4)
130
- Requires-Dist: python-consul (==1.1.0)
131
- Requires-Dist: resolvelib (==1.0.1)
132
- Requires-Dist: simpledi (==0.4.1)
133
- Requires-Dist: six (==1.16.0)
134
- Requires-Dist: charset-normalizer (==3.2.0) ; python_full_version >= "3.7.0"
135
- Requires-Dist: backports.functools-lru-cache (==1.6.6) ; python_version >= "2.6"
136
- Requires-Dist: python-dateutil (==2.8.2) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2"
137
- Requires-Dist: requests-oauthlib (==1.3.1) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3"
138
- Requires-Dist: colorama (==0.4.4) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4"
139
- Requires-Dist: docutils (==0.16) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4"
140
- Requires-Dist: pyasn1 (==0.5.0) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4, 3.5"
141
- Requires-Dist: pyasn1-modules (==0.3.0) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4, 3.5"
142
- Requires-Dist: urllib3 (==1.26.16) ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4, 3.5"
143
- Requires-Dist: idna (==3.4) ; python_version >= "3.5"
144
- Requires-Dist: rsa (==4.7.2) ; python_version >= "3.5" and python_version < "4"
145
- Requires-Dist: certifi (==2023.7.22) ; python_version >= "3.6"
146
- Requires-Dist: google-auth (==2.22.0) ; python_version >= "3.6"
147
- Requires-Dist: msrest (==0.7.1) ; python_version >= "3.6"
148
- Requires-Dist: oauthlib (==3.2.2) ; python_version >= "3.6"
149
- Requires-Dist: pyyaml (==6.0.1) ; python_version >= "3.6"
150
- Requires-Dist: smmap (==5.0.0) ; python_version >= "3.6"
151
- Requires-Dist: azure-core (==1.28.0) ; python_version >= "3.7"
152
- Requires-Dist: botocore (==1.31.12) ; python_version >= "3.7"
153
- Requires-Dist: cachetools (==5.3.1) ; python_version >= "3.7"
154
- Requires-Dist: cryptography (==41.0.2) ; python_version >= "3.7"
155
- Requires-Dist: gitdb (==4.0.10) ; python_version >= "3.7"
156
- Requires-Dist: jmespath (==1.0.1) ; python_version >= "3.7"
157
- Requires-Dist: markupsafe (==2.1.3) ; python_version >= "3.7"
158
- Requires-Dist: packaging (==23.1) ; python_version >= "3.7"
159
- Requires-Dist: pyjwt (==2.8.0) ; python_version >= "3.7"
160
- Requires-Dist: requests (==2.31.0) ; python_version >= "3.7"
161
- Requires-Dist: s3transfer (==0.6.1) ; python_version >= "3.7"
162
- Requires-Dist: setuptools (==68.0.0) ; python_version >= "3.7"
163
- Requires-Dist: typing-extensions (==4.7.1) ; python_version >= "3.7"
164
- Requires-Dist: websocket-client (==1.6.1) ; python_version >= "3.7"
165
- Requires-Dist: ansible-core (==2.15.2) ; python_version >= "3.9"
26
+ Requires-Dist: adal ==1.2.7
27
+ Requires-Dist: azure ==4.0.0
28
+ Requires-Dist: azure-applicationinsights ==0.1.1
29
+ Requires-Dist: azure-batch ==4.1.3
30
+ Requires-Dist: azure-common ==1.1.28
31
+ Requires-Dist: azure-cosmosdb-nspkg ==2.0.2
32
+ Requires-Dist: azure-cosmosdb-table ==1.0.6
33
+ Requires-Dist: azure-datalake-store ==0.0.53
34
+ Requires-Dist: azure-eventgrid ==1.3.0
35
+ Requires-Dist: azure-graphrbac ==0.40.0
36
+ Requires-Dist: azure-keyvault ==1.1.0
37
+ Requires-Dist: azure-loganalytics ==0.1.1
38
+ Requires-Dist: azure-mgmt ==4.0.0
39
+ Requires-Dist: azure-mgmt-advisor ==1.0.1
40
+ Requires-Dist: azure-mgmt-applicationinsights ==0.1.1
41
+ Requires-Dist: azure-mgmt-authorization ==0.50.0
42
+ Requires-Dist: azure-mgmt-batch ==5.0.1
43
+ Requires-Dist: azure-mgmt-batchai ==2.0.0
44
+ Requires-Dist: azure-mgmt-billing ==0.2.0
45
+ Requires-Dist: azure-mgmt-cdn ==3.1.0
46
+ Requires-Dist: azure-mgmt-cognitiveservices ==3.0.0
47
+ Requires-Dist: azure-mgmt-commerce ==1.0.1
48
+ Requires-Dist: azure-mgmt-compute ==4.6.2
49
+ Requires-Dist: azure-mgmt-consumption ==2.0.0
50
+ Requires-Dist: azure-mgmt-containerinstance ==1.5.0
51
+ Requires-Dist: azure-mgmt-containerregistry ==2.8.0
52
+ Requires-Dist: azure-mgmt-containerservice ==4.4.0
53
+ Requires-Dist: azure-mgmt-cosmosdb ==0.4.1
54
+ Requires-Dist: azure-mgmt-datafactory ==0.6.0
55
+ Requires-Dist: azure-mgmt-datalake-analytics ==0.6.0
56
+ Requires-Dist: azure-mgmt-datalake-nspkg ==3.0.1
57
+ Requires-Dist: azure-mgmt-datalake-store ==0.5.0
58
+ Requires-Dist: azure-mgmt-datamigration ==1.0.0
59
+ Requires-Dist: azure-mgmt-devspaces ==0.1.0
60
+ Requires-Dist: azure-mgmt-devtestlabs ==2.2.0
61
+ Requires-Dist: azure-mgmt-dns ==2.1.0
62
+ Requires-Dist: azure-mgmt-eventgrid ==1.0.0
63
+ Requires-Dist: azure-mgmt-eventhub ==2.6.0
64
+ Requires-Dist: azure-mgmt-hanaonazure ==0.1.1
65
+ Requires-Dist: azure-mgmt-iotcentral ==0.1.0
66
+ Requires-Dist: azure-mgmt-iothub ==0.5.0
67
+ Requires-Dist: azure-mgmt-iothubprovisioningservices ==0.2.0
68
+ Requires-Dist: azure-mgmt-keyvault ==1.1.0
69
+ Requires-Dist: azure-mgmt-loganalytics ==0.2.0
70
+ Requires-Dist: azure-mgmt-logic ==3.0.0
71
+ Requires-Dist: azure-mgmt-machinelearningcompute ==0.4.1
72
+ Requires-Dist: azure-mgmt-managementgroups ==0.1.0
73
+ Requires-Dist: azure-mgmt-managementpartner ==0.1.1
74
+ Requires-Dist: azure-mgmt-maps ==0.1.0
75
+ Requires-Dist: azure-mgmt-marketplaceordering ==0.1.0
76
+ Requires-Dist: azure-mgmt-media ==1.0.1
77
+ Requires-Dist: azure-mgmt-monitor ==0.5.2
78
+ Requires-Dist: azure-mgmt-msi ==0.2.0
79
+ Requires-Dist: azure-mgmt-network ==2.7.0
80
+ Requires-Dist: azure-mgmt-notificationhubs ==2.1.0
81
+ Requires-Dist: azure-mgmt-nspkg ==3.0.2
82
+ Requires-Dist: azure-mgmt-policyinsights ==0.1.0
83
+ Requires-Dist: azure-mgmt-powerbiembedded ==2.0.0
84
+ Requires-Dist: azure-mgmt-rdbms ==1.9.0
85
+ Requires-Dist: azure-mgmt-recoveryservices ==0.3.0
86
+ Requires-Dist: azure-mgmt-recoveryservicesbackup ==0.3.0
87
+ Requires-Dist: azure-mgmt-redis ==5.0.0
88
+ Requires-Dist: azure-mgmt-relay ==0.1.0
89
+ Requires-Dist: azure-mgmt-reservations ==0.2.1
90
+ Requires-Dist: azure-mgmt-resource ==2.2.0
91
+ Requires-Dist: azure-mgmt-scheduler ==2.0.0
92
+ Requires-Dist: azure-mgmt-search ==2.1.0
93
+ Requires-Dist: azure-mgmt-servicebus ==0.5.3
94
+ Requires-Dist: azure-mgmt-servicefabric ==0.2.0
95
+ Requires-Dist: azure-mgmt-signalr ==0.1.1
96
+ Requires-Dist: azure-mgmt-sql ==0.9.1
97
+ Requires-Dist: azure-mgmt-storage ==2.0.0
98
+ Requires-Dist: azure-mgmt-subscription ==0.2.0
99
+ Requires-Dist: azure-mgmt-trafficmanager ==0.50.0
100
+ Requires-Dist: azure-mgmt-web ==0.35.0
101
+ Requires-Dist: azure-nspkg ==3.0.2
102
+ Requires-Dist: azure-servicebus ==0.21.1
103
+ Requires-Dist: azure-servicefabric ==6.3.0.0
104
+ Requires-Dist: azure-servicemanagement-legacy ==0.20.7
105
+ Requires-Dist: azure-storage-blob ==1.5.0
106
+ Requires-Dist: azure-storage-common ==1.4.2
107
+ Requires-Dist: azure-storage-file ==1.4.0
108
+ Requires-Dist: azure-storage-queue ==1.4.0
109
+ Requires-Dist: boto ==2.49.0
110
+ Requires-Dist: deepmerge ==1.1.0
111
+ Requires-Dist: hashmerge ==0.2
112
+ Requires-Dist: isodate ==0.6.1
113
+ Requires-Dist: lru-cache ==0.2.3
114
+ Requires-Dist: msrestazure ==0.6.4
115
+ Requires-Dist: passgen ==1.1.1
116
+ Requires-Dist: pathlib2 ==2.3.7.post1
117
+ Requires-Dist: pycparser ==2.21
118
+ Requires-Dist: pyhcl ==0.4.5
119
+ Requires-Dist: python-consul ==1.1.0
120
+ Requires-Dist: resolvelib ==1.0.1
121
+ Requires-Dist: simpledi ==0.4.1
122
+ Requires-Dist: hvac ==1.1.1 ; python_full_version >= "3.6.2" and python_full_version < "4.0.0"
123
+ Requires-Dist: charset-normalizer ==3.3.0 ; python_full_version >= "3.7.0"
124
+ Requires-Dist: backports.functools-lru-cache ==1.6.6 ; python_version >= "2.6"
125
+ Requires-Dist: msal ==1.24.1 ; python_version >= "2.7"
126
+ Requires-Dist: python-dateutil ==2.8.2 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2"
127
+ Requires-Dist: six ==1.16.0 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2"
128
+ Requires-Dist: himl ==0.15.0 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3"
129
+ Requires-Dist: requests-oauthlib ==1.3.1 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3"
130
+ Requires-Dist: colorama ==0.4.4 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4"
131
+ Requires-Dist: docutils ==0.16 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4"
132
+ Requires-Dist: pyasn1 ==0.5.0 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4, 3.5"
133
+ Requires-Dist: pyasn1-modules ==0.3.0 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4, 3.5"
134
+ Requires-Dist: urllib3 ==1.26.17 ; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3, 3.4, 3.5"
135
+ Requires-Dist: idna ==3.4 ; python_version >= "3.5"
136
+ Requires-Dist: inflection ==0.5.1 ; python_version >= "3.5"
137
+ Requires-Dist: rsa ==4.7.2 ; python_version >= "3.5" and python_version < "4"
138
+ Requires-Dist: certifi ==2023.7.22 ; python_version >= "3.6"
139
+ Requires-Dist: kubernetes ==26.1.0 ; python_version >= "3.6"
140
+ Requires-Dist: msrest ==0.7.1 ; python_version >= "3.6"
141
+ Requires-Dist: oauthlib ==3.2.2 ; python_version >= "3.6"
142
+ Requires-Dist: pyyaml ==6.0.1 ; python_version >= "3.6"
143
+ Requires-Dist: awscli ==1.29.12 ; python_version >= "3.7"
144
+ Requires-Dist: azure-core ==1.29.4 ; python_version >= "3.7"
145
+ Requires-Dist: boto3 ==1.28.12 ; python_version >= "3.7"
146
+ Requires-Dist: botocore ==1.31.12 ; python_version >= "3.7"
147
+ Requires-Dist: cachetools ==5.3.1 ; python_version >= "3.7"
148
+ Requires-Dist: cryptography ==41.0.4 ; python_version >= "3.7"
149
+ Requires-Dist: gitdb ==4.0.10 ; python_version >= "3.7"
150
+ Requires-Dist: gitpython ==3.1.37 ; python_version >= "3.7"
151
+ Requires-Dist: google-auth ==2.23.3 ; python_version >= "3.7"
152
+ Requires-Dist: jinja2 ==3.1.2 ; python_version >= "3.7"
153
+ Requires-Dist: jmespath ==1.0.1 ; python_version >= "3.7"
154
+ Requires-Dist: markupsafe ==2.1.3 ; python_version >= "3.7"
155
+ Requires-Dist: packaging ==23.2 ; python_version >= "3.7"
156
+ Requires-Dist: pyjwt ==2.8.0 ; python_version >= "3.7"
157
+ Requires-Dist: requests ==2.31.0 ; python_version >= "3.7"
158
+ Requires-Dist: s3transfer ==0.6.2 ; python_version >= "3.7"
159
+ Requires-Dist: smmap ==5.0.1 ; python_version >= "3.7"
160
+ Requires-Dist: cffi ==1.16.0 ; python_version >= "3.8"
161
+ Requires-Dist: setuptools ==68.2.2 ; python_version >= "3.8"
162
+ Requires-Dist: typing-extensions ==4.8.0 ; python_version >= "3.8"
163
+ Requires-Dist: websocket-client ==1.6.4 ; python_version >= "3.8"
164
+ Requires-Dist: ansible ==8.2.0 ; python_version >= "3.9"
165
+ Requires-Dist: ansible-core ==2.15.5 ; python_version >= "3.9"
166
166
 
167
167
  # Ops CLI
168
168
  [![Build status](https://github.com/adobe/ops-cli/actions/workflows/release.yml/badge.svg)](https://github.com/adobe/ops-cli/actions/workflows/release.yml) [![Docker image](https://img.shields.io/badge/Docker-ghcr.io/adobe/opscli-brightgreen.svg?style=flat-square)](https://github.com/adobe/ops-cli/pkgs/container/ops-cli) [![License](https://img.shields.io/github/license/adobe/ops-cli)](https://github.com/adobe/ops-cli/blob/master/LICENSE)
@@ -208,6 +208,7 @@ It can be used to add a layer of templating (using jinja2) on top of Terraform f
208
208
  * [Terraform landscape](#terraform-landscape)
209
209
  * [SSH](#ssh)
210
210
  * [SSHPass](#sshpass)
211
+ * [Balabit SCB](#scb)
211
212
  * [Play](#play)
212
213
  * [Run command](#run-command)
213
214
  * [Sync files](#sync-files)
@@ -316,7 +317,7 @@ workon ops
316
317
  # uninstall previous `ops` version (if you have it)
317
318
  pip uninstall ops --yes
318
319
 
319
- # install ops-cli v2.2.0 stable release
320
+ # install ops-cli v2.2.1 stable release
320
321
  pip install --upgrade ops-cli
321
322
  ```
322
323
 
@@ -332,7 +333,7 @@ You can try out `ops-cli`, by using docker. The docker image has all required pr
332
333
 
333
334
  To start out a container, running the latest `ops-cli` docker image run:
334
335
  ```sh
335
- docker run -it ghcr.io/adobe/ops-cli:2.2.0 bash
336
+ docker run -it ghcr.io/adobe/ops-cli:2.2.1 bash
336
337
  ```
337
338
 
338
339
  After the container has started, you can start using `ops-cli`:
@@ -14,7 +14,7 @@ ops/ansible/vars_plugins/clusterconfig.py,sha256=qmIrTp1V0gLdbtBI5A0HMmICe8z0xUq
14
14
  ops/ansible/vars_plugins/opsconfig.py,sha256=lfKCD7XRoDTW80QXEGcm3tV6ASnzoCGdxy5zpaimT4k,1615
15
15
  ops/cli/__init__.py,sha256=LcPvjP6p7l8At8CIjyWvm0mhYzMGJqFv45AcTls1IhM,1376
16
16
  ops/cli/aws.py,sha256=OsmpOVv1924_lvNESeElLgcEi1caYTnI88C7wzXie78,911
17
- ops/cli/config.py,sha256=-wnmNgNJDsp1vIXJcaiarsfWUnMos_aNHvCjXizUBi8,6311
17
+ ops/cli/config.py,sha256=T0ZfW1bWdSr1dF4oqsvTjUtUiCr7RVm4_rFdezgGCqM,7629
18
18
  ops/cli/config_generator.py,sha256=ARGp5kAgdMLqtrHyQb_dE9sEuM1bAnVddfWDxd_5OdA,1718
19
19
  ops/cli/helmfile.py,sha256=2ipKyFMY5M87U1mXDQle_UsOXICdQ-0VX2f97TAg0I8,6354
20
20
  ops/cli/inventory.py,sha256=VsGXuWg9_yVbuWVnZadNyvzCvaciKu68qND59ct8kqc,3101
@@ -22,7 +22,7 @@ ops/cli/packer.py,sha256=GAgi6uPWO0wv3uIEwl0O2sb4fQtpCbL1561nP8Y_Lpc,2626
22
22
  ops/cli/parser.py,sha256=tzXvpu4GycyHSjERFrjQVEFZYVzOszLhDEjpkFYJ-oc,4377
23
23
  ops/cli/playbook.py,sha256=rPaIfUUMSTgITxzrvkVyTpPJ2UfqYnk3WfjY3jDrHO0,5287
24
24
  ops/cli/run.py,sha256=cwT2rQEBRip_OndkSQLFR7Q8D5BD6L5BbAq6nehKhco,3373
25
- ops/cli/ssh.py,sha256=OUUQT8iW9U7ZbYWBblXKJanTiwdjTAVePr7RNyKxCQ0,13182
25
+ ops/cli/ssh.py,sha256=rlVmwyVyv6RLkJ_cM27UMcnDkFS9tplwwjCTvS9Wuek,13188
26
26
  ops/cli/sync.py,sha256=8K3Dsh6cwv9gTat0KXvRemHmqpAWd46pHfS8wMS9Olk,5663
27
27
  ops/cli/terraform.py,sha256=XeLXr_nFpdnsHdEfAFj_oiurvIhDQv-xE3L-NpMTcB0,12446
28
28
  ops/data/ansible/ansible.cfg,sha256=LE0Ve37qwQnbM1AJfHX442yh6HMMzM1FPCTCUKZElV8,186
@@ -41,7 +41,7 @@ ops/inventory/azurerm.py,sha256=pWZqbZP9-7ChHNK1DwfSlt9hU6lcJjvNXmvduR2G5tQ,3350
41
41
  ops/inventory/caching.py,sha256=G2sJJ7nPHCqNBz3Vh0vxrFWQZt6B_11yS50GeZ8_1Bs,2000
42
42
  ops/inventory/ec2inventory.py,sha256=Kt1LxenzjuaDQvN5Q4r-2sg6Mdj5jn7lIf32Cy6BGtE,11179
43
43
  ops/inventory/generator.py,sha256=BcjUxMoWTnmx-P_S-1fLjqG3PUhyMyAO2S-037KG5q0,10885
44
- ops/inventory/sshconfig.py,sha256=ROYqKH1cp3VtDqZPaR6L_pp3DgS9VCx9vGZqcSY0f8k,4432
44
+ ops/inventory/sshconfig.py,sha256=lxqKyH0uCRCk4XXZISGrtX_d0c7OREg2Hh77ndtz05k,4438
45
45
  ops/inventory/plugin/__init__.py,sha256=kSOYPdE9T0Ixe6tQUYoOl_udNbFZdVatvRf6bkf92aE,725
46
46
  ops/inventory/plugin/azr.py,sha256=8-G3mEc0WQV7ZhJ4z6X-Wo90nQ7zAzHwgLpV4l_gbjo,5910
47
47
  ops/inventory/plugin/cns.py,sha256=KjqG2SUiglDYj-XvguVIvo1fzqjgg_XPOdLdTaRfm24,1697
@@ -51,9 +51,9 @@ ops/inventory/plugin/skms.py,sha256=pFMpvfbXCf0KPgEOj5oAD7UzpUZ5zL1lcN4wESOjPuI,
51
51
  ops/jinja/__init__.py,sha256=Nvmvb1edSAehNKYyroo26Jrxjzbu_TOCBS8Y9mMEOyA,1743
52
52
  ops/terraform/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
53
  ops/terraform/terraform_cmd_generator.py,sha256=PCeAbsj7KQ6XY-7Q1g0ngyFjIdbEcgk6ZU9XJU3ZRjc,21428
54
- ops_cli-2.2.0.dist-info/LICENSE,sha256=ff5lJoiLrFF1nJn5pRJiuicRqMEqBn8hgWCd2aQGa4Q,11335
55
- ops_cli-2.2.0.dist-info/METADATA,sha256=h21N9GFZ3-9Q0L9dUdk7q-ilnP6wBh_5G0mpI2-n3ck,39451
56
- ops_cli-2.2.0.dist-info/WHEEL,sha256=AtBG6SXL3KF_v0NxLf0ehyVOh0cold-JbJYXNGorC6Q,92
57
- ops_cli-2.2.0.dist-info/entry_points.txt,sha256=maaS2Tf8WvxMXckssedK13LXegD9jgHB2AT8xiEfVpQ,37
58
- ops_cli-2.2.0.dist-info/top_level.txt,sha256=enC05wWafSg8iDKIvj3gvtAtEP2kYCyN5Gmd689q-_I,4
59
- ops_cli-2.2.0.dist-info/RECORD,,
54
+ ops_cli-2.2.1.dist-info/LICENSE,sha256=ff5lJoiLrFF1nJn5pRJiuicRqMEqBn8hgWCd2aQGa4Q,11335
55
+ ops_cli-2.2.1.dist-info/METADATA,sha256=2vblK8lTKd7aTU_rVDfyo5Ri1xLkiDjvGGTFmfuJhoM,39647
56
+ ops_cli-2.2.1.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
57
+ ops_cli-2.2.1.dist-info/entry_points.txt,sha256=maaS2Tf8WvxMXckssedK13LXegD9jgHB2AT8xiEfVpQ,37
58
+ ops_cli-2.2.1.dist-info/top_level.txt,sha256=enC05wWafSg8iDKIvj3gvtAtEP2kYCyN5Gmd689q-_I,4
59
+ ops_cli-2.2.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.41.0)
2
+ Generator: bdist_wheel (0.41.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5