prepd 0.1.1 → 0.3.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/bin/console +2 -0
- data/files/cluster/Vagrantfile +118 -0
- data/files/cluster/vagrant.yml +52 -0
- data/files/developer/cluster/provision.yml +2 -0
- data/files/machine/build.json +52 -0
- data/files/machine/debian/stretch/iso.json +101 -0
- data/files/machine/debian/stretch/preseed.cfg +404 -0
- data/files/machine/json.rb +26 -0
- data/files/machine/push.json +56 -0
- data/files/machine/rebuild.json +60 -0
- data/files/project/provision.yml +20 -0
- data/files/project/vars.yml +5 -0
- data/files/setup.yml +16 -0
- data/files/setup/README.md +21 -0
- data/files/setup/ansible.cfg +4 -0
- data/files/setup/hosts +1 -0
- data/files/setup/setup.yml +19 -0
- data/files/setup/vars.yml +20 -0
- data/files/workspace/.gitignore +12 -0
- data/files/workspace/README.md +11 -0
- data/files/workspace/clusters/prepd.yml +17 -0
- data/files/workspace/clusters/provision.yml +73 -0
- data/files/workspace/clusters/vagrant.rb +106 -0
- data/files/workspace/clusters/vagrant.yml +18 -0
- data/files/workspace/data/.keep +0 -0
- data/files/workspace/developer/ansible.cfg +4 -0
- data/files/workspace/developer/credentials/.keep +0 -0
- data/files/workspace/developer/hosts +7 -0
- data/files/workspace/developer/machines/provision.yml +9 -0
- data/files/workspace/developer/provision.yml +15 -0
- data/files/workspace/machines/build.yml +34 -0
- data/files/workspace/machines/provision.yml +36 -0
- data/lib/prepd.rb +95 -34
- data/lib/prepd/cli.rb +27 -4
- data/lib/prepd/cli/commands.rb +64 -25
- data/lib/prepd/cli/options_parser.rb +42 -16
- data/lib/prepd/models.rb +7 -261
- data/lib/prepd/models/base.rb +124 -0
- data/lib/prepd/models/cluster.rb +255 -0
- data/lib/prepd/models/data.rb +5 -0
- data/lib/prepd/models/developer.rb +129 -0
- data/lib/prepd/models/machine.rb +146 -0
- data/lib/prepd/models/project.rb +94 -0
- data/lib/prepd/models/setup.rb +48 -0
- data/lib/prepd/models/workspace.rb +51 -0
- data/lib/prepd/version.rb +1 -1
- data/prepd.gemspec +4 -6
- metadata +47 -37
- data/TODO.md +0 -17
- data/lib/prepd/schema.rb +0 -23
data/lib/prepd/version.rb
CHANGED
data/prepd.gemspec
CHANGED
@@ -12,20 +12,18 @@ Gem::Specification.new do |spec|
|
|
12
12
|
spec.summary = %q{An easy to use tool to create Production Ready Environments for Project Development}
|
13
13
|
spec.description = %q{Prepd assists builders of web application products to start with the end in mind by making it easy to stand up all required infrastructure
|
14
14
|
*before* starting to code the application}
|
15
|
-
spec.homepage = 'https://github.com/rjayroach/prepd
|
15
|
+
spec.homepage = 'https://github.com/rjayroach/prepd'
|
16
16
|
spec.license = 'MIT'
|
17
17
|
|
18
|
-
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
18
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|docs)/}) }
|
19
19
|
spec.bindir = 'exe'
|
20
20
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
21
21
|
spec.require_paths = ['lib']
|
22
22
|
|
23
23
|
spec.add_development_dependency 'bundler', '~> 1.12'
|
24
|
-
spec.add_development_dependency 'rake', '~>
|
24
|
+
spec.add_development_dependency 'rake', '~> 12.0'
|
25
25
|
|
26
|
-
spec.add_dependency 'dotenv'
|
27
|
-
spec.add_dependency 'activerecord'
|
28
|
-
spec.add_dependency 'sqlite3'
|
29
26
|
spec.add_dependency 'pry'
|
27
|
+
spec.add_dependency 'activerecord'
|
30
28
|
spec.add_dependency 'awesome_print'
|
31
29
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: prepd
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Roach
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-04-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -30,16 +30,16 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '12.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '12.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: pry
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
@@ -66,34 +66,6 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: sqlite3
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :runtime
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: pry
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :runtime
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
69
|
- !ruby/object:Gem::Dependency
|
98
70
|
name: awesome_print
|
99
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -124,19 +96,57 @@ files:
|
|
124
96
|
- LICENSE.txt
|
125
97
|
- README.md
|
126
98
|
- Rakefile
|
127
|
-
- TODO.md
|
128
99
|
- bin/console
|
129
100
|
- bin/setup
|
130
101
|
- exe/prepd
|
102
|
+
- files/cluster/Vagrantfile
|
103
|
+
- files/cluster/vagrant.yml
|
104
|
+
- files/developer/cluster/provision.yml
|
105
|
+
- files/machine/build.json
|
106
|
+
- files/machine/debian/stretch/iso.json
|
107
|
+
- files/machine/debian/stretch/preseed.cfg
|
108
|
+
- files/machine/json.rb
|
109
|
+
- files/machine/push.json
|
110
|
+
- files/machine/rebuild.json
|
111
|
+
- files/project/provision.yml
|
112
|
+
- files/project/vars.yml
|
113
|
+
- files/setup.yml
|
114
|
+
- files/setup/README.md
|
115
|
+
- files/setup/ansible.cfg
|
116
|
+
- files/setup/hosts
|
117
|
+
- files/setup/setup.yml
|
118
|
+
- files/setup/vars.yml
|
119
|
+
- files/workspace/.gitignore
|
120
|
+
- files/workspace/README.md
|
121
|
+
- files/workspace/clusters/prepd.yml
|
122
|
+
- files/workspace/clusters/provision.yml
|
123
|
+
- files/workspace/clusters/vagrant.rb
|
124
|
+
- files/workspace/clusters/vagrant.yml
|
125
|
+
- files/workspace/data/.keep
|
126
|
+
- files/workspace/developer/ansible.cfg
|
127
|
+
- files/workspace/developer/credentials/.keep
|
128
|
+
- files/workspace/developer/hosts
|
129
|
+
- files/workspace/developer/machines/provision.yml
|
130
|
+
- files/workspace/developer/provision.yml
|
131
|
+
- files/workspace/machines/build.yml
|
132
|
+
- files/workspace/machines/provision.yml
|
133
|
+
- files/workspace/projects/.keep
|
131
134
|
- lib/prepd.rb
|
132
135
|
- lib/prepd/cli.rb
|
133
136
|
- lib/prepd/cli/commands.rb
|
134
137
|
- lib/prepd/cli/options_parser.rb
|
135
138
|
- lib/prepd/models.rb
|
136
|
-
- lib/prepd/
|
139
|
+
- lib/prepd/models/base.rb
|
140
|
+
- lib/prepd/models/cluster.rb
|
141
|
+
- lib/prepd/models/data.rb
|
142
|
+
- lib/prepd/models/developer.rb
|
143
|
+
- lib/prepd/models/machine.rb
|
144
|
+
- lib/prepd/models/project.rb
|
145
|
+
- lib/prepd/models/setup.rb
|
146
|
+
- lib/prepd/models/workspace.rb
|
137
147
|
- lib/prepd/version.rb
|
138
148
|
- prepd.gemspec
|
139
|
-
homepage: https://github.com/rjayroach/prepd
|
149
|
+
homepage: https://github.com/rjayroach/prepd
|
140
150
|
licenses:
|
141
151
|
- MIT
|
142
152
|
metadata: {}
|
@@ -156,7 +166,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
156
166
|
version: '0'
|
157
167
|
requirements: []
|
158
168
|
rubyforge_project:
|
159
|
-
rubygems_version: 2.
|
169
|
+
rubygems_version: 2.7.3
|
160
170
|
signing_key:
|
161
171
|
specification_version: 4
|
162
172
|
summary: An easy to use tool to create Production Ready Environments for Project Development
|
data/TODO.md
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
# TODO
|
2
|
-
|
3
|
-
- option to just gpg encrypt ansible-vault.txt rather than the full set of credentials
|
4
|
-
- move gpg files to the project's data dir instead of user's home dir
|
5
|
-
- add an option to tar, gizp and gpg the data directory as well
|
6
|
-
|
7
|
-
- update prepd-project readme when cloning existing to also pull in ansible-roles
|
8
|
-
|
9
|
-
|
10
|
-
- create a bootstrap.sh script that installs Ansible and dependencies, e.g. Homebrew, python, etc
|
11
|
-
- add a playbook that provisions a mac or ubuntu laptop with android, packer, extras, etc
|
12
|
-
|
13
|
-
- update README to document provisioning a mac (and ubuntu) from brand new:
|
14
|
-
1. git clone prepd
|
15
|
-
2. run bootstrap.sh
|
16
|
-
3. run ./laptop.yml
|
17
|
-
4. bin/console to create a client and project OR git clone a project created with prepd
|
data/lib/prepd/schema.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
ActiveRecord::Schema.define do
|
2
|
-
unless ActiveRecord::Base.connection.data_sources.include?('clients')
|
3
|
-
create_table :clients do |table|
|
4
|
-
table.column :name, :string
|
5
|
-
table.column :path , :string
|
6
|
-
end
|
7
|
-
end
|
8
|
-
|
9
|
-
unless ActiveRecord::Base.connection.data_sources.include?('projects')
|
10
|
-
create_table :projects do |table|
|
11
|
-
table.column :client_id, :integer # foreign key <table-name-singular>_id
|
12
|
-
table.column :name, :string
|
13
|
-
table.column :repo_url, :string
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
unless ActiveRecord::Base.connection.data_sources.include?('applications')
|
18
|
-
create_table :applications do |table|
|
19
|
-
table.column :project_id, :integer # foreign key <table-name-singular>_id
|
20
|
-
table.column :name, :string
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|