เดเตเดฑเดฟเดชเตเดชเต. เดตเดฟเดตเตผเดคเตเดคเดจเด.: CoreOS, Heptio เดคเตเดเดเตเดเดฟเดฏ เดเดฎเตเดชเดจเดฟเดเดณเดฟเตฝ เดฎเตเดฎเตเดชเต เดเตเดฒเดฟ เดเตเดฏเตเดคเดฟเดฐเตเดจเตเดจ VMware-เดฒเต เดเดฐเต เดเตผเดเตเดเดฟเดเตเดเตเดฑเตเดฑเดพเดฏ เดเตเดทเต เดฑเตเดธเตเดธเต เดเดฃเต เดฏเดฅเดพเตผเดคเตเดฅ เดฒเตเดเดจเด เดเดดเตเดคเดฟเดฏเดคเต, เดเตเดเดพเดคเต Kubernetes alb-ingress-controller-เดจเตเดฑเต เดธเดน-เดฐเดเดฏเดฟเดคเดพเดตเต เดเตเดเดฟเดฏเดพเดฃเต. เดตเดฟเดเดฏเดฟเดเดณเดพเดฏ เดเตเดฒเตเดกเต เดจเตเดฑเตเดฑเตเดตเต เดเดพเดฒเดเดเตเดเดคเตเดคเดฟเตฝ เดชเตเดฒเตเด เดตเดฟเดฎเตเดฎเดฟเดจเต เดเดทเตเดเดชเตเดชเตเดเตเดจเตเดจ "เดชเดดเดฏ เดธเตเดเตเตพ" เดเดชเตเดชเดฑเตเดทเตป เดเดเตเดเดฟเดจเตเดฏเตผเดฎเดพเตผเดเตเดเต เดตเดณเดฐเต เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฏ เดเดฐเต เดเตเดฑเดฟเดฏ เดชเดพเดเดเดเตเดเตเดฑเดฟเดชเตเดชเต เดฐเดเดฏเดฟเดคเดพเดตเต เดชเดเตเดเดฟเดเตเดจเตเดจเต.
เดตเดฟเดฎเตเดฎเดฟเตฝ เดเตเดฌเตผเดจเตเดฑเตเดฑเดธเดฟเดจเดพเดฏเดฟ YAML เดฎเดพเดจเดฟเดซเตเดธเตเดฑเตเดฑเตเดเตพ เดเดดเตเดคเตเดจเตเดจเดคเต? เด เดธเตเดชเตเดธเดฟเดซเดฟเดเตเดเตเดทเดจเดฟเตฝ เด
เดเตเดคเตเดค เดซเตเตฝเดกเต เดเดตเดฟเดเตเดฏเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเดฎเตเดจเตเดจเต เดเดฃเตเดเตเดคเตเดคเดพเตป เดเดฃเตเดฃเดฎเดฑเตเดฑ เดฎเดฃเดฟเดเตเดเตเดฑเตเดเตพ เดเตเดฒเดตเดดเดฟเดเตเดเต? เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดตเตเดฏเดคเตเดฏเดพเดธเดคเตเดคเดฟเดจเตเดฑเต เดชเตเดเตเดเตเดจเตเดจเตเดณเตเดณ เดเตผเดฎเตเดฎเดชเตเดชเตเดเตเดคเตเดคเดฒเดฟเดจเต เดจเดฟเดเตเดเตพ เด
เดญเดฟเดจเดจเตเดฆเดฟเดเตเดเตเดเตเดเดพเด args
ะธ command
? เดจเดฒเตเดฒ เดตเดพเตผเดคเตเดคเดฏเตเดฃเตเดเต! Vim-เดฒเตเดเตเดเต เดฒเดฟเดเตเดเต เดเตเดฏเตเดฏเดพเตป เดเดณเตเดชเตเดชเดฎเดพเดฃเต
(เดเดฑเดฟเดเดฟเดจเตฝ เดฒเตเดเดจเดตเตเด
เดญเดพเดทเดพ เดธเตเตผเดตเตผ
เดญเดพเดทเดพ เดธเตเตผเดตเดฑเตเดเตพ (เดญเดพเดทเดพ เดธเตเตผเดตเดฑเตเดเตพ) เดเดกเดฟเดฑเตเดฑเตผเดฎเดพเดฐเตเดเตเด เดเดกเดฟเดเดเดณเตเดเตเด เดชเตเดฐเตเดเตเดฐเดพเดฎเดฟเดเดเต เดญเดพเดทเดเดณเตเดเต เดเดดเดฟเดตเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเต เดธเดเดธเดพเดฐเดฟเดเตเดเตเด, เด
เดคเดฟเดจเดพเดฏเดฟ เด
เดตเตผ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดชเตเดฐเตเดเตเดเตเดเตเดเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดชเดฐเดธเตเดชเดฐเด เดธเดเดตเดฆเดฟเดเตเดเตเดจเตเดจเต -
vim เดตเดฟเดตเดฐเดฟเดเตเด เดฐเตเดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเตพ เดเดฐเต เดญเดพเดทเดพ เดธเตเตผเดตเตผ เดเตเดฒเดฏเดจเตเดฑเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดจเดฟเดเตเดเดฑเดฟเดฏเดพเดตเตเดจเตเดจ เดฐเดฃเตเดเต เดฐเตเดคเดฟเดเดณเดพเดฃเต coc.vim
- เดเดคเดพเดฃเต เดเดชเตเดชเตเตพ เดเดฑเตเดฑเดตเตเด เดเดจเดชเตเดฐเดฟเดฏเดฎเดพเดฏ เดชเตเดฒเดเดฟเตป. เดตเดดเดฟ เดจเดฟเดเตเดเตพเดเตเดเต เดเดคเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเดพเด
" Use release branch (Recommend)
Plug 'neoclide/coc.nvim', {'branch': 'release'}
" Or build from source code by use yarn: https://yarnpkg.com
Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}
เดคเตเดเดเตเดเดคเตเดคเดฟเดจเดพเดฏเดฟ coc
(เด
เดเตเดเดจเต yaml-language-server) node.js เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดฃเตเดเดคเตเดฃเตเดเต:
curl -sL install-node.now.sh/lts | bash
เดเดชเตเดชเตเตพ coc.vim
เดเตเดฐเดฎเตเดเดฐเดฟเดเตเดเต, เดธเตเตผเดตเตผ เดเดเตเดธเตเดฑเตเดฑเตปเดทเตป เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด coc-yaml
vim-เตฝ เดจเดฟเดจเตเดจเต:
:CocInstall coc-yaml
เด
เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เดจเดฟเดเตเดเตพ เดฎเดฟเดเตเดเดตเดพเดฑเตเด เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดเดฐเดเดญเดฟเดเตเดเดพเตป เดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเต coc-vim
, เด
เดตเดคเดฐเดฟเดชเตเดชเดฟเดเตเดเต
yaml-language-เดธเตเตผเดตเตผ เดเดฃเตเดเตเดคเตเดคเตฝ เดธเดเตเดเตเดเดฐเดฟเดเตเดเตเดจเตเดจเต
เด coc
yaml-language-server เดเดชเดฏเตเดเดฟเดเตเดเดพเด, YAML เดซเดฏเดฒเตเดเตพ เดเดกเดฟเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ Kubernetes-เตฝ เดจเดฟเดจเตเดจเต เดธเตเดเตเดฎ เดฒเตเดกเต เดเตเดฏเตเดฏเดพเตป เดเดตเดถเตเดฏเดชเตเดชเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดกเดฟเดฑเตเดฑเต เดเตเดฏเตเดคเดพเดฃเต เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเต coc-config
:
:CocConfig
เดเตเตบเดซเดฟเดเดฑเตเดทเดจเดฟเตฝ เดจเดฟเดเตเดเตพ เดเตเตผเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต kubernetes
เดเดฒเตเดฒเดพ เดซเดฏเดฒเตเดเตพเดเตเดเตเด yaml
. เดเดคเดฟเดจเดพเดฏเดฟ เดเดพเตป เดเดฐเต เดญเดพเดทเดพ เดธเตเตผเดตเตผ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต golang
เด
เดคเดฟเดจเดพเตฝ เดเดจเตเดฑเต เดชเตเดคเตเดตเดพเดฏ เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดเดคเตเดชเตเดฒเต เดเดพเดฃเดชเตเดชเตเดเตเดจเตเดจเต:
{
"languageserver": {
"golang": {
"command": "gopls",
"rootPatterns": ["go.mod"],
"filetypes": ["go"]
}
},
"yaml.schemas": {
"kubernetes": "/*.yaml"
}
}
kubernetes
โ เดจเดฟเตผเดตเตเดตเดเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจ URL-เตฝ เดจเดฟเดจเตเดจเต เดเตเดฌเตผเดจเตเดฑเตเดฑเดธเต เดธเตเดเตเดฎ เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเดพเตป เดญเดพเดทเดพ เดธเตเตผเดตเดฑเดฟเดจเตเดเต เดชเดฑเดฏเตเดจเตเดจ เดเดฐเต เดฑเดฟเดธเตผเดตเตเดกเต เดซเตเตฝเดกเต yaml.schemas
เดเตเดเตเดคเตฝ เดธเตเดเตเดฎเตเดเดณเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดตเดฟเดชเตเดฒเตเดเดฐเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด - เดเตเดเตเดคเตฝ เดตเดฟเดถเดฆเดพเดเดถเดเตเดเตพเดเตเดเต, เดเดพเดฃเตเด
เดเดชเตเดชเตเตพ เดจเดฟเดเตเดเตพเดเตเดเต เดเดฐเต YAML เดซเดฏเตฝ เดธเตเดทเตโเดเดฟเดเตเดเต เดธเตเดตเดฏเด เดชเตเตผเดคเตเดคเตเดเดฐเดฃเด เดเดชเดฏเตเดเดฟเดเตเดเต เดคเตเดเดเตเดเดพเด. เด เดฎเตผเดคเตเดคเดฟเดฏเดพเตฝ +เดธเตเดฅเดฒเด (เด เดฒเตเดฒเตเดเตเดเดฟเตฝ vim-เตฝ เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตโเดคเดฟเดฐเดฟเดเตเดเตเดจเตเดจ เดฎเดฑเตเดฑเต เดเตเดฎเตเดชเดฟเดจเตเดทเตป) เดจเดฟเดฒเดตเดฟเดฒเต เดธเดจเตเดฆเตผเดญเดคเตเดคเดฟเดจเดจเตเดธเดฐเดฟเดเตเดเต เดฒเดญเตเดฏเดฎเดพเดฏ เดซเตเตฝเดกเตเดเดณเตเด เดกเตเดเตเดฏเตเดฎเตเดจเตเดฑเตเดทเดจเตเด เดเดพเดฃเดฟเดเตเดเดฃเด:
เดเดตเดฟเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต +เดธเตเดชเตเดธเต เดเดพเดฐเดฃเด เดเดพเตป เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตโเดคเต inoremap <silent><expr> <c-space> coc#refresh()
. เดจเดฟเดเตเดเตพ เดเดคเต เดเตเดฏเตเดคเดฟเดเตเดเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดพเดฃเตเด
Kubernetes API เดชเดคเดฟเดชเตเดชเต เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเดจเตเดจเต
เด เดเดดเตเดคเตเดคเต เดชเตเดฐเดเดพเดฐเด, yaml-language-server เดทเดฟเดชเตเดชเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเต Kubernetes 1.14.0 เดธเตเดเตเดฎเดเตพเดเตเดเตเดชเตเดชเด. เดเดฒเดจเดพเดคเตเดฎเดเดฎเดพเดฏเดฟ เดเดฐเต เดธเตเดเตเดฎ เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเดพเดจเตเดณเตเดณ เดตเดดเดฟ เดเดพเตป เดเดฃเตเดเตเดคเตเดคเดฟเดฏเดฟเดฒเตเดฒ, เด
เดคเดฟเดจเดพเตฝ เดเดพเตป เดคเตเดฑเดจเตเดจเต server.ts
.
เดจเดฟเดเตเดเดณเตเดเต เดฎเตเดทเตเดจเดฟเตฝ เดเดคเต เดเดฃเตเดเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต, vim เดเดชเดฏเตเดเดฟเดเตเดเต YAML เดซเดฏเตฝ เดคเตเดฑเดจเตเดจเต เดชเตเดฐเดเตเดฐเดฟเดฏ เดเดฃเตเดเตเดคเตเดคเตเด yaml-language-server
.
ps aux | grep -i yaml-language-server
joshrosso 2380 45.9 0.2 5586084 69324 ?? S 9:32PM 0:00.43 /usr/local/Cellar/node/13.5.0/bin/node /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js --node-ipc --node-ipc --clientProcessId=2379
joshrosso 2382 0.0 0.0 4399352 788 s001 S+ 9:32PM 0:00.00 grep -i yaml-language-server
เดเดเตเดเตพเดเตเดเต เดชเตเดฐเดธเดเตเดคเดฎเดพเดฏ เดชเตเดฐเตเดธเดธเตเดธเต เดชเตเดฐเตเดธเดธเตเดธเต 2380 เดเดฃเต: YAML เดซเดฏเตฝ เดเดกเดฟเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ vim เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเต เดเดคเดพเดฃเต.
เดจเดฟเดเตเดเตพเดเตเดเต เดเดณเตเดชเตเดชเดคเตเดคเดฟเตฝ เดเดพเดฃเดพเดจเดพเดเตเดจเตเดจเดคเตเดชเตเดฒเต, เดซเดฏเตฝ เดธเตเดฅเดฟเดคเดฟเดเตเดฏเตเดฏเตเดจเตเดจเต /Users/joshrosso/.config/coc/extensions/node_modules/coc-yaml/node_modules/yaml-language-server/out/server/src/server.js
. เดฎเตเดฒเตเดฏเด เดฎเดพเดฑเตเดฑเดฟ เด
เดคเต เดเดกเดฟเดฑเตเดฑเต เดเตเดฏเตเดฏเตเด KUBERNETES_SCHEMA_URL
, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดชเดคเดฟเดชเตเดชเต 1.17.0 เดจเต:
// old 1.14.0 schema
//exports.KUBERNETES_SCHEMA_URL = "https://raw.githubusercontent.com/garethr/kubernetes-json-schema/master/v1.14.0-standalone-strict/all.json";
// new 1.17.0 schema in instrumenta repo
exports.KUBERNETES_SCHEMA_URL = "https://raw.githubusercontent.com/instrumenta/kubernetes-json-schema/master/v1.17.0-standalone-strict/all.json";
เดเดชเดฏเตเดเดฟเดเตเด เดชเดคเดฟเดชเตเดชเดฟเดจเต เดเดถเตเดฐเดฏเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต coc-yaml
เดเตเดกเดฟเดฒเต เดตเตเดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเตเดฑเต เดธเตเดฅเดพเดจเด เดตเตเดฏเดคเตเดฏเดพเดธเดชเตเดชเตเดเดพเด. เดเดพเตป เดถเตเดเดฐเด เดฎเดพเดฑเตเดฑเดฟเดฏเดคเตเด เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเด garethr
เดเตบ instrumenta
. เดเดจเตเดจเต เดคเตเดจเตเดจเตเดจเตเดจเต garethr
เด
เดตเดฟเดเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเตเดจเตเดจ เดธเตผเดเตเดฏเตเดเตเดเตเดเดณเดฟเดฒเตเดเตเดเต เดฎเดพเดฑเดฟ.
เดฎเดพเดฑเตเดฑเด เดชเตเดฐเดพเดฌเดฒเตเดฏเดคเตเดคเดฟเตฝ เดตเดจเตเดจเดฟเดเตเดเตเดฃเตเดเตเดฏเตเดจเตเดจเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเดพเตป, [เดเตเดฌเตผเดจเตเดฑเตเดฑเดธเดฟเดจเตเดฑเต เดฎเตเตป เดชเดคเดฟเดชเตเดชเตเดเดณเดฟเตฝ] เดฎเตเดฎเตเดชเต เดเดฒเตเดฒเดพเดคเดฟเดฐเตเดจเตเดจ เดเดฐเต เดซเตเตฝเดกเต เดฆเตเดถเตเดฏเดฎเดพเดเตเดจเตเดจเตเดฃเตเดเต เดเดจเตเดจเต เดจเตเดเตเดเตเด. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, K8s 1.14-เดจเตเดณเตเดณ เดกเดฏเดเตเดฐเดพเดฎเดฟเตฝ เดเดฒเตเดฒ
เดธเดเดเตเดฐเดนเด
เด เด เดตเดธเดฐเด เดเดจเตเดจเตเดชเตเดชเตเดฒเต เดจเดฟเดเตเดเดณเตเดฏเตเด เดธเดจเตเดคเตเดทเดฟเดชเตเดชเดฟเดเตเดเตเดฎเตเดจเตเดจเต เดเดพเตป เดชเตเดฐเดคเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเต. เดนเดพเดชเตเดชเดฟ YAMLing! เดฒเตเดเดจเดคเตเดคเดฟเตฝ เดชเดฐเดพเดฎเตผเดถเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจ เดฏเตเดเตเดเดฟเดฒเดฟเดฑเตเดฑเดฟเดเตพ เดจเดจเตเดจเดพเดฏเดฟ เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเดพเตป เด เดถเตเดเดฐเดฃเดเตเดเตพ เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเดคเต เดเดฑเดชเตเดชเดพเดเตเดเตเด:
- coc-vim:
https://github.com/neoclide/coc.nvim ; - coc-yaml:
https://github.com/neoclide/coc-yaml .
เดตเดฟเดตเตผเดคเตเดคเดเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดฟ.เดเดธเต
เดเตเดเดพเดคเต เดเดฃเตเดเต
เดเดเตเดเดณเตเดเต เดฌเตเดฒเตเดเดฟเดฒเตเด เดตเดพเดฏเดฟเดเตเดเตเด:
- ยซ
kubebox เดเด Kubernetes-เดจเตเดณเตเดณ เดฎเดฑเตเดฑเต เดทเตเดฒเตเดฒเตเดเดณเตเด "; - ยซ
kubectl เดตเดดเดฟ Kubernetes-เดจเตเดชเตเดชเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเดนเดพเดฏเดฟเดเดณเต เดเตบเดธเตเตพ เดเตเดฏเตเดฏเตเด ".
เด เดตเดฒเดเดฌเด: www.habr.com