add k8s utils

This commit is contained in:
Michael Beasley 2025-03-21 09:50:05 -08:00
parent 40a935dd8d
commit d3481db750
3 changed files with 60 additions and 0 deletions

35
.pre-commit-config.yaml Normal file
View File

@ -0,0 +1,35 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: trailing-whitespace
- id: check-added-large-files
- id: end-of-file-fixer
- repo: https://github.com/hhatto/autopep8
rev: 'v2.3.2'
hooks:
- id: autopep8
- repo: https://github.com/gitleaks/gitleaks.git
rev: 'v8.24.0'
hooks:
- id: gitleaks
- repo: https://github.com/koalaman/shellcheck-precommit
rev: v0.10.0
hooks:
- id: shellcheck
exclude: .*jenkins-slave$
- repo: https://github.com/hadolint/hadolint
rev: v2.13.1-beta
hooks:
- id: hadolint-docker
args:
- --ignore=DL3015 # Ignore not using --no-install-recommends with apt
- --ignore=DL3008 # Ignore not pinning all software package versions (apt-get)
- --ignore=DL3018 # Ignore not pinning all software package versions (apk)
- --ignore=SC1091 # Ignore missing shellcheck mock files
- repo: https://github.com/gruntwork-io/pre-commit
rev: 'v0.1.26'
hooks:
- id: terraform-validate

View File

@ -107,6 +107,15 @@ map('n', '<leader>tn', '<Cmd>FloatermNew<CR>', { desc = '[T]erminal [New]' })
map('n', '<leader>tN', '<Cmd>FloatermNext<CR>', { desc = 'Cycle Next Terminal' }) map('n', '<leader>tN', '<Cmd>FloatermNext<CR>', { desc = 'Cycle Next Terminal' })
vim.g.floaterm_title = 'Terminal ($1/$2)' vim.g.floaterm_title = 'Terminal ($1/$2)'
-- Kubernetes keymaps
map('n', '<leader>kkK', '<cmd>OpenK9s<CR>', { desc = 'Open [K]9s' })
map('n', '<leader>kkk', '<cmd>OpenK9sSplit<CR>', { desc = 'Open [k]9s in Split Pane' })
map('n', '<leader>klv', '<cmd>ViewPodLogs<CR>', { desc = '[V]iew Pod Logs' })
map('n', '<leader>klf', '<cmd>JsonFormatLogs<CR>', { desc = 'JSON Log [F]ormat' })
map('n', '<leader>kkt', '<cmd>ToggleYamlHelm<CR>', { desc = '[T]oggle YAML/Helm' })
map('n', '<leader>kht', '<cmd>HelmTemplateFromBuffer<CR>', { desc = '[H]elm [T]emplate' })
map('n', '<leader>khu', '<cmd>HelmDependencyUpdateFromBuffer<CR>', { desc = '[H]elm Dependency [U]pdate' })
-- Diagnostic keymaps -- Diagnostic keymaps
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' }) vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
@ -322,6 +331,10 @@ require('lazy').setup({
-- Document existing key chains -- Document existing key chains
spec = { spec = {
{ '<leader>k', group = '[K]ubernetes' },
{ '<leader>kk', group = '[K]ubectl' },
{ '<leader>kl', group = '[L]ogs' },
{ '<leader>kh', group = '[H]elm' },
{ '<leader>c', group = '[C]ode', mode = { 'n', 'x' } }, { '<leader>c', group = '[C]ode', mode = { 'n', 'x' } },
{ '<leader>d', group = '[D]ocument' }, { '<leader>d', group = '[D]ocument' },
{ '<leader>r', group = '[R]ename' }, { '<leader>r', group = '[R]ename' },
@ -330,6 +343,7 @@ require('lazy').setup({
{ '<leader>w', group = '[W]orkspace' }, { '<leader>w', group = '[W]orkspace' },
{ '<leader>t', group = '[T]oggle' }, { '<leader>t', group = '[T]oggle' },
{ '<leader>b', group = '[B]uffer' }, { '<leader>b', group = '[B]uffer' },
{ '<leader>l', group = '[L]azy Git' },
{ '<leader>h', group = 'Git [H]unk', mode = { 'n', 'v' } }, { '<leader>h', group = 'Git [H]unk', mode = { 'n', 'v' } },
}, },
}, },

View File

@ -0,0 +1,11 @@
return {
{
'h4ckm1n-dev/kube-utils-nvim',
dependencies = { 'nvim-telescope/telescope.nvim' },
lazy = true,
event = 'VeryLazy',
config = function()
require('kube-utils-nvim').setup()
end,
},
}