forked from hswaw/hscloud
infra monorepo (https://gerrit.hackerspace.pl)
This removes the need to source env.{sh,fish} when working with hscloud. This is done by: 1. Implementing a Go library to reliably detect the location of the active hscloud checkout. That in turn is enabled by BUILD_WORKSPACE_DIRECTORY being now a thing in Bazel. 2. Creating a tool `hscloud`, with a command `hscloud workspace` that returns the workspace path. 3. Wrapping this tool to be accessible from Python and Bash. 4. Bumping all users of hscloud_root to use either the Go library or one of the two implemented wrappers. We also drive-by replace tools/install.sh to be a proper sh_binary, and make it yell at people if it isn't being ran as `bazel run //tools:install`. Finally, we also drive-by delete cluster/tools/nixops.sh which was never used. Change-Id: I7873714319bfc38bbb930b05baa605c5aa36470a Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1169 Reviewed-by: informatic <informatic@hackerspace.pl> |
||
---|---|---|
app | ||
bgpwtf | ||
bzl | ||
cluster | ||
dc | ||
devtools | ||
doc | ||
games | ||
gcp | ||
go | ||
hswaw | ||
kube | ||
nix/readtree | ||
ops | ||
personal | ||
third_party | ||
tools | ||
.bazelrc | ||
.gitignore | ||
BUILD | ||
COPYING | ||
OWNERS | ||
README.md | ||
WORKSPACE | ||
ci_presubmit.sh | ||
default.nix | ||
env.fish | ||
env.sh | ||
hackdoc.toml | ||
shell.nix |
README.md
hscloud
is the main monorepo of the Warsaw Hackerspace infrastructure code.
Getting started
See //doc/codelabs for tutorials on how to use hscloud.
If you want to browse the source of hscloud
in a web browser, use cs.hackerspace.pl.
If you want some other help, talk to q3k, informatic or your therapist.
Directory Structure
Directories you should care about:
- app: external services that we host that are somewhat universal: matrix, covid-formity, etc.
- bgpwtf: code related to our little ISP
- cluster: code related to our Kubernetes cluster (
k0.hswaw.net
) - dc: code related to datacenter automation
- devtools: code related to developer tooling, like gerrit or hackdoc
- doc: high-level documentation that doesn't fit anywhere else, ie. codelabs
- hswaw: Warsaw Hackerspace specific/internal services. The line between this and app is unfortunately blurry.
- personal: user's personal (experimental) directories
- kube, go: code specific to languages but general to the whole of hscloud
Licensing
Unless noted otherwise, code in hscloud is licensed under the BSD 0-clause license - see COPYING.