Repository navigation
✨(dev-instance) deploy a dev instance from the dev branch - #1
Merged
Merged
Conversation
The version history reads and writes named versions on /collaboration/version/. The helm ingress routes it, but the nginx template of the compose example did not, so named versions failed with 404 on a compose deployment. Signed-off-by: yousefed <yousefdardiry@gmail.com>
A push to the dev branch builds the frontend, yhub and y-provider images, pushes them to GHCR and deploys them on the dev server with docker compose. The server runs Docs with Keycloak, an S3 store and Caddy for TLS. The secrets are generated on the server, in a .env file that is not in the repository. Signed-off-by: yousefed <yousefdardiry@gmail.com>
The seed script signs in as the dev users and writes a recorded history version by version through the collaboration routes, so the history panel shows several versions by several authors. It runs from the dev instance workflow on request. Signed-off-by: yousefed <yousefdardiry@gmail.com>
Caddy refused an empty email in its global options, and Keycloak could not write its database to a volume that root owned. Caddy now uses no global options, and the Keycloak volume holds its whole data folder. Signed-off-by: yousefed <yousefdardiry@gmail.com>
The dev instance workflow takes a ref input when it is run by hand, so a branch that is not merged can go on the server for a short time. The images are tagged with the commit only, so such a deploy does not change the images of the dev branch. Signed-off-by: yousefed <yousefdardiry@gmail.com>
The seed no longer writes the history in real time. It builds the history offline, with each edit attributed to its author at its recorded time, and stores it in yhub the way the full migration does. Every deploy runs it, and it does nothing when the document exists. It takes less than a minute instead of more than an hour. Signed-off-by: yousefed <yousefdardiry@gmail.com>
The demo users alice, bob, carol and dave have their user name as password, also on a Keycloak that already exists. The admin accounts keep random passwords on the server. The README lists the users and tells how to read the admin passwords. Signed-off-by: yousefed <yousefdardiry@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
This change adds a dev instance of Docs on one server. A merge to the
devbranch deploys it.Changes
deploy/dev-instance/: a Docker Compose stack for one server. It contains Docs, yhub, y-provider, PostgreSQL, Redis, Valkey for yhub, an S3 store, Keycloak with dev users, and Caddy for TLS..github/workflows/dev-instance.yml: on a push todev, the workflow builds the frontend, yhub and y-provider images. It pushes them to GHCR and deploys them over SSH.deploy/dev-instance/README.mdtells how to read them.lasuite/impress-backend:mainimage of the base commit. Its digest is pinned incompose.yaml./collaboration/version/to yhub. Before this change, named versions failed with 404 on a compose deployment. This fix is a separate commit.Secrets
The secrets are not in the repository.
/opt/docs/.envon the first deploy.DEPLOY_*Actions secrets.How to test
dev.