itamae-plugin-recipe-bedrock_server 0.2.1 → 0.3.4
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/README.md +3 -3
- data/lib/itamae/plugin/recipe/bedrock_server/install.rb +13 -5
- data/lib/itamae/plugin/recipe/bedrock_server/service.rb +5 -0
- data/lib/itamae/plugin/recipe/bedrock_server/setup.rb +59 -26
- data/lib/itamae/plugin/recipe/bedrock_server/templates/etc/systemd/system/bedrock_server.service.erb +4 -0
- data/lib/itamae/plugin/recipe/bedrock_server/templates/etc/systemd/system/bedrock_server.socket.erb +5 -0
- data/lib/itamae/plugin/recipe/bedrock_server/version.rb +1 -1
- data/mrblib +1 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb3b051f86d16d811ef54d5c6da31d5fade3cc6ee3949e527d46f3c7f344c6d9
|
4
|
+
data.tar.gz: 745bebb170e885eb42cac295434a2ace522d9252cb1da5f72ccbaf609094ee0d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d36e51dcf64e59524476e5d17338336b0d245d115b5035d4f54800b97b88050fbe64763fed17229e74cd32e602670193701aff4432d2d982072c08fcb24a162
|
7
|
+
data.tar.gz: c2890679928a5581b4dccaa3fa2748baa204ed895b84fba1eb9f1a6541da25f78a99b7eef69ad2a574250b5c31eed318fc4f231781bdfb8a46d35e8c149bfd90
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# Itamae::Plugin::Recipe::BedrockServer
|
2
2
|
|
3
3
|
Itamae plugin to install [Minecraft](https://www.minecraft.net/) with init scripts.
|
4
|
-
You must read [Minecraft Server Download](https://www.minecraft.net/en-us/download/server/bedrock/)
|
4
|
+
You must read [Minecraft Server Download](https://www.minecraft.net/en-us/download/server/bedrock/) in [Minecraft End User License Agreement](https://account.mojang.com/terms) and [Privacy Policy](https://privacy.microsoft.com/ja-jp/privacystatement).
|
5
5
|
|
6
6
|
[](https://badge.fury.io/rb/itamae-plugin-recipe-bedrock_server)
|
7
7
|

|
@@ -98,9 +98,9 @@ bedrock_server:
|
|
98
98
|
## Development
|
99
99
|
|
100
100
|
```
|
101
|
-
$ docker run --name tmp-ubuntu
|
101
|
+
$ docker run --name tmp-ubuntu ubuntu:latest bash -c "apt-get update && apt-get install -y systemd-sysv"
|
102
102
|
$ docker commit tmp-ubuntu ubuntu-with-systemd
|
103
|
-
$ docker run --privileged -d ubuntu-with-systemd /sbin/init
|
103
|
+
$ docker run --rm --privileged -d --name container-with-service -p 19132:19132 ubuntu-with-systemd /sbin/init
|
104
104
|
$ bundle exec itamae docker --node-yaml=recipes/node.yml recipes/install.rb --container=container-with-service
|
105
105
|
```
|
106
106
|
|
@@ -1,11 +1,19 @@
|
|
1
|
-
|
1
|
+
package 'unzip'
|
2
|
+
package 'curl'
|
2
3
|
|
3
|
-
|
4
|
-
package "curl"
|
4
|
+
VERSION_URL = 'https://minecraft.net/en-us/download/server/bedrock/'.freeze
|
5
5
|
|
6
|
-
bedrock_server_url =
|
6
|
+
bedrock_server_url =
|
7
|
+
if node[:bedrock_server][:url]
|
8
|
+
node[:bedrock_server][:url]
|
9
|
+
elsif RUBY_ENGINE == 'mruby'
|
10
|
+
run_command(%s(curl -fsSL #{VERSION_URL} | grep -o 'https:\/\/minecraft\.azureedge\.net\/bin-linux\/bedrock-server-[0-9.]\+\.zip')).stdout.chomp
|
11
|
+
else
|
12
|
+
require 'open-uri'
|
13
|
+
URI.parse(VERSION_URL).read.match(%r{https://minecraft.azureedge.net/bin-linux/bedrock-server-[0-9.]+.zip}).to_s
|
14
|
+
end
|
7
15
|
|
8
|
-
http_request
|
16
|
+
http_request 'bedrock-server.zip' do
|
9
17
|
url bedrock_server_url
|
10
18
|
end
|
11
19
|
|
@@ -6,6 +6,11 @@ template environment_file do
|
|
6
6
|
notifies :restart, "service[bedrock_server]"
|
7
7
|
end
|
8
8
|
|
9
|
+
template "/etc/systemd/system/bedrock_server.socket" do
|
10
|
+
mode "644"
|
11
|
+
notifies :restart, "service[bedrock_server]"
|
12
|
+
end
|
13
|
+
|
9
14
|
template "/etc/systemd/system/bedrock_server.service" do
|
10
15
|
mode "644"
|
11
16
|
variables(
|
@@ -1,4 +1,37 @@
|
|
1
|
-
hash =
|
1
|
+
hash = {
|
2
|
+
'bedrock_server' => {
|
3
|
+
'app_dir' => '/opt',
|
4
|
+
'environment' => { 'LD_LIBRARY_PATH' => '.' },
|
5
|
+
'service_actions' => %i[enable start],
|
6
|
+
'configuration' => {
|
7
|
+
'server-name' => 'Dedicated Server',
|
8
|
+
'gamemode' => 'survival',
|
9
|
+
'difficulty' => 'easy',
|
10
|
+
'allow-cheats' => false,
|
11
|
+
'max-players' => 10,
|
12
|
+
'online-mode' => true,
|
13
|
+
'white-list' => false,
|
14
|
+
'server-port' => 19_132,
|
15
|
+
'server-portv6' => 19_133,
|
16
|
+
'view-distance' => 32,
|
17
|
+
'tick-distance' => 4,
|
18
|
+
'player-idle-timeout' => 30,
|
19
|
+
'max-threads' => 8,
|
20
|
+
'level-name' => 'Bedrock level',
|
21
|
+
'level-seed' => '',
|
22
|
+
'level-type' => 'DEFAULT',
|
23
|
+
'default-player-permission-level' => 'member',
|
24
|
+
'texturepack-required' => false,
|
25
|
+
'content-log-file-enabled' => false,
|
26
|
+
'compression-threshold' => 1,
|
27
|
+
'server-authoritative-movement' => 'server-auth',
|
28
|
+
'player-movement-score-threshold' => 20,
|
29
|
+
'player-movement-distance-threshold' => 0.3,
|
30
|
+
'player-movement-duration-threshold-in-ms' => 500,
|
31
|
+
'correct-player-movement' => false
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
2
35
|
|
3
36
|
node.reverse_merge!(hash)
|
4
37
|
|
@@ -6,31 +39,31 @@ node.validate! do
|
|
6
39
|
{
|
7
40
|
bedrock_server: {
|
8
41
|
configuration: {
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
42
|
+
'server-name' => string,
|
43
|
+
'gamemode' => match(/^(survival|creative|adventure)$/),
|
44
|
+
'difficulty' => match(/^(peaceful|easy|normal|hard)$/),
|
45
|
+
'allow-cheats' => boolean,
|
46
|
+
'max-players' => integer,
|
47
|
+
'online-mode' => boolean,
|
48
|
+
'white-list' => boolean,
|
49
|
+
'server-port' => integer,
|
50
|
+
'server-portv6' => integer,
|
51
|
+
'view-distance' => integer,
|
52
|
+
'tick-distance' => integer,
|
53
|
+
'player-idle-timeout' => integer,
|
54
|
+
'max-threads' => integer,
|
55
|
+
'level-name' => string,
|
56
|
+
'level-seed' => optional(string),
|
57
|
+
'level-type' => match(/^(FLAT|LEGACY|DEFAULT)$/),
|
58
|
+
'default-player-permission-level' => match(/^(visitor|member|operator)$/),
|
59
|
+
'texturepack-required' => boolean,
|
60
|
+
'content-log-file-enabled' => boolean,
|
61
|
+
'compression-threshold' => integer,
|
62
|
+
'server-authoritative-movement' => match(/^(client-auth|server-auth)$/),
|
63
|
+
'player-movement-score-threshold' => integer,
|
64
|
+
'player-movement-distance-threshold' => float,
|
65
|
+
'player-movement-duration-threshold-in-ms' => integer,
|
66
|
+
'correct-player-movement' => boolean
|
34
67
|
}
|
35
68
|
}
|
36
69
|
}
|
data/lib/itamae/plugin/recipe/bedrock_server/templates/etc/systemd/system/bedrock_server.service.erb
CHANGED
@@ -8,6 +8,10 @@ Type=simple
|
|
8
8
|
WorkingDirectory=<%= @app_dir %>/bedrock-server
|
9
9
|
ExecStart=<%= @app_dir %>/bedrock-server/bedrock_server
|
10
10
|
Restart=on-failure
|
11
|
+
Sockets=bedrock_server.socket
|
12
|
+
StandardInput=socket
|
13
|
+
StandardOutput=journal
|
14
|
+
StandardError=journal
|
11
15
|
|
12
16
|
[Install]
|
13
17
|
WantedBy=multi-user.target
|
data/mrblib
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
./lib
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: itamae-plugin-recipe-bedrock_server
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kyohah
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-01-
|
11
|
+
date: 2021-01-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: itamae
|
@@ -79,7 +79,9 @@ files:
|
|
79
79
|
- lib/itamae/plugin/recipe/bedrock_server/templates/bedrock-server/server.properties.erb
|
80
80
|
- lib/itamae/plugin/recipe/bedrock_server/templates/etc/default/bedrock_server.erb
|
81
81
|
- lib/itamae/plugin/recipe/bedrock_server/templates/etc/systemd/system/bedrock_server.service.erb
|
82
|
+
- lib/itamae/plugin/recipe/bedrock_server/templates/etc/systemd/system/bedrock_server.socket.erb
|
82
83
|
- lib/itamae/plugin/recipe/bedrock_server/version.rb
|
84
|
+
- mrblib
|
83
85
|
- recipes/install.rb
|
84
86
|
- recipes/node.yml
|
85
87
|
homepage: https://github.com/kyohah/itamae-plugin-recipe-bedrock_server
|