Hi, Thank you for responding. I was initially using scripts only, but due to some reasons I need to mention git URL in materials.
I also tried using $(pwd) as suggested by you, but it gives me output as: [go] Task: echo $(pwd)took: 0.2s $(pwd) I understand using scripts is better way to deal with variables when trying to export them, but I was trying to find if any other way exists. Thank you. On Wednesday, April 8, 2020 at 5:31:16 PM UTC+5:30, Ashwanth Kumar wrote: > > One thing I've learned working with GoCD for a while is, you don't want to > use absolute paths anywhere. Especially when agents are run across > different hosts or as ephemeral containers somewhere. > > To get the current pipeline path one can use something like $(pwd) or > dirname etc. and use relative paths from that location. > > Another point is Tasks within a job don't share any session on a shell of > any kind among them. So if you export a variable and try to use it in the > next task or later within the job it wouldn't work. They will have to be > specified at the environment, pipeline, stage or at a job level. The > specificity goes in the reverse order. Also as a general convention I've > achieved best results when these scripts are NOT in GoCD tasks but instead > in a separate shell script file and added as part of the source code or via > a separate ops repo material(s). > > HTH. > > On Wed, 8 Apr, 2020, 17:13 Shivani Shinde, <[email protected] > <javascript:>> wrote: > >> Hi everyone, >> I am having the hardest time dealing with variables for a task. >> >> What I want to achieve: >> >> 1. I want to pass a variable(pipeline's path) to the task which generates >> builds. This is build command: >> make build path="/pipeline_path" >> >> I tried setting variable *pipelinepath*, in the environment variable >> path, and using it in the task as specified in the document like: >> make build path=$pipelinepath >> >> or >> >> make build path="$pipelinepath" >> >> But it does not work! >> >> 2. I want to export certain variable assigning it a path of the directory >> I git cloned. I have mentioned the git URL in Materials of pipeline and >> mentioned destination directory as 'myProject'. >> I want to do the following: >> export myVar="/path/to/myProject" >> >> >> I want to achieve this at task level. >> >> How can I work on this? Any help will be appreciated! >> >> Thank you. >> >> >> CONFIDENTIALITY. This email and any attachments are confidential to Alef >> Edge Inc., and may also be privileged, except where the email states it >> can be disclosed. If this email is received in error, please do not >> disclose the contents to anyone, notify the sender by return email, and >> delete this email (and any attachments) from your system. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "go-cd" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/go-cd/083817de-2527-4e3e-a53f-36d4a1b407f4%40googlegroups.com >> >> <https://groups.google.com/d/msgid/go-cd/083817de-2527-4e3e-a53f-36d4a1b407f4%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- CONFIDENTIALITY. This email and any attachments are confidential to Alef Edge Inc., and may also be privileged, except where the email states it can be disclosed. If this email is received in error, please do not disclose the contents to anyone, notify the sender by return email, and delete this email (and any attachments) from your system. -- You received this message because you are subscribed to the Google Groups "go-cd" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/go-cd/ba9282ab-cf09-4be5-808a-4711cefe6d90%40googlegroups.com.
