Skip to content

Commit

Permalink
Now expanding environment variables for all other Assembly info stuff.
Browse files Browse the repository at this point in the history
  • Loading branch information
schmoli committed Jun 18, 2015
1 parent 500f513 commit 7b61da6
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 19 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -129,14 +129,27 @@ public boolean perform(AbstractBuild build, Launcher launcher, BuildListener lis
listener.getLogger().println("Please provide a valid version pattern.");
return false;
}

// Expand env variables
String assemblyTitle = envVars.expand(this.assemblyTitle);
String assemblyDescription = envVars.expand(this.assemblyDescription);
String assemblyCompany = envVars.expand(this.assemblyCompany);
String assemblyProduct = envVars.expand(this.assemblyProduct);
String assemblyCopyright = envVars.expand(this.assemblyCopyright);
String assemblyTrademark = envVars.expand(this.assemblyTrademark);
String assemblyCulture = envVars.expand(this.assemblyCulture);


// Log new expanded values
listener.getLogger().println(String.format("Changing File(s): %s", assemblyGlob));
listener.getLogger().println(String.format("Assembly Title : %s", this.assemblyTitle));
listener.getLogger().println(String.format("Assembly Description : %s", this.assemblyDescription));
listener.getLogger().println(String.format("Assembly Company : %s", this.assemblyCompany));
listener.getLogger().println(String.format("Assembly Product : %s", this.assemblyProduct));
listener.getLogger().println(String.format("Assembly Copyright : %s", this.assemblyCopyright));
listener.getLogger().println(String.format("Assembly Trademark : %s", this.assemblyTrademark));
listener.getLogger().println(String.format("Assembly Culture : %s", this.assemblyCulture));
listener.getLogger().println(String.format("Assembly Version : %s", version));
listener.getLogger().println(String.format("Assembly Title : %s", assemblyTitle));
listener.getLogger().println(String.format("Assembly Description : %s", assemblyDescription));
listener.getLogger().println(String.format("Assembly Company : %s", assemblyCompany));
listener.getLogger().println(String.format("Assembly Product : %s", assemblyProduct));
listener.getLogger().println(String.format("Assembly Copyright : %s", assemblyCopyright));
listener.getLogger().println(String.format("Assembly Trademark : %s", assemblyTrademark));
listener.getLogger().println(String.format("Assembly Culture : %s", assemblyCulture));

for (FilePath f : build.getWorkspace().list(assemblyGlob))
{
Expand All @@ -145,13 +158,13 @@ public boolean perform(AbstractBuild build, Launcher launcher, BuildListener lis

// Set new things, empty string being ok for them.
// TODO: Would we need a regex for these or just blast as we are doing now?
new ChangeTools(f, "AssemblyTitle[(]\".*\"[)]", "AssemblyTitle(\"%s\")").Replace(this.assemblyTitle, listener);
new ChangeTools(f, "AssemblyDescription[(]\".*\"[)]", "AssemblyDescription(\"%s\")").Replace(this.assemblyDescription, listener);
new ChangeTools(f, "AssemblyCompany[(]\".*\"[)]", "AssemblyCompany(\"%s\")").Replace(this.assemblyCompany, listener);
new ChangeTools(f, "AssemblyProduct[(]\".*\"[)]", "AssemblyProduct(\"%s\")").Replace(this.assemblyProduct, listener);
new ChangeTools(f, "AssemblyCopyright[(]\".*\"[)]", "AssemblyCopyright(\"%s\")").Replace(this.assemblyCopyright, listener);
new ChangeTools(f, "AssemblyTrademark[(]\".*\"[)]", "AssemblyTrademark(\"%s\")").Replace(this.assemblyTrademark, listener);
new ChangeTools(f, "AssemblyCulture[(]\".*\"[)]", "AssemblyCulture(\"%s\")").Replace(this.assemblyCulture, listener);
new ChangeTools(f, "AssemblyTitle[(]\".*\"[)]", "AssemblyTitle(\"%s\")").Replace(assemblyTitle, listener);
new ChangeTools(f, "AssemblyDescription[(]\".*\"[)]", "AssemblyDescription(\"%s\")").Replace(assemblyDescription, listener);
new ChangeTools(f, "AssemblyCompany[(]\".*\"[)]", "AssemblyCompany(\"%s\")").Replace(assemblyCompany, listener);
new ChangeTools(f, "AssemblyProduct[(]\".*\"[)]", "AssemblyProduct(\"%s\")").Replace(assemblyProduct, listener);
new ChangeTools(f, "AssemblyCopyright[(]\".*\"[)]", "AssemblyCopyright(\"%s\")").Replace(assemblyCopyright, listener);
new ChangeTools(f, "AssemblyTrademark[(]\".*\"[)]", "AssemblyTrademark(\"%s\")").Replace(assemblyTrademark, listener);
new ChangeTools(f, "AssemblyCulture[(]\".*\"[)]", "AssemblyCulture(\"%s\")").Replace(assemblyCulture, listener);
}
} catch (Exception ex) {
StringWriter sw = new StringWriter();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,17 @@ public class ChangeTools {
}

public void Replace(String replacement, BuildListener listener) throws IOException, InterruptedException {
String content = file.readToString();
listener.getLogger().println(String.format("Updating file : %s, Replacement : %s", file.getRemote(), replacement));
content = content.replaceAll(regexPattern, String.format(replacementPattern, replacement));
//listener.getLogger().println(String.format("Updating file : %s", file.getRemote()));
file.write(content, null);
if (replacement != null && !replacement.isEmpty())
{
String content = file.readToString();
listener.getLogger().println(String.format("Updating file : %s, Replacement : %s", file.getRemote(), replacement));
content = content.replaceAll(regexPattern, String.format(replacementPattern, replacement));
//listener.getLogger().println(String.format("Updating file : %s", file.getRemote()));
file.write(content, null);
}
else
{
listener.getLogger().println(String.format("Skipping replacement because value is empty."));
}
}
}

0 comments on commit 7b61da6

Please sign in to comment.