great-sunset-355
05/10/2024, 6:04 PMdelightful-monkey-90700
05/10/2024, 7:03 PMcloud/
directory with all the deployment code. GitHub Deployments is used to manage these deployments.
The Production repository (maintained by Operations) contains an index.ts
file which imports the cloud/
directories from each of the packages and creates the master deployment.
This is then deployed to Staging or Production based on Git tags. There's a VM running in a VPC with no internet access which pulls these tags and performs the changes. It's the only account that has permissions to change anything.delightful-monkey-90700
05/10/2024, 7:05 PMgreat-sunset-355
05/10/2024, 7:35 PMdelightful-monkey-90700
05/10/2024, 9:19 PMcloud/
for consumption within the Production repo ? Like any other software, usually if you install the upgraded package there will be type mismatches and it won't compile, but there are also release notes with the change of the dependency that describes what changed within the deployment.
The interfaces are designed to not change too much, usually it's just additional configuration options for new services (e.g., now uses Twilio Sendgrid, so needs an API key and for that service to be configured a specific way -- but those configuration keys are mandatory, so it won't even compile until you provide the data)