jenkinsci/git-changelog-plugin

output file does not expand environment variables and assumes root

Closed this issue · 6 comments

O5ten commented

Same configuration as in #25.

When trying to export publish JIRA Filter results to a file i add output.log but the plugin tries to write it to /outlog.log which naturally it does not have access to. It should use the current workspace directory.

Which brings me to the other problem, when adding the $WORKSPACE environment variable to the path then it is not expanded. Rather, we get /$WORKSPACE/output.log.

The plugin version is 2.7

O5ten commented

This is what it writes for me on our linux-worker.

Saving processed git changelog to file /output.log.
ERROR: Step ‘Publish JIRA Filter’ aborted due to exception: 
java.io.FileNotFoundException: \output.log (Permission denied)
	at java.io.FileOutputStream.open0(Native Method)
	at java.io.FileOutputStream.open(FileOutputStream.java:270)
	at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
	at java.io.FileOutputStream.<init>(FileOutputStream.java:162)
	at java.io.PrintStream.<init>(PrintStream.java:279)
	at 
Ri5ux commented

Any updates on this? A fix would be appreciated. Currently need this fixed for my projects as well.

Can you not do the same thing with the Git Changelog action? Or with a pipeline as described in the readme?

My intention is to have the Publish Git Changelog and Publish JIRA Filter removed. I consider it duplicated functionality.

Ri5ux commented

Does the Create file sub action of Git Changelog actually filter through environment variables? Or is it just as broken as the Publish Git Changelog action? That will let me determine if the answer to your question is Yes or No.

It should. If it does not work, please file a bug!

As of 3.0 this action is not available anymore. See #47 and discussion in #41