GVKun编程网logo

如何在 Jenkins 管道中设置和获取 LINUX ENV 变量?(jenkins读取配置文件)

3

如果您想了解如何在Jenkins管道中设置和获取LINUXENV变量?的相关知识,那么本文是一篇不可错过的文章,我们将对jenkins读取配置文件进行全面详尽的解释,并且为您提供关于.env文件未在N

如果您想了解如何在 Jenkins 管道中设置和获取 LINUX ENV 变量?的相关知识,那么本文是一篇不可错过的文章,我们将对jenkins读取配置文件进行全面详尽的解释,并且为您提供关于.env 文件未在 NextJS 中提供 process.env.XYZ 新添加的 env 变量、conda env list 显示 env 路径而不是名称、docker jenkins gitlab 自动部署NodeJs项目 及 env node not found 解决、docker jenkins 前端 node 项目 自动化部署异常 env: ‘node’: No such file or directory的有价值的信息。

本文目录一览:

如何在 Jenkins 管道中设置和获取 LINUX ENV 变量?(jenkins读取配置文件)

如何在 Jenkins 管道中设置和获取 LINUX ENV 变量?(jenkins读取配置文件)

如何解决如何在 Jenkins 管道中设置和获取 LINUX ENV 变量?

这可能是一个愚蠢的问题,但我无法解决它。我想设置和获取 LINUX(不是 Jenkins)ENV 变量。我知道如何处理 Jenkins 环境变量(例如 env.JENKINS_HOME),但 Linux ENV 变量似乎已关闭。

当使用 sh "printenv" 时,这会按预期打印所有 Linux ENV 变量,但通过 export SOME_VAR=123 设置它们似乎不起作用。 printenv 没有显示。使用 System.getenv("SOME_VAR") 也不起作用。

例如:

stage(''echo stuff'') {
    steps {
        script {
            sh "printenv"
            sh "export SOME_VAR=123"
            sh ''echo $SOME_VAR''
        }
    }
}

产生这个:

[Pipeline] stage
[Pipeline] { (echo stuff)
[Pipeline] script
[Pipeline] {
[Pipeline] sh
+ export SOME_VAR=123
+ SOME_VAR=123
[Pipeline] sh
+ echo

[Pipeline] }

我无法在这个大概很常见的问题上找到帮助,因为所有可用的东西都涉及 Jenkins 环境变量。

解决方法

我认为问题是,每个 sh 块都是它自己的 shell 会话。因此,如果您使用 sh "export SOME_VAR=123" 导出变量,它不会在下一行中设置。你想像这样使用 shell 多行:

stage(''echo stuff'') {
  steps {
    script {
        sh ''''''
          export SOME_VAR=123
          echo $SOME_VAR
        ''''''
    }
  }
}

这将如您所愿。

可以找到更多信息Jenkins.io running-multiple-steps

.env 文件未在 NextJS 中提供 process.env.XYZ 新添加的 env 变量

.env 文件未在 NextJS 中提供 process.env.XYZ 新添加的 env 变量

如何解决.env 文件未在 NextJS 中提供 process.env.XYZ 新添加的 env 变量

在我过去的项目中 - 我添加了一个新的环境变量,如 XYZ。当我尝试获取 process.env.XYZ 时,它给出了未定义的。 但是当我访问时,其他环境变量正在工作。

.env

ABC = "https ://abc.com/api" // old,working
XYZ= "https ://xyz.com/api"  // new,not working

我的 next.config.js 是 -

const withPlugins = require(''next-compose-plugins'');
const nextEnv = require(''next-env'');
const dotenvLoad = require(''dotenv-load'');
const sass = require(''@zeit/next-sass'');
const progressBar = require(''next-progressbar'');
const graphql = require(''next-plugin-graphql'');
const images = require(''next-images'');

dotenvLoad();
const env = nextEnv();
const distDir = ''.next'';

const nextConfig = { distDir };

module.exports = withPlugins(
  [[sass],[env],[progressBar],[graphql],[images]],nextConfig
);

我能做什么?

conda env list 显示 env 路径而不是名称

conda env list 显示 env 路径而不是名称

如何解决conda env list 显示 env 路径而不是名称

我在 mac 上工作,我将终端更改为 iterm2 并安装了“oh my zsh” 在那之后,我在使用 conda 时遇到了一些问题,所以我遵循了一个指南,该指南告诉我将 bash_profile 上的 anaconda 代码复制到“oh my zsh”配置文件中,并且我也复制了路径行 现在,每当我尝试按名称访问我的 env 时,我都不能使用完整路径 env 列表现在的样子:

enter image description here

我查看了我的路径,这些路径是其中的一部分,那么可能是什么问题?

enter image description here

docker jenkins gitlab 自动部署NodeJs项目 及 env node not found 解决

docker jenkins gitlab 自动部署NodeJs项目 及 env node not found 解决

一、Jenkins配置

1.安装NodeJS Plugin
在插件管理界面 搜索Node 找到NodeJS,安装、重启,成功后如下图:

clipboard.png

2.配置NodeJS Server
在全局工具配置中,如下配置:

clipboard.png

二、项目配置

选择"构建一个自由软件风格的项目" ,配置如下:
1.配置git项

2.Build Environment

clipboard.png

3.Build配置项

clipboard.png

其中echo $PATH 、which node、 node -v、npm -v 可选,只是打印一下信息

4.Build后的操作

clipboard.png

执行的命令,根据自己情况自由发挥

三、遇到问题

“env node not found” 遇到这个问题,jenkins一直无法打包。
找到解决问题的过程很曲折,这里直接贴结果:
https://stackoverflow.com/que...

在第二个回到中:

$ docker exec -u 0 -it jenkins-1 bash

bash-4.3# apk add --no-cache nodejs npm
bash-4.3# node --version
v6.9.5
bash-4.3# npm --version
5.6.0

其实就是 进入docker的命令行,然后执行apk add --no-cache nodejs ,自己手动安装nodejs , 问题就解决了。

docker jenkins 前端 node 项目 自动化部署异常 env: ‘node’: No such file or directory

docker jenkins 前端 node 项目 自动化部署异常 env: ‘node’: No such file or directory

https://www.cnblogs.com/XM-CHC/archive/2020/02/24/12357165.html


 

 

 

出现问题是 docker jenkins 里面没有自动安装 node 导致找不到这个 Node 命令

解决方案:手动安装 nodejs

# 进入jenkins对应容器中
# docker exec -it [对应容器id] bash
 
# 安装nodejs
# apk add --no-cache nodejs
 
# 检查node
# node -v

 

 

今天关于如何在 Jenkins 管道中设置和获取 LINUX ENV 变量?jenkins读取配置文件的讲解已经结束,谢谢您的阅读,如果想了解更多关于.env 文件未在 NextJS 中提供 process.env.XYZ 新添加的 env 变量、conda env list 显示 env 路径而不是名称、docker jenkins gitlab 自动部署NodeJs项目 及 env node not found 解决、docker jenkins 前端 node 项目 自动化部署异常 env: ‘node’: No such file or directory的相关知识,请在本站搜索。

本文标签: