Module mbed_targets.env
Environment options for mbed-targets
.
All the env configuration options can be set either via environment variables or using a .env
file
containing the variable definitions as follows:
VARIABLE=value
Environment variables take precendence, meaning the values set in the file will be overriden by any values previously set in your environment.
Warning
Do not upload .env
files containing private tokens to version control! If you use this package
as a dependency of your project, please ensure to include the .env
in your .gitignore
.
Expand source code
#
# Copyright (C) 2020 Arm Mbed. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
#
"""Environment options for `mbed-targets`.
All the env configuration options can be set either via environment variables or using a `.env` file
containing the variable definitions as follows:
```
VARIABLE=value
```
Environment variables take precendence, meaning the values set in the file will be overriden
by any values previously set in your environment.
.. WARNING::
Do not upload `.env` files containing private tokens to version control! If you use this package
as a dependency of your project, please ensure to include the `.env` in your `.gitignore`.
"""
import os
import dotenv
dotenv.load_dotenv(dotenv.find_dotenv(usecwd=True))
class Env:
"""Provides access to environment variables.
Ensures variables are reloaded when environment changes during runtime.
Additionally allows to expose documented instance variables in pdoc
generated output.
"""
@property
def MBED_API_AUTH_TOKEN(self) -> str:
"""Token to use when accessing online API.
Mbed Targets uses the online mbed board database at os.mbed.com as its data source.
A snapshot of the board database is shipped with the package, for faster lookup of known
boards. Only public boards are stored in the database snapshot. If you are fetching data
for a private board, mbed-targets will need to contact the online database.
To fetch data about private boards from the online database, the user must have an account
on os.mbed.com and be member of a vendor team that has permissions to see the private board.
An authentication token for the team member must be provided in an environment variable named
`MBED_API_AUTH_TOKEN`.
"""
return os.getenv("MBED_API_AUTH_TOKEN", "")
@property
def MBED_DATABASE_MODE(self) -> str:
"""Database mode to use when retrieving board data.
Mbed Targets supports an online and offline mode, which controls where to look up the board database.
The board lookup can be from either the online or offline database, depending
on the value of an environment variable called `MBED_DATABASE_MODE`.
The mode can be set to one of the following:
- `AUTO`: the offline database is searched first, if the board isn't found the online database is searched.
- `ONLINE`: the online database is always used.
- `OFFLINE`: the offline database is always used.
If `MBED_DATABASE_MODE` is not set, it defaults to `AUTO`.
"""
return os.getenv("MBED_DATABASE_MODE", "AUTO")
env = Env()
"""Instance of `Env` class."""
Global variables
var env
-
Instance of
Env
class.
Classes
class Env
-
Provides access to environment variables.
Ensures variables are reloaded when environment changes during runtime. Additionally allows to expose documented instance variables in pdoc generated output.
Expand source code
class Env: """Provides access to environment variables. Ensures variables are reloaded when environment changes during runtime. Additionally allows to expose documented instance variables in pdoc generated output. """ @property def MBED_API_AUTH_TOKEN(self) -> str: """Token to use when accessing online API. Mbed Targets uses the online mbed board database at os.mbed.com as its data source. A snapshot of the board database is shipped with the package, for faster lookup of known boards. Only public boards are stored in the database snapshot. If you are fetching data for a private board, mbed-targets will need to contact the online database. To fetch data about private boards from the online database, the user must have an account on os.mbed.com and be member of a vendor team that has permissions to see the private board. An authentication token for the team member must be provided in an environment variable named `MBED_API_AUTH_TOKEN`. """ return os.getenv("MBED_API_AUTH_TOKEN", "") @property def MBED_DATABASE_MODE(self) -> str: """Database mode to use when retrieving board data. Mbed Targets supports an online and offline mode, which controls where to look up the board database. The board lookup can be from either the online or offline database, depending on the value of an environment variable called `MBED_DATABASE_MODE`. The mode can be set to one of the following: - `AUTO`: the offline database is searched first, if the board isn't found the online database is searched. - `ONLINE`: the online database is always used. - `OFFLINE`: the offline database is always used. If `MBED_DATABASE_MODE` is not set, it defaults to `AUTO`. """ return os.getenv("MBED_DATABASE_MODE", "AUTO")
Instance variables
var MBED_API_AUTH_TOKEN : str
-
Token to use when accessing online API.
Mbed Targets uses the online mbed board database at os.mbed.com as its data source. A snapshot of the board database is shipped with the package, for faster lookup of known boards. Only public boards are stored in the database snapshot. If you are fetching data for a private board, mbed-targets will need to contact the online database.
To fetch data about private boards from the online database, the user must have an account on os.mbed.com and be member of a vendor team that has permissions to see the private board. An authentication token for the team member must be provided in an environment variable named
MBED_API_AUTH_TOKEN
.Expand source code
@property def MBED_API_AUTH_TOKEN(self) -> str: """Token to use when accessing online API. Mbed Targets uses the online mbed board database at os.mbed.com as its data source. A snapshot of the board database is shipped with the package, for faster lookup of known boards. Only public boards are stored in the database snapshot. If you are fetching data for a private board, mbed-targets will need to contact the online database. To fetch data about private boards from the online database, the user must have an account on os.mbed.com and be member of a vendor team that has permissions to see the private board. An authentication token for the team member must be provided in an environment variable named `MBED_API_AUTH_TOKEN`. """ return os.getenv("MBED_API_AUTH_TOKEN", "")
var MBED_DATABASE_MODE : str
-
Database mode to use when retrieving board data.
Mbed Targets supports an online and offline mode, which controls where to look up the board database.
The board lookup can be from either the online or offline database, depending on the value of an environment variable called
MBED_DATABASE_MODE
.The mode can be set to one of the following:
AUTO
: the offline database is searched first, if the board isn't found the online database is searched.ONLINE
: the online database is always used.OFFLINE
: the offline database is always used.
If
MBED_DATABASE_MODE
is not set, it defaults toAUTO
.Expand source code
@property def MBED_DATABASE_MODE(self) -> str: """Database mode to use when retrieving board data. Mbed Targets supports an online and offline mode, which controls where to look up the board database. The board lookup can be from either the online or offline database, depending on the value of an environment variable called `MBED_DATABASE_MODE`. The mode can be set to one of the following: - `AUTO`: the offline database is searched first, if the board isn't found the online database is searched. - `ONLINE`: the online database is always used. - `OFFLINE`: the offline database is always used. If `MBED_DATABASE_MODE` is not set, it defaults to `AUTO`. """ return os.getenv("MBED_DATABASE_MODE", "AUTO")