Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
disassembler committed Apr 5, 2022
0 parents commit 660edfa
Show file tree
Hide file tree
Showing 47 changed files with 10,570 additions and 0 deletions.
52 changes: 52 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Cardano

Cardano is a project that declares cardano environments leveraging the
[`bitte`][bitte] stack & cloud scheduler, beyond kubernetes.

## Repo Layout Brief

The application source code _could_ live in [`./src`][app].

The application is _parasitically_ operationalized in [`./nix`][ops].

[`./nix`][ops] provides the following **Cells**:

- Metal (AWS, The Hosts' OS, Datacenter Scheduler, Service Discovery, Secrets Vault, Monitoring, DNS & Ingress Routing)
- Cloud (Schedulable Jobs & Cluster Hydration Profiles)
- Repoautomation (Runnable helpers for daily or sporadic tasks)

This repository defines the following **Organelles**:

- **Installables**:
- Packages (flake output: `packages`)
- **Runnables**:
- Just Tasks ["repoautomation"] (flake output: `justTasks`)
- **Functions**:
- OCI Images ["docker"] (flake output: `oci-images`)
- Bitte Profile (flake output: `bitteProfile`)
- Nomad Schedulable Environments (flake output: `nomadEnvs`)
- Hydration Profiles (`hydrationProfiles`)

You'll find further information about this nomenclature in the
[Standard Readme][std-readme].

## Development Environments

You can find all information about entering a fully pre-configured &
reproducible development environment in [`./devshell`][devshell].

## Application Documentation

You can find all information about the application itself in [`./src`][app].

## Operatations

You can find all information about the operations of the application [`./nix`][ops].

---

[app]: ./src
[bitte]: https://github.com/input-output-hk/bitte
[devshell]: ./devshell
[ops]: ./nix
[std-readme]: https://github.com/divnix/std#readme
40 changes: 40 additions & 0 deletions devshell/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Development Environments

## `direnv`

To quickly enter a development environment every time you enter this repository,
please [install][direnv-install] the great and unmatched [`direnv`][direnv] tool.

## `nix develop -c $SHELL ...`

- Loads temporarily an environment by setting the appropriate environment variables. CTRL+C to exit again.
- You need the latest official [`nix`][nix-install] version `>=2.7`, preferably in multi-user install mode (`nix --version`).
- For your convenience, there is tab completion on `nix develop ./devshell#<TAB>` (albeit a bit lagging).

## The Environments

#### `__default` &rarr; `nix develop ./devshell#__default -c $SHELL` | `direnv allow`

A fully fledged development environment tailored to operational needs.

All secrets to access the cluster resources either via the CLI or through the web interface
are automatically set up. You'll be greeted by a useful message of the day [MOTD].

The only pre-requisit is that you have well-known [`~/.netrc`][netrc] file set up with your personal
github API token.

You can inpect the environment & secrets via `env | grep NOMAD`, `env | grep VAULT`,
`env | grep CONSUL`, `env | grep AWS`, etc.

#### `cardano` &rarr; `nix develop ./devshell#cardano -c $SHELL`

_Not set-up yet._

A fully configured environment to develop or debug the cardano application itself.

---

[direnv]: https://direnv.net/
[direnv-install]: https://direnv.net/docs/installation.html
[netrc]: ./netrc.md
[nix-install]: https://nixos.org/download.html
Loading

0 comments on commit 660edfa

Please sign in to comment.