Skip to content
This repository was archived by the owner on Jul 10, 2024. It is now read-only.
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions submarine-cloud-v2/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,7 @@ all: charts

.PHONY: api
api:
@cd hack; echo "Generating API..."; ./update-codegen.sh; \
echo "Verifying API..."; ./verify-codegen.sh
./hack/update-codegen.sh

.PHONY: image
image: charts
Expand Down
13 changes: 3 additions & 10 deletions submarine-cloud-v2/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,15 @@ For `yaml` files, please use [prettier](https://prettier.io/) to format the code
```bash
minikube start --vm-driver=docker --kubernetes-version v1.15.11
go mod vendor
chmod -R 777 vendor
```

# Generate API

- It makes use of the generators in [k8s.io/code-generator](https://github.com/kubernetes/code-generator) to generate a typed client, informers, listers and deep-copy functions. You can do this yourself using the ./update-codegen.sh script. (Note: Before you run update-codegen.sh and verify-codegen.sh, you need to move to hack/ directory at first.)
We use the generators in [k8s.io/code-generator](https://github.com/kubernetes/code-generator) to generate a typed client, informers, listers and deep-copy functions.

```bash
# Step1: Modify doc.go & types.go
# Step2: Generate API to pkg/generated
cd hack
./update-codegen.sh
**Important**: You **MUST** put this repository in a folder named `github.com/apache/`, otherwise the code will be generated into wrong folder. Therefore the full path of this `README.md` should be like `SOMEWHERE_IN_FILESYSTEM/github.com/apache/submarine/submarine-cloud-v2/README.md`.

# Step3: Verify API
./verify-codegen.sh
```
Everytime when you change the codes in `pkg/apis`, you must run `make api` to re-generate the API.

# Add new dependencies

Expand Down
12 changes: 6 additions & 6 deletions submarine-cloud-v2/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@ import (
"encoding/json"
"fmt"

clientset "submarine-cloud-v2/pkg/generated/clientset/versioned"
submarinescheme "submarine-cloud-v2/pkg/generated/clientset/versioned/scheme"
informers "submarine-cloud-v2/pkg/generated/informers/externalversions/submarine/v1alpha1"
listers "submarine-cloud-v2/pkg/generated/listers/submarine/v1alpha1"
"submarine-cloud-v2/pkg/helm"
v1alpha1 "submarine-cloud-v2/pkg/submarine/v1alpha1"
v1alpha1 "github.com/apache/submarine/submarine-cloud-v2/pkg/apis/submarine/v1alpha1"
clientset "github.com/apache/submarine/submarine-cloud-v2/pkg/client/clientset/versioned"
submarinescheme "github.com/apache/submarine/submarine-cloud-v2/pkg/client/clientset/versioned/scheme"
informers "github.com/apache/submarine/submarine-cloud-v2/pkg/client/informers/externalversions/submarine/v1alpha1"
listers "github.com/apache/submarine/submarine-cloud-v2/pkg/client/listers/submarine/v1alpha1"
"github.com/apache/submarine/submarine-cloud-v2/pkg/helm"
"time"

appsv1 "k8s.io/api/apps/v1"
Expand Down
10 changes: 5 additions & 5 deletions submarine-cloud-v2/go.mod
Original file line number Diff line number Diff line change
@@ -1,25 +1,25 @@
module submarine-cloud-v2
module github.com/apache/submarine/submarine-cloud-v2

go 1.16

require (
github.com/fatih/color v1.7.0
github.com/gofrs/flock v0.8.0
github.com/pkg/errors v0.9.1
github.com/traefik/traefik/v2 v2.4.8
gonum.org/v1/netlib v0.0.0-20190331212654-76723241ea4e // indirect
gopkg.in/yaml.v2 v2.4.0
helm.sh/helm/v3 v3.5.3
k8s.io/api v0.20.4
k8s.io/apimachinery v0.20.4
k8s.io/client-go v0.20.4
k8s.io/code-generator v0.20.4
k8s.io/klog/v2 v2.4.0
k8s.io/code-generator v0.21.2
k8s.io/klog/v2 v2.8.0
)

replace (
github.com/abbot/go-http-auth => github.com/containous/go-http-auth v0.4.1-0.20200324110947-a37a7636d23e
github.com/docker/distribution => github.com/docker/distribution v0.0.0-20191216044856-a8371794149d
github.com/docker/docker => github.com/moby/moby v17.12.0-ce-rc1.0.20200618181300-9dc6525e6118+incompatible
github.com/abbot/go-http-auth => github.com/containous/go-http-auth v0.4.1-0.20200324110947-a37a7636d23e
github.com/go-check/check => github.com/containous/check v0.0.0-20170915194414-ca0bf163426a
github.com/gorilla/mux => github.com/containous/mux v0.0.0-20181024131434-c33f32e26898
github.com/mailgun/minheap => github.com/containous/minheap v0.0.0-20190809180810-6e71eb837595
Expand Down
106 changes: 69 additions & 37 deletions submarine-cloud-v2/go.sum

Large diffs are not rendered by default.

17 changes: 8 additions & 9 deletions submarine-cloud-v2/hack/update-codegen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,13 @@ set -o errexit
set -o nounset
set -o pipefail

# generate the code with:
# --output-base because this script should also be able to run inside the vendor dir of
# k8s.io/kubernetes. The output-base is needed for the generators to output into the vendor dir
# instead of the $GOPATH directly. For normal projects this can be dropped.
../vendor/k8s.io/code-generator/generate-groups.sh \
SCRIPT_ROOT=$(dirname "${BASH_SOURCE[0]}")/..
CODEGEN_PKG=${CODEGEN_PKG:-$(cd "${SCRIPT_ROOT}"; ls -d -1 ./vendor/k8s.io/code-generator 2>/dev/null || echo ../code-generator)}

bash "${CODEGEN_PKG}"/generate-groups.sh \
"deepcopy,client,informer,lister" \
submarine-cloud-v2/pkg/generated \
submarine-cloud-v2/pkg \
github.com/apache/submarine/submarine-cloud-v2/pkg/client \
github.com/apache/submarine/submarine-cloud-v2/pkg/apis \
submarine:v1alpha1 \
--go-header-file $(pwd)/boilerplate.go.txt \
--output-base $(pwd)/../../
--go-header-file "${SCRIPT_ROOT}"/hack/boilerplate.go.txt \
--output-base "$(dirname ${BASH_SOURCE[0]})/../../../../.."
6 changes: 3 additions & 3 deletions submarine-cloud-v2/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ package main

import (
"flag"
clientset "github.com/apache/submarine/submarine-cloud-v2/pkg/client/clientset/versioned"
informers "github.com/apache/submarine/submarine-cloud-v2/pkg/client/informers/externalversions"
"github.com/apache/submarine/submarine-cloud-v2/pkg/signals"
"os"
clientset "submarine-cloud-v2/pkg/generated/clientset/versioned"
informers "submarine-cloud-v2/pkg/generated/informers/externalversions"
"submarine-cloud-v2/pkg/signals"
"time"

kubeinformers "k8s.io/client-go/informers"
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.