[ 
https://issues.apache.org/jira/browse/AIRFLOW-7111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17090952#comment-17090952
 ] 

ASF GitHub Bot commented on AIRFLOW-7111:
-----------------------------------------

kaxil commented on a change in pull request #8441:
URL: https://github.com/apache/airflow/pull/8441#discussion_r414141917



##########
File path: airflow/providers/amazon/aws/hooks/s3.py
##########
@@ -729,3 +729,32 @@ def download_file(
             s3_obj.download_fileobj(local_tmp_file)
 
         return local_tmp_file.name
+
+    def generate_presigned_url(self, client_method, params=None, 
expires_in=3600, http_method=None):
+        """
+            Generate a presigned url given a client, its method, and arguments
+
+            :param client_method: The client method to presign for.
+            :type client_method: str
+            :param params: The parameters normally passed to ClientMethod.
+            :type params: dict
+            :param expires_in: The number of seconds the presigned url is 
valid for.
+                By default it expires in an hour (3600 seconds).
+            :type expires_in: int
+            :param http_method: The http method to use on the generated url.
+                By default, the http method is whatever is used in the 
method's model.
+            :type http_method: str
+            :return: The presigned url.
+            :rtype: str
+            """

Review comment:
       ```suggestion
       def generate_presigned_url(self, client_method, params=None, 
expires_in=3600, http_method=None):
           """
           Generate a presigned url given a client, its method, and arguments
   
           :param client_method: The client method to presign for.
           :type client_method: str
           :param params: The parameters normally passed to ClientMethod.
           :type params: dict
           :param expires_in: The number of seconds the presigned url is valid 
for.
               By default it expires in an hour (3600 seconds).
           :type expires_in: int
           :param http_method: The http method to use on the generated url.
               By default, the http method is whatever is used in the method's 
model.
           :type http_method: str
           :return: The presigned url.
           :rtype: str
           """
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


> Expose generate_presigned_url of boto3 to S3Hook
> ------------------------------------------------
>
>                 Key: AIRFLOW-7111
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-7111
>             Project: Apache Airflow
>          Issue Type: Improvement
>          Components: aws
>    Affects Versions: 1.10.9
>            Reporter: korni
>            Assignee: Jerome Carless
>            Priority: Major
>              Labels: S3, S3Hook, aws, easyfix, gsoc, gsoc2020
>
> boto3 has {{generate_presigned_url which should be exposed in the Hook:}}
> {{[https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#S3.Client.generate_presigned_url]}}
> {{generate_presigned_url}}(_ClientMethod_, _Params=None_, _ExpiresIn=3600_, 
> _HttpMethod=None_)
> Generate a presigned url given a client, its method, and arguments
> Parameters
>  * *ClientMethod* (_string_) -- The client method to presign for
>  * *Params* (_dict_) -- The parameters normally passed to {{ClientMethod}}.
>  * *ExpiresIn* (_int_) -- The number of seconds the presigned url is valid 
> for. By default it expires in an hour (3600 seconds)
>  * *HttpMethod* (_string_) -- The http method to use on the generated url. By 
> default, the http method is whatever is used in the method's model.
> Returns The presigned url



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to