-
Notifications
You must be signed in to change notification settings - Fork 737
Deployment
- Staging: Development enrvironment, mainly used to test features before deploying to production.
- Production: Production enrvironment, used by real users.
Both the staging and production deployments are manual, and can be triggered using the GitHub Actions UI.
Any of the services listed below can be deployed using the available deployment GitHub actions. To check the list os available services you can:
- Run
./cli service
on the/scripts
directory of the current repository. - OR check crowd-kube repository, which stores all kubernetes configurations.
activities-worker
| api
| cache-worker
| cron-service
| data-sink-worker
| discord-ws
| entity-merging-worker
| exports-worker
| frontend
| integration-run-worker
| integration-stream-worker
| job-generator
| members-enrichment-worker
| merge-suggestions-worker
| nango-webhook-api
| nango-worker
| organizations-enrichment-worker
| profiles-worker
| script-executor-worker
| search-sync-api
| search-sync-worker
| security-best-practices-worker
| webhook-api
- Push your changes to the development branch you are working now. We don't have a dedicated development branch.
- Go to the LF Oracle Staging Deploy GitHub action.
- Click "Run Workflow".
- Select the branch you want to deploy
- Write down the list of services you want to deploy, separated by space. E.g
api frontend
. - Click "Run Worfklow"
- The workflow will build new Docker images and update Kubernetes with the new images.
- Merge your Pull Request to main, making sure that all checks passed.
- Once the changes are in main, go to the LF Oracle Production Deploy GitHub action.
- Click "Run Workflow".
- Make sure you have
main
branch selected. - Write down the list of services you want to deploy, separated by space. E.g
api frontend
. - Click "Run Worfklow".
- The workflow will build new Docker images and update Kubernetes with the new images.
The crowd-kube repo hosts all the configuration files for the staging and production environment.
Important notes:
- If there's the need to update environment variables, it has to be done in the crowd-kube repo, by updating the configmaps and then restarting the service pod to get the latest changes.
-
To deploy a new service:
- Configure Kubernetes resources in the crowd-kube repo first
- Set up required ConfigMaps, Deployments, Services, etc.
- Get the K8s configuration reviewed and merged
- Only then can you deploy the new service via GitHub Actions
Documentation:
- Home
- Features
- Areas
- Backend
- Frontend
- Core Platform
- Integrations Pipeline
- Integrations
- Data Correctness
- Resources
- Deployment
- Kubernetes
- Local Development
- Monitoring
- Oracle Cloud
- Scripts
- Archives