aws_minecraft 0.1.0 → 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 +5 -5
- data/.travis.yml +3 -1
- data/Gemfile +6 -6
- data/Gemfile.lock +50 -38
- data/README.md +42 -3
- data/ROADMAP.md +2 -2
- data/aws_minecraft.gemspec +1 -3
- data/bin/aws_minecraft.rb +1 -1
- data/cfg/config.yml +1 -1
- data/cfg/ec2_conf.json +1 -1
- data/lib/aws_minecraft.rb +2 -1
- data/lib/aws_minecraft/aws_helper.rb +4 -8
- data/lib/aws_minecraft/db_helper.rb +1 -2
- data/lib/aws_minecraft/upload_helper.rb +1 -1
- data/lib/aws_minecraft/version.rb +1 -1
- data/spec/aws_helper_spec.rb +2 -2
- data/spec/spec_helper.rb +4 -70
- metadata +10 -12
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: d6276eb43e3e3d747a509a61cbc3626084fc806f8697563cdc281aa99c3c817c
|
|
4
|
+
data.tar.gz: 5368e300bb28a07a780b02e3f5a864936c1e0b5321c2ee37c74d6af012d6d428
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8ceb5ba3fa12f2be2f499465a1fcf72a5669d31db8e5b15791c2b7f537e641526bf49d8a5d7a062c37a24adf8c658df38b774d912e03205d4e16ca1b9ba46dc1
|
|
7
|
+
data.tar.gz: e606683cf5183c19017919aa85a2536e87826f8a0ed9ed6b45b84e785d2a36a92b162b47508f78bbc5a10a8cb196ea9f0874a1537ff22d81f0b710cec70e3e74
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
source 'https://rubygems.org'
|
|
2
2
|
|
|
3
|
-
gem 'rspec', require: 'spec'
|
|
4
|
-
gem 'thor'
|
|
5
3
|
gem 'aws-sdk', '~> 2'
|
|
6
|
-
gem '
|
|
4
|
+
gem 'fakefs', require: 'fakefs/safe'
|
|
5
|
+
gem 'net-scp'
|
|
6
|
+
gem 'net-ssh'
|
|
7
7
|
gem 'rake'
|
|
8
|
+
gem 'rspec', require: 'spec'
|
|
9
|
+
gem 'rubocop'
|
|
8
10
|
gem 'sqlite3'
|
|
9
|
-
gem '
|
|
10
|
-
gem 'net-scp'
|
|
11
|
-
gem 'fakefs', require: 'fakefs/safe'
|
|
11
|
+
gem 'thor'
|
data/Gemfile.lock
CHANGED
|
@@ -1,50 +1,62 @@
|
|
|
1
1
|
GEM
|
|
2
2
|
remote: https://rubygems.org/
|
|
3
3
|
specs:
|
|
4
|
-
ast (2.
|
|
5
|
-
aws-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
ast (2.4.1)
|
|
5
|
+
aws-eventstream (1.1.0)
|
|
6
|
+
aws-sdk (2.11.632)
|
|
7
|
+
aws-sdk-resources (= 2.11.632)
|
|
8
|
+
aws-sdk-core (2.11.632)
|
|
9
|
+
aws-sigv4 (~> 1.0)
|
|
8
10
|
jmespath (~> 1.0)
|
|
9
|
-
aws-sdk-resources (2.
|
|
10
|
-
aws-sdk-core (= 2.
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
net-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
rspec
|
|
27
|
-
rspec-
|
|
28
|
-
|
|
11
|
+
aws-sdk-resources (2.11.632)
|
|
12
|
+
aws-sdk-core (= 2.11.632)
|
|
13
|
+
aws-sigv4 (1.2.2)
|
|
14
|
+
aws-eventstream (~> 1, >= 1.0.2)
|
|
15
|
+
diff-lcs (1.4.4)
|
|
16
|
+
fakefs (1.3.0)
|
|
17
|
+
jmespath (1.4.0)
|
|
18
|
+
net-scp (3.0.0)
|
|
19
|
+
net-ssh (>= 2.6.5, < 7.0.0)
|
|
20
|
+
net-ssh (6.1.0)
|
|
21
|
+
parallel (1.20.1)
|
|
22
|
+
parser (2.7.2.0)
|
|
23
|
+
ast (~> 2.4.1)
|
|
24
|
+
rainbow (3.0.0)
|
|
25
|
+
rake (13.0.3)
|
|
26
|
+
regexp_parser (2.0.1)
|
|
27
|
+
rexml (3.2.4)
|
|
28
|
+
rspec (3.10.0)
|
|
29
|
+
rspec-core (~> 3.10.0)
|
|
30
|
+
rspec-expectations (~> 3.10.0)
|
|
31
|
+
rspec-mocks (~> 3.10.0)
|
|
32
|
+
rspec-core (3.10.0)
|
|
33
|
+
rspec-support (~> 3.10.0)
|
|
34
|
+
rspec-expectations (3.10.0)
|
|
29
35
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
30
|
-
rspec-support (~> 3.
|
|
31
|
-
rspec-mocks (3.
|
|
36
|
+
rspec-support (~> 3.10.0)
|
|
37
|
+
rspec-mocks (3.10.0)
|
|
32
38
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
33
|
-
rspec-support (~> 3.
|
|
34
|
-
rspec-support (3.
|
|
35
|
-
rubocop (
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
rainbow (>=
|
|
39
|
+
rspec-support (~> 3.10.0)
|
|
40
|
+
rspec-support (3.10.0)
|
|
41
|
+
rubocop (1.7.0)
|
|
42
|
+
parallel (~> 1.10)
|
|
43
|
+
parser (>= 2.7.1.5)
|
|
44
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
45
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
46
|
+
rexml
|
|
47
|
+
rubocop-ast (>= 1.2.0, < 2.0)
|
|
39
48
|
ruby-progressbar (~> 1.7)
|
|
40
|
-
unicode-display_width (
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
49
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
|
50
|
+
rubocop-ast (1.3.0)
|
|
51
|
+
parser (>= 2.7.1.5)
|
|
52
|
+
ruby-progressbar (1.10.1)
|
|
53
|
+
sqlite3 (1.4.2)
|
|
54
|
+
thor (1.0.1)
|
|
55
|
+
unicode-display_width (1.7.0)
|
|
45
56
|
|
|
46
57
|
PLATFORMS
|
|
47
58
|
ruby
|
|
59
|
+
x86_64-darwin-20
|
|
48
60
|
|
|
49
61
|
DEPENDENCIES
|
|
50
62
|
aws-sdk (~> 2)
|
|
@@ -58,4 +70,4 @@ DEPENDENCIES
|
|
|
58
70
|
thor
|
|
59
71
|
|
|
60
72
|
BUNDLED WITH
|
|
61
|
-
|
|
73
|
+
2.2.3
|
data/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
Minecraft Server In The Cloud
|
|
2
2
|
=============================
|
|
3
3
|
|
|
4
|
+
[](https://travis-ci.org/Skarlso/aws_minecraft)
|
|
5
|
+
|
|
4
6
|
This is a fully provisinable Minecraft server on a configurable EC2 instance under AWS. This Gem
|
|
5
7
|
provides the ability to manage both, an EC2 instance and a Minecraft server which is executed on
|
|
6
8
|
that EC2 instance.
|
|
@@ -41,13 +43,42 @@ Test your CLI by running an AWS command like this one: `aws ec2 describe-instanc
|
|
|
41
43
|
|
|
42
44
|
## AWS Minecraft Gem
|
|
43
45
|
|
|
46
|
+
### Install
|
|
47
|
+
|
|
48
|
+
Version 0.1.0 is deployed as a gem.
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
gem install aws_minecraft
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Or, in a Gemfile
|
|
55
|
+
|
|
56
|
+
```
|
|
57
|
+
gem 'aws_minecraft'
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
You can also build it yourself. Just clone this repository and use rake.
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
rake install
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Or
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
bundle exec rake install
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
This will create a gem which will be used under `pkg`. Just bare in mind, that there is a key which needs to be present. The `minecraft.key` file. Without it, you won't be able to build the gem.
|
|
73
|
+
|
|
44
74
|
### Instance
|
|
45
75
|
|
|
46
76
|
The instance configuration that is used can be found here: [ec2_config](cfg/ec2_config.json). This
|
|
47
77
|
will configure and create an EC2 instance for you. Couple of things to note here. The instance uses
|
|
48
78
|
an ssh key import which is than used to execute commands on the instance. So in order for this to work
|
|
49
79
|
you'll have to create an SSH key with `ssh-keygen`. Enter your **PUBLIC** key, something like `/Users/youruser/.ssh/ida_rsa.pub`,
|
|
50
|
-
into the file called `
|
|
80
|
+
into the file called `minecraft.key` as a *base64* encoded string. You can use a public encoder, since
|
|
81
|
+
this is your public key. [Base64Encode](https://www.base64encode.org/).
|
|
51
82
|
|
|
52
83
|
AWS Minecraft uses tmux to run a Minecraft server in the background. The tmux is a multiplexer client
|
|
53
84
|
and will allow us to attach to it later on, if the user would like to run some commands on the server.
|
|
@@ -62,13 +93,13 @@ query amazon for information about the instance.
|
|
|
62
93
|
|
|
63
94
|
The [config.yml](cfg/config.yml) file configures this gem. Currently, two settings are available. A
|
|
64
95
|
Logger level setting information which can be overridden any time. And second, it's the location from
|
|
65
|
-
where files will be uploaded to the instance like,
|
|
96
|
+
where files will be uploaded to the instance like, minecraft.jar or craftbukkit.jar. These than will
|
|
66
97
|
be executed during starting a Minecraft server.
|
|
67
98
|
|
|
68
99
|
### DB
|
|
69
100
|
|
|
70
101
|
The database also needs to be initialised, for this, there is a cli command called init-db. To
|
|
71
|
-
initialise the database, run `bundle exec ./bin/
|
|
102
|
+
initialise the database, run `bundle exec ./bin/aws_minecraft.rb init-db`. This will create a
|
|
72
103
|
Minecraft.db file. In case there is anything wrong and you would like to create a new instance, and
|
|
73
104
|
you are sure that the one which is saved, is not the correct one, just delete this file and run
|
|
74
105
|
`init-db` again.
|
|
@@ -131,6 +162,14 @@ When you are done playing, don't forget to issue a `stop-server` command.
|
|
|
131
162
|
If you would like to resume playing on the same server, you would call `start-server` and again,
|
|
132
163
|
enjoy a nice session of Minecraft.
|
|
133
164
|
|
|
165
|
+
## Using an existing server configuration with plugins
|
|
166
|
+
|
|
167
|
+
If you happen to have a server with configured plugins and all that jazz, and you would like to just
|
|
168
|
+
continue that on an instance, it's easy to do that. Simply point, in the config.yml file `upload_path:`
|
|
169
|
+
to that folder in which your server, world, minecraft jar, craftbukkit jar, sit and upload_file will
|
|
170
|
+
upload the contents of that folder to EC2. Start your minecraft jar, and log in to your old world with
|
|
171
|
+
everything in tact.
|
|
172
|
+
|
|
134
173
|
# Examples
|
|
135
174
|
|
|
136
175
|
Created the instance
|
data/ROADMAP.md
CHANGED
|
@@ -7,17 +7,17 @@ Roadmap for aws_minecraft
|
|
|
7
7
|
* Working on coverage is important. Adding unit tests for ssh, uploader and negative scenarios for
|
|
8
8
|
aws_helper would be Next.
|
|
9
9
|
* Some of the error cases are not handled really well at the moment. They just raise an error.
|
|
10
|
-
* Upload world is not working yet.
|
|
11
10
|
* Everything Minecraft related could be extracted.
|
|
12
11
|
* Would be nice if it wouldn't re-upload.
|
|
13
12
|
* start-server doesn't tell you if starting the tmux session was successful or not.
|
|
13
|
+
* World backup isn't there yet.
|
|
14
|
+
* Could be to an S3 or, even downloaded.
|
|
14
15
|
|
|
15
16
|
0.1.0
|
|
16
17
|
-----
|
|
17
18
|
|
|
18
19
|
* This is an MVP at this stage, with everything working and the most important parts have unit tests.
|
|
19
20
|
|
|
20
|
-
|
|
21
21
|
0.0.4
|
|
22
22
|
-----
|
|
23
23
|
|
data/aws_minecraft.gemspec
CHANGED
|
@@ -13,20 +13,18 @@ Gem::Specification.new do |s|
|
|
|
13
13
|
s.email = 'skarlso777@gmail.com'
|
|
14
14
|
s.extra_rdoc_files = ['README.md']
|
|
15
15
|
s.files = `git ls-files`.split("\n")
|
|
16
|
-
s.files << './cfg/minecraft.key'
|
|
17
16
|
s.homepage = 'https://github.com/Skarlso/aws_minecraft'
|
|
18
17
|
s.rdoc_options = ['--charset=UTF-8']
|
|
19
18
|
s.require_paths = ['lib']
|
|
20
19
|
s.rubygems_version = '2.6.6'
|
|
21
20
|
s.test_files = `git ls-files`.split("\n").select { |f| f =~ /^specs/ }
|
|
22
|
-
s.rubyforge_project = 'aws_minecraft'
|
|
23
21
|
s.executables = `git ls-files -- bin/*`.split("\n")
|
|
24
22
|
.map { |f| File.basename(f) }
|
|
25
23
|
s.licenses = ['MIT']
|
|
26
24
|
|
|
27
25
|
# dependencies
|
|
26
|
+
s.add_development_dependency 'bundler'
|
|
28
27
|
s.add_development_dependency 'code_stats'
|
|
29
28
|
s.add_development_dependency 'rake'
|
|
30
29
|
s.add_development_dependency 'rspec'
|
|
31
|
-
s.add_development_dependency 'bundler'
|
|
32
30
|
end
|
data/bin/aws_minecraft.rb
CHANGED
data/cfg/config.yml
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
loglevel: INFO
|
|
2
|
-
upload_path: /Users
|
|
2
|
+
upload_path: /Users/<youruser>/aws_minecraft/drop
|
data/cfg/ec2_conf.json
CHANGED
data/lib/aws_minecraft.rb
CHANGED
|
@@ -10,12 +10,13 @@ module AWSMine
|
|
|
10
10
|
class AWSMine
|
|
11
11
|
MINECRAFT_SESSION_NAME = 'minecraft'.freeze
|
|
12
12
|
attr_accessor :aws_helper, :db_helper, :upload_helper, :ssh_helper
|
|
13
|
+
|
|
13
14
|
def initialize
|
|
14
15
|
@aws_helper = AWSHelper.new
|
|
15
16
|
@db_helper = DBHelper.new
|
|
16
17
|
@upload_helper = UploadHelper.new
|
|
17
18
|
@ssh_helper = SSHHelper.new
|
|
18
|
-
@logger = Logger.new(
|
|
19
|
+
@logger = Logger.new($stdout)
|
|
19
20
|
@logger.level = Logger.const_get(MineConfig.new.loglevel)
|
|
20
21
|
end
|
|
21
22
|
|
|
@@ -23,8 +23,7 @@ module AWSMine
|
|
|
23
23
|
# rubocop:disable Metrics/AbcSize
|
|
24
24
|
def create_ec2
|
|
25
25
|
@logger.info('Creating new EC2 instance.')
|
|
26
|
-
config = File.
|
|
27
|
-
'rb', &:read).chop
|
|
26
|
+
config = File.read(File.join(__dir__, '../../cfg/ec2_conf.json'))
|
|
28
27
|
@logger.debug("Configuration loaded: #{config}.")
|
|
29
28
|
ec2_config = symbolize(JSON.parse(config))
|
|
30
29
|
@logger.debug("Configuration symbolized: #{ec2_config}.")
|
|
@@ -110,8 +109,7 @@ module AWSMine
|
|
|
110
109
|
end
|
|
111
110
|
|
|
112
111
|
def import_keypair
|
|
113
|
-
key = Base64.decode64(File.
|
|
114
|
-
'rb', &:read).chop)
|
|
112
|
+
key = Base64.decode64(File.read(File.join(__dir__, '../../cfg/minecraft.key')))
|
|
115
113
|
begin
|
|
116
114
|
@ec2_client.describe_key_pairs(key_names: ['minecraft_keys'])
|
|
117
115
|
key_exists = true
|
|
@@ -126,8 +124,7 @@ module AWSMine
|
|
|
126
124
|
end
|
|
127
125
|
|
|
128
126
|
def create_security_group
|
|
129
|
-
config = File.
|
|
130
|
-
'rb', &:read).chop
|
|
127
|
+
config = File.read(File.join(__dir__, '../../cfg/sg_config.json'))
|
|
131
128
|
sg_config = symbolize(JSON.parse(config))
|
|
132
129
|
begin
|
|
133
130
|
sg = @ec2_resource.create_security_group(dry_run: false,
|
|
@@ -142,8 +139,7 @@ module AWSMine
|
|
|
142
139
|
end
|
|
143
140
|
|
|
144
141
|
def retrieve_user_data
|
|
145
|
-
user_data = File.
|
|
146
|
-
'rb', &:read).chop
|
|
142
|
+
user_data = File.read(File.join(__dir__, '../../cfg/user_data.sh'))
|
|
147
143
|
Base64.encode64(user_data)
|
|
148
144
|
end
|
|
149
145
|
end
|
|
@@ -19,8 +19,7 @@ module AWSMine
|
|
|
19
19
|
|
|
20
20
|
def init_db
|
|
21
21
|
@tables.each do |table|
|
|
22
|
-
sql = File.
|
|
23
|
-
'rb', &:read).chop
|
|
22
|
+
sql = File.read(File.join(__dir__, "../../cfg/#{table}.sql"))
|
|
24
23
|
@db.execute sql unless table_exists? table
|
|
25
24
|
end
|
|
26
25
|
end
|
data/spec/aws_helper_spec.rb
CHANGED
|
@@ -41,10 +41,10 @@ describe AWSMine::AWSHelper do
|
|
|
41
41
|
key_name: 'minecraft_keys',
|
|
42
42
|
min_count: 1,
|
|
43
43
|
max_count: 1,
|
|
44
|
-
instance_type: 't2.
|
|
44
|
+
instance_type: 't2.large',
|
|
45
45
|
monitoring: { enabled: true },
|
|
46
46
|
security_group_ids: ['sg-1'],
|
|
47
|
-
user_data: "
|
|
47
|
+
user_data: "ISMvYmluL2Jhc2g=\n")
|
|
48
48
|
.and_return([ec2])
|
|
49
49
|
expect(ec2_resource).to receive(:client).and_return(client)
|
|
50
50
|
expect(ec2).to receive(:id).exactly(4).times.and_return('ec2-id')
|
data/spec/spec_helper.rb
CHANGED
|
@@ -20,81 +20,15 @@ shared_examples 'with aws minecraft' do
|
|
|
20
20
|
|
|
21
21
|
before :each do
|
|
22
22
|
FakeFS.activate!
|
|
23
|
-
FakeFS::FileSystem.clone(
|
|
23
|
+
FakeFS::FileSystem.clone(File.join(File.dirname(__FILE__), '../cfg'))
|
|
24
24
|
FakeFS do
|
|
25
|
-
FileUtils.mkdir_p(File.join(__dir__, '../cfg'))
|
|
25
|
+
# FileUtils.mkdir_p(File.join(__dir__, '../cfg'))
|
|
26
26
|
File.open(File.join(__dir__, '../cfg/config.yml'), 'w') do |f|
|
|
27
27
|
f.puts('loglevel: ERROR')
|
|
28
28
|
f.puts('upload_path: /drop')
|
|
29
29
|
end
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
File.open(File.join(__dir__, '../cfg/ec2_conf.json'), 'w') do |f|
|
|
33
|
-
f.puts <<-FILE
|
|
34
|
-
{
|
|
35
|
-
"dry_run": false,
|
|
36
|
-
"image_id": "ami-ea26ce85",
|
|
37
|
-
"key_name": "minecraft_keys",
|
|
38
|
-
"min_count": 1,
|
|
39
|
-
"max_count": 1,
|
|
40
|
-
"instance_type": "t2.nano",
|
|
41
|
-
"monitoring": {
|
|
42
|
-
"enabled": true
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
FILE
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
FileUtils.mkdir_p(File.join(__dir__, '../cfg'))
|
|
49
|
-
File.open(File.join(__dir__, '../cfg/instances.sql'), 'w') do |f|
|
|
50
|
-
f.puts <<-FILE
|
|
51
|
-
create table instances (
|
|
52
|
-
ip varchar(100),
|
|
53
|
-
id varchar(100),
|
|
54
|
-
PRIMARY KEY (id)
|
|
55
|
-
);
|
|
56
|
-
FILE
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
FileUtils.mkdir_p(File.join(__dir__, '../cfg'))
|
|
60
|
-
File.open(File.join(__dir__, '../cfg/sg_config.json'), 'w') do |f|
|
|
61
|
-
f.puts <<-FILE
|
|
62
|
-
{
|
|
63
|
-
"ip_permissions": [
|
|
64
|
-
{
|
|
65
|
-
"ip_protocol": "tcp",
|
|
66
|
-
"from_port": 22,
|
|
67
|
-
"to_port": 22,
|
|
68
|
-
"ip_ranges": [{
|
|
69
|
-
"cidr_ip": "0.0.0.0/0"
|
|
70
|
-
}]
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
"ip_protocol": "tcp",
|
|
74
|
-
"from_port": 25565,
|
|
75
|
-
"to_port": 25565,
|
|
76
|
-
"ip_ranges": [{
|
|
77
|
-
"cidr_ip": "0.0.0.0/0"
|
|
78
|
-
}]
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
}
|
|
82
|
-
FILE
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
FileUtils.mkdir_p(File.join(__dir__, '../cfg'))
|
|
86
|
-
File.open(File.join(__dir__, '../cfg/user_data.sh'), 'w') do |f|
|
|
87
|
-
f.puts <<-FILE
|
|
88
|
-
!#/bin/bash
|
|
89
|
-
FILE
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
FileUtils.mkdir_p(File.join(__dir__, '../cfg'))
|
|
93
|
-
File.open(File.join(__dir__, '../cfg/minecraft.key'), 'w') do |f|
|
|
94
|
-
f.puts <<-FILE
|
|
95
|
-
somekey
|
|
96
|
-
FILE
|
|
97
|
-
end
|
|
30
|
+
File.write(File.join(__dir__, '../cfg/user_data.sh'), '!#/bin/bash')
|
|
31
|
+
File.write(File.join(__dir__, '../cfg/minecraft.key'), 'mykey')
|
|
98
32
|
end
|
|
99
33
|
end
|
|
100
34
|
end
|
metadata
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: aws_minecraft
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Gergely Brautigam
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2020-12-25 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
|
-
name:
|
|
14
|
+
name: bundler
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
17
|
- - ">="
|
|
@@ -25,7 +25,7 @@ dependencies:
|
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
26
|
version: '0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
28
|
+
name: code_stats
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - ">="
|
|
@@ -39,7 +39,7 @@ dependencies:
|
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '0'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
42
|
+
name: rake
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
45
|
- - ">="
|
|
@@ -53,7 +53,7 @@ dependencies:
|
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '0'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
56
|
+
name: rspec
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
58
58
|
requirements:
|
|
59
59
|
- - ">="
|
|
@@ -74,7 +74,6 @@ extensions: []
|
|
|
74
74
|
extra_rdoc_files:
|
|
75
75
|
- README.md
|
|
76
76
|
files:
|
|
77
|
-
- "./cfg/minecraft.key"
|
|
78
77
|
- ".gitignore"
|
|
79
78
|
- ".rspec"
|
|
80
79
|
- ".travis.yml"
|
|
@@ -116,7 +115,7 @@ homepage: https://github.com/Skarlso/aws_minecraft
|
|
|
116
115
|
licenses:
|
|
117
116
|
- MIT
|
|
118
117
|
metadata: {}
|
|
119
|
-
post_install_message:
|
|
118
|
+
post_install_message:
|
|
120
119
|
rdoc_options:
|
|
121
120
|
- "--charset=UTF-8"
|
|
122
121
|
require_paths:
|
|
@@ -132,9 +131,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
132
131
|
- !ruby/object:Gem::Version
|
|
133
132
|
version: '0'
|
|
134
133
|
requirements: []
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
signing_key:
|
|
134
|
+
rubygems_version: 3.1.2
|
|
135
|
+
signing_key:
|
|
138
136
|
specification_version: 4
|
|
139
137
|
summary: A minecraft server provisioner on an AWS EC2 instance.
|
|
140
138
|
test_files: []
|