Skip to content

Commit be5f806

Browse files
authored
karpenter resources nodepool and ec2 nodeclass helm chart (#326)
1 parent 31b0e41 commit be5f806

File tree

9 files changed

+1438
-0
lines changed

9 files changed

+1438
-0
lines changed
Lines changed: 384 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,384 @@
1+
# Default .helmignore file
2+
# Exclude common files and directories that should not be packaged in a Helm chart.
3+
4+
# VCS directories
5+
.git/
6+
.gitignore
7+
.gitattributes
8+
.github/
9+
.svn/
10+
.hg/
11+
12+
# Editor and OS specific files
13+
.DS_Store
14+
*~
15+
*.swp
16+
*.bak
17+
*.tmp
18+
*.orig
19+
Thumbs.db
20+
21+
# Chart sources and build artifacts (if any, not typical for simple charts)
22+
src/
23+
target/
24+
*.tar.gz
25+
26+
# CI/CD files
27+
.circleci/
28+
.travis.yml
29+
Jenkinsfile
30+
31+
# Node.js dependencies (if any JavaScript tooling is used locally for chart development)
32+
node_modules/
33+
npm-debug.log
34+
yarn-error.log
35+
36+
# Python virtual environments and cache
37+
venv/
38+
.venv/
39+
__pycache__/
40+
*.pyc
41+
*.pyo
42+
.pytest_cache/
43+
44+
# Schemas directory - typically not packaged with the chart itself if only used for linting locally
45+
# However, some tools might leverage it if present. For now, let's exclude it as it's primarily a dev tool.
46+
schemas/
47+
# If users need the schemas alongside the chart, this line can be removed.
48+
49+
# README.md files in subdirectories, if any (the top-level README is usually kept)
50+
*/README.md
51+
*/README.txt
52+
53+
# Test files or directories not part of Helm's own testing framework
54+
tests/
55+
test/
56+
57+
# Any other local configuration or temporary files
58+
local-values.yaml
59+
debug.yaml
60+
output.yaml
61+
notes.txt # Helm notes are typically in templates/NOTES.txt
62+
LICENSE # The chart's license is usually at the top level, not for sub-components to be ignored.
63+
# If this chart had subcharts in a 'charts/' directory, their own .helmignore would apply to them.
64+
# This .helmignore applies to the current chart's packaging.
65+
karpenter-custom-resources-*.tgz # Ignore previously packaged chart files
66+
NOTES.txt
67+
README.md # The main README.md should be included
68+
# Keep the main Chart.yaml, values.yaml, and templates/
69+
# Keep LICENSE if it's at the root
70+
# Keep crds/ if used (not used in this chart structure)
71+
# Exclude specific files if they are not part of the chart
72+
values.schema.json # Often used for linting, can be excluded from package
73+
# values.dev.yaml
74+
# values.prod.yaml
75+
# Pipfile
76+
# Pipfile.lock
77+
# requirements.txt # If used for Python tooling, not for Helm chart deps themselves
78+
# Gemfile
79+
# Gemfile.lock
80+
# .idea/
81+
# *.code-workspace
82+
# *.sublime-project
83+
# *.sublime-workspace
84+
.vscode/
85+
# If there are specific large files or assets not meant for deployment
86+
# large-asset.zip
87+
# datafiles/
88+
# docs/ # If documentation is extensive and not meant to be in the chart package
89+
# examples/ # If example configurations are for reference and not part of deployment
90+
# scripts/ # Utility scripts for development, not for chart runtime
91+
# Makefile
92+
# Dockerfile # If used for testing environment, not for chart
93+
# .editorconfig
94+
# .yamllint
95+
# .pre-commit-config.yaml
96+
# OWNERS
97+
# CODE_OF_CONDUCT.md
98+
# CONTRIBUTING.md
99+
# SECURITY_CONTACTS
100+
# Renovate configuration files
101+
.renovaterc.json
102+
renovate.json
103+
.github/renovate.json
104+
.github/renovate.json5
105+
renovate.json5
106+
.gitlab/renovate.json
107+
.gitlab/renovate.json5
108+
# Terraform files
109+
*.tf
110+
*.tfvars
111+
.terraform/
112+
.terraform.lock.hcl
113+
# Serverless framework files
114+
.serverless/
115+
serverless.yml
116+
serverless.yaml
117+
serverless.json
118+
# Pulumi files
119+
Pulumi.yaml
120+
Pulumi.*.yaml
121+
__main__.py
122+
# Ansible files
123+
ansible.cfg
124+
ansible_*.yaml
125+
inventory/
126+
roles/
127+
playbooks/
128+
# Backup files
129+
*.bak
130+
*.old
131+
*.orig
132+
# Log files
133+
*.log
134+
# Archives
135+
*.zip
136+
*.tar
137+
*.tar.gz
138+
*.rar
139+
*.7z
140+
# Compiled files
141+
*.com
142+
*.class
143+
*.dll
144+
*.exe
145+
*.o
146+
*.so
147+
# Sensitive files (though these should ideally not be in the repo at all)
148+
*.pem
149+
*.key
150+
*.cer
151+
*.crt
152+
*private*.key
153+
*secret*.yaml
154+
# Chart test values files
155+
ci/*-values.yaml
156+
# Temp files from Helm tests
157+
/tmp/*
158+
# Build files
159+
dist/
160+
build/
161+
# Coverage reports
162+
coverage/
163+
.coverage
164+
# Linting cache files
165+
.cache/
166+
.mypy_cache/
167+
.ruff_cache/
168+
# Specific to this project if any other non-chart files exist
169+
# For example, if I had python scripts for generating parts of the chart:
170+
# scripts/
171+
# generated/
172+
# test_outputs/
173+
# Any other file or directory that is not part of the Helm chart itself.
174+
# The schemas are useful for validation but not strictly needed in the packaged chart.
175+
# Keeping values.schema.json in the chart allows `helm lint --with-subcharts .` to work
176+
# and `helm install --dry-run --validate .` to work without needing external schema files.
177+
# So, let's NOT ignore values.schema.json and the schemas/ directory for now.
178+
# Let's re-evaluate if they cause issues or are not desired in the package.
179+
# For now, I will keep schemas/ and values.schema.json in the chart.
180+
# So, I will remove them from the ignore list above.
181+
182+
# Final cleanup:
183+
# Keep:
184+
# - Chart.yaml
185+
# - values.yaml
186+
# - templates/
187+
# - README.md
188+
# - LICENSE
189+
# - values.schema.json
190+
# - schemas/ (due to values.schema.json referencing it)
191+
192+
# Therefore, the .helmignore should primarily focus on VCS, OS, editor, and language-specific temp/build files.
193+
# And also ignore any packaged chart tgz files.
194+
195+
# VCS
196+
.git/
197+
.gitignore
198+
.gitattributes
199+
.github/ # Assuming workflows are not part of the chart package itself
200+
.svn/
201+
.hg/
202+
203+
# OS generated files
204+
.DS_Store
205+
.DS_Store?
206+
._*
207+
.Spotlight-V100
208+
.Trashes
209+
ehthumbs.db
210+
Thumbs.db
211+
212+
# Editor directories and files
213+
.idea/
214+
.vscode/ # Exclude if it contains user-specific settings not for sharing
215+
*.sublime-project
216+
*.sublime-workspace
217+
*~
218+
*.swp
219+
*.swo
220+
*.bak
221+
*.tmp
222+
*.orig
223+
224+
# Packaged chart file
225+
*.tgz
226+
227+
# Common build/dependency directories
228+
node_modules/
229+
vendor/
230+
bower_components/
231+
232+
# Python stuff
233+
venv/
234+
.venv/
235+
__pycache__/
236+
*.pyc
237+
*.pyo
238+
*.egg-info/
239+
pip-wheel-metadata/
240+
.pytest_cache/
241+
.mypy_cache/
242+
.ruff_cache/
243+
build/
244+
dist/
245+
eggs/
246+
parts/
247+
sdist/
248+
var/
249+
wheels/
250+
*.egg
251+
252+
# Log files
253+
*.log
254+
255+
# Temporary or Test files not following Helm's test structure
256+
test-output/
257+
coverage/
258+
htmlcov/
259+
.tox/
260+
# If you have other specific project files that aren't part of the chart:
261+
# e.g. Makefiles, Dockerfiles for testing, etc.
262+
# Makefile
263+
# Dockerfile
264+
# Jenkinsfile
265+
# .travis.yml
266+
# .gitlab-ci.yml
267+
# circle.yml
268+
# Pipfile
269+
# Pipfile.lock
270+
# Gemfile
271+
# Gemfile.lock
272+
# composer.json
273+
# composer.lock
274+
# yarn.lock
275+
# package-lock.json
276+
# go.sum
277+
# go.mod (if it's for tooling around the chart, not the chart itself)
278+
# *.tf # Terraform files
279+
# *.tfstate # Terraform state files
280+
281+
# READMEs in subfolders, but keep the main one
282+
templates/README.md
283+
schemas/README.md
284+
# charts/README.md # If this chart had subcharts
285+
286+
# NOTES.txt in subfolders, but keep the main one in templates/
287+
schemas/NOTES.txt
288+
# charts/NOTES.txt
289+
290+
# Own chart's packaged file
291+
karpenter-custom-resources-*.tgz
292+
チャート.tgz # Japanese
293+
차트.tgz # Korean
294+
图表.tgz # Chinese
295+
карта.tgz # Russian
296+
แผนภูมิ.tgz # Thai
297+
แผนผัง.tgz # Thai
298+
biểu đồ.tgz # Vietnamese
299+
biểu đồ.tgz # Vietnamese
300+
301+
# Files that should be part of the chart:
302+
# Chart.yaml
303+
# values.yaml
304+
# templates/**
305+
# README.md (root)
306+
# LICENSE (root)
307+
# values.schema.json (root)
308+
# schemas/** (referenced by values.schema.json)
309+
# crds/** (if any)
310+
# charts/** (subcharts)
311+
# templates/NOTES.txt
312+
# requirements.yaml (deprecated, but if used for chart dependencies)
313+
# Chart.lock (generated from dependencies)
314+
# .helmignore (this file itself)
315+
# OWNERS (if used for chart ownership)
316+
# assets/** (if chart includes images or other assets)
317+
# static/** (similar to assets)
318+
# app-readme.md (if exists)
319+
# questions.yaml (if exists for Rancher UI)
320+
# values.schema.yaml (alternative to json)
321+
# values.dev.yaml etc. should be ignored if they are local overrides
322+
values-*.yaml
323+
local-values.yaml
324+
my-values.yaml
325+
debug-values.yaml
326+
ci/
327+
# The schemas directory is needed for `helm lint` and `helm install --validate` to work correctly
328+
# if values.schema.json references them. So, don't ignore `schemas/`.
329+
# `values.schema.json` is also needed for the same reason.
330+
# So, the files to explicitly NOT ignore are:
331+
# Chart.yaml, values.yaml, templates/, README.md, LICENSE, values.schema.json, schemas/
332+
# This .helmignore will exclude most other common non-chart files.
333+
# Remove .github/ as it might contain issue templates or PR templates relevant to the chart project.
334+
# Keeping .github/ for now, as it's not part of the helm package content.
335+
336+
# Final minimal set for this project:
337+
# VCS
338+
.git/
339+
.svn/
340+
.hg/
341+
342+
# OS generated files
343+
.DS_Store
344+
._*
345+
Thumbs.db
346+
347+
# Editor temp files
348+
*~
349+
*.swp
350+
351+
# Packaged chart file
352+
*.tgz
353+
354+
# Python cache/build
355+
__pycache__/
356+
*.pyc
357+
*.pyo
358+
.pytest_cache/
359+
.mypy_cache/
360+
.ruff_cache/
361+
362+
# Node dev dependencies
363+
node_modules/
364+
# Local override values files
365+
values-local.yaml
366+
local-values.yaml
367+
my-values.yaml
368+
secrets.yaml
369+
secrets.*.yaml
370+
private.yaml
371+
private.*.yaml
372+
373+
# CI specific value files if they are not meant to be packaged
374+
ci-values.yaml
375+
test-values.yaml
376+
karpenter-custom-resources/values.schema.json
377+
karpenter-custom-resources/schemas/ec2nodeclass-schema.json
378+
karpenter-custom-resources/schemas/nodepool-schema.json
379+
karpenter-custom-resources/Chart.yaml
380+
karpenter-custom-resources/values.yaml
381+
karpenter-custom-resources/templates/_helpers.tpl
382+
karpenter-custom-resources/templates/ec2nodeclass.yaml
383+
karpenter-custom-resources/templates/nodepool.yaml
384+
karpenter-custom-resources/.helmignore

0 commit comments

Comments
 (0)