Create subdirectory READMEs

This commit is contained in:
Matthew Lopez
2023-12-26 22:13:31 -05:00
parent 5e66108af2
commit 279e377b13
5 changed files with 61 additions and 2 deletions

View File

@@ -1 +1,5 @@
# Config
# Configuration files
These files contain configuration for the containers. They are mounted in the
containers using bind mounts. Check `compose.yml` to see which files are mounted
where.

View File

@@ -1 +1,6 @@
# Environment
# Environment variables
These files contain environment variables that are used by the containers. Each
file is named after the container that uses it and is specified in
`compose.yml`. Keys that end in `.local.env` are ignored by Git, so they are
used to store secrets and are generated by `scripts/setup-environment.sh`.

View File

@@ -1 +1,6 @@
# Patches
Unfortunately, most of the Pretendo servers do not run without small
modifications. This directory contains patches to make them work. I intend to
contribute some of them upstream after further testing, but others are more
specific to this setup.

View File

@@ -1 +1,7 @@
# Repos
These folders are
[Git submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules) that
contain the various Pretendo Network server repositories. Most are set up to
track their repositories' `dev` branches. The configuration is specified in
`.gitmodules`.

View File

@@ -1 +1,40 @@
# Scripts
These are important scripts that are used for container setup and
administration. Here is a list of each one and what it does.
- `run-in-container/`: These are scripts that, as the name suggests, are run
inside containers. They should not be run directly, but rather through the
other scripts.
- `compile-custom-inkay.sh`: This compiles a custom version of the Inkay patches
that whitelists the mitmproxy certificate for the Miiverse applet. It must be
run after creating new mitmproxy certificates (for example, if the mitmproxy
data volume was deleted) if you want to use Juxt.
- `create-juxt-community.sh`: This creates a community in Juxtaposition, which
is required before posting anything. It also allows setting a custom icon and
banner image. It should be run for whatever communities you want to use.
- `firsrun-*.sh`: These are scripts that are run on the first run of certain
containers. They are run automatically by the main setup script and shouldn't
be used after that.
- `make-pnid-dev.sh`: This sets the access level of a PNID to developer, which
gives it administrative permissions across the servers. For example, this
makes the PNID's posts "verified" on Juxt. It should be run after creating a
new PNID that should have administrative permissions.
- `setup-environment.sh`: This sets up local environment variables in
`*.local.env` files, such as randomly-generated secrets. Important external
secrets are logged to `secrets.txt` in the root of the repository. It should
be run whenever this repository is updated and new servers are added or if the
server or Wii U IP addresses change.
- `setup-submodule-patches.sh`: This sets up the various submodules in`repos`
and applies patches to them. It should also be run whenever this repository is
updated and new servers are added.
- `update-account-servers-database.sh`: This updates the database of account
servers. It should be run whenever a new account server is added to this
repository or the server IP address changes, and it is automatically run by
`setup-environment.sh`.
- `update-miiverse-endpoints.sh`: This updates the Miiverse endpoints for the
discovery API server. It currently uses hard-coded values, so it should not be
neccesary to run it.
- `update-postgres-password.sh`: This updates the password for the PostgreSQL
database. It should be run whenever the password is regenerated, and it is
automatically run by `setup-environment.sh`.