This commit is contained in:
2024-12-25 11:56:28 +01:00
parent 231ddf707c
commit a8801e43fe
5 changed files with 108 additions and 7 deletions

View File

@@ -32,16 +32,10 @@ os.rmdir_all('vdocs') or {}
// Generate HTML documentation
println('Generating HTML documentation...')
if os.system('v doc -m -f html . -readme -comments -no-timestamp') != 0 {
if os.system('v doc -m -f html . -readme -comments -no-timestamp -o ../docs') != 0 {
panic('Failed to generate HTML documentation')
}
// Move docs to parent directory
os.rename('_docs', '${abs_dir_of_script}/docs') or {
panic('Failed to move documentation to parent directory: ${err}')
}
os.chdir(abs_dir_of_script) or {
panic('Failed to change directory to abs_dir_of_script: ${err}')
}

View File

83
lib/readme.md Normal file
View File

@@ -0,0 +1,83 @@
# Crystallib
Is an opinionated library as used by threefold mainly to automate cloud environments, its still very much work in progress and we welcome any contribution.
Please check also our [cookbook](https://github.com/freeflowuniverse/crystallib/tree/development/cookbook) which might give some ideas how to use it.
## Get started with hero
```bash
curl -sL https://raw.githubusercontent.com/freeflowuniverse/crystallib/development/scripts/install_hero.sh | bash
```
## Get started with crystallib
the following script will install vlang and crystallib (report bugs please)
```bash
curl https://raw.githubusercontent.com/freeflowuniverse/crystallib/development/scripts/installer.sh > /tmp/install.sh
bash /tmp/install.sh
```
optional requirements
- ssh key loaded for access to github
### alternative with manual git checkout & v install
requirements
- v installed
- ssh key loaded for access to github
```bash
mkdir -p ~/code/github/freeflowuniverse
cd ~/code/github/freeflowuniverse
git clone git@github.com:freeflowuniverse/crystallib.git
cd crystallib
# checkout a branch with most recent changes
# git checkout development
bash install.sh
```
## Install Hero
hero is our "hero" tool to execute heroscript, deal with git, ...
hero will be installed in
- /usr/local/bin for linux
- ~/hero/bin for osx
```bash
curl https://raw.githubusercontent.com/freeflowuniverse/crystallib/development/scripts/install_hero.sh > /tmp/hero_install.sh
bash /tmp/hero_install.sh
#to debug
bash -x /tmp/hero_install.sh
#maybe you want to copy to your system bin dir
cp ~/hero/bin/hero /usr/local/bin
#to use hero make sure you restart your shell or you do (if osx)
source ~/.zprofile
#check how to use, can also do on each of the subcommands
hero -help
```
requirements
- ssh key loaded for access to github
## generating docs yourself
```bash
#cd in this directory
cd ~/code/github/freeflowuniverse/crystallib
bash doc.sh
```
## build hero
- linux as done by github actions, nothing to do
- osx: ``

12
lib/v.mod Normal file
View File

@@ -0,0 +1,12 @@
Module {
name: 'crystallib'
author: 'freeflowuniverse'
description: 'Set of various libraries'
version: '0.1.0'
repo_url: 'https://github.com/freeflowuniverse/crystallib/crystallib'
deps: []
vcs: 'git'
license: 'apache2'
}

12
lib/vpkg.json Normal file
View File

@@ -0,0 +1,12 @@
{
"name": "crystallib",
"version": "0.1.0",
"author": [
"despiegk <info@threefold.io>"
],
"repo": "https://github.com/crystaluniverse/crystallib/crystallib",
"sources": [
"https://vpkg-project.github.io/registry/src/"
],
"dependencies": []
}