1ред рдЙрджреНрджреЗрд╢реНрдп
рд▓рдХреНрд╖реНрдп рдЙрди рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рд╣реИ рдЬреЛ рддреАрди рд▓реЛрдХрдкреНрд░рд┐рдп рд╕рдВрдкрд╛рджрдХреЛрдВ рдореЗрдВ Ansible рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди / рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ: VS рдХреЛрдб, рдПрдЯрдо, JetBrains PyCharm (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рд╕рдВрдкрд╛рджрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ IDE рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ)ред рдЯреВрд▓реНрд╕ рд╕реЗ рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ: рд▓рд┐рдВрдЯрд░, рдлреЙрд░реНрдореЗрдЯрд░реНрд╕ (рд╕реНрдкреАрдХрд░ рдЗрдВрдЧреНрд▓рд┐рд╢!), рд╕рд┐рдВрдЯреЗрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ, рдСрдЯреЛ-рдХрдореНрдкреНрд▓реАрдЯред рд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдЧрддрд┐рд╡рд┐рдзрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдореЗрд░рд╛ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ-рдореВрд▓реНрдпрд╛рдВрдХрдирддреНрдордХ рдирд┐рд░реНрдгрдп рдЬреЛ "рдЖрджрд░реНрд╢" рдЙрдкрдХрд░рдг рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдореИрдВрдиреЗ рд╕рдореАрдХреНрд╖рд╛ рдХрд┐рдП рдЧрдП рдЯреВрд▓ рдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдореАрдХреНрд╖рд╛ рдХреЗрд╡рд▓ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдХреЗрд╡рд▓ рд╡рд╣реА рдЬреЛ рдореИрдВ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рдкрд╛ рд╕рдХрддрд╛ рд╣реВрдВред
2. рдореВрд▓реНрдпрд╛рдВрдХрди рдорд╛рдирджрдВрдб
рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рдорд╛рдирдХ рд╕реВрдЪреА рд╣реИ:
- рдорд╛рд░реНрдХреЗрдЯрдкреНрд▓реЗрд╕ рдкрд░ рд░реЗрдЯрд┐рдВрдЧред рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдкрд╛рджрдХ рдХреЗ рдкрд╛рд╕ рдПрдХреНрд╕рдЯреЗрдВрд╢рди / рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ "рдорд╛рд░реНрдХреЗрдЯрдкреНрд▓реЗрд╕" рд╣реЛрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдлреАрдбрдмреИрдХ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИред
- рдбрд╛рдЙрдирд▓реЛрдб рдХреА рд╕рдВрдЦреНрдпрд╛ред рдорд╛рд░реНрдХреЗрдЯрдкреНрд▓реЗрд╕ рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рд▓реА рдЬрд╛рддреА рд╣реИред
- рдЧрд┐рдердм рдкрд░ рд╕рд┐рддрд╛рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред
- рдХреЛрдб рдХреА рд▓рд╛рдЗрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред рдХреНрд▓реЛрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рддрд╛рдХрд┐ рд▓реЗрдЦ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рди рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рдПред рдЬрд┐рди рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рдпреЛрдЧрджрд╛рди 5% рд╕реЗ рдХрдо рд╣реИ, рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
- рдЕрдВрддрд┐рдо рд╡рдЪрди рдХреА рддрд┐рдерд┐ред
- README рд╕реЗ рд▓рд┐рдП рдЧрдП рдХрд╛рд░реНрдпред
3. рдЕрд╡рд▓реЛрдХрди
3.1 рдореМрдЬреВрджрд╛ рд╕рдореАрдХреНрд╖рд╛
рей.рез.рез рдЦреЛрдЬ
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рд░реВрд╕реА рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдХреМрди рд╕реА рд╕рдореАрдХреНрд╖рд╛рдПрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╣реА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рджреЛ рдмрд╛рд░ рджреЛрд╣рд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред Google рдореЗрдВ рдЦреЛрдЬ рдХреА рдЧрдИ рдереАред рд░реВрд╕реА рдЦрдВрдб рдореЗрдВ рдореИрдВрдиреЗ рдХрд┐рди рд╢рдмреНрджреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЦреЛрдЬ рдХреА:
- рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдЙрдкрдХрд░рдг рдХреА рд╕рдореАрдХреНрд╖рд╛ тЖТ 0 рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдкрд░рд┐рдгрд╛рдоред
- рд╕рдореАрдХреНрд╖рд╛ рдпреЛрдЧреНрдп ide тЖТ 0 рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдкрд░рд┐рдгрд╛рдоред
- ansible тЖТ 0 .
Ansible , - .
:
- ansible tools тЖТ 1 .
- review ansible ide тЖТ 1 .
.
Ansible. 95% Ansible, YAML Jinja2.
. , Ansible. , .
3.2 VS Code
3.2.1
VS Code, . "ansible", (13 ), .
:
- тАФ 3.4 5 (12 ).
- тАФ 224 950.
- Github тАФ 54.
- тАФ 21.08.2019. 2 .
README:
- Auto completion. Auto completion Ansible directives, modules and plugins from Ansible doc, Auto completion for variables. Disable auto completion by setting ansible.autocompletion to false.
- Code snippets. Press Ctrl + Space, Ansible playbook code snippets will show up.
- Syntax highlighting. Enable syntax highlighting by setting files.associations to ansible in settings.json.
- Yaml validation. Yaml validation by leverage Yaml language server.
- Code navigation by Symbols, press Ctrl + Shift + O.
- Hover over module names, to show module documentation. Disable hovering over by setting ansible.hover to false.
- Run playbook from Docker.
- Run playbook from local Ansible installation.
- Run playbook from Cloud Shell.
- Run playbook remotely via ssh.
- Auto File Copy to remote host on saving.
cloc:
63 text files.
63 unique files.
6 files ignored.
-------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------
JSON 14 0 0 451226
TypeScript 33 669 80 2943
Markdown 6 79 0 249
-------------------------------------------------------------------
SUM: 58 767 81 454543
-------------------------------------------------------------------
, PR issue , .
:
- тАФ 4.2 5 (6 ).
- тАФ 92 212.
- Github тАФ 10.
- тАФ 15.01.2018.
( , README:
- Jinja language
- Jinja expressions for ansible conditions (when, changed_when, failed_when, check_mode)
- Some YAML block scalar
, 6 .
cloc:
10 text files.
10 unique files.
4 files ignored.
-------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------
YAML 1 16 6 132
JSON 3 0 0 95
Markdown 3 13 0 60
-------------------------------------------------------------------
SUM: 7 29 6 287
-------------------------------------------------------------------
:
- тАФ 5 5 (2 ).
- тАФ 62 185.
- Github тАФ 2.
- тАФ 20.11.2017.
README . Atom, .
cloc:
17 text files.
17 unique files.
5 files ignored.
-------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------
JSON 7 7 0 148305
TypeScript 4 44 5 199
Python 2 28 2 132
Markdown 1 2 0 3
-------------------------------------------------------------------
SUM: 14 81 7 148639
-------------------------------------------------------------------
3.3 Atom
3.3.1
. "ansible" , . , 11 . , VS Code.
:
- ( Github) тАФ 51.
- тАФ 60 823.
- Github тАФ 18.
- тАФ 22.04.2020. .
README:
- Linter-Ansible-Linting aims to provide functional and robust Ansible-Lint linting functionality within Atom.
cloc:
20 text files.
20 unique files.
3 files ignored.
-------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------
JavaScript 3 46 28 565
Markdown 3 23 0 96
YAML 11 28 14 90
JSON 1 0 0 49
-------------------------------------------------------------------
SUM: 18 97 42 800
-------------------------------------------------------------------
:
- ( Github) тАФ 25.
- тАФ 24 819.
- Github тАФ 4.
- тАФ 22.04.2020. .
README:
- Linter-Ansible-Syntax aims to provide functional and robust Ansible syntax check linting functionality within Atom.
cloc:
19 text files.
19 unique files.
5 files ignored.
-------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------
JavaScript 3 34 18 315
Markdown 3 17 0 64
YAML 8 12 10 56
JSON 1 0 0 48
-------------------------------------------------------------------
SUM: 15 63 28 483
-------------------------------------------------------------------
3.4 PyCharm
IDE JetBrains, . "ansible" 1 .
:
- тАФ 3.7 5.0 (9 ).
- тАФ 464 115.
- Github тАФ 191.
- тАФ 01.06.2017.
README:
- Goto role (Ctrl-N)
- Goto task (Ctrl-N)
- Goto var/property (Ctrl-Alt-Shift-N)
- Role/Jinja var reference on Ctrl-Click
- Module doc lookup
- lexer, parser (internal)
- syntax highlighting
- comment/uncomment
- bracket / parenthesis matching
- role completion
cloc:
147 text files.
146 unique files.
42 files ignored.
-------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------
YAML 28 1045 232 7276
Java 68 686 464 3344
Bourne Shell 1 21 22 129
-------------------------------------------------------------------
SUM: 107 1806 726 10970
-------------------------------------------------------------------
YAML , 1 fork Ansible , cloc. , Java.
4.
VS Code PyCharm . ansible-lint, ansible-playbook --syntax-check, yamllint. YAML, Ansible, . , ( Docker ), ( , YAML, ).
CI, . deprecation warnings . Atom Ansible.
, Ansible Atom. , , .
. 2-3 , Ansible 8 , . , , Ansible .