Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
322 views
in Technique[技术] by (71.8m points)

jenkins - Copy a docker ARG into an Angularjs config file

I have a simple AngularJS application that is built through a Jenkins pipeline and a Docker file. When running the Jenkins job, the environment is set. Then it builds to one of two environments: dev or integration. What I need is a way to get that variable into the angular app.

The docker file uses the environment to build different config settings like:

    ARG env
    COPY build_config/${env} /opt/some/path...

I need to get that env into one of the controllers. Is there a way to copy env into a controller. I attempted something like the following:

    COPY ${env} path/to/angular/file/controller

I have searched and tried different methods but cannot find a solution to work for the Jenkins with Docker pipeline.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You can just use RUN to write a string to a file:

RUN echo "$env" > path/to/angular/file/controller

If you want to append to the file instead of overwritting it, use

RUN echo "$env" >> path/to/angular/file/controller

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...