Thanks to visit codestin.com
Credit goes to github.com

Skip to content

asamal/greenstone

Repository files navigation

CI Sonar Coverage
gs-tree CI (gs-tree) Quality Gate Status Coverage
gs-user CI (gs-user) Quality Gate Status Coverage
gs-gateway CI (gs-gateway) Quality Gate Status Coverage
gs-user-q CI (gs-user-q) Quality Gate Status Coverage

GreenStone

Start the application

Local (build docker images locally)

Run from root directory:
Build jars:
./build-modules-local.sh
Start docker-compose:
./start-modules-local.sh

Remote (pull docker images from the repository)

Run from root directory:
Pull images:
./build-modules-remote.sh
Start docker-compose:
./start-modules-remote.sh

Links

Service Link
Login page http://localhost:44401
Customers' page (via gateway) http://localhost:44401/customers
Customers' page (directly) http://localhost:44402/customers
Jaeger http://localhost:16686
Grafana http://localhost:3000
Prometheus http://localhost:9090

Naming convention

List of names:
greenstone - internal name used in the code
GreenStone - user-friendly name
green-stone - deprecated, used only when it is imossible to change

K8S

Regenerate k8s deployment scripts from docker-compose:
kompose -f dc-remote.yml

Start deployment (in k8s directory):
kubectl kustomize . | kubectl apply -f -

Test deployed service (gs-user exposed as example):
http://localhost:30003/

Stop deployment:
kubectl kustomize . | kubectl delete -f -

Setup Argo CD

Original guide https://argoproj.github.io/argo-cd/getting_started/

Install Argo CD:

kubectl create namespace argocd

kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

Download Argo CD CLI

brew install argocd

Access The Argo CD API Server

Change the argocd-server service type to LoadBalancer:

kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "LoadBalancer"}}'

Port Forwarding

kubectl port-forward svc/argocd-server -n argocd 8080:443

Login Using The CLI

The initial password for the admin account is auto-generated and stored as clear text in the field password in a secret named argocd-initial-admin-secret in your Argo CD installation namespace. You can simply retrieve this password using kubectl
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -D

argocd login localhost:8080
(user: admin)

argocd account update-password

Register A Cluster To Deploy Apps To (Optional)

argocd cluster add docker-desktop
or
argocd cluster add minikube

Create An Application From A Git Repository

kubectl create namespace greenstone

Note
You can access Argo CD using port forwarding: add --port-forward-namespace argocd flag to every CLI command or set ARGOCD_OPTS environment variable: export ARGOCD_OPTS='--port-forward-namespace argocd':

argocd app create greenstone --repo https://github.com/asamal/greenstone.git --path k8s --dest-server https://kubernetes.default.svc --dest-namespace greenstone

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •