kubs_cli 0.1.9 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Dockerfile +8 -7
- data/Gemfile.lock +25 -27
- data/README.md +6 -2
- data/lib/examples/config.rb +1 -0
- data/lib/examples/dependencies.yaml +0 -26
- data/lib/examples/packages.yaml +25 -0
- data/lib/kubs_cli/cli.rb +11 -5
- data/lib/kubs_cli/configuration.rb +6 -1
- data/lib/kubs_cli/copy.rb +3 -0
- data/lib/kubs_cli/file_helper.rb +7 -2
- data/lib/kubs_cli/install.rb +17 -7
- data/lib/kubs_cli/pull.rb +14 -8
- data/lib/kubs_cli/version.rb +1 -1
- metadata +8 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a822e2006d5f00043cbb2e79c8d3a5a0ae6a761a1a50b8c3470752707a5b9f52
|
|
4
|
+
data.tar.gz: 0d202f3d9848165a0b179e8bcaf697f33867f23a8710ffa327671941cf31504d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d012d72dfb5ae6cf13c210d9cd3115301600e0755678bb9c8138e18616e4a99ac93a14acbbcd0274bb0f6049d9c23c3e6f609a99fb84e0564fdf08f2f2b562b0
|
|
7
|
+
data.tar.gz: a9e2726818f6ac21446968364c1c6f73e977e523468a134c37c11bce7ba2cd1bfa17cee5575386b54a09bf7c24e5b5bc27a3545b15b6716f45ce97cd0cdeeb1a
|
data/.gitignore
CHANGED
data/Dockerfile
CHANGED
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
FROM ruby:2.6.3
|
|
2
2
|
|
|
3
|
+
|
|
3
4
|
RUN apt update && apt upgrade -y
|
|
4
5
|
|
|
5
6
|
# libffi needed for libffi gem
|
|
6
7
|
RUN apt install -y libffi-dev apt-utils git
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
|
|
9
10
|
|
|
10
11
|
# copy the directory
|
|
11
|
-
RUN mkdir
|
|
12
|
-
WORKDIR
|
|
13
|
-
COPY .
|
|
12
|
+
RUN mkdir /myapp
|
|
13
|
+
WORKDIR /myapp
|
|
14
|
+
COPY . /myapp
|
|
14
15
|
RUN gem install bundler
|
|
15
16
|
RUN bundle install
|
|
16
17
|
|
|
17
18
|
RUN rake build && gem install pkg/*
|
|
18
19
|
|
|
19
|
-
|
|
20
20
|
# Create a user, and give them sudo privileges if needed
|
|
21
21
|
# password is 'docker'
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
|
|
23
|
+
USER docker
|
|
24
|
+
RUN git clone https://github.com/ParamagicDev/config-files.git /home/docker/config-files
|
|
24
25
|
|
data/Gemfile.lock
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
kubs_cli (0.
|
|
4
|
+
kubs_cli (0.2.0)
|
|
5
5
|
rake (~> 10.0)
|
|
6
6
|
thor (~> 0.20)
|
|
7
7
|
|
|
8
8
|
GEM
|
|
9
9
|
remote: https://rubygems.org/
|
|
10
10
|
specs:
|
|
11
|
-
coderay (1.1.
|
|
12
|
-
diff-lcs (1.
|
|
13
|
-
ffi (1.
|
|
11
|
+
coderay (1.1.3)
|
|
12
|
+
diff-lcs (1.4.4)
|
|
13
|
+
ffi (1.13.1)
|
|
14
14
|
formatador (0.2.5)
|
|
15
|
-
guard (2.
|
|
15
|
+
guard (2.16.2)
|
|
16
16
|
formatador (>= 0.2.4)
|
|
17
17
|
listen (>= 2.7, < 4.0)
|
|
18
18
|
lumberjack (>= 1.0.12, < 2.0)
|
|
@@ -26,40 +26,38 @@ GEM
|
|
|
26
26
|
guard (~> 2.1)
|
|
27
27
|
guard-compat (~> 1.1)
|
|
28
28
|
rspec (>= 2.99.0, < 4.0)
|
|
29
|
-
listen (3.1
|
|
30
|
-
rb-fsevent (~> 0.
|
|
31
|
-
rb-inotify (~> 0.9, >= 0.9.
|
|
32
|
-
|
|
33
|
-
lumberjack (1.0.13)
|
|
29
|
+
listen (3.3.1)
|
|
30
|
+
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
31
|
+
rb-inotify (~> 0.9, >= 0.9.10)
|
|
32
|
+
lumberjack (1.2.8)
|
|
34
33
|
method_source (0.9.2)
|
|
35
34
|
nenv (0.3.0)
|
|
36
|
-
notiffany (0.1.
|
|
35
|
+
notiffany (0.1.3)
|
|
37
36
|
nenv (~> 0.1)
|
|
38
37
|
shellany (~> 0.0)
|
|
39
38
|
pry (0.12.2)
|
|
40
39
|
coderay (~> 1.1.0)
|
|
41
40
|
method_source (~> 0.9.0)
|
|
42
41
|
rake (10.5.0)
|
|
43
|
-
rb-fsevent (0.10.
|
|
44
|
-
rb-inotify (0.10.
|
|
42
|
+
rb-fsevent (0.10.4)
|
|
43
|
+
rb-inotify (0.10.1)
|
|
45
44
|
ffi (~> 1.0)
|
|
46
|
-
rspec (3.
|
|
47
|
-
rspec-core (~> 3.
|
|
48
|
-
rspec-expectations (~> 3.
|
|
49
|
-
rspec-mocks (~> 3.
|
|
50
|
-
rspec-core (3.
|
|
51
|
-
rspec-support (~> 3.
|
|
52
|
-
rspec-expectations (3.
|
|
45
|
+
rspec (3.10.0)
|
|
46
|
+
rspec-core (~> 3.10.0)
|
|
47
|
+
rspec-expectations (~> 3.10.0)
|
|
48
|
+
rspec-mocks (~> 3.10.0)
|
|
49
|
+
rspec-core (3.10.0)
|
|
50
|
+
rspec-support (~> 3.10.0)
|
|
51
|
+
rspec-expectations (3.10.0)
|
|
53
52
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
54
|
-
rspec-support (~> 3.
|
|
55
|
-
rspec-mocks (3.
|
|
53
|
+
rspec-support (~> 3.10.0)
|
|
54
|
+
rspec-mocks (3.10.0)
|
|
56
55
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
57
|
-
rspec-support (~> 3.
|
|
58
|
-
rspec-support (3.
|
|
59
|
-
ruby_dep (1.5.0)
|
|
56
|
+
rspec-support (~> 3.10.0)
|
|
57
|
+
rspec-support (3.10.0)
|
|
60
58
|
shellany (0.0.1)
|
|
61
59
|
thor (0.20.3)
|
|
62
|
-
yard (0.9.
|
|
60
|
+
yard (0.9.25)
|
|
63
61
|
|
|
64
62
|
PLATFORMS
|
|
65
63
|
ruby
|
|
@@ -74,4 +72,4 @@ DEPENDENCIES
|
|
|
74
72
|
yard (~> 0.9)
|
|
75
73
|
|
|
76
74
|
BUNDLED WITH
|
|
77
|
-
2.
|
|
75
|
+
2.1.4
|
data/README.md
CHANGED
|
@@ -30,7 +30,9 @@ Or install it yourself as:
|
|
|
30
30
|
gem install kubs_cli
|
|
31
31
|
kubs -v # version
|
|
32
32
|
kubs init # Creates a $HOME/.kubs directory
|
|
33
|
-
kubs
|
|
33
|
+
kubs install_dependencies # Installs items as defined by $HOME/.kubs/dependencies.yaml
|
|
34
|
+
source ~/.zshrc # or ~/.bashrc, whatever youre using
|
|
35
|
+
kubs install_packages
|
|
34
36
|
kubs copy # Copies from $HOME/config-files/(dotfiles|gnome-terminal-settings) to $HOME
|
|
35
37
|
kubs pull # Copes from $HOME/.(dotfiles) to $HOME/config-files(dotfiles|gnome-terminal-settings)
|
|
36
38
|
kubs git_pull
|
|
@@ -41,7 +43,9 @@ kubs git_push
|
|
|
41
43
|
|
|
42
44
|
The `$HOME/.kubs` is a good directory to check out
|
|
43
45
|
|
|
44
|
-
The `$HOME/.kubs/dependencies.yaml`
|
|
46
|
+
The `$HOME/.kubs/dependencies.yaml` and `$HOME/.kubs/packages.yaml` are
|
|
47
|
+
constructed to be extended without having to update the gem everytime
|
|
48
|
+
I want to add something new
|
|
45
49
|
|
|
46
50
|
### Messing with docker
|
|
47
51
|
|
data/lib/examples/config.rb
CHANGED
|
@@ -4,6 +4,7 @@ KubsCLI.configure do |config|
|
|
|
4
4
|
# Where you want the dotfiles to be saved
|
|
5
5
|
config.local_dir = Dir.home
|
|
6
6
|
config.dependencies = File.join(Dir.home, '.kubs', 'dependencies.yaml')
|
|
7
|
+
config.packages = File.join(Dir.home, '.kubs', 'packages.yaml')
|
|
7
8
|
|
|
8
9
|
# Where you have your dotfiles / misc_files saved
|
|
9
10
|
config.config_files = File.join(Dir.home, 'config-files')
|
|
@@ -20,29 +20,3 @@ apt:
|
|
|
20
20
|
postgresql pry rubygems fail2ban
|
|
21
21
|
neovim asciinema docker mosh yarn
|
|
22
22
|
silversearcher-ag virtualbox
|
|
23
|
-
|
|
24
|
-
gems:
|
|
25
|
-
command: gem install
|
|
26
|
-
packages: colorls neovim rake pry rubocop gem-ctags rails yard
|
|
27
|
-
thor bundler solargraph
|
|
28
|
-
|
|
29
|
-
npm_packages:
|
|
30
|
-
command: npm install -g
|
|
31
|
-
packages: neovim eslint
|
|
32
|
-
bash-language-server --unsafe-perm
|
|
33
|
-
vscode-html-languageserver-bin
|
|
34
|
-
vscode-css-languageserver-bin
|
|
35
|
-
javascript-typescript-langserv
|
|
36
|
-
dockerfile-language-server-nodejs
|
|
37
|
-
|
|
38
|
-
pip2_packages:
|
|
39
|
-
command: pip2 install --user --upgrade
|
|
40
|
-
packages: pynvim neovim
|
|
41
|
-
|
|
42
|
-
pip3_packages:
|
|
43
|
-
command: pip3 install --user --upgrade
|
|
44
|
-
packages: pynvim neovim
|
|
45
|
-
|
|
46
|
-
snap_packages:
|
|
47
|
-
command: sudo snap install
|
|
48
|
-
packages: heroku
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
gems:
|
|
2
|
+
command: gem install
|
|
3
|
+
packages: colorls neovim rake pry rubocop gem-ctags rails yard
|
|
4
|
+
thor bundler solargraph
|
|
5
|
+
|
|
6
|
+
npm_packages:
|
|
7
|
+
command: npm install -g
|
|
8
|
+
packages: neovim eslint
|
|
9
|
+
bash-language-server --unsafe-perm
|
|
10
|
+
vscode-html-languageserver-bin
|
|
11
|
+
vscode-css-languageserver-bin
|
|
12
|
+
javascript-typescript-langserv
|
|
13
|
+
dockerfile-language-server-nodejs
|
|
14
|
+
|
|
15
|
+
pip2_packages:
|
|
16
|
+
command: pip2 install --user --upgrade
|
|
17
|
+
packages: pynvim neovim
|
|
18
|
+
|
|
19
|
+
pip3_packages:
|
|
20
|
+
command: pip3 install --user --upgrade
|
|
21
|
+
packages: pynvim neovim
|
|
22
|
+
|
|
23
|
+
snap_packages:
|
|
24
|
+
command: sudo snap install
|
|
25
|
+
packages: heroku
|
data/lib/kubs_cli/cli.rb
CHANGED
|
@@ -32,14 +32,20 @@ module KubsCLI
|
|
|
32
32
|
run_command { KubsCLI::Pull.new.pull_all }
|
|
33
33
|
end
|
|
34
34
|
|
|
35
|
-
desc '
|
|
36
|
-
def
|
|
37
|
-
run_command { KubsCLI::Install.new.
|
|
35
|
+
desc 'install_dependencies', 'installs from .kubs/dependencies.yaml'
|
|
36
|
+
def install_dependencies
|
|
37
|
+
run_command { KubsCLI::Install.new.install_dependencies }
|
|
38
|
+
Rake.sh('echo "Restart your shell"')
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
desc 'install_packages', 'installs from .kubs/packages.yaml'
|
|
42
|
+
def install_packages
|
|
43
|
+
run_command { KubsCLI::Install.new.install_packages }
|
|
38
44
|
end
|
|
39
45
|
|
|
40
46
|
# desc 'git push [-r CONFIG_FILES_REPO]', 'pushes your config_files upstream'
|
|
41
47
|
desc 'git_push', 'pushes your config_files upstream'
|
|
42
|
-
def git_push
|
|
48
|
+
def git_push(message = nil)
|
|
43
49
|
message ||= 'auto push files'
|
|
44
50
|
|
|
45
51
|
swap_dir do
|
|
@@ -66,7 +72,7 @@ module KubsCLI
|
|
|
66
72
|
|
|
67
73
|
no_commands do
|
|
68
74
|
def swap_dir
|
|
69
|
-
KubsCLI.load_configuration
|
|
75
|
+
KubsCLI.load_configuration
|
|
70
76
|
Rake.cd(KubsCLI.configuration.config_files)
|
|
71
77
|
yield
|
|
72
78
|
end
|
|
@@ -8,6 +8,7 @@ module KubsCLI
|
|
|
8
8
|
|
|
9
9
|
# Dependencies to install
|
|
10
10
|
attr_accessor :dependencies
|
|
11
|
+
attr_accessor :packages
|
|
11
12
|
|
|
12
13
|
# remote files to be used
|
|
13
14
|
attr_accessor :config_files, :dotfiles, :gnome_terminal_settings
|
|
@@ -20,6 +21,7 @@ module KubsCLI
|
|
|
20
21
|
# set to nil so that someone must set a path
|
|
21
22
|
@config_files = nil
|
|
22
23
|
@dotfiles = nil
|
|
24
|
+
@packages = nil
|
|
23
25
|
@gnome_terminal_settings = nil
|
|
24
26
|
@dependencies = nil
|
|
25
27
|
end
|
|
@@ -53,6 +55,9 @@ module KubsCLI
|
|
|
53
55
|
|
|
54
56
|
puts "Creating a default configuration files @ #{path}"
|
|
55
57
|
fh.mkdirs(path)
|
|
56
|
-
|
|
58
|
+
|
|
59
|
+
Dir["#{EXAMPLES}/*"].each do |file|
|
|
60
|
+
fh.copy(from: file, to: path)
|
|
61
|
+
end
|
|
57
62
|
end
|
|
58
63
|
end
|
data/lib/kubs_cli/copy.rb
CHANGED
data/lib/kubs_cli/file_helper.rb
CHANGED
|
@@ -17,8 +17,13 @@ module KubsCLI
|
|
|
17
17
|
Rake.mkdir_p(to_dir) unless Dir.exist?(to_dir)
|
|
18
18
|
return Rake.cp(from, to) unless File.directory?(from)
|
|
19
19
|
|
|
20
|
-
Rake.mkdir_p(to)
|
|
21
|
-
|
|
20
|
+
Rake.mkdir_p(to)
|
|
21
|
+
|
|
22
|
+
Dir["#{from}/*"].each do |dir|
|
|
23
|
+
Rake.cp_r(dir, to) # next if File.directory?(dir)
|
|
24
|
+
|
|
25
|
+
# Rake.cp(dir, to)
|
|
26
|
+
end
|
|
22
27
|
end
|
|
23
28
|
|
|
24
29
|
# Creates dirs using Rake.mkdir_p if it does not exist
|
data/lib/kubs_cli/install.rb
CHANGED
|
@@ -5,31 +5,41 @@ module KubsCLI
|
|
|
5
5
|
class Install
|
|
6
6
|
def initialize(config = KubsCLI.configuration)
|
|
7
7
|
@fh = FileHelper.new
|
|
8
|
-
@
|
|
8
|
+
@dependencies = config.dependencies
|
|
9
|
+
@packages = config.packages
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def install_dependencies
|
|
13
|
+
install_from_file(@dependencies)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def install_packages
|
|
17
|
+
install_from_file(@packages)
|
|
9
18
|
end
|
|
10
19
|
|
|
11
20
|
# Installs dependencies from a given YAML file
|
|
12
21
|
# @see lib/examples/dependencies.yaml
|
|
13
22
|
# @return Array<String> Returns an array of strings to run via Rake to install
|
|
14
23
|
# various packages
|
|
15
|
-
def
|
|
16
|
-
hash = @fh.load_yaml(
|
|
24
|
+
def create_ary_from_yaml(file)
|
|
25
|
+
hash = @fh.load_yaml(file)
|
|
17
26
|
hash.map do |_key, value|
|
|
18
27
|
command = value['command']
|
|
19
28
|
|
|
20
29
|
packages = value['packages']
|
|
21
|
-
packages = packages.join(
|
|
30
|
+
packages = packages.join(' ') if packages.is_a?(Array)
|
|
22
31
|
|
|
23
32
|
"#{command} #{packages}"
|
|
24
33
|
end
|
|
25
34
|
rescue StandardError => e
|
|
26
|
-
|
|
35
|
+
msg = "There was an issue with creating a dependencies array from #{file}"
|
|
36
|
+
KubsCLI.add_error(e: e, msg: msg)
|
|
27
37
|
end
|
|
28
38
|
|
|
29
39
|
# Installs dependencies from a give yaml_file via Rake.sh
|
|
30
40
|
# @return void
|
|
31
|
-
def
|
|
32
|
-
ary =
|
|
41
|
+
def install_from_file(file)
|
|
42
|
+
ary = create_ary_from_yaml(file)
|
|
33
43
|
|
|
34
44
|
ary.each do |command|
|
|
35
45
|
Rake.sh(command.to_s)
|
data/lib/kubs_cli/pull.rb
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
|
+
require 'rake'
|
|
2
3
|
|
|
3
4
|
module KubsCLI
|
|
4
5
|
# Used to pull items into your config-files repo
|
|
@@ -28,18 +29,20 @@ module KubsCLI
|
|
|
28
29
|
end
|
|
29
30
|
|
|
30
31
|
def copy_files(orig_file, new_file)
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
if File.directory?(new_file) || File.directory?(new_file)
|
|
33
|
+
Dir.each_child(orig_file) do |o_file|
|
|
34
|
+
Dir.each_child(new_file) do |n_file|
|
|
35
|
+
next unless o_file == n_file
|
|
33
36
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
next unless o_file == n_file
|
|
37
|
+
o_file = File.join(File.expand_path(orig_file), o_file)
|
|
38
|
+
n_file = File.expand_path(new_file)
|
|
37
39
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
+
Rake.cp_r(o_file, n_file)
|
|
41
|
+
end
|
|
40
42
|
|
|
41
|
-
@fh.copy(from: o_file, to: n_file)
|
|
42
43
|
end
|
|
44
|
+
else
|
|
45
|
+
Rake.cp(orig_file, new_file)
|
|
43
46
|
end
|
|
44
47
|
end
|
|
45
48
|
|
|
@@ -58,6 +61,9 @@ module KubsCLI
|
|
|
58
61
|
|
|
59
62
|
# Pulls gnome_terminal_settings into your dotfiles inside your repo
|
|
60
63
|
def pull_gnome_terminal_settings
|
|
64
|
+
unless @config.gnome_terminal_settings
|
|
65
|
+
return
|
|
66
|
+
end
|
|
61
67
|
# This is where dconf stores gnome terminal
|
|
62
68
|
gnome_dconf = '/org/gnome/terminal/'
|
|
63
69
|
|
data/lib/kubs_cli/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kubs_cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- paramagicdev
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2020-11-23 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -122,7 +122,7 @@ dependencies:
|
|
|
122
122
|
- - "~>"
|
|
123
123
|
- !ruby/object:Gem::Version
|
|
124
124
|
version: '0.20'
|
|
125
|
-
description:
|
|
125
|
+
description:
|
|
126
126
|
email:
|
|
127
127
|
- konnor5456@gmail.com
|
|
128
128
|
executables:
|
|
@@ -146,6 +146,7 @@ files:
|
|
|
146
146
|
- kubs_cli.gemspec
|
|
147
147
|
- lib/examples/config.rb
|
|
148
148
|
- lib/examples/dependencies.yaml
|
|
149
|
+
- lib/examples/packages.yaml
|
|
149
150
|
- lib/kubs_cli.rb
|
|
150
151
|
- lib/kubs_cli/cli.rb
|
|
151
152
|
- lib/kubs_cli/configuration.rb
|
|
@@ -162,7 +163,7 @@ metadata:
|
|
|
162
163
|
homepage_uri: https://github.com/ParamagicDev/kubs_cli
|
|
163
164
|
source_code_uri: https://github.com/ParamagicDev/kubs_cli
|
|
164
165
|
changelog_uri: https://github.com/ParamagicDev/kubs_cli/CHANGELOG.md
|
|
165
|
-
post_install_message:
|
|
166
|
+
post_install_message:
|
|
166
167
|
rdoc_options: []
|
|
167
168
|
require_paths:
|
|
168
169
|
- lib
|
|
@@ -177,8 +178,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
177
178
|
- !ruby/object:Gem::Version
|
|
178
179
|
version: '0'
|
|
179
180
|
requirements: []
|
|
180
|
-
rubygems_version: 3.
|
|
181
|
-
signing_key:
|
|
181
|
+
rubygems_version: 3.1.4
|
|
182
|
+
signing_key:
|
|
182
183
|
specification_version: 4
|
|
183
184
|
summary: Konnor's Ubuntu Based Setup & CLI
|
|
184
185
|
test_files: []
|