008389dcd8
Some checks failed
Lint Checks / Run linter (pull_request) Failing after 33s
Smoke Test / Run basic test suite (pull_request) Successful in 4m12s
Webapp Test / Run webapp test suite (pull_request) Successful in 4m44s
Deploy Test / Run deploy test suite (pull_request) Successful in 5m4s
K8s Deploy Test / Run deploy test suite on kind/k8s (pull_request) Successful in 7m49s
81 lines
2.3 KiB
Markdown
81 lines
2.3 KiB
Markdown
# Gitea x NPMs X Laconicd
|
|
|
|
Deploy a local Gitea server, publish NPM packages to it, then use those packages to build a Laconicd fixturenet. Demonstrates several components of the Laconic stack
|
|
|
|
### Build and Deploy Gitea
|
|
|
|
```bash
|
|
laconic-so --stack build-support build-containers
|
|
laconic-so --stack package-registry setup-repositories
|
|
laconic-so --stack package-registry build-containers
|
|
laconic-so --stack package-registry deploy up
|
|
```
|
|
|
|
These commands can take awhile. Eventually, some instructions and a token will output. Set `CERC_NPM_AUTH_TOKEN`:
|
|
|
|
```bash
|
|
export CERC_NPM_AUTH_TOKEN=<your-token>
|
|
```
|
|
|
|
### Configure the hostname gitea.local
|
|
|
|
How to do this depends on your operating system but usually involves editing a `hosts` file. For example, on Linux add this line to the file `/etc/hosts` (needs sudo):
|
|
|
|
```bash
|
|
127.0.0.1 gitea.local
|
|
```
|
|
|
|
Test with:
|
|
|
|
```bash
|
|
ping gitea.local
|
|
```
|
|
|
|
```bash
|
|
PING gitea.local (127.0.0.1) 56(84) bytes of data.
|
|
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.147 ms
|
|
64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.033 ms
|
|
```
|
|
|
|
Although not necessary in order to build and publish packages, you can now access the Gitea web interface at: [http://gitea.local:3000](http://gitea.local:3000) using these credentials: `gitea_admin/admin1234` (Note: please properly secure Gitea if public internet access is allowed).
|
|
|
|
### Build npm Packages
|
|
|
|
Clone the required repositories:
|
|
|
|
```bash
|
|
laconic-so --stack fixturenet-laconicd setup-repositories
|
|
```
|
|
|
|
Build and publish the npm packages:
|
|
|
|
```bash
|
|
laconic-so --stack fixturenet-laconicd build-npms
|
|
```
|
|
|
|
Navigate to the Gitea console and switch to the `cerc-io` user then find the `Packages` tab to confirm that these two npm packages have been published:
|
|
|
|
- `@cerc-io/laconic-registry-cli`
|
|
- `@cerc-io/laconic-sdk`
|
|
|
|
### Build and deploy fixturenet containers
|
|
|
|
```bash
|
|
laconic-so --stack fixturenet-laconicd build-containers
|
|
laconic-so --stack fixturenet-laconicd deploy up
|
|
```
|
|
|
|
Check the logs:
|
|
|
|
```bash
|
|
laconic-so --stack fixturenet-laconicd deploy logs
|
|
```
|
|
|
|
### Test with the registry CLI
|
|
|
|
```bash
|
|
laconic-so --stack fixturenet-laconicd deploy exec cli "laconic registry status"
|
|
```
|
|
|
|
Try additional CLI commands, documented [here](https://github.com/cerc-io/laconic-registry-cli#operations).
|