Skip to content

Jenkins and Docker Support - #71

Open
prestoncraw wants to merge 15 commits into
developmentfrom
JenkinsDocker_Support
Open

Jenkins and Docker Support#71
prestoncraw wants to merge 15 commits into
developmentfrom
JenkinsDocker_Support

Conversation

@prestoncraw

@prestoncraw prestoncraw commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add an openHistorian-aligned Jenkins pipeline for developmentmaster prereleases and master releases.
  • Build the production UI, publish openSEE as a self-contained Windows x64 application, and package the publish output as a deployable ZIP.
  • Deliver prerelease and release archives to the appropriate \\webhostfiles\Delivery\openSEE directories, comment prerelease availability on the development PR, and tag qualifying releases.
  • Add the openHistorian PowerShell helpers for version advancement, Gemstone dependency updates, dependency PR creation, and PR comments, adapted only for openSEE.
  • Use scripts/OpenSEE.version as the single three-part version source and remove the legacy AssemblyInfo.cs version attributes.
  • Add Windows and Linux publish profiles plus Docker image support for openSEE.
  • Add an optional DisableAuthentication setting and middleware.
  • Add the Jenkins, Docker, and automation files to the solution and remove obsolete VS2017/build-target files.
  • Correct the production bundle reference casing to OpenSee.js.

Jenkins and Docker publishing, and delivery-share operations were not executed during local validation.

@prestoncraw
prestoncraw requested a review from clackner-gpa July 30, 2026 18:37
Base automatically changed from development to master August 3, 2026 18:30
Comment thread scripts/Versioning.ps1
Comment thread src/OpenSEE/OpenSEE.csproj Outdated
<TargetFramework>net9.0</TargetFramework>
<AssemblyTitle>OpenSee</AssemblyTitle>
<Product>OpenSee</Product>
<Copyright>Copyright © 2020-2023</Copyright>

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<Copyright>Copyright © 2020-2023</Copyright>
<Copyright>Copyright © 2020-2026</Copyright>

Comment thread src/OpenSEE/OpenSEE.csproj Outdated
</None>
<None Include="tsconfig.json" />
<None Include="wwwroot\Scripts\OpenSee.js" />
<Content Update="wwwroot\Scripts\OpenSee.*.js">

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have some issues with this approach as it will include .js files from previous versions and potentially break.
Could we not just reference .\opensee.js?_=${version} to avoid the caching issue?

Comment thread src/OpenSEE-dev.slnx
<File Path="nuget.config" />
</Folder>
<Project Path="OpenSEE/OpenSEE.csproj" />
<Folder Name="/Scripts/">

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems confusing. Is this to avoid renaming the folder Scripts to scripts?

Comment thread Jenkinsfile
}
}

stage('Publish Application') {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is very different from the other apps.
Is there a reason we can't just use a Publish Profile?

@prestoncraw
prestoncraw changed the base branch from master to development August 12, 2026 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants