shiplane 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f140db779603d5107c232dd5dca0665c251b39df409c3590498c4485b6df9f1d
4
- data.tar.gz: aac47c05deecae0cfbbfbbb1888c664d305ec62434165ee89a3fb68bc6a85881
3
+ metadata.gz: 4616a459918f6de9f341e68bc54203712792219c21740fbe8a4e728128cc100d
4
+ data.tar.gz: 0cd1d68cf6394cd15b607e962c01f4ab3e6ebc41939b7dae4c40a47e9684ec2b
5
5
  SHA512:
6
- metadata.gz: 37359831f595b65b12f55756668023e46574626267fb16a71b459404772424f67605a4e614c570a304746d703b9f94b628d64fde64015ff6e3353a3f5469067d
7
- data.tar.gz: eae6e737e636a325cad67d06da705cab114dbb7e4468fb7b107e3f03186c91c80748bdcf6831eac39b54b8c04e8033b0602376e698f1b255621ca5a919e3f41a
6
+ metadata.gz: ae4cb9821f5f21cc87cd38d353fadfb7f27088945ad10b7732839797594be6599b24d118d237a099eb54ae8ec0178f012d1e353982525ddc1507fc2d227c4ced
7
+ data.tar.gz: 42be525ad6242e270e9240c6f2c1399a98167810e2cc14fde69f1a8c0449afc17dbc609568317f157ce2b462f1da9054e3eb148db4026991119bce486c960b7c
data/README.md CHANGED
@@ -45,9 +45,9 @@ ruby '2.6.2'
45
45
 
46
46
  3. Add the following lines to your Gemfile:
47
47
  ```
48
- gem 'shiplane' require: false
49
- gem 'shiplane_bootstrappers_chef', require: false
50
- gem 'shiplane_deployers_capistrano_docker', require: false
48
+ gem 'shiplane'
49
+ gem 'shiplane_bootstrappers_chef'
50
+ gem 'shiplane_deployers_capistrano_docker'
51
51
  ```
52
52
 
53
53
  4. Run bundler to install everything:
@@ -70,4 +70,52 @@ rake shiplane:install[<application_name>]
70
70
  ```
71
71
 
72
72
  ### Using Shiplane
73
- #### TODO
73
+ #### Steps involved in provisioning and deploying
74
+ Currently, Shiplane assumes you have an empty VM/VPS/Metal Box with some form of linux on it (though testing has primarily been done on Ubuntu boxes). Shiplane assumes an otherwise EMPTY install. It is HIGHLY recommended that you NOT use Shiplane (or any other provisioning) on an install with software other than a basic OS installed.
75
+
76
+ Each of the following steps are handled in Shiplane:
77
+ - Bootstrapping
78
+ - Provisioning
79
+ - Building
80
+ - Deploying
81
+
82
+ #### Bootstrapping
83
+ This step is closely related to provisioning and is currently tied in with provisioning itself, but the concept remains a separate entity and may be separated from provisioning sometime in the future.
84
+
85
+ During bootstrapping, Shiplane ssh's into the deployment target you have designated for provisioning and installs the bare minimum necessary software to allow provisioning.
86
+
87
+ Currently the following Bootstrappers are provided:
88
+ - shiplane_bootstrappers_chef `# Installs Chef and uploads cookbooks for the provisioner`
89
+
90
+ #### Provisioning
91
+ During Provisioning Shiplane installs all the software necessary to run the selected deployment framework on the deployment target.
92
+
93
+ Currently, the following Provisioners are provided:
94
+ - shiplane_bootstrappers_chef `# Uses Chef Solo to install deployment frameworks`
95
+
96
+ You can bootstrap AND provision at once by running the following:
97
+ ```sh
98
+ bundle exec cap production shiplane:bootstrap
99
+ ```
100
+
101
+ #### Building
102
+ Shiplane provides rake tasks that may be used to build your Docker containers into Production-ready containers and upload the images to a registry for download on your target deployment machine. Currently, Shiplane supports Dockerhub out of the box.
103
+
104
+ It is intended that this be integrated into your CI pipeline and some examples are provided (Currently, we provide an example for Circle CI).
105
+
106
+ You can build a docker container based on the HEAD of your current branch like so:
107
+ ```sh
108
+ bundle exec cap production shiplane
109
+ ```
110
+
111
+ #### Deploying
112
+ Shiplane provides tasks to help you deploy your code. These tasks depend on your deployment framework, but each task appropriately launches your docker containers on your selected framework.
113
+
114
+ Currently, the following Deployers are provided:
115
+ - shiplane_deployers_capistrano_docker `# Uses Capistrano and Raw Docker to run your containers`
116
+
117
+
118
+ You can run a deployment like so:
119
+ ```sh
120
+ bundle exec cap production deploy
121
+ ```
@@ -1,5 +1,7 @@
1
- class Shiplane::Railtie < Rails::Railtie
2
- rake_tasks do
3
- load 'shiplane/tasks/install.rake'
1
+ module Shiplane
2
+ class Railtie < Rails::Railtie
3
+ rake_tasks do
4
+ load 'shiplane/tasks/install.rake'
5
+ end
4
6
  end
5
7
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Shiplane
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.2"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shiplane
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Epperson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-16 00:00:00.000000000 Z
11
+ date: 2019-04-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: shiplane_bootstrappers_chef
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.1
19
+ version: 0.1.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.1
26
+ version: 0.1.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: shiplane_deployers_capistrano_docker
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 0.1.1
33
+ version: 0.1.2
34
34
  type: :runtime
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: 0.1.1
40
+ version: 0.1.2
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: dotenv
43
43
  requirement: !ruby/object:Gem::Requirement