Techiio-author
Started by Bruce MccullamSep 29, 2021

Open
How to set variables during a project build in Python

1 VIEWES 0 LIKES 0 DISLIKES SHARE
0 LIKES 0 DISLIKES 1 VIEWES SHARE

I have some Python project, like a library. I have also two Azure DevOps environment feeds, NPRD and PROD for example. There are two different pipelines for build and post artifacts.

Now I need to define some different constants in my code for these envs, like URLS, end-points, etc. Maybe part of them I want to be secured. My built artifact (whl actually) will work on some user machine which I don't have access to and I can't define environment variables for my properties.

So how can I inject these values to the project during pipeline build? Is it possible?

1 Replies

Techiio-commentatorAnik Adhikary replied a month ago0 likes0 dislikes

A better way to manage your environment variables is to store them in a .env (pronounced dot env) file.

A .env file is a text file in which the variables are defined, one per line. The format of a .env file is exactly the same under all operating systems, so .env files make working with environment variables uniform across all platforms. And as if this isn’t enough, having your environment variables written in a file that is automatically imported by Python means that you don’t have to manually set them every time you start a new shell.

You can create a .env file in the root directory of each of your projects, and that way you can keep all the variables that are needed by each project neatly organized!

The python-dotenv package allows a Python application to import variables defined in a .env file into the environment. You can install python-dotenv in your virtual environment using pip:

pip install python-dotenv

from dotenv import load_dotenv

load_dotenv('/home/miguel/my_project/.env')

os.environ['ENV_VAR_NAME']

To set the value to the environment user variable:

os.environ['USER'] = 'Bob'

If you need to clear a single environment variable in the session you can use os.environ.pop() with the key and if you need to clear all environment variables you can use os.environ.clear()

os.environ.pop('USER')

os.environ.clear()

environment variables can be called like so:

From dotenv import load_dotenv

load_dotenv()

import os

token = os.environ.get("USER")

Hope this will help you.

You must be Logged in to reply
Techiio-logo

Techiio is on the journey to build an ocean of technical knowledge, scouring the emerging stars in process and proffering them to the corporate world.

Follow us on:

Subscribe to get latest updates

You can unsubscribe anytime from getting updates from us
Developed and maintained by Wikiance
Developed and maintained by Wikiance