Deployment
Deploying CORE.Drop Backend
Once changes in the backend area are ready to be deployed. Merge your current work into the "Main" branch of the CORE.Drop.Backend Repo. We have AWS CodeDeploy workflow that will automatically build/deploy once new commits are pushed to the "Main" and "Staging" Branch.
To monitor the build process, login to AWS through https://corestudio.awsapps.com/start#/ and log into the "external-sandbox" account. Access "CodeDeploy" from the console. You will find "" in there.
Deploying CORE.Drop Frontend
Similar step to deploying the backend. Once changes in the backend area are ready to be deployed. Merge your current work into the "Main" branch of the CORE.Drop.Frontend Repo. We have AWS CodeDeploy workflow that will automatically build/deploy once new commits are pushed to the "Main" and "Staging" Branch...
Build and release the CORE.Drop Desktop application
Visual Studio and more
Check that the
DropSettings.json
cotnains the right configuration, i.e. it should point to the production serverUpdate the version number of the assemblies included in the release using the
VersionBumper
, which is found under/Tools
. Simply change theUpdateVersions("0.6.0.*")
argument, and run the program byDebug > Start New Instance
. Note that this will also update the version and product code for the Drop installer (CORE.Drop.Installer msi).Merge your dev / feature branch into
main
Build the ZIP (not necessary - build the installer instead!)
Build the
CORE.Drop.Application
using theRelease
configuration build.Wipe out unnecessary files from the build folder, e.g.
.pbd
filesTest the build on your local machine!
If it's working properly, zip it and rename the file to
CORE.Drop-0.X.X
Upload it to the CORE.Drop web app following the instructions below.
Build the installer for Software Center
With the
Release
configuration, also builtCORE.Drop.Installer
. This should create a file inCORE.Drop.Installer/Release/CORE.Drop-X.X.X
.Create a new folder that matches with the Drop version name (e.g. "0.12.0"). And save the installer in the path:
P:\_Corp\CORE\Public\6_Tools\CORE.Drop
Notify Vince and ask him to put it on Software Center. You can use the email template located at:
CORE.Drop.Desktop\DeployNewDropVersion.oft
Github:
Close the milestone related to the release. Move over opened issues to the next sprint.
Make sure that all commits in the release are on the
main
branch.Create a new github release from master
Post-release
Write and publish a blog post on spark about the release in the
CORE studio Drop
spark group. See this example from CDAUpdate the Changelog in the spark group
Announce in the #drop channel on slack.
Deploying CORE.Drop Desktop Client Installer
Step 1: get a new built of the desktop client (see instructions above)
Step 2: upload this new installer file to AWS S3. Currently I'm using the "core.drop-builds" bucket under the "CORE-External-Sandbox" account to store installer files. Upload the installer file in
latest/
folder. Move the older installer file toarchive/
folder in the bucket.Step 3: Once install file finishes uploading (Make sure it has public access), you will be able to download the file inside
latest/
from the Drop web application.
Local Web.config Setup
There is a Web.config file located at C:\Users\xxxx\Documents\GitHub\CORE.Drop.Desktop\CORE.Packaging\Web.config. In side of this file, you can change which URL your CORE.Drop.Desktop application is sending API request to.
For local testing, use: <add key="ConnectAddress" value="http://localhost:3017"/>
For testing staging backend server, use: { "type": "URL", "url": "https://dev-api-drop.corestudio.io", "name": "Drop Staging Repo", "enabled": true},
For testing production backend server, use: { "type": "URL", "url": "https://api-drop.thorntontomasetti.com", "name": "Drop Production Repo", "enabled": true },
Release checklist
TODO
Versioning
TODO
Last updated