ks-releaser

command module
v0.0.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

README

codecov GitHub All Releases

This project aims to help to release a project which especially has multiple git repositories.

Features

  • Support to create a tag for a git repository
  • Support to create a release (or pre-release) for a GitHub repository
  • Metrics support for the release action count
  • Support to integrate with GitOps framework (such as Argo CD)

Installation

Install it to a Kubernetes cluster. You can use kubekey or ks CLI.

Requirement

For local environment

make deploy

For production environment

kubectl apply -f https://github.com/kubesphere-sigs/ks-releaser/releases/latest/download/install.yaml

or install it without ServiceMonitor

kubectl apply -f https://github.com/kubesphere-sigs/ks-releaser/releases/latest/download/install-no-monitor.yaml

How to use

Create a secret for your git repositories with name test-git, such as:

apiVersion: v1
stringData:
  password: admin
  username: admin
kind: Secret
metadata:
  name: test-git
  namespace: default
type: "kubernetes.io/basic-auth"

Create a Kubernetes custom resource with the following example:

apiVersion: devops.kubesphere.io/v1alpha1
kind: Releaser
metadata:
  name: releaser-sample
spec:
  repositories:
    - name: test
      address: https://gitee.com/linuxsuren/test
      branch: master
  secret:
    name: test-git
    namespace: default

Integration with ArgoCD

Please provide the corresponding git repository if you want to use GitOps way.

apiVersion: devops.kubesphere.io/v1alpha1
kind: Releaser
metadata:
  name: releaser-sample
spec:
  gitOps:
    enable: true
    repository:
      address: https://gitee.com/linuxsuren/linuxsuren-releaser
      branch: master
      name: test
  repositories:
    - name: test
      address: https://gitee.com/linuxsuren/test
      branch: master
  secret:
    name: test-git
    namespace: default

Wait for a while, you can check your git repositories to see if there is a new git tag over there.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
v1alpha1
Package v1alpha1 contains API Schema definitions for the devops v1alpha1 API group +kubebuilder:object:generate=true +groupName=devops.kubesphere.io
Package v1alpha1 contains API Schema definitions for the devops v1alpha1 API group +kubebuilder:object:generate=true +groupName=devops.kubesphere.io

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL