Issue 686: Implement a better system for assigning a version which is not web installed

issues
Status:open
Assigned To:matt.chambers42@gmail.com
Type:Todo
Area:Skyline
Priority:2
Milestone:19.2
Opened:2019-10-02 by Brendan MacLean
Changed:2019-10-02 by Brendan MacLean
Resolved:
Resolution:
Closed:
2019-10-02 Brendan MacLean
Title»Implement a better system for assigning a version which is not web installed
Assigned ToGuest»matt.chambers42@gmail.com
Notify»Nick Shulman
Type»Todo
Area»Skyline
Priority»2
Milestone»19.2
Currently we have multiple places we need to set a Skyline version in order to ensure the software knows what its version is:
1. Set during installer build in the .csproj file
2. Set in Skyline/app.config - for running a non-web installed Skyline.exe
3. Set in SkylineCmd/App.config - for running SkylineCmd.exe

I am not even sure we ever recognized the need for #3 until just now when I implemented a --version argument for SkylineCmd and it just reported "Skyline-daily (64-bit)" when I ran SkylineCmd.exe, but a full version stamp when I ran Skyline.exe with the version in its app.config. I was able to fix this issue by setting the same version in SkylineCmd/App.config, but this is obviously not ideal to need to set the version manually in 3 separate places.

Matt, you have agreed to look into automating this for the Docker container, and the SkylineCmd.exe issue will certainly get you there.

Once I merge my changes to master, you should at least have the --version argument to check your work more easily than other options like looking inside a saved .sky file or an audit log.

More and more we rely on Skyline knowing its version (especially the audit log). We can't continue releasing Skyline versions which may not know their version number depending on how they get run (e.g. and especially SkylineCmd)