diff --git a/docs/63_dandi_infrastructure.md b/docs/63_dandi_infrastructure.md index 4d2136c0..a305a35c 100644 --- a/docs/63_dandi_infrastructure.md +++ b/docs/63_dandi_infrastructure.md @@ -68,9 +68,9 @@ A `sponsored bucket` is also declared in the `main.tf`, with downstream, related **DANDI Infrastructure assumes that you 1. own a domain, and 2. have purchased that domain (or have that domain managed) via AWS Route 53** DANDI Infrastructure connects domains from three different vendors: -- `Netlify`: Manages load balancer IPs, as well as custom domains, specifically for the UI -- `AWS Route 53`: Manages all CNAME records for SSL certificates, as well as linkage of Heroku API URLs to domain -- `Heroku`: Issues domains for API services that are given aliases via AWS Route 53 +- **Netlify**: Manages load balancer IPs and custom domains for the UI. +- **AWS Route 53**: Manages CNAME records for SSL certificates and links Heroku API URLs to domains. +- **Heroku**: Provides domains for API services, which are aliased via AWS Route 53. ### Netlify diff --git a/docs/64_dandi_archive.md b/docs/64_dandi_archive.md index f1d7ee5f..ad7a3d2c 100644 --- a/docs/64_dandi_archive.md +++ b/docs/64_dandi_archive.md @@ -4,7 +4,7 @@ This step assumes that you have completed all steps in: [Initialize Vendors](../ ## Initial Steps -### Running terraform apply upon dandi-infrastructure for the first time +### Running "terraform apply" upon dandi-infrastructure for the first time Resources (e.g. the servers and environment ) for DANDI Archive are provisioned upon applying the Terraform definitions in `dandi-infrastructure`, specifically in the [api.tf definition](https://github.com/dandi/dandi-infrastructure/blob/master/terraform/api.tf) @@ -98,6 +98,45 @@ A majority of the necessary setup steps here are defined already [during the ven The only other major initial setup step for the DANDI Archive frontend is regarding authentication -- [see here for more details](../61_dandi_authentication/#populating-appropriate-values-for-the-frontend-to-handle-authentication) +## API Deployment + +### Via GitHub CI/CD + +Within the DANDI Archive repository, GitHub actions workflows exist for deployments to [production](https://github.com/dandi/dandi-archive/blob/master/.github/workflows/backend-production-deploy.yml) and [staging](https://github.com/dandi/dandi-archive/blob/master/.github/workflows/backend-staging-deploy.yml) environments + +- **Staging**: by default, releases are manual via the `workflow_dispatch` clause in the workflow + +To invoke the pipeline, proceed to the `Actions` tab in GitHub and find the pipeline name in the column on the left + +

+ +

+ +Proceed to click the `Run Workflow` option. + +

+ +

+ +Other than the output of the CI/CD workflow, you can observe the status of the new release via your Heroku app dashboard. + +- **Production**: by default, releases are managed via "tags" applied to given PRs merged into main with the label of "released" + +

+ +

+ +**Note: `workflow_dispatch` may also be applied if you'd like to be more intentional with releases.** + ## Updating Allowed Hosts For the Django-based DANDI Archive API to receive and send HTTP requests without CORS errors, you'll need to update `ALLOWED_HOSTS` within the `dandiapi/settings.py` file. diff --git a/docs/66_dandi_neuroglancer.md b/docs/66_dandi_neuroglancer.md index 09ca2d4c..9c544ba8 100644 --- a/docs/66_dandi_neuroglancer.md +++ b/docs/66_dandi_neuroglancer.md @@ -2,8 +2,14 @@ ## Setting up Cloudfront + + ## Pushing a neuroglancer static site to S3 + + ## Creating .pem keys + + ## Handling cookies in DANDI Archive code \ No newline at end of file diff --git a/docs/img/github_actions_workflow.png b/docs/img/github_actions_workflow.png new file mode 100644 index 00000000..c9dc53e0 Binary files /dev/null and b/docs/img/github_actions_workflow.png differ diff --git a/docs/img/github_label.png b/docs/img/github_label.png new file mode 100644 index 00000000..5617a339 Binary files /dev/null and b/docs/img/github_label.png differ diff --git a/docs/img/github_run_workflow.png b/docs/img/github_run_workflow.png new file mode 100644 index 00000000..72c35134 Binary files /dev/null and b/docs/img/github_run_workflow.png differ