Skip to content

Commit

Permalink
more progress
Browse files Browse the repository at this point in the history
  • Loading branch information
Aaron Kanzer authored and Aaron Kanzer committed Apr 24, 2024
1 parent fb591c0 commit 7f7951a
Show file tree
Hide file tree
Showing 6 changed files with 49 additions and 4 deletions.
6 changes: 3 additions & 3 deletions docs/63_dandi_infrastructure.md
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down
41 changes: 40 additions & 1 deletion docs/64_dandi_archive.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -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

<br/><br/>
<img
src="../img/github_actions_workflow.png"
alt="github_actions_workflow"
style="width: 60%; height: auto; display: block; margin-left: auto; margin-right: auto;"/>
<br/><br/>

Proceed to click the `Run Workflow` option.

<br/><br/>
<img
src="../img/github_run_workflow.png"
alt="github_run_workflow"
style="width: 60%; height: auto; display: block; margin-left: auto; margin-right: auto;"/>
<br/><br/>

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"

<br/><br/>
<img
src="../img/github_label.png"
alt="github_label"
style="width: 60%; height: auto; display: block; margin-left: auto; margin-right: auto;"/>
<br/><br/>

**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.
Expand Down
6 changes: 6 additions & 0 deletions docs/66_dandi_neuroglancer.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,14 @@

## Setting up Cloudfront



## Pushing a neuroglancer static site to S3



## Creating .pem keys



## Handling cookies in DANDI Archive code
Binary file added docs/img/github_actions_workflow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/img/github_label.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/img/github_run_workflow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 7f7951a

Please sign in to comment.