如何从 electron-builder yaml 配置文件中的 .env 文件中读取?

     2023-03-22     196

关键词:

【中文标题】如何从 electron-builder yaml 配置文件中的 .env 文件中读取?【英文标题】:How to read from .env file in electron-builder yaml config file? 【发布时间】:2020-11-10 01:01:45 【问题描述】:

我是电子新手。我有一个用电子包裹的角度应用程序,我想使用electron-builder 构建包/安装程序。我正在使用electron-builder-config.yaml 文件来构建安装程序。

我想知道如何将.env 环境文件中的值读取到electron-builder-config.yaml 文件中?

我想设置命令electron-builder -w --publish always -c ./builder-config.yaml生成的包的版本。

我确实尝试使用buildVersion 属性,但问题是有一个installer.nsh 文件需要作为nsis 安装程序的一部分运行以设置路径,并且该文件使用$version

electron-builder-config.yaml 中关于环境变量使用的documentation 很少

这是我的electron-builder-config.yaml

directories:
  output: ./dist/electron
  buildResources: ./electron/build
  app: ''
electronVersion: X.Y.Z
appId:  com.sample.app
copyright: "Copyright © 2020 $author"
productName: TestApp
forceCodeSigning: true
artifactName: "$productName-$os-$version.$ext"
files:
  - "**/dist/electron/*"
  - "**/electron/*"
asar: true
compression: maximum
mac:
  category: public.app-category.reference
  icon: "./icon-file.icns"
  publish: [
      "provider": "generic",
      "url": "http://localhost:8080"
  ]
dmg:
  background: "./build/sample.jpg"
  icon: "./build/nw.icns"
  iconSize: 96
  contents:
    - x: 650
      y: 230
      type: link
      path: /Applications
    - x: 350
      y: 230
      type: file
win:
  cscLink: "./somelink.pfx"
  cscKeyPassword: "XXXXXX"
  target: [nsis]
  icon: "./appinfo.ico"
  publish: [
      "provider": "generic",
      "url": "http://localhost:8080"
  ]
msi:
  shortcutName: "TestApp - $version"
  createDesktopShortcut: true
  createStartMenuShortcut: true
nsis:
  include: "./installer.nsh"
  installerIcon: "./appinfo.ico"
  uninstallerIcon: "./appinfo.ico"
  packElevateHelper: true
  allowToChangeInstallationDirectory: true
  perMachine: true
  oneClick: false
  createDesktopShortcut: true
  createStartMenuShortcut: true
  shortcutName: "TestApp - $version"
  guid: "someguid"
npmRebuild: true
nodeGypRebuild: false

另外,我不确定宏 $ext。这个electron-builder-config.yaml 文件从哪里获取这个值?即使在documentation for file-macros,版本也没有明确的定义。有什么建议吗?

【问题讨论】:

【参考方案1】:

我明白了。如果其他人正在寻找这个问题的答案,这就是我的工作方式。

第 1 步: 在您的 package.json 所在的根级别创建一个名为 electron-builder.env 的文件。请确保将文件名保留为 electron-builder.env

第 2 步:electron-builder.env 文件中定义您想要的变量,例如 ELECTRON_BUILD_VERSION=99.99

第 3 步:在您的 builder-config.yaml 文件中,使用语法 env.ELECTRON_BUILD_VERSION

访问环境变量

给你。玩得开心。快乐编码?

【讨论】:

如何从 .msi 安装程序到 electron-builder (nsis)

】如何从.msi安装程序到electron-builder(nsis)【英文标题】:Howtogofrom.msiinstallertoelectron-builder(nsis)【发布时间】:2019-07-2608:31:46【问题描述】:我目前有一个作为.msi安装程序分发的应用程序(使用Wix构建)。我刚刚将此应用程序移植... 查看详情

如何从同一 YAML 文件的其他地方引用 YAML“设置”?

】如何从同一YAML文件的其他地方引用YAML“设置”?【英文标题】:howtoreferenceaYAML"setting"fromelsewhereinthesameYAMLfile?【发布时间】:2011-01-0500:54:09【问题描述】:我有以下YAML:paths:patha:/path/to/root/apathb:/path/to/root/bpathc:/path/to/... 查看详情

如何从命令行验证我的 YAML 文件?

】如何从命令行验证我的YAML文件?【英文标题】:HowdoIvalidatemyYAMLfilefromcommandline?【发布时间】:2011-04-2716:11:40【问题描述】:我在提取YAML配置文件时遇到问题:致命错误:解析块映射时;预期,但找到了blockentry虽然有很多在... 查看详情

如何从父 yaml 节点获取完整的 yaml 节点子对象?

】如何从父yaml节点获取完整的yaml节点子对象?【英文标题】:Howtogetcompleteyamlnodechildobjectfromaparentyamlnode?【发布时间】:2014-03-1915:15:27【问题描述】:我试图在解析yaml文件时获取完整的节点对象。我的yaml数据类似于下面的数据-... 查看详情

如何在 Python 中使用 ruamel.yaml 从 YAML 文件中获取注释?

】如何在Python中使用ruamel.yaml从YAML文件中获取注释?【英文标题】:HowcanIgetcommentsfromaYAMLfileusingruamel.yamlinPython?【发布时间】:2016-11-1004:29:54【问题描述】:我想从使用ruamel.yaml加载的YAML文件中获取注释字符串。projectdocumentation... 查看详情

如何从纯 python 创建 yaml 文件?

】如何从纯python创建yaml文件?【英文标题】:HowcanIcreateayamlfilefrompurepython?【发布时间】:2012-02-2611:05:10【问题描述】:来自UsingYAMLwithPython的示例原始YAML文件包含此内容#treeformattreeroot:branch1:name:Node1branch1-1:name:Node1-1branch2:name:Node... 查看详情

如何从 python 中的嵌套 YAML 文件中读取数据?

】如何从python中的嵌套YAML文件中读取数据?【英文标题】:HowtoreaddatafromnestedYAMLfileinpython?【发布时间】:2020-07-0513:56:24【问题描述】:我有例如swagger.yaml文件,我想从中读取一些变量。例如那个文件:https://editor.swagger.io/下面... 查看详情

如何从 Gatsby.js 中的 YAML 数组中获取图像

】如何从Gatsby.js中的YAML数组中获取图像【英文标题】:HowtosourceimagesfromaYAMLarrayinGatsby.js【发布时间】:2020-04-0322:54:34【问题描述】:我正在使用Gatsby.js开发博客每个帖子都是一个YAML文件,其中有一个画廊的数组,如下所示:gall... 查看详情

如何从现有的 Spring REST API 生成 OpenAPI 3.0 YAML 文件?

】如何从现有的SpringRESTAPI生成OpenAPI3.0YAML文件?【英文标题】:HowtogenerateOpenAPI3.0YAMLfilefromexistingSpringRESTAPI?【发布时间】:2019-07-2202:21:09【问题描述】:我想要为其生成OpenAPI3.0YAML文件而不是Swagger2.0JSON/YAML的现有SpringRESTAPI?从... 查看详情

如何从 OpenAPI 3.0 yaml 文件生成 JSON 示例?

】如何从OpenAPI3.0yaml文件生成JSON示例?【英文标题】:HowtogenerateJSONexamplesfromOpenAPI3.0yamlfile?【发布时间】:2019-09-2211:41:13【问题描述】:我有我的openapi:3.0.0YAML文件,我正在寻找一种从模式生成测试数据响应(JSON对象)的方法。... 查看详情

electron-builder,如何设置节点环境变量

】electron-builder,如何设置节点环境变量【英文标题】:electron-builder,howtosetnodeenvironmentalvariables【发布时间】:2019-06-1009:05:42【问题描述】:windows系统的node.js可以在服务器启动前设置环境,如下:setNODE_ENV=productionNODE_ENV参数可以... 查看详情

如何从使用 python 解析的 yaml 文件中调用和迭代值?

】如何从使用python解析的yaml文件中调用和迭代值?【英文标题】:Howtocallanditeratevaluesfromayamlfileparsedusingpython?【发布时间】:2018-10-0717:08:52【问题描述】:我有一个yaml文件如下:server1:host:os1ip:##.###.#.##path:/var/log/syslogfile:syslogiden... 查看详情

如何从 azure devops 上的图表 yaml 文件中获取 appVersion?

】如何从azuredevops上的图表yaml文件中获取appVersion?【英文标题】:HowtogetappVersionfromchartyamlfileonazuredevops?【发布时间】:2021-12-3008:02:33【问题描述】:我想从chart.yaml文件中获取appVersion并与从project.csproj文件中获取的版本进行比较... 查看详情

使用 electron-builder 从电子应用程序构建独立的 .exe

】使用electron-builder从电子应用程序构建独立的.exe【英文标题】:Buildstandalone.exefromelectronappusingelectron-builder【发布时间】:2020-01-2209:36:13【问题描述】:我正在使用electronv6.0.9和electron-builderv21.2.0。这是我的package.json用于生产构... 查看详情

如何从现有数据库数据生成 Symfony 固定装置 YAML?

】如何从现有数据库数据生成Symfony固定装置YAML?【英文标题】:HowdoIgenerateSymfonyfixturesYMLfromexisingdatabasedata?【发布时间】:2010-12-2012:29:47【问题描述】:我想知道是否有人知道如何从数据库中已经存在的数据生成fixture.yml?既然... 查看详情

如何从 Play 框架中的 YAML 固定装置加载(静态嵌套)枚举值?

】如何从Play框架中的YAML固定装置加载(静态嵌套)枚举值?【英文标题】:HowdoIloada(staticnested)enumvaluefromYAMLfixturesinthePlayFramework?【发布时间】:2011-05-2317:21:04【问题描述】:publicclassRequestextendsModelpublicstaticenumCategoryFirst,Second,Thi... 查看详情

如何增加由 electron-builder 构建的应用程序的最大内存限制?

】如何增加由electron-builder构建的应用程序的最大内存限制?【英文标题】:Howtoincreasethemaxmemorylimitfortheappbuiltbyelectron-builder?【发布时间】:2017-10-1113:12:38【问题描述】:版本:“electron”:“1.6.2”,“electron-builder”:“^16.8.2... 查看详情

如何从 Windows 上下文菜单启动 Electron-app

...一个Windows桌面应用程序。它是一个Electron应用程序,使用electron-builder来创建应用程序包。electron-builder的NSIS配置用于创建应用程序的安装程序。我 查看详情