Skip to content

Commit ed9c7da

Browse files
committed
first commit
0 parents  commit ed9c7da

File tree

101 files changed

+24833
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+24833
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
---
2+
name: Bug report
3+
about: Report a bug in the cloud-provider-stackit
4+
title: ""
5+
labels: bug
6+
assignees: ""
7+
---
8+
9+
## Description
10+
11+
_Please add a clear and concise description of what the bug is._
12+
13+
## Steps to reproduce
14+
15+
_Please provide us with the steps to reproduce the behavior._
16+
17+
1. Run ...
18+
2. ...
19+
20+
## Actual behavior
21+
22+
_Please describe the current behavior of the cloud-provider-stackit. Don't forget to add detailed information like error messages._
23+
24+
## Expected behavior
25+
26+
_Please describe the behavior which you would expect from the cloud-provider-stackit in that case._
27+
28+
## Environment
29+
30+
- Kubernetes version:
31+
- Version of the cloud-provider-stackit:
32+
33+
**Additional information**
34+
35+
_Feel free to add any additional information here._
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for the cloud-provider-stackit
4+
title: ""
5+
labels: enhancement
6+
assignees: ""
7+
---
8+
9+
## Problem description
10+
11+
_Is your feature request related to a problem? If so, please give us a clear and concise description of what the problem is._
12+
13+
## Proposed solution
14+
15+
_A clear and concise description of what you want to happen._
16+
17+
## Alternative solutions (optional)
18+
19+
_A clear and concise description of any alternative solutions or features you've considered. (optional)_
20+
21+
## Additional information
22+
23+
_Feel free to add any additional information here._

.github/pull_request_template.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
**How to categorize this PR?**
2+
3+
<!--
4+
Please select the kind of this pull request, e.g.:
5+
/kind enhancement
6+
7+
Tide will not merge your PR, if it is missing a `kind/*` label.
8+
"/kind" identifiers: api-change|bug|cleanup|discussion|enhancement|epic|impediment|poc|post-mortem|question|regression|task|technical-debt|test
9+
-->
10+
11+
**What this PR does / why we need it**:
12+
13+
**Related work items**:
14+
15+
**Special notes for your reviewer**:
16+
17+
**Breaking changes**:
18+
19+
<!--
20+
If your PR contains breaking changes, list the changes in detail here.
21+
This could be:
22+
- removing a documented feature, that we need to announce properly
23+
- a change of the configuration, that needs to be adopted in the provider-stackit
24+
25+
Additionally, add the breaking label for the release note generation via:
26+
/label breaking
27+
-->

.github/release.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
changelog:
2+
exclude:
3+
labels:
4+
- no-release-note
5+
categories:
6+
- title: ⚠️ Breaking Changes
7+
labels:
8+
- breaking
9+
- title: ✨ Features
10+
labels:
11+
- kind/enhancement
12+
- title: 🐛 Bug Fixes
13+
labels:
14+
- kind/bug
15+
- title: ℹ️ Other Changes
16+
labels:
17+
- "*"

.github/renovate.json5

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
{
2+
$schema: 'https://docs.renovatebot.com/renovate-schema.json',
3+
extends: [
4+
'config:recommended',
5+
'github>stackitcloud/ske-ci-infra//config/renovate/ske.json5',
6+
],
7+
additionalReviewers: [
8+
'hown3d',
9+
'nschad',
10+
],
11+
baseBranchPatterns: [
12+
'main',
13+
'release-v1.33',
14+
'release-v1.32',
15+
'release-v1.31',
16+
],
17+
customManagers: [
18+
{
19+
customType: 'regex',
20+
managerFilePatterns: [
21+
'pkg/csi/blockstorage/driver.go',
22+
],
23+
matchStrings: [
24+
'specVersion\\s*=\\s*"(?<currentValue>.+?)"',
25+
],
26+
depNameTemplate: 'github.com/container-storage-interface/spec',
27+
versioningTemplate: 'semver',
28+
extractVersionTemplate: '^v?(?<version>.*)$',
29+
datasourceTemplate: 'go',
30+
},
31+
],
32+
packageRules: [
33+
{
34+
matchPackageNames: [
35+
'/^github.com/stackitcloud/stackit-sdk-go/',
36+
],
37+
postUpgradeTasks: {
38+
commands: [
39+
'make generate',
40+
],
41+
executionMode: 'branch',
42+
},
43+
},
44+
{
45+
matchPackageNames: [
46+
'github.com/stackitcloud/stackit-sdk-go/services/loadbalancer'
47+
],
48+
additionalReviewers: [
49+
"team:loadbalancer"
50+
],
51+
matchUpdateTypes: [
52+
'major',
53+
'minor'
54+
],
55+
},
56+
{
57+
matchManagers: [
58+
'gomod',
59+
],
60+
matchUpdateTypes: [
61+
'patch',
62+
'digest',
63+
],
64+
automerge: true,
65+
addLabels: [
66+
'skip-review',
67+
],
68+
},
69+
{
70+
matchPackageNames: [
71+
'/^k8s.io/',
72+
],
73+
matchBaseBranches: [
74+
'main',
75+
],
76+
automerge: false,
77+
},
78+
{
79+
matchPackageNames: [
80+
'/^k8s.io/',
81+
],
82+
matchBaseBranches: [
83+
'release-v1.33',
84+
],
85+
allowedVersions: '<0.34.0',
86+
automerge: false,
87+
},
88+
{
89+
matchPackageNames: [
90+
'/^k8s.io/',
91+
],
92+
matchBaseBranches: [
93+
'release-v1.32',
94+
],
95+
allowedVersions: '<0.33.0',
96+
automerge: false,
97+
},
98+
{
99+
matchPackageNames: [
100+
'/^k8s.io/',
101+
],
102+
matchBaseBranches: [
103+
'release-v1.31',
104+
],
105+
allowedVersions: '<0.32.0',
106+
automerge: false,
107+
},
108+
{
109+
groupName: 'devTools non-major',
110+
matchManagers: [
111+
'custom.regex',
112+
],
113+
matchFileNames: [
114+
'/Makefile$/',
115+
'/\\.mk$/',
116+
'/\\.sh$/',
117+
],
118+
matchUpdateTypes: [
119+
'minor',
120+
'patch',
121+
],
122+
automerge: true,
123+
addLabels: [
124+
'skip-review',
125+
],
126+
},
127+
],
128+
}

.gitignore

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
.vscode
2+
.idea
3+
/dev
4+
/secrets
5+
/hack/tools/bin
6+
cover.out
7+
cover.html
8+
.envrc
9+
10+
# test binaries and reports
11+
*.test
12+
junit.xml
13+
14+
# files related to ondemand plugin
15+
quotas*
16+
hmac
17+
18+
cloud-config.yaml
19+
__debug_*

.golangci.yaml

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
version: "2"
2+
run:
3+
issues-exit-code: 1
4+
tests: true
5+
linters:
6+
default: none
7+
enable:
8+
- bodyclose
9+
- copyloopvar
10+
- dogsled
11+
- dupl
12+
- exhaustive
13+
- funlen
14+
- ginkgolinter
15+
- goconst
16+
- gocritic
17+
- gocyclo
18+
- goprintffuncname
19+
- govet
20+
- importas
21+
- ineffassign
22+
- misspell
23+
- nakedret
24+
- noctx
25+
- nolintlint
26+
- prealloc
27+
- revive
28+
- rowserrcheck
29+
- staticcheck
30+
- unconvert
31+
- unparam
32+
- unused
33+
- whitespace
34+
settings:
35+
dupl:
36+
threshold: 100
37+
exhaustive:
38+
default-signifies-exhaustive: true
39+
funlen:
40+
lines: 100
41+
statements: 50
42+
goconst:
43+
min-len: 2
44+
min-occurrences: 5
45+
gocritic:
46+
disabled-checks:
47+
- dupImport
48+
- ifElseChain
49+
- octalLiteral
50+
- whyNoLint
51+
- wrapperFunc
52+
- sprintfQuotedString
53+
enabled-tags:
54+
- diagnostic
55+
- experimental
56+
- opinionated
57+
- performance
58+
- style
59+
gocyclo:
60+
min-complexity: 15
61+
importas:
62+
alias:
63+
# kubernetes packages
64+
- pkg: k8s.io/api/(\w+)/(v[\w\d]+)
65+
alias: $1$2
66+
- pkg: k8s.io/apimachinery/pkg/apis/(\w+)/(v[\w\d]+)
67+
alias: $1$2
68+
- pkg: k8s.io/apiextensions-apiserver/pkg/apis/(\w+)/(v[\w\d]+)
69+
alias: $1$2
70+
- pkg: k8s.io/apimachinery/pkg/api/([^m]\w+)
71+
alias: api${1}
72+
- pkg: k8s.io/apimachinery/pkg/api/meta/table
73+
alias: metatable
74+
- pkg: k8s.io/apimachinery/pkg/util/(\w+)
75+
alias: util${1}
76+
- pkg: k8s.io/client-go/tools/clientcmd/api/(\w+)
77+
alias: clientcmd${1}
78+
- pkg: sigs.k8s.io/controller-runtime/pkg/client/fake
79+
alias: fakeclient
80+
- pkg: sigs.k8s.io/controller-runtime/pkg/log/zap
81+
alias: logzap
82+
- pkg: sigs.k8s.io/controller-runtime/pkg/log
83+
alias: logf
84+
lll:
85+
line-length: 165
86+
misspell:
87+
locale: US
88+
nolintlint:
89+
allow-unused: false # report any unused nolint directives
90+
require-explanation: true # require an explanation for nolint directives
91+
require-specific: true # require nolint directives to be specific about which linter is being skipped
92+
revive:
93+
confidence: 0
94+
exclusions:
95+
generated: lax
96+
presets:
97+
- comments
98+
- common-false-positives
99+
- legacy
100+
- std-error-handling
101+
rules:
102+
- linters:
103+
- goconst
104+
- noctx
105+
- dupl
106+
path: _test\.go
107+
- linters:
108+
- gocritic
109+
text: uncheckedInlineErr:.+client.Ignore(NotFound|AlreadyExists)
110+
- linters:
111+
- nolintlint
112+
text: should be written without leading space as `//nolint # don't require machine-readable nolint directives (i.e. with no leading space)
113+
- linters:
114+
- revive
115+
- staticcheck
116+
text: should not use dot imports
117+
- linters:
118+
- revive
119+
text: 'var-naming: avoid meaningless package names'
120+
path: 'pkg/csi/util/*'
121+
paths:
122+
- third_party$
123+
- builtin$
124+
- examples$
125+
- pkg/imagesync/third_party/.*
126+
formatters:
127+
enable:
128+
- goimports
129+
exclusions:
130+
generated: lax
131+
paths:
132+
- third_party$
133+
- builtin$
134+
- examples$

.ko.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
builds:
2+
- id: stackit-csi-plugin
3+
main: ./cmd/stackit-csi-plugin
4+
ldflags:
5+
- -s -w
6+
- -X github.com/stackitcloud/cloud-provider-stackit/pkg/version.Version={{.Env.VERSION}}
7+

0 commit comments

Comments
 (0)