No description
Find a file
Tony Ebel 0004a0e786
Some checks failed
Deploy Cloud Run Services / Set Environment (push) Has been cancelled
Deploy Cloud Run Services / Retrive Cloud Run Details Managed by Terraform (push) Has been cancelled
Deploy Cloud Run Services / Build and Deploy (push) Has been cancelled
Deploy Cloud Function / Set Environment (push) Has been cancelled
Deploy Cloud Function / Retrive Cloud Function Details Managed by Terraform (push) Has been cancelled
Deploy Cloud Function / Build and Deploy (push) Has been cancelled
update READMEs for Canary deploys and Terraform setup (#9)
2025-10-15 09:52:17 -05:00
.github/workflows specify region in update-traffic 2025-10-14 16:05:52 -05:00
docs update design pdf 2025-10-14 20:01:42 -05:00
md-converter need to checkout repo 2025-10-14 09:53:59 -05:00
md-website fix newline characters with html entity in placeholder text (#7) 2025-10-14 14:53:50 -05:00
terraform update READMEs for Canary deploys and Terraform setup (#9) 2025-10-15 09:52:17 -05:00
.pre-commit-config.yaml ruff lint and format for md-website, pre-commit hooks 2025-10-14 14:44:33 -05:00
LICENSE Initial commit 2025-10-10 11:06:51 -05:00
README.md update READMEs for Canary deploys and Terraform setup (#9) 2025-10-15 09:52:17 -05:00

Markdown to HTML Converter

This repo contains an application that converts markdown to html.

md-converter

Directory that contains the python Cloud Function that converts markdown to html.

The deployments for this Cloud Function are handled by a Github Action here

Deployments

  • stage: merges into main branch
  • prod: semver tags created

Note: The Cloud Functions are not managed by terraform as they do not work well with our continuous deployments. The service accounts that the Cloud Functions use are however managed in our terraform.

md-website

Directory containing the flask application that serves out our website to the client. It also handles API requests from the client for conversions of markdown, as well as returns the converted html back to the client.

CI

There is a CI Github Actions Workflow here that will run whenever a PR is opened against main. The workflow will build the docker container as well as run linting and formatting with ruff. These jobs will need to pass before PRs are allowed to merge into main.

Deployments

The deployments for the Cloud Run Services are handled by a Github Action here. Our deploy step uses a Canary Deployment stratagy to rollout a Cloud Run Revision over time. In the future we should break out that step into a separate Github Action and have the step call uses: for maintainability.

  • stage: merges into main branch
  • prod: semver tags created

terraform

Directory containing terraform for all infrastructure related to the Markdown to HTML Converter.

There is a Github Actions Workflow here that will run whenever a PR is opened against main. This workflow will test formating, validation, and run a plan and then return the output to a comment in the PR. These jobs will need to pass before merges are allowed into main.

Tofu

While the directory is called terraform, and documents mention terraform, the binary we use is OpenTofu

Deployments

Deployments are manged by a Github Actions Workflow here

Note: terraform deployments are done manually by triggering the workflow and only run against the main branch.