Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Reuse and rename workspace variables as repository variables or deployment variables

Bence July 3, 2023

I have access keys and secrets defined as bitbucket workspace secret variables. One variable pair for dev and one for prod environment:


Screenshot_20230703_124845.png


Our system admin manages and rotates these keys, and multiple repositories utilizes these in the pipeline.

In one of the repos I'd like to reuse the DEV postifxed variables without the postfix, as repository variables.

I tried to do this in Settings/Pipelines/Repository variables page with defining the next variables:

  • AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID_DEV
  • AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY_DEV

Screenshot_20230703_125035.png


It seems that the system does not resolve the workspace level variables in the pipeline execution.

Is it possible to do this somehow?

This would allow me to define much more generic steps in bitbucket pipeline without renaming the variables in the pipeline code.

This feature would be even more beneficial to use for configuring variables for different Deployment environments without writing specific code to handle different variable names.

1 answer

1 accepted

0 votes
Answer accepted
Aron Gombas _Midori_
Community Champion
July 4, 2023

The documentation of the variable precedence rules suggests that the repository variable can override the workspace variable. Which would suggest that if you don't define a variable on the repository level, then you can access the workspace-level one.

So, what if you drop those definitions from the repository variables?

Bence July 5, 2023

I'd like to reuse the workspace level variables in repository level with a different name without knowing its values.

If i drop the definitions from the repository variables I'll end up with different than expected variable names from the workspace level. (actual variable: AWS_ACCESS_KEY_ID_DEV instead of expected: AWS_ACCESS_KEY_ID). So again I end up  to redefine/rename these in the pipeline script, what I'd like to avoid

Reusing in the deployment steps are even more complicated, since i need to handle both DEV and PROD postfixes in the pipeline definition script.

In some projects I have even more environments, which adds more complexiti in script, if I can't rename and reuse workspace level variables as deployment variables.

Aron Gombas _Midori_
Community Champion
July 5, 2023 edited

Hmm.

I think I understand the problem, and it seems that there is no other option than injecting both the workspace variables and the repository variables using unique names to the pipeline script's execution context and let the script decide (depending on other variables?) which to use... 

Like • Bence likes this
Bence July 5, 2023 edited

Yes, I found the same, than maybe it is a feature request:)
Do you think I can create a feature request from this question?

Aron Gombas _Midori_
Community Champion
July 5, 2023

You can, sure.

(But, to stay realistic, implement the best you can with the currently available options and don't wait for Atlassian to resolve this for you.)

Bence July 6, 2023

Sure, I'll not wait for the implementation. But at least can expect something in the future:)

Like • Aron Gombas _Midori_ likes this
Theodora Boudale
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
July 7, 2023

Hi @Bence,

We have an existing feature request that you can vote for (by selecting the Vote for this issue link) here:

Kind regards,
Theodora

Like • 2 people like this
Bence July 7, 2023 edited

Thank you for linking this here. Sure I'll vote for that:)

Suggest an answer

Log in or Sign up to answer
DEPLOYMENT TYPE
CLOUD
TAGS
atlassian, bitbucket, ci/cd workflows, scale ci cd, bitbucket webinar, devops pipeline, continuous integration, continuous delivery, atlassian learning, software automation, developer tools, build and deploy, pipeline optimization, atlassian community

Scale CI/CD workflows faster with Bitbucket Pipelines 🪣

Join this webinar on June 25/26th to learn how to build secure CI/CD workflows using Bitbucket Pipelines and get tips from our own engineers on how to speed up builds and operate at scale.

Register today
AUG Leaders

Atlassian Community Events