csc-cia-stne 0.0.80__py3-none-any.whl → 0.0.82__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.
@@ -208,8 +208,15 @@ class StoneAdmin:
208
208
  }
209
209
 
210
210
  response = requests.post(auth_url, data=token_payload, headers=headers, timeout=60)
211
- #print(response.json())
212
- return response.json()['access_token']
211
+
212
+ try:
213
+
214
+ return response.json()['access_token']
215
+
216
+ except:
217
+
218
+ raise Exception(f"Falha ao logar no Stone Admin:\n{response.json()}")
219
+
213
220
 
214
221
  def renew_authorization(self):
215
222
  """
@@ -2,66 +2,84 @@ import os
2
2
  from botcity.maestro import *
3
3
  from typing import Optional
4
4
 
5
- def get_secret(name: str, maestro: Optional[BotMaestroSDK] = None) -> str:
6
- """
7
- Extrai a secret do ambiente
5
+ def get_secret(name: str, maestro: Optional[BotMaestroSDK] = None, activity_label: Optional[str] = None) -> str:
6
+ """
7
+ Obtém um segredo a partir de diferentes fontes, como variáveis de ambiente, arquivos locais ou o BotMaestroSDK.
8
+ Args:
9
+ name (str): O nome do segredo a ser recuperado.
10
+ maestro (Optional[BotMaestroSDK]): Instância opcional do BotMaestroSDK para buscar o segredo.
11
+ activity_label (Optional[str]): Rótulo opcional de atividade para buscar o segredo no BotMaestroSDK.
12
+ Returns:
13
+ str: O valor do segredo recuperado. Retorna `None` se o segredo não for encontrado.
14
+ Comportamento:
15
+ 1. Primeiro tenta recuperar o segredo a partir de uma variável de ambiente.
16
+ 2. Caso não encontre, verifica em diferentes diretórios locais:
17
+ - ./secrets
18
+ - ./.secrets
19
+ - ./private
20
+ - ./.private
21
+ - /secrets
22
+ 3. Se o segredo ainda não for encontrado, tenta buscar no BotMaestroSDK, utilizando o rótulo de atividade, se fornecido.
23
+ Exceções:
24
+ - Caso ocorra algum erro ao buscar o segredo no BotMaestroSDK, o segredo será definido como `None`.
25
+ """
26
+ # Tentando extrair da variavel de ambiente
27
+ secret = os.getenv(name)
28
+
29
+ # secret não encontrada em variavel de ambiente, tentando extrair do arquivo em /secret
30
+ if secret is None:
8
31
 
9
- Args:
10
- name (str): nome da variavel ou arquivo da secret
11
- maestro ( Optional[BotMaestroSDK]): Recebe o Maestro da Botcity. e opcional.
32
+ # verifica na pasta ./secrets
33
+ if os.path.exists(f"./secrets/{name}"):
12
34
 
13
- Returns:
14
- str: string da secret armazenada na variável de ambiente ou no arquivo de secret
15
- """
35
+ with open(f"./secrets/{name}",'r') as secret_file:
16
36
 
17
- # Tentando extrair da variavel de ambiente
18
- secret = os.getenv(name)
19
-
20
- # secret não encontrada em variavel de ambiente, tentando extrair do arquivo em /secret
21
- if secret is None:
37
+ secret = secret_file.read()
22
38
 
23
- # verifica na pasta ./secrets
24
- if os.path.exists(f"./secrets/{name}"):
39
+ # verifica na pasta ./.secrets
40
+ elif os.path.exists(f"./.secrets/{name}"):
25
41
 
26
- with open(f"./secrets/{name}",'r') as secret_file:
27
-
28
- secret = secret_file.read()
42
+ with open(f"./.secrets/{name}",'r') as secret_file:
43
+
44
+ secret = secret_file.read()
29
45
 
30
- # verifica na pasta ./.secrets
31
- elif os.path.exists(f"./.secrets/{name}"):
46
+ # verifica na pasta ./private
47
+ elif os.path.exists(f"./private/{name}"):
32
48
 
33
- with open(f"./.secrets/{name}",'r') as secret_file:
34
-
35
- secret = secret_file.read()
36
-
37
- # verifica na pasta ./private
38
- elif os.path.exists(f"./private/{name}"):
49
+ with open(f"./private/{name}",'r') as secret_file:
50
+
51
+ secret = secret_file.read()
39
52
 
40
- with open(f"./private/{name}",'r') as secret_file:
41
-
42
- secret = secret_file.read()
53
+ # verifica na pasta ./.private
54
+ elif os.path.exists(f"./.private/{name}"):
43
55
 
44
- # verifica na pasta ./.private
45
- elif os.path.exists(f"./.private/{name}"):
56
+ with open(f"./.private/{name}",'r') as secret_file:
57
+
58
+ secret = secret_file.read()
46
59
 
47
- with open(f"./.private/{name}",'r') as secret_file:
48
-
49
- secret = secret_file.read()
60
+ # verifica na pasta /secrets
61
+ elif os.path.exists(f"/secrets/{name}"):
50
62
 
51
- # verifica na pasta /secrets
52
- elif os.path.exists(f"/secrets/{name}"):
63
+ with open(f"/secrets/{name}",'r') as secret_file:
64
+
65
+ secret = secret_file.read()
53
66
 
54
- with open(f"/secrets/{name}",'r') as secret_file:
67
+ elif maestro and isinstance(maestro, BotMaestroSDK):
68
+ try:
55
69
 
56
- secret = secret_file.read()
57
-
58
- elif maestro and isinstance(maestro, BotMaestroSDK):
59
- try:
70
+ secret = maestro.get_credential(label=name, key=name)
71
+
72
+ except Exception as e:
60
73
 
74
+ secret = None
75
+ elif maestro and isinstance(maestro, BotMaestroSDK):
76
+ try:
77
+ if activity_label and isinstance(activity_label, str):
78
+ secret = maestro.get_credential(label=activity_label, key=name)
79
+ else:
61
80
  secret = maestro.get_credential(label=name, key=name)
62
-
63
- except Exception as e:
64
-
65
- secret = None
81
+
82
+ except Exception as e:
83
+ secret = None
66
84
 
67
- return secret
85
+ return secret
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: csc_cia_stne
3
- Version: 0.0.80
3
+ Version: 0.0.82
4
4
  Summary: Biblioteca do time CSC-CIA utilizada no desenvolvimento de RPAs
5
5
  License: MIT
6
6
  Keywords: karavela,csc,cia,stone,rpa,botcity,stne
@@ -10,13 +10,13 @@ csc_cia_stne/logger_rich.py,sha256=fklgkBb4rblKQd7YZ3q-eWfhGg9eflO2k2-z4pGh_yo,5
10
10
  csc_cia_stne/provio.py,sha256=G-pDnHYLSp97joc7S7dvwjNvl3omnTmvdi3rOPQf5GA,3987
11
11
  csc_cia_stne/servicenow.py,sha256=cJtNtLZ8glWfs3OAzl78ZFlPyPz39CSBxHqpTdUU7i0,32136
12
12
  csc_cia_stne/slack.py,sha256=33_UNF7M529eIuWjmzSJFEZ4RmVNkFkuVxvxwsKY1tQ,8126
13
- csc_cia_stne/stne_admin.py,sha256=oxrdJLlDfHDirEf0WpWmkeXuHD3HIgTJsJEFvruUg3o,23803
13
+ csc_cia_stne/stne_admin.py,sha256=T7dbGKj8H29YTuYrPFIiOORRL67F8fJfBMI4lkhFoQQ,23899
14
14
  csc_cia_stne/web.py,sha256=_pc6BzPy2x0RvqtZsByjtKcSuUqlVTevfmmmKbVWLhA,15417
15
15
  csc_cia_stne/utilitarios/__init__.py,sha256=Z3broqBkv5SiPTpdWJ6O6QoBT8gYR8jdyciSfE8ztdI,367
16
16
  csc_cia_stne/utilitarios/functions/__init__.py,sha256=nUcjSI23FxfX18AQ8Q_Gimyxme35JTyfCYNcIypPfNU,527
17
17
  csc_cia_stne/utilitarios/functions/func_b64.py,sha256=XGU34BIQQXWXBS0yM2B4A2wDlcrMl1unIJXjq4lpLnk,1254
18
18
  csc_cia_stne/utilitarios/functions/func_converters.py,sha256=EY1zvlBaRX7G1MceVSiRXwwKDQDZwUO9iECBL0fe5iU,481
19
- csc_cia_stne/utilitarios/functions/func_get_secret.py,sha256=khTtUTE-acdA9lIM8l7weejDSqoTYlf59ypBdC_F_lw,2150
19
+ csc_cia_stne/utilitarios/functions/func_get_secret.py,sha256=q97A8-0j4TlzhlD9OC5Xrwre0fYbo2NhjjpbwSSBibA,3125
20
20
  csc_cia_stne/utilitarios/functions/func_rdp.py,sha256=bHzMEv2mofRLMB0DswW1-mLtYqQdrGPz3Lnt6xQNxFA,4713
21
21
  csc_cia_stne/utilitarios/functions/func_recriar_pastas.py,sha256=4whZpB3aJQaCPJ3osMAQpKrzEhqYtJbljGWlx_OvKIM,826
22
22
  csc_cia_stne/utilitarios/functions/func_settings.py,sha256=XwlfqdcfocXQ8kTsDKZ6GsAtpzr0_u44AOTIMtdem7U,2059
@@ -26,8 +26,8 @@ csc_cia_stne/utilitarios/validations/GoogleDriveValidator.py,sha256=Q1oZTae4hDJ2
26
26
  csc_cia_stne/utilitarios/validations/ServiceNowValidator.py,sha256=yleKUIo1ZfyloP9fDPNjv3JJXdLcocT81WIgRSYmqEA,14423
27
27
  csc_cia_stne/utilitarios/validations/__init__.py,sha256=O_qyEU2ji3u6LHUXZCXvUFsMpoMWL625qqHTXyXivTA,106
28
28
  csc_cia_stne/utilitarios/validations/web_validator.py,sha256=HYKYSpDv1RvRjZIuwTPt-AbEz-9392MxM_O329iYuSA,5722
29
- csc_cia_stne-0.0.80.dist-info/licenses/LICENCE,sha256=LPGMtgKki2C3KEZP7hDhA1HBrlq5JCHkIeStUCLEMx4,1073
30
- csc_cia_stne-0.0.80.dist-info/METADATA,sha256=o2YDi4wW42_I7H-U6gd2upFKV3ojXqwszFRrlODzah4,1362
31
- csc_cia_stne-0.0.80.dist-info/WHEEL,sha256=DK49LOLCYiurdXXOXwGJm6U4DkHkg4lcxjhqwRa0CP4,91
32
- csc_cia_stne-0.0.80.dist-info/top_level.txt,sha256=ldo7GVv3tQx5KJvwBzdZzzQmjPys2NDVVn1rv0BOF2Q,13
33
- csc_cia_stne-0.0.80.dist-info/RECORD,,
29
+ csc_cia_stne-0.0.82.dist-info/licenses/LICENCE,sha256=LPGMtgKki2C3KEZP7hDhA1HBrlq5JCHkIeStUCLEMx4,1073
30
+ csc_cia_stne-0.0.82.dist-info/METADATA,sha256=iOWp2bKJ-deNXRd7JVU46WLyzXOCOCrzoljuLYX8SFg,1362
31
+ csc_cia_stne-0.0.82.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
32
+ csc_cia_stne-0.0.82.dist-info/top_level.txt,sha256=ldo7GVv3tQx5KJvwBzdZzzQmjPys2NDVVn1rv0BOF2Q,13
33
+ csc_cia_stne-0.0.82.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.0.2)
2
+ Generator: setuptools (78.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5