Skip to content
samatstarion edited this page Aug 28, 2024 · 18 revisions

Development Environment

The CDP4-COMET WebServices are developed using Visual Studio 2022. The COMET Webservices contain multiple projects that target netstandard2.0 or net8.0.

The following tools are used by the Starion development team:

  • Visual Studio 2022 Professional (Community Edtion will work as well)
  • Resharper Ultimate
  • Git Extensions
  • Docker

Release

LAST STEP IS CREATING AND PUSHING THE DOCKER CONTAINER. DON'T FORGET THAT!!!

Link to dockerize Wiki

In order to create a new release of the COMET Web Services the following steps need to be taken.

  1. Make sure the version numbers are incremented when components have changed; the project makes use of SEMVER. The version of the CometServer project shall be equal or higher than the highest version of any of it's project dependencies.
  2. Verify correctness of fixes using the test build configuration and the Integration Test Suite
  3. Build the solution in release mode
  4. Remove any unnecessary localization dlls
  5. Archive the contents of the CDP4-WebServices-Community-Edition\CDP4WebServer\bin\Release\net472 folder using ZIP and name the zip file: COMETWebServices-MAJOR.MINOR.PATCH.zip, according to SEMVER and the versioning scheme explained above.
  6. Publish the CDP4Webserver.IIS project in release mode. Make sure that:
    1. The Configuration is 'Release'
    2. All existing files will be deleted during publishing
    3. The publication is precompiled.
  7. Remove any unnecessary localization dlls from the CDP4-WebServices-Community-Edition\CDP4WebServer.IIS\bin\app.publish\bin folder.
  8. Archive the contents of the CDP4-WebServices-Community-Edition\CDP4WebServer.IIS\bin\app.publish folder using ZIP and name the zip file: COMETWebServices-IIS-MAJOR.MINOR.PATCH.zip, according to SEMVER and the versioning scheme explained above.
  9. Compute the SHA256 hash of the zip archives
  10. Create a tag (MAJOR.MINOR.PATCH) on the Git repository and push this to GitHub. The tag shall be the version number according to SEMVER and the versioning scheme explained above.
  11. Via the GitHub web-ui draft a new release referencing the tag and set the release title to Version MAJOR.MINOR.PATCH. The description of the release shall mention the updates referencing the GitHub issue numbers.
  12. Upload the ZIP archives to the drafted release, add the previously computed SHA256 hashes to the release notes
  13. Save the new release
  14. Update any installation documentation on the Wiki to reflect version changes and potential updated installation instructions

LAST STEP IS CREATING AND PUSHING THE DOCKER CONTAINER. DON'T FORGET THAT!!! Link to dockerize Wiki