Git Product home page Git Product logo

steward's People

Contributors

akosma avatar bastjan avatar ccremer avatar glrf avatar happytetrahedron avatar kidswiss avatar megian avatar renovate-bot avatar renovate[bot] avatar simu avatar srueg avatar tobru avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

allenliu88

steward's Issues

Improve Argo CD Bootstrap

Bootstrap the Argo CD repo-server with an emptyDir for GPG secrets since otherwise the pod will fail on OpenShift clusters (permission issues).

Additionally, make sure the kapitan binary is available and the vault-agent sidecar is configured as well. This helps to bootstrap components which need Vault secrets from the beginning on.

Can not change serviceName in argocd-application-controller statefulset

The release v0.3.0 is unable to bootstrap ArgoCD correctly.

StatefulSet.apps "argocd-application-controller" is invalid: spec: Forbidden: updates to statefulset spec for fields other than 'replicas', 'template', and 'updateStrategy' are forbidden

Manual workaround is to add (force replace):

spec:
  serviceName: argocd-application-controller

Regularly Report Kubernetes Version to Lieutenant

Summary

As a user of Project Syn
I want to be able to get a clusters Kubernetes version from Lieutenant
So that Commodore Components can utilize these facts

Context

Dynamic facts are information about a Syn managed Cluster which can be determined from the state of the cluster and may change over time.
The main difference to static facts is that these facts aren't configured manually but are determined by the system itself.

In this MVP, the Kubernetes version should be made available. Other facts will follow later on.

Out of Scope

  • Any other fact except for the Kubernetes version
  • Making the facts available to the component compilation

Further links

Acceptance criteria

  • The Syn Cluster Agent regularly reports the Kubernetes version to Lieutenant
  • Ability to get Kubernetes Version through the Lieutenant API
  • The Kubernetes version is available in the status of the clusters Lieutenant object.

Renovate default images

Steward contains configuration for images and an image tags to initially deploy ArgoCD. Later on, those deployments will be adopted by Component ArgoCD. The defaults in Steward and Component ArgoCD have drifted apart. In the component, those image tags are kept up to date with Renovate. This should also be the case for the image tags in Steward.

Maybe we could teach Renovate to do this using regex manager.

https://github.com/projectsyn/steward/blob/c24b80c/main.go#L23 and following line.

Dependency Dashboard

This issue provides visibility into Renovate updates and their statuses. Learn more

This repository currently has no open or pending branches.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

dockerfile
Dockerfile
  • docker.io/golang 1.21
github-actions
.github/workflows/push.yml
  • actions/checkout v4
  • mikepenz/release-changelog-builder-action v4
  • actions/create-release v1
.github/workflows/test.yml
  • actions/checkout v4
  • actions/setup-go v4
  • actions/checkout v4
  • actions/checkout v4
gomod
go.mod
  • go 1.21
  • github.com/alecthomas/kingpin/v2 v2.4.0
  • github.com/deepmap/oapi-codegen/v2 v2.0.0
  • github.com/projectsyn/lieutenant-api v0.11.0
  • github.com/stretchr/testify v1.8.4
  • go.uber.org/multierr v1.11.0
  • golang.org/x/crypto v0.15.0
regex
pkg/images/images.go
  • quay.io/argoproj/argocd v2.9.2
  • docker.io/redis 7.2.3

  • Check this box to trigger a request for Renovate to run again on this repository

Steward incompatible to ArgoCD 1.8

Because the ArgoCD projectsyn/component-argocd#14 1.8 upgrade requires switching from a deployment to a statefulset, Steward now tries to recreate the deployment as it believes ArgoCD is not fully deployed.

I0204 16:25:04.214181       1 argocd.go:52] Found 3 of expected 4 deployments, bootstrapping now
I0204 16:25:04.231714       1 configmap.go:97] Update existing ConfigMap argocd-ssh-known-hosts-cm
I0204 16:25:04.252839       1 configmap.go:97] Update existing ConfigMap argocd-tls-certs-cm
I0204 16:25:04.282520       1 configmap.go:97] Update existing ConfigMap argocd-rbac-cm
I0204 16:25:04.296355       1 configmap.go:97] Update existing ConfigMap argocd-cm
I0204 16:25:04.431858       1 argo-crds.go:62] applications.argoproj.io CRD already exists, skip
I0204 16:25:04.486824       1 argo-crds.go:62] appprojects.argoproj.io CRD already exists, skip
W0204 16:25:04.527691       1 redis.go:86] Argo CD redis service already exists
W0204 16:25:04.556087       1 redis.go:95] Argo CD redis deployment already exists
W0204 16:25:04.856737       1 repo-server.go:137] Argo CD repo-server service already exists
W0204 16:25:04.970265       1 repo-server.go:146] Argo CD repo-server deployment already exists
W0204 16:25:05.090080       1 server.go:130] Argo CD server already exists
W0204 16:25:05.271566       1 argo-app.go:60] Argo Project already exists, skip
W0204 16:25:05.340621       1 argo-app.go:106] Argo App already exists, skip
I0204 16:25:05.358146       1 app-controller.go:103] Created Argo CD application-controller deployment

Rework Documentation of Steward

Currently the documentation of Steward is very scarce and should be updated to make using and understanding Steward a breeze.

The documentation should:

  • describe the concept of Steward: What does it do? How does it work?
  • show the configuration options

Also the start page of https://syn.tools/steward/index.html should give a short intro to Steward, so that it gives an idea what it's all about.

Adhere to https://documentation.divio.com/ for putting the pages and content into the right context.

Write Documentation

Write some basic documentation about this tool.

Task Deliverables

  • Basic documentation about Steward

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.