s3storage issueshttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues2024-02-26T11:27:15Zhttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/16Non compatible avec la dernière version de moto (5)2024-02-26T11:27:15ZFabien Amargerfabien.amarger@logilab.frNon compatible avec la dernière version de moto (5)La denrière version de moto pour mock le s3 ne contient pas la fonction `mock_s3` mais apparemment c'est maintenant `mock_aws`La denrière version de moto pour mock le s3 ne contient pas la fonction `mock_s3` mais apparemment c'est maintenant `mock_aws`Fabien Amargerfabien.amarger@logilab.frFabien Amargerfabien.amarger@logilab.frhttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/15Permettre de rendre la gestion du bucket versioning optionnel2022-09-28T14:04:39ZAurélien LubertPermettre de rendre la gestion du bucket versioning optionnelL'objet `BucketVersioning` permet de gérer un *bucket* S3 (qu'il soit versionné ou non) et de pouvoir le manipuler.
Il est donc possible d'activer le *versioning* pour un *bucket* qui n'a pas cette option, ce qui indique que celui-ci es...L'objet `BucketVersioning` permet de gérer un *bucket* S3 (qu'il soit versionné ou non) et de pouvoir le manipuler.
Il est donc possible d'activer le *versioning* pour un *bucket* qui n'a pas cette option, ce qui indique que celui-ci est bien versionné, même s'il n'est plus fonctionnel…
On ne peut donc pas se fier au résultat de ces commandes, il serait donc intéressant d'ajouter une option de configuration du cube s3storage pour activer ou non, la gestion du *versioning*.
* [S3.BucketVersioning](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html?highlight=upload_fileobj#S3.BucketVersioning)Bucket VersioningEfflam LemailletEfflam Lemaillethttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/14Télécharger un fichier du bucket S3 à partir d'un VersionID2022-09-28T14:04:45ZAurélien LubertTélécharger un fichier du bucket S3 à partir d'un VersionIDLa méthode `download` du module `S3Storage` permet de télécharger un fichier depuis le *bucket* S3, via la méthode `get_object`.
Cette méthode peut avoir comme argument positionnel, la clef `VersionId`, qui lui permet de télécharger un ...La méthode `download` du module `S3Storage` permet de télécharger un fichier depuis le *bucket* S3, via la méthode `get_object`.
Cette méthode peut avoir comme argument positionnel, la clef `VersionId`, qui lui permet de télécharger un fichier à partir d'une version spécifique.
Ce téléchargement doit aussi pouvoir se faire, sans que l'on donne de version.
* [S3.Client.get_object](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html?highlight=upload_fileobj#S3.Client.get_object)Bucket Versioninghttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/13Intégrer la valeur du VersionID du fichier téléversé à l'entité dédié2022-09-28T14:04:43ZAurélien LubertIntégrer la valeur du VersionID du fichier téléversé à l'entité dédiéUne fois le fichier envoyé sur le *bucket* S3, la méthode `put_object` (implémenté dans #12) va retourner un dictionnaire contenant les métadonnées du fichier.
Si le *bucket* S3 est versionné, la clef `VersionID` devrait être disponible...Une fois le fichier envoyé sur le *bucket* S3, la méthode `put_object` (implémenté dans #12) va retourner un dictionnaire contenant les métadonnées du fichier.
Si le *bucket* S3 est versionné, la clef `VersionID` devrait être disponible dans ce dictionnaire et contenir celle du fichier téléversé.
Les méthodes `entity_added` et `entity_updated` du module `S3Storage` vont donc avoir besoin d'ajouter cette information à l'entité quand elle est disponible.Bucket Versioninghttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/12Remplacer l'usage de upload_fileobj par put_object2022-09-28T14:04:41ZAurélien LubertRemplacer l'usage de upload_fileobj par put_objectLa méthode `upload_fileobj` ne permet pas de récupérer les informations concernant le fichier envoyé sur le *bucket* S3, contrairement à la méthode `put_object`.
- [S3.Client.upload_fileobj](https://boto3.amazonaws.com/v1/documentation/...La méthode `upload_fileobj` ne permet pas de récupérer les informations concernant le fichier envoyé sur le *bucket* S3, contrairement à la méthode `put_object`.
- [S3.Client.upload_fileobj](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html?highlight=upload_fileobj#S3.Client.upload_fileobj)
- [S3.Client.put_object](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html?highlight=upload_fileobj#S3.Client.put_object)Bucket Versioninghttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/11Permettre la gestion d'un Bucket versionné avec le cube S3Storage2022-09-28T14:04:52ZAurélien LubertPermettre la gestion d'un Bucket versionné avec le cube S3StorageUn *bucket* S3 peut être versionné et permettre aux fichiers d'être re-téléversés sans perdre le fichier original.
Pour ajouter cette fonctionnalité à ce cube, il va falloir mettre en place les points suivants :
* Faire en sorte de récu...Un *bucket* S3 peut être versionné et permettre aux fichiers d'être re-téléversés sans perdre le fichier original.
Pour ajouter cette fonctionnalité à ce cube, il va falloir mettre en place les points suivants :
* Faire en sorte de récupérer le `VersionID` du fichier téléversé sur le *bucket* S3
* Conserver une rétrocompatibilité avec l'existant en rendant cet `VersionID` optionel (via une option de configuration par exemple)
* Permettre de télécharger un fichier depuis le *bucket* S3 avec un `VersionID` spécifiqueBucket Versioninghttps://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/10[bug] two identical files can not be created in the same transaction2021-02-23T17:06:48ZKatia Saurfelt[bug] two identical files can not be created in the same transactionfix the bug for two identical files created in same transactionfix the bug for two identical files created in same transaction1.0.3https://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/9S3storage : update strategy is different from BFSStorage2021-02-23T17:06:06ZKatia SaurfeltS3storage : update strategy is different from BFSStorageContrairement à BFSStorge la mise à jour de contenu ne génère pas de nouveau fichier ce qui casse de façon silencieuse la compatibilité avec BFSStorageContrairement à BFSStorge la mise à jour de contenu ne génère pas de nouveau fichier ce qui casse de façon silencieuse la compatibilité avec BFSStorage1.0.3https://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/7Manage ACL on S3 stored data2021-02-23T17:01:51ZArthur LutzManage ACL on S3 stored dataIn some use cases we want to manage ACL on some objects stored via cubicweb on s3. For example, getting a file to be set to private on some published/unpublished workflow.In some use cases we want to manage ACL on some objects stored via cubicweb on s3. For example, getting a file to be set to private on some published/unpublished workflow.https://forge.extranet.logilab.fr/cubicweb/cubes/s3storage/-/issues/5Upload with correct content_type2021-02-23T16:57:36ZArthur LutzUpload with correct content_typeWhen uploading data, try to get the content_type right :
![Screenshot_from_2020-12-08_14-24-39](/uploads/c80ce6e34b6ade6b93c617ffb4f2c5b9/Screenshot_from_2020-12-08_14-24-39.png)
* `Marianne_2.png` was uploaded with `aws s3 cp Mariann...When uploading data, try to get the content_type right :
![Screenshot_from_2020-12-08_14-24-39](/uploads/c80ce6e34b6ade6b93c617ffb4f2c5b9/Screenshot_from_2020-12-08_14-24-39.png)
* `Marianne_2.png` was uploaded with `aws s3 cp Marianne_2.png s3://bucket/`
* `a70331df7b0bcc42c62404073957d6bc6018ad72_Marianne_2.png` was uploaded by s3storage1.0.3