Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

pipeline logs export and retention

Jeremy Robson January 23, 2020

I know there is a feature where i can download a pipeline log from the browser manually, but does anyone know if this can be done programmatically? I am looking into the feasibility of exporting the pipeline log from bitbucket into a AWS S3 bucket within the pipeline itself or as part of a hook or separate process.

Additionally is there any information about retention of pipeline logs? I have quite a bit of history built up, wondering if there is any document retention period.

1 answer

2 votes
Oleksandr Kyrdan
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
January 23, 2020

Hi @Jeremy Robson ,

to get logs programmatically, you can use Bitbucket Pipes Toolkit 's
helpers method BitbucketApiRepositoriesPipelines.get_logs_from_step.

Note! This functionality under development and can be changed: get_logs_from_step.

Prerequisites:

  • APP_PASSWORD: Bitbucket app password of the user. 
  • BITBUCKET_USERNAME: Bitbucket user that access Bitbucket API. Note that this should be an account name, not the email.

Usage example:

# python3.7

from bitbucket_pipes_toolkit.helpers import BitbucketApiRepositoriesPipelines

workspace = 'your-workspace'
repo_slug = 'your-repo-slug'
headers = {'Content-Type': 'application/json'}

bb_api = BitbucketApiRepositoriesPipelines(user='BITBUCKET_USERNAME', password='APP_PASSWORD', headers=headers)
build_number = bb_api.get_last_build_number(workspace, repo_slug)
steps_uuid = bb_api.get_steps_uuid(workspace, repo_slug, build_number).get(pipeline_step_name)

logs = bb_api.get_logs_from_step(workspace, repo_slug, build_number, steps_uuid)

It's a good point to write your own custom pipe :).
Please, follow the blog post by @Alexander Zhukov Refactoring your Bitbucket Pipelines with custom Pipes or guide How to write a pipe for Bitbucket Pipelines.

Also, you can mix pipes in your pipeline and upload logs with the aws-s3-deploy pipe.

Cheers,
Alex

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events