csc-cia-stne 0.1.13__tar.gz → 0.1.15__tar.gz

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.
Files changed (51) hide show
  1. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/PKG-INFO +1 -1
  2. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/pyproject.toml +1 -1
  3. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/gcp_bucket.py +18 -1
  4. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/gcp_bucket.py +21 -6
  5. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne.egg-info/PKG-INFO +1 -1
  6. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/LICENCE +0 -0
  7. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/README.md +0 -0
  8. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/README_PYPI.md +0 -0
  9. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/setup.cfg +0 -0
  10. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/__init__.py +0 -0
  11. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/bc_correios.py +0 -0
  12. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/bc_sta.py +0 -0
  13. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/email.py +0 -0
  14. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/ftp.py +0 -0
  15. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/gcp_bigquery.py +0 -0
  16. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/google_drive.py +0 -0
  17. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/karavela.py +0 -0
  18. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/logger_json.py +0 -0
  19. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/logger_rich.py +0 -0
  20. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/provio.py +0 -0
  21. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/servicenow.py +0 -0
  22. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/slack.py +0 -0
  23. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/stne_admin.py +0 -0
  24. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/__init__.py +0 -0
  25. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/__init__.py +0 -0
  26. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_b64.py +0 -0
  27. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_converters.py +0 -0
  28. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_datetime.py +0 -0
  29. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_delete.py +0 -0
  30. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_get_secret.py +0 -0
  31. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_recriar_pastas.py +0 -0
  32. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_settings.py +0 -0
  33. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_titulo.py +0 -0
  34. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/functions/func_validate_json.py +0 -0
  35. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/GcpBigQueryValidator.py +0 -0
  36. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/GoogleDriveValidator.py +0 -0
  37. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/ServiceNowValidator.py +0 -0
  38. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/__init__.py +0 -0
  39. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/ftp.py +0 -0
  40. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/waccess.py +0 -0
  41. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/validations/web_validator.py +0 -0
  42. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/web_screen/__init__.py +0 -0
  43. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/web_screen/web_screen_abstract.py +0 -0
  44. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/web_screen/web_screen_botcity.py +0 -0
  45. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/utilitarios/web_screen/web_screen_selenium.py +0 -0
  46. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/wacess.py +0 -0
  47. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne/web.py +0 -0
  48. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne.egg-info/SOURCES.txt +0 -0
  49. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne.egg-info/dependency_links.txt +0 -0
  50. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne.egg-info/requires.txt +0 -0
  51. {csc_cia_stne-0.1.13 → csc_cia_stne-0.1.15}/src/csc_cia_stne.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: csc_cia_stne
3
- Version: 0.1.13
3
+ Version: 0.1.15
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
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "csc_cia_stne"
7
- version = "0.1.13"
7
+ version = "0.1.15"
8
8
  license = { text = "MIT" }
9
9
  description = "Biblioteca do time CSC-CIA utilizada no desenvolvimento de RPAs"
10
10
  keywords = ["karavela", "csc", "cia", "stone", "rpa", "botcity", "stne"]
@@ -224,9 +224,26 @@ class GCPBucket():
224
224
 
225
225
  blob.upload_from_filename(filename)
226
226
 
227
+ blob.reload()
228
+
227
229
  return {
228
230
  'success':True,
229
- 'details':f'Arquivo enviado para o bucket: {str(destination)}'
231
+ 'details':f'Arquivo enviado para o bucket: {str(destination)}',
232
+ 'data': {
233
+ 'name': blob.name,
234
+ 'bucket': blob.bucket.name,
235
+ 'size': blob.size,
236
+ 'content_type': blob.content_type,
237
+ 'etag': blob.etag,
238
+ 'md5_hash': blob.md5_hash,
239
+ 'crc32c': blob.crc32c,
240
+ 'generation': blob.generation,
241
+ 'time_created': blob.time_created.isoformat() if blob.time_created else None,
242
+ 'updated': blob.updated.isoformat() if blob.updated else None,
243
+ 'public_url': f"gs://{blob.bucket.name}/{blob.name}",
244
+ 'media_link': blob.media_link
245
+ }
246
+
230
247
  }
231
248
 
232
249
  except Exception as e:
@@ -1,7 +1,9 @@
1
1
  from __future__ import annotations
2
- from pydantic import BaseModel, field_validator, model_validator, ValidationError
3
- from typing import Optional, Mapping, Any
2
+ from pydantic import BaseModel, field_validator, model_validator, ValidationError, Field, ConfigDict
3
+ from typing import Optional, Mapping, Any, Annotated
4
4
 
5
+ NonEmptyStr = Annotated[str, Field(min_length=1)]
6
+ PositiveInt = Annotated[int, Field(gt=0)]
5
7
 
6
8
  class InitParamsValidator(BaseModel):
7
9
  """
@@ -22,10 +24,6 @@ class InitParamsValidator(BaseModel):
22
24
  )
23
25
  return self
24
26
 
25
-
26
-
27
-
28
-
29
27
  class ListFilesValidator(BaseModel):
30
28
  """
31
29
  Classe ListFilesValidator
@@ -47,6 +45,22 @@ class ListFilesValidator(BaseModel):
47
45
  return value
48
46
 
49
47
  class GetFilesValidator(BaseModel):
48
+
49
+ model_config = ConfigDict(strict=True) # não faz coerção: "1024" não vira 1024
50
+
51
+ bucket_name: NonEmptyStr
52
+ filename: NonEmptyStr
53
+ destination: NonEmptyStr
54
+ chunksize: PositiveInt
55
+
56
+ # Opcional: se você quiser mensagens personalizadas além das do Field
57
+ @field_validator("bucket_name", "filename", "destination")
58
+ def _not_blank(cls, v, info):
59
+ if not v.strip():
60
+ raise ValueError(f"O parametro '{info.field_name}' não pode ser vazio/whitespace.")
61
+ return v
62
+
63
+ class _GetFilesValidator(BaseModel):
50
64
  """
51
65
  Classe GetFilesValidator
52
66
  Valida os parâmetros necessários para operações relacionadas a arquivos em um bucket GCP.
@@ -131,6 +145,7 @@ class UploadFilesValidator(BaseModel):
131
145
  f"O parametro '{info.field_name}' deve ser uma string não vazia; recebido {type(value)}"
132
146
  )
133
147
  return value.strip()
148
+
134
149
  class DeleteFilesValidator(BaseModel):
135
150
  """
136
151
  Classe DeleteFilesValidator
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: csc_cia_stne
3
- Version: 0.1.13
3
+ Version: 0.1.15
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
File without changes
File without changes
File without changes