csc-cia-stne 0.1.13__py3-none-any.whl → 0.1.15__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.
@@ -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
@@ -4,7 +4,7 @@ csc_cia_stne/bc_sta.py,sha256=sE-aU-ZVSAqryQrT1-nor9eAFM5npNAKF1QSm-ChhGU,28945
4
4
  csc_cia_stne/email.py,sha256=y4xyPAe6_Mga5Wf6qAsDzYgn0f-zf2KshfItlWe58z8,8481
5
5
  csc_cia_stne/ftp.py,sha256=M9WCaq2hm56jGyszNaPinliFaZS0BNrT7VrVPMjkMg4,10988
6
6
  csc_cia_stne/gcp_bigquery.py,sha256=foq8azvvv_f7uikMDslX9RcUIrx7RAS-Sn0AGW0QFQc,7231
7
- csc_cia_stne/gcp_bucket.py,sha256=nP77BtagZ7jQq6lS88ZEa1qshzBza6e_LvhgS3_JJJk,10268
7
+ csc_cia_stne/gcp_bucket.py,sha256=_Q3LS3Uy9tyi6LFHBedu38S1GS2CrI5iJCxRLu0rNaU,11007
8
8
  csc_cia_stne/google_drive.py,sha256=j1fvHpgU76_VqCtSEe05JXLOgNwNNfrP6GRKq6eU4b4,17074
9
9
  csc_cia_stne/karavela.py,sha256=jJCYX43D49gGuzmwwK6bN9XVnv2dXdp9iHnnV5H1LMQ,4794
10
10
  csc_cia_stne/logger_json.py,sha256=CXxSCOFGMymDi8XE9SKnPKjW4D0wJLqDLnxqePS26i8,3187
@@ -31,15 +31,15 @@ csc_cia_stne/utilitarios/validations/GoogleDriveValidator.py,sha256=Q1oZTae4hDJ2
31
31
  csc_cia_stne/utilitarios/validations/ServiceNowValidator.py,sha256=yleKUIo1ZfyloP9fDPNjv3JJXdLcocT81WIgRSYmqEA,14423
32
32
  csc_cia_stne/utilitarios/validations/__init__.py,sha256=O_qyEU2ji3u6LHUXZCXvUFsMpoMWL625qqHTXyXivTA,106
33
33
  csc_cia_stne/utilitarios/validations/ftp.py,sha256=LNYyS2c8eou3ML23bBtn87xJFIKSrb8w-2acG0Zugog,4988
34
- csc_cia_stne/utilitarios/validations/gcp_bucket.py,sha256=E94UCoph9FPo0y2y6UnGOO-zqJFfaHqRAXHWXee7FtM,6229
34
+ csc_cia_stne/utilitarios/validations/gcp_bucket.py,sha256=sc0xB6IowhKyhH8A2UR0ho3iTYatwsHGbXBsjb25QhY,6905
35
35
  csc_cia_stne/utilitarios/validations/waccess.py,sha256=8yfOrmIPUSLzbCt6P0F6vj3FkSgU_RgrJpJlRhlLyV0,7352
36
36
  csc_cia_stne/utilitarios/validations/web_validator.py,sha256=HYKYSpDv1RvRjZIuwTPt-AbEz-9392MxM_O329iYuSA,5722
37
37
  csc_cia_stne/utilitarios/web_screen/__init__.py,sha256=5QcOPXKd95SvP2DoZiHS0gaU68GlyFD9pQ9kae_9D1Q,100
38
38
  csc_cia_stne/utilitarios/web_screen/web_screen_abstract.py,sha256=PjL8Vgfj_JdKidia7RFyCkro3avYLQu4RZRos41sh3w,3241
39
39
  csc_cia_stne/utilitarios/web_screen/web_screen_botcity.py,sha256=Xi5YJjl2pcxlX3OimqcBWRNXZEpAE7asyUjDJ4Oho5U,12297
40
40
  csc_cia_stne/utilitarios/web_screen/web_screen_selenium.py,sha256=JLIcPJE9ZX3Pd6zG6oTRMqqUAY063UzLY3ReRlxmiSM,15581
41
- csc_cia_stne-0.1.13.dist-info/licenses/LICENCE,sha256=LPGMtgKki2C3KEZP7hDhA1HBrlq5JCHkIeStUCLEMx4,1073
42
- csc_cia_stne-0.1.13.dist-info/METADATA,sha256=U9YlaEJ11OOOncYpnAmoxkoLezq5ZIeK6EzokvVdbdo,1464
43
- csc_cia_stne-0.1.13.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
44
- csc_cia_stne-0.1.13.dist-info/top_level.txt,sha256=ldo7GVv3tQx5KJvwBzdZzzQmjPys2NDVVn1rv0BOF2Q,13
45
- csc_cia_stne-0.1.13.dist-info/RECORD,,
41
+ csc_cia_stne-0.1.15.dist-info/licenses/LICENCE,sha256=LPGMtgKki2C3KEZP7hDhA1HBrlq5JCHkIeStUCLEMx4,1073
42
+ csc_cia_stne-0.1.15.dist-info/METADATA,sha256=GoZ9_9FZbKPlj6kTCybVe4coxamwpghFmC2iucPLFuE,1464
43
+ csc_cia_stne-0.1.15.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
44
+ csc_cia_stne-0.1.15.dist-info/top_level.txt,sha256=ldo7GVv3tQx5KJvwBzdZzzQmjPys2NDVVn1rv0BOF2Q,13
45
+ csc_cia_stne-0.1.15.dist-info/RECORD,,