Compare commits

...

2 Commits

Author SHA1 Message Date
Andrei Kvapil
236f3ce92f Add Adopters, Code of Conduct, Contributing, and Maintainers guides
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-02-14 13:41:43 +01:00
Andrei Kvapil
d8dd929aa4 Preapre release v0.0.2 (#12)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-02-09 15:13:42 +01:00
23 changed files with 151 additions and 31 deletions

28
ADOPTERS.md Normal file
View File

@@ -0,0 +1,28 @@
# Adopters
Below you can find a list of organizations and users who have agreed to
tell the world that they are using Cozystack in a production environment.
The goal of this list is to inspire others to do the same and to grow
this open source community and project.
Please add your organization to this list. It takes 5 minutes of your time,
but it means a lot to us.
## Updating this list
To add your organization to this list, you can either:
- [open a pull request](https://github.com/aenix-io/cozystack/pulls) to directly update this file, or
- [edit this file](https://github.com/aenix-io/cozystack/blob/main/ADOPTERS.md) directly in GitHub
Feel free to ask in the Slack chat if you any questions and/or require
assistance with updating this list.
## Cozystack Adopters
This list is sorted in chronological order, based on the submission date.
| Organization | Contact | Date | Description of Use |
| ------------ | ------- | ---- | ------------------ |
| [Ænix](https://aenix.io/) | @kvaps | 2024-02-14 | Ænix provides consulting services for cloud providers and uses Cozystack as the main tool for organizing managed services for them. |

3
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,3 @@
# Code of Conduct
Cozystack follows the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).

45
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,45 @@
# Contributing to Cozystack
Welcome! We are glad that you want to contribute to our Cozystack project! 💖
As you get started, you are in the best position to give us feedbacks on areas of our project that we need help with, including:
* Problems found while setting up the development environment
* Gaps in our documentation
* Bugs in our Github actions
First, though, it is important that you read the [code of conduct](CODE_OF_CONDUCT.md).
The guidelines below are a starting point. We don't want to limit your
creativity, passion, and initiative. If you think there's a better way, please
feel free to bring it up in a Github discussion, or open a pull request. We're
certain there are always better ways to do things, we just need to start some
constructive dialogue!
## Ways to contribute
We welcome many types of contributions including:
* New features
* Builds, CI/CD
* Bug fixes
* [Documentation](https://github.com/aenix-io/cozystack-website/tree/main)
* Issue Triage
* Answering questions on Slack or Github Discussions
* Web design
* Communications / Social Media / Blog Posts
* Events participation
* Release management
## Ask for Help
The best way to reach us with a question when contributing is to drop a line in
our [Telegram channel](https://t.me/cozystack), or start a new Github discussion.
## Raising Issues
When raising issues, please specify the following:
- A scenario where the issue occurred (with details on how to reproduce it)
- Errors and log messages that are displayed by the involved software
- Any other detail that might be useful

7
MAINTAINERS.md Normal file
View File

@@ -0,0 +1,7 @@
# The Cozystack Maintainers
| Maintainer | GitHub Username | Company |
| ---------- | --------------- | ------- |
| Andrei Kvapil | [@kvaps](https://github.com/kvaps) | Ænix |
| George Gaál | [@gecube](https://github.com/gecube) | Ænix |
| Eduard Generalov | [@egeneralov](https://github.com/egeneralov) | Ænix |

View File

@@ -1,7 +1,15 @@
.PHONY: manifests repos assets
build:
make -C packages/apps/http-cache image
make -C packages/apps/kubernetes image
make -C packages/system/dashboard image
make -C packages/core/installer image
make manifests
manifests:
(cd packages/core/installer/; helm template -n cozy-installer installer .) > manifests/cozystack-installer.yaml
sed -i 's|@sha256:[^"]\+||' manifests/cozystack-installer.yaml
repos:
rm -rf _out

View File

@@ -99,7 +99,7 @@ Any Linux system installed on it (eg. Ubuntu should be enough)
Start matchbox with prebuilt Talos image for Cozystack:
```bash
sudo docker run --name=matchbox -d --net=host ghcr.io/aenix-io/cozystack/matchbox:v0.0.1 \
sudo docker run --name=matchbox -d --net=host ghcr.io/aenix-io/cozystack/matchbox:v0.0.2 \
-address=:8080 \
-log-level=debug
```
@@ -142,7 +142,7 @@ example output:
```console
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
22044f26f74d quay.io/poseidon/dnsmasq "/usr/sbin/dnsmasq -…" 6 seconds ago Up 5 seconds dnsmasq
231ad81ff9e0 ghcr.io/aenix-io/cozystack/matchbox:v0.0.1 "/matchbox -address=…" 58 seconds ago Up 57 seconds matchbox
231ad81ff9e0 ghcr.io/aenix-io/cozystack/matchbox:v0.0.2 "/matchbox -address=…" 58 seconds ago Up 57 seconds matchbox
```
### Bootstrap cluster

22
hack/prepare_release.sh Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/sh
set -e
if [ -e $1 ]; then
echo "Please pass version in the first argument"
echo "Example: $0 v0.0.2"
exit 1
fi
version=$1
talos_version=$(awk '/^version:/ {print $2}' packages/core/installer/images/talos/profiles/installer.yaml)
set -x
sed -i "s|\(ghcr.io/aenix-io/cozystack/matchbox:\)v[^ ]\+|\1${version}|g" README.md
sed -i "s|\(ghcr.io/aenix-io/cozystack/talos:\)v[^ ]\+|\1${talos_version}|g" README.md
sed -i "/^TAG / s|=.*|= ${version}|" \
packages/apps/http-cache/Makefile \
packages/apps/kubernetes/Makefile \
packages/core/installer/Makefile \
packages/system/dashboard/Makefile

View File

@@ -72,14 +72,14 @@ spec:
serviceAccountName: cozystack
containers:
- name: cozystack
image: "ghcr.io/aenix-io/cozystack/installer:v0.0.1@sha256:d9edaf7fd53910c979575caf633875af2d16cc8611f79553cee8c18aade067b3"
image: "ghcr.io/aenix-io/cozystack/installer:v0.0.2"
env:
- name: KUBERNETES_SERVICE_HOST
value: localhost
- name: KUBERNETES_SERVICE_PORT
value: "7445"
- name: darkhttpd
image: "ghcr.io/aenix-io/cozystack/installer:v0.0.1@sha256:d9edaf7fd53910c979575caf633875af2d16cc8611f79553cee8c18aade067b3"
image: "ghcr.io/aenix-io/cozystack/installer:v0.0.2"
command:
- /usr/bin/darkhttpd
- /cozystack/assets

View File

@@ -1,20 +1,22 @@
PUSH := 1
LOAD := 0
REGISTRY := ghcr.io/aenix-io/cozystack
TAG := v0.0.1
NGINX_CACHE_TAG = v0.1.0
TAG := v0.0.2
image: image-nginx
image-nginx:
docker buildx build --platform linux/amd64 --build-arg ARCH=amd64 images/nginx-cache \
--provenance false \
--tag $(REGISTRY)/nginx-cache:$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/nginx-cache:$(TAG) \
--tag $(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG) \
--tag $(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG)-$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG) \
--cache-to type=inline \
--metadata-file images/nginx-cache.json \
--push=$(PUSH) \
--load=$(LOAD)
echo "$(REGISTRY)/nginx:$(TAG)" > images/nginx-cache.tag
echo "$(REGISTRY)/nginx-cache:$(NGINX_CACHE_TAG)" > images/nginx-cache.tag
update:
tag=$$(git ls-remote --tags --sort="v:refname" https://github.com/chrislim2888/IP2Location-C-Library | awk -F'[/^]' 'END{print $$3}') && \

View File

@@ -1,14 +1,14 @@
{
"containerimage.config.digest": "sha256:d68641167af14b246e0332c14a7a9d9f6c0a4f813881db2de5fc53816bd35786",
"containerimage.config.digest": "sha256:f4ad0559a74749de0d11b1835823bf9c95332962b0909450251d849113f22c19",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"digest": "sha256:241da53aba9b121d5d1829744a9ba31036cd5e5ffd6cf584da8113ddd79764f2",
"digest": "sha256:3a0e8d791e0ccf681711766387ea9278e7d39f1956509cead2f72aa0001797ef",
"size": 1093,
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
"containerimage.digest": "sha256:241da53aba9b121d5d1829744a9ba31036cd5e5ffd6cf584da8113ddd79764f2",
"image.name": "ghcr.io/aenix-io/cozystack/nginx-cache:v0.0.1"
"containerimage.digest": "sha256:3a0e8d791e0ccf681711766387ea9278e7d39f1956509cead2f72aa0001797ef",
"image.name": "ghcr.io/aenix-io/cozystack/nginx-cache:v0.1.0,ghcr.io/aenix-io/cozystack/nginx-cache:v0.1.0-v0.0.2"
}

View File

@@ -1 +1 @@
ghcr.io/aenix-io/cozystack/nginx:v0.0.1
ghcr.io/aenix-io/cozystack/nginx-cache:v0.1.0

View File

@@ -0,0 +1,4 @@
{
"containerimage.config.digest": "sha256:b1916dbacb372ed89ea3f920f08ee68730be2edc016f2caa373a7bbfbad25845",
"containerimage.digest": "sha256:f77d5b63f1ed9dfda4725696d9170130939219a2465260b6ba941947460de2da"
}

View File

@@ -1,7 +1,7 @@
PUSH := 1
LOAD := 0
REGISTRY := ghcr.io/aenix-io/cozystack
TAG := v0.0.1
TAG := v0.0.2
UBUNTU_CONTAINER_DISK_TAG = v1.29.1
image: image-ubuntu-container-disk
@@ -9,7 +9,8 @@ image: image-ubuntu-container-disk
image-ubuntu-container-disk:
docker buildx build --platform linux/amd64 --build-arg ARCH=amd64 images/ubuntu-container-disk \
--provenance false \
--tag $(REGISTRY)/ubuntu-container-disk:$(TAG)-$(UBUNTU_CONTAINER_DISK_TAG) \
--tag $(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG) \
--tag $(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG)-$(TAG) \
--cache-from type=registry,ref=$(REGISTRY)/ubuntu-container-disk:$(UBUNTU_CONTAINER_DISK_TAG) \
--cache-to type=inline \
--metadata-file images/ubuntu-container-disk.json \

View File

@@ -3,7 +3,7 @@ NAME=installer
PUSH := 1
LOAD := 0
REGISTRY := ghcr.io/aenix-io/cozystack
TAG := v0.0.1
TAG := v0.0.2
TALOS_VERSION=$(shell awk '/^version:/ {print $$2}' images/talos/profiles/installer.yaml)
show:

View File

@@ -1,14 +1,14 @@
{
"containerimage.config.digest": "sha256:507c0236ca2aa8a3e3266070121282bb49000f292521163768c4ad67e52a87e0",
"containerimage.config.digest": "sha256:5c7f51a9cbc945c13d52157035eba6ba4b6f3b68b76280f8e64b4f6ba239db1a",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"digest": "sha256:d9edaf7fd53910c979575caf633875af2d16cc8611f79553cee8c18aade067b3",
"digest": "sha256:7cda3480faf0539ed4a3dd252aacc7a997645d3a390ece377c36cf55f9e57e11",
"size": 2074,
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
"containerimage.digest": "sha256:d9edaf7fd53910c979575caf633875af2d16cc8611f79553cee8c18aade067b3",
"image.name": "ghcr.io/aenix-io/cozystack/installer:v0.0.1"
"containerimage.digest": "sha256:7cda3480faf0539ed4a3dd252aacc7a997645d3a390ece377c36cf55f9e57e11",
"image.name": "ghcr.io/aenix-io/cozystack/installer:v0.0.2"
}

View File

@@ -1 +1 @@
ghcr.io/aenix-io/cozystack/installer:v0.0.1
ghcr.io/aenix-io/cozystack/installer:v0.0.2

View File

@@ -1,14 +1,14 @@
{
"containerimage.config.digest": "sha256:cad05df29f104bbb20796b6a2d2358552ab43fb23fcf77fdf39ec4266f603e66",
"containerimage.config.digest": "sha256:cb8cb211017e51f6eb55604287c45cbf6ed8add5df482aaebff3d493a11b5a76",
"containerimage.descriptor": {
"mediaType": "application/vnd.docker.distribution.manifest.v2+json",
"digest": "sha256:eb6e15aad1de388e72c04d0573c394aadfbc7fef0dc43abc713bc36d4b486d70",
"digest": "sha256:3be72cdce2f4ab4886a70fb7b66e4518a1fe4ba0771319c96fa19a0d6f409602",
"size": 1488,
"platform": {
"architecture": "amd64",
"os": "linux"
}
},
"containerimage.digest": "sha256:eb6e15aad1de388e72c04d0573c394aadfbc7fef0dc43abc713bc36d4b486d70",
"image.name": "ghcr.io/aenix-io/cozystack/matchbox:v0.0.1"
"containerimage.digest": "sha256:3be72cdce2f4ab4886a70fb7b66e4518a1fe4ba0771319c96fa19a0d6f409602",
"image.name": "ghcr.io/aenix-io/cozystack/matchbox:v0.0.2"
}

View File

@@ -1 +1 @@
ghcr.io/aenix-io/cozystack/matchbox:v0.0.1
ghcr.io/aenix-io/cozystack/matchbox:v0.0.2

View File

@@ -3,7 +3,7 @@ NAMESPACE=cozy-dashboard
PUSH := 1
LOAD := 0
REPOSITORY := ghcr.io/aenix-io/cozystack
TAG := v0.0.1
TAG := v0.0.2
show:
helm template --dry-run=server -n $(NAMESPACE) $(NAME) .

View File

@@ -1 +1 @@
ghcr.io/aenix-io/cozystack/dashboard:v0.0.1
ghcr.io/aenix-io/cozystack/dashboard:v0.0.2

View File

@@ -1,4 +1,4 @@
{
"containerimage.config.digest": "sha256:87c3ac99ed10ee9cf29ca01ec3a00da11f336a614ea98c48da04cd7349e13454",
"containerimage.digest": "sha256:d286c9be6baba35fc4b5dacd8701999b490a82fef42a1c52d0d65ced8bb07b51"
"containerimage.config.digest": "sha256:e87d3b19a59f31b70ae9e67ab9422bf2acf8fe5c6c8c585883be16db39068023",
"containerimage.digest": "sha256:692cd506a2eadf1cf09e94eee60986a379da7a604c4810f89c8f6c5c405c2c73"
}

View File

@@ -1 +1 @@
ghcr.io/aenix-io/cozystack/kubeapps-apis:v0.0.1
ghcr.io/aenix-io/cozystack/kubeapps-apis:v0.0.2