octopress-deploy 1.2.6 → 1.2.7
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/CHANGELOG.md +6 -2
- data/README.md +1 -169
- data/lib/octopress-deploy.rb +0 -9
- data/lib/octopress-deploy/git.rb +6 -6
- data/lib/octopress-deploy/rsync.rb +1 -1
- data/lib/octopress-deploy/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1eb5beb837b96c6e0ab922695ec87617e71f1bad
|
4
|
+
data.tar.gz: cf3e51606a71b99ef7410025c919fd84106ed3cc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f41bd149e09d98034fdafa4419ab2b66e40a991c84aa8aac00f2c1569c95c08cf28ba8a4c087e38290e83fcdbc58261fc2a861a08f356a08d4e27c09d9b0326
|
7
|
+
data.tar.gz: 26ff8855e56f5167d14ae11092197fc4e2a2dce3121202d8971adb6f4c42fa8f56a345f28ba43c0e754f36569189ac88ba08f48a6f897952ab9119792779a979
|
data/CHANGELOG.md
CHANGED
@@ -1,9 +1,13 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
### 1.2.
|
3
|
+
### 1.2.7 - 2015-06-17
|
4
|
+
- Fix: Fixed some erroneous references to site_dir configuration. [#60](https://github.com/octopress/deploy/pull/60)
|
5
|
+
- Minor: Moved documentation to [octopress#deploy](https://github.com/octopress/octopress#deploy).
|
6
|
+
|
7
|
+
### 1.2.6 - 2015-06-15
|
4
8
|
- Fix: Tell users to build their sites if the build dir doesn't exist.
|
5
9
|
|
6
|
-
### 1.2.5 - 2015-
|
10
|
+
### 1.2.5 - 2015-06-15
|
7
11
|
- Fix: Ensures that deployment git remote is the same as configuration before pushing.
|
8
12
|
|
9
13
|
### 1.2.4 - 2015-05-11
|
data/README.md
CHANGED
@@ -15,175 +15,7 @@ $ gem install octopress
|
|
15
15
|
|
16
16
|
## Usage
|
17
17
|
|
18
|
-
|
19
|
-
|:--------------------------|:-------------------------------------------------------------------|
|
20
|
-
| `init <METHOD> [options]` | Generate a config file for the deployment method. (git, s3, rsync) |
|
21
|
-
| `pull <DIR>` | Pull down your site into a local directory. |
|
22
|
-
| `add-bucket <NAME>` | (S3 only) Add a bucket using your configured S3 credentials. |
|
23
|
-
|
24
|
-
## Set up
|
25
|
-
|
26
|
-
First set up a configuration file for your deployment method.
|
27
|
-
|
28
|
-
```
|
29
|
-
$ octopress deploy init git git@github.com:user/project
|
30
|
-
$ octopress deploy init s3
|
31
|
-
$ octopress deploy init rsync
|
32
|
-
```
|
33
|
-
|
34
|
-
This will generate a `_deploy.yml` file in your current
|
35
|
-
directory which you can edit to add any necessary configuration.
|
36
|
-
**Remember to add your configuration to `.gitignore` to be sure
|
37
|
-
you never commit sensitive information to your repository.**
|
38
|
-
|
39
|
-
You can pass configurations as command line options. To see specific options for any method, add the `--help` flag.
|
40
|
-
For example to see the options for configuring S3:
|
41
|
-
|
42
|
-
```
|
43
|
-
$ octopress deploy init s3 --help
|
44
|
-
```
|
45
|
-
|
46
|
-
## Deploying your site.
|
47
|
-
|
48
|
-
Deployment is tailored to work with Jekyll, but it will work for
|
49
|
-
any static site. Simply make sure your configuration points to
|
50
|
-
the root directory of your static site (For Jekyll, that's
|
51
|
-
probably `_site`) then tell Octopress to deploy it.
|
52
|
-
|
53
|
-
```
|
54
|
-
$ octopress deploy
|
55
|
-
```
|
56
|
-
|
57
|
-
This will read your `_deploy.yml` configuration and deploy your
|
58
|
-
site. If you like, you can specify a configuration file.
|
59
|
-
|
60
|
-
```
|
61
|
-
$ octopress deploy --config _staging.yml
|
62
|
-
```
|
63
|
-
|
64
|
-
## Pull down your site
|
65
|
-
|
66
|
-
With the `pull` command, you can pull your site down into a local directory.
|
67
|
-
|
68
|
-
```
|
69
|
-
$ octopress deploy pull <DIR>
|
70
|
-
```
|
71
|
-
|
72
|
-
Mainly you'd do this if you're troubleshooting deployment and you want to see if it's working how you expected.
|
73
|
-
|
74
|
-
## Amazon S3 Deployment Configuration
|
75
|
-
|
76
|
-
To deploy with Amazon S3 you will need to install the [aws-sdk-v1 gem](https://rubygems.org/gems/aws-sdk-v1).
|
77
|
-
|
78
|
-
Important: when using S3, you must add your `_deploy.yml` to your .gitignore to prevent accidentally sharing
|
79
|
-
account access information.
|
80
|
-
|
81
|
-
| Config | Description | Default
|
82
|
-
|:--------------------|:------------------------------------------------------|:-------------|
|
83
|
-
| `method` | Deployment method, in this case use 's3' | |
|
84
|
-
| `site_dir` | Path to static site files | _site |
|
85
|
-
| `bucket_name` | S3 bucket name | |
|
86
|
-
| `access_key_id` | AWS access key | |
|
87
|
-
| `secret_access_key` | AWS secret key | |
|
88
|
-
| `distribution_id` | [optional] AWS CloudFront distribution id | |
|
89
|
-
| `remote_path` | Directory files should be synced to. | / |
|
90
|
-
| `verbose` | [optional] Display all file actions during deploy. | false |
|
91
|
-
| `incremental` | [optional] Incremental deploy (only updated files) | false |
|
92
|
-
| `region` | [optional] Region for your AWS bucket | us-east-1 |
|
93
|
-
| `delete` | Delete files in `remote_path` not found in `site_dir` | false |
|
94
|
-
| `headers` | Set headers for matched files | [] |
|
95
|
-
|
96
|
-
If you choose a bucket which doesn't yet exist, Octopress Deploy will offer to create it for you, and offer to configure it as a static website.
|
97
|
-
|
98
|
-
If you configure Octopress to delete files, all files found in the `remote_path` on S3 bucket will be removed unless they match local site files.
|
99
|
-
If `remote_path` is a subdirectory, only files in that subdirectory will be evaluated for deletion.
|
100
|
-
|
101
|
-
|
102
|
-
### S3 Headers
|
103
|
-
|
104
|
-
You can create an array of header congifs to set expiration, content and cache settings for any paths matching the `filename`.
|
105
|
-
|
106
|
-
| Header Config | Description | Default
|
107
|
-
|:--------------------|:------------------------------------------------------|:-------------|
|
108
|
-
| `filename` | A regex or a substring of the file to match | |
|
109
|
-
| `site_dir` | An http date or a number of years or days from now | |
|
110
|
-
| `content_type` | A string which is passed through to the headers | |
|
111
|
-
| `content_encoding` | A string which is passed through to the headers | |
|
112
|
-
| `cache_control` | A string which is passed through to the headers | |
|
113
|
-
|
114
|
-
Here is how you might set expriation and cache controls for CSS and Javascript files.
|
115
|
-
|
116
|
-
```yaml
|
117
|
-
headers:
|
118
|
-
- filename: '^assets.*\.js$'
|
119
|
-
expires: '+3 years'
|
120
|
-
cache_control: 'max-age=94608000'
|
121
|
-
content_type: 'application/javascript'
|
122
|
-
- filename: '^assets.*\.css$'
|
123
|
-
expires: '+3 years'
|
124
|
-
cache_control: 'max-age=94608000'
|
125
|
-
content_type: 'text/css'
|
126
|
-
```
|
127
|
-
|
128
|
-
### AWS config via ENV
|
129
|
-
|
130
|
-
If you prefer, you can store AWS access credentials in environment variables instead of a configuration file.
|
131
|
-
|
132
|
-
| Config | ENV var |
|
133
|
-
|:--------------------|:-------------------------------|
|
134
|
-
| `access_key_id` | AWS_ACCESS_KEY_ID |
|
135
|
-
| `secret_access_key` | AWS_SECRET_ACCESS_KEY |
|
136
|
-
|
137
|
-
Note: configurations in `_deploy.yml` will override environment variables so be sure to remove those if you decide to use environment variables.
|
138
|
-
|
139
|
-
### Add a new bucket
|
140
|
-
|
141
|
-
If your AWS credentials are properly configured, you can add a new bucket with this command.
|
142
|
-
|
143
|
-
```
|
144
|
-
$ octopress deploy add-bucket <NAME>
|
145
|
-
```
|
146
|
-
|
147
|
-
This will connect to AWS, create a new S3 bucket, and configure it for static website hosting. This command can use the settings in your deployment configuration or you can pass options to override those settings.
|
148
|
-
|
149
|
-
| Option | Description | Default
|
150
|
-
|:--------------|:-------------------------------------------------|:---------------|
|
151
|
-
| `--region` | Override the `region` configuration | |
|
152
|
-
| `--index` | Specify an index page for your site | index.html |
|
153
|
-
| `--error` | Specify an error page for your site | error.html |
|
154
|
-
| `--config` | Use a custom configuration file | _deploy.yml |
|
155
|
-
|
156
|
-
You'll only need to pass options if you want to override settings in your deploy config file.
|
157
|
-
|
158
|
-
## Git Deployment Configuration
|
159
|
-
|
160
|
-
Only `git_url` is required. Other options will default as shown below.
|
161
|
-
|
162
|
-
| Config | Description | Default
|
163
|
-
|:--------------|:-------------------------------------------------|:---------------|
|
164
|
-
| `method` | Deployment method, in this case use 'git' | |
|
165
|
-
| `site_dir` | Path to static site files | _site |
|
166
|
-
| `git_url` | Url for remote git repository | |
|
167
|
-
| `git_branch` | Deployment branch for git repository | master |
|
168
|
-
| `deploy_dir` | Directory where deployment files are staged | .deploy |
|
169
|
-
| `remote` | Name of git remote | deploy |
|
170
|
-
|
171
|
-
## Rsync Deployment Configuration
|
172
|
-
|
173
|
-
| Config | Description | Default
|
174
|
-
|:---------------|:--------------------------------------------------|:---------------|
|
175
|
-
| `method` | Deployment method, in this case use 'rsync' | |
|
176
|
-
| `site_dir` | Path to static site files | _site |
|
177
|
-
| `user` | ssh user, e.g user@host.com | |
|
178
|
-
| `port` | ssh port | 22 |
|
179
|
-
| `remote_path` | Remote destination's document root | |
|
180
|
-
| `exclude_from` | Path to a file containing rsync exclusions | |
|
181
|
-
| `exclude` | Inline list of rsync exclusions | |
|
182
|
-
| `include_from` | Path to a file containing rsync inclusions | |
|
183
|
-
| `include` | Inline list of inclusions to override exclusions | |
|
184
|
-
| `delete` | Delete files in destination not found in source | false |
|
185
|
-
|
186
|
-
You can rsync to a local directory by configuring `remote_path` and leaving off `user` and `port`.
|
18
|
+
For usage instructions, please refer to [octopress](https://github.com/octopress/octopress#deploy).
|
187
19
|
|
188
20
|
## Contributing
|
189
21
|
|
data/lib/octopress-deploy.rb
CHANGED
@@ -145,12 +145,3 @@ FILE
|
|
145
145
|
|
146
146
|
end
|
147
147
|
end
|
148
|
-
|
149
|
-
Octopress::Docs.add({
|
150
|
-
name: "Octopress Deploy",
|
151
|
-
gem: "octopress-deploy",
|
152
|
-
version: Octopress::Deploy::VERSION,
|
153
|
-
description: "Easily deploy any static site using S3, Git or Rsync.",
|
154
|
-
path: File.expand_path(File.join(File.dirname(__FILE__), "../")),
|
155
|
-
source_url: "https://github.com/octopress/deploy",
|
156
|
-
})
|
data/lib/octopress-deploy/git.rb
CHANGED
@@ -9,7 +9,7 @@ module Octopress
|
|
9
9
|
@remote = @options[:remote] || 'deploy'
|
10
10
|
@remote_path = @options[:remote_path] || ''
|
11
11
|
@remote_path = @remote_path.sub(/^\//,'') #remove leading slash
|
12
|
-
@
|
12
|
+
@local = File.expand_path(@options[:site_dir] || '_site')
|
13
13
|
@deploy_dir = File.expand_path(@options[:deploy_dir] || '.deploy')
|
14
14
|
@pull_dir = @options[:dir]
|
15
15
|
abort "Deploy Failed: Configure a git_url in #{@options[:config_file]} before deploying.".red if @repo.nil?
|
@@ -18,10 +18,10 @@ module Octopress
|
|
18
18
|
# Initialize, pull, copy and deploy.
|
19
19
|
#
|
20
20
|
def push
|
21
|
-
if File.exist?(@
|
21
|
+
if File.exist?(@local)
|
22
22
|
check_branch
|
23
23
|
init_repo
|
24
|
-
puts "Syncing #{@
|
24
|
+
puts "Syncing #{@local.sub(Dir.pwd.strip+'/', '')} files to #{@repo}."
|
25
25
|
FileUtils.cd @deploy_dir do
|
26
26
|
git_pull
|
27
27
|
clean_deploy
|
@@ -29,7 +29,7 @@ module Octopress
|
|
29
29
|
git_push
|
30
30
|
end
|
31
31
|
else
|
32
|
-
abort "Cannot find site build at #{@
|
32
|
+
abort "Cannot find site build at #{@local}. Be sure to build your site first."
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
@@ -47,7 +47,7 @@ module Octopress
|
|
47
47
|
end
|
48
48
|
|
49
49
|
if same_remote && same_branch
|
50
|
-
puts "Deploy to #{@branch} canceled:".red
|
50
|
+
puts "Deploy to #{@branch} canceled:".red
|
51
51
|
puts "You cannot deploy to the same branch you are working in. This will overwrite the source for your site.\n"
|
52
52
|
puts "First, back up your site's source to a branch:"
|
53
53
|
puts "\n git checkout -b source".yellow
|
@@ -152,7 +152,7 @@ CONFIG
|
|
152
152
|
#
|
153
153
|
def copy_site
|
154
154
|
target_dir = File.join(@deploy_dir, @remote_path).sub(/\/$/,'')
|
155
|
-
FileUtils.cp_r @
|
155
|
+
FileUtils.cp_r @local + '/.', target_dir
|
156
156
|
message = "Site updated at: #{Time.now.utc}"
|
157
157
|
`git add --all .`
|
158
158
|
`git commit -m \"#{message}\"`
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: octopress-deploy
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brandon Mathis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: colorator
|