Telegram Group & Telegram Channel
Как организовать конфигурационные параметры в приложении?

Наиболее удобна, имхо, следующая конфигурация конфигов.

Есть, грубо говоря, .env, .env.staging, .env.local

Локально используется .env.local, он в гитигноре, и у каждого разработчика свой. Если работаешь один, или у всех локально одна конфигурация - .env.local не нужен.

При CI/CD .env.staging заменяет .env. При этом используются / добавляются в конфиг (для бэка) нужные секреты. У CI/CD свой конфиг.

Есть два варианта распределения параметров по конфиг файлам.
- Первый - .env хранит основные параметры, а .env.local и .env.staging только переопределяют нужные (merge).
- Второй - в каждом из них хранится полная конфигурация.

У обоих свои плюсы и минусы. Первый - удобней, можно легко добавлять общие конфигурационные параметры и не просить всех разработчиков обновить свой .env.local. Второй - наглядней, при CI/CD можно просто заменять файлы.

Данная система позволяет, например, легко переключиться и поработать на локальном фронтенде со staging бэкендом вместо локального. Можно просто написать скрипт для этого в package.json.

В такой системе никто случайно не запушит свой конфиг в репозиторий, никто не имеет доступа к секретам и чужим параметрам.

env / dotenv - довольно старая штука и недостаточно гибка для реализации удобных конфигов, поэтому я храню конфиги в json / js файлах. Их легко объединять в коде и, вообще, закладывать нужную тебе логику. Ну и древовидная система конфигурационных параметров намного читабельней и удобней в работе в коде.

Доступ к конфигу в приложении:
import { config } from "@/app-config"

#tip #cicd



tg-me.com/vuefaq/685
Create:
Last Update:

Как организовать конфигурационные параметры в приложении?

Наиболее удобна, имхо, следующая конфигурация конфигов.

Есть, грубо говоря, .env, .env.staging, .env.local

Локально используется .env.local, он в гитигноре, и у каждого разработчика свой. Если работаешь один, или у всех локально одна конфигурация - .env.local не нужен.

При CI/CD .env.staging заменяет .env. При этом используются / добавляются в конфиг (для бэка) нужные секреты. У CI/CD свой конфиг.

Есть два варианта распределения параметров по конфиг файлам.
- Первый - .env хранит основные параметры, а .env.local и .env.staging только переопределяют нужные (merge).
- Второй - в каждом из них хранится полная конфигурация.

У обоих свои плюсы и минусы. Первый - удобней, можно легко добавлять общие конфигурационные параметры и не просить всех разработчиков обновить свой .env.local. Второй - наглядней, при CI/CD можно просто заменять файлы.

Данная система позволяет, например, легко переключиться и поработать на локальном фронтенде со staging бэкендом вместо локального. Можно просто написать скрипт для этого в package.json.

В такой системе никто случайно не запушит свой конфиг в репозиторий, никто не имеет доступа к секретам и чужим параметрам.

env / dotenv - довольно старая штука и недостаточно гибка для реализации удобных конфигов, поэтому я храню конфиги в json / js файлах. Их легко объединять в коде и, вообще, закладывать нужную тебе логику. Ну и древовидная система конфигурационных параметров намного читабельней и удобней в работе в коде.

Доступ к конфигу в приложении:
import { config } from "@/app-config"

#tip #cicd

BY Vue-FAQ


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/vuefaq/685

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Traders also expressed uncertainty about the situation with China Evergrande, as the indebted property company has not provided clarification about a key interest payment.In economic news, the Commerce Department reported an unexpected increase in U.S. new home sales in August.Crude oil prices climbed Friday and front-month WTI oil futures contracts saw gains for a fifth straight week amid tighter supplies. West Texas Intermediate Crude oil futures for November rose $0.68 or 0.9 percent at 73.98 a barrel. WTI Crude futures gained 2.8 percent for the week.

How Does Bitcoin Work?

Bitcoin is built on a distributed digital record called a blockchain. As the name implies, blockchain is a linked body of data, made up of units called blocks that contain information about each and every transaction, including date and time, total value, buyer and seller, and a unique identifying code for each exchange. Entries are strung together in chronological order, creating a digital chain of blocks. “Once a block is added to the blockchain, it becomes accessible to anyone who wishes to view it, acting as a public ledger of cryptocurrency transactions,” says Stacey Harris, consultant for Pelicoin, a network of cryptocurrency ATMs. Blockchain is decentralized, which means it’s not controlled by any one organization. “It’s like a Google Doc that anyone can work on,” says Buchi Okoro, CEO and co-founder of African cryptocurrency exchange Quidax. “Nobody owns it, but anyone who has a link can contribute to it. And as different people update it, your copy also gets updated.”

telegram from tr


Telegram Vue-FAQ
FROM USA