sitemap_check 0.1.2 → 0.1.3
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/.ruby-version +1 -1
- data/.travis.yml +6 -4
- data/Dockerfile +18 -0
- data/Gemfile +1 -1
- data/README.md +18 -0
- data/Rakefile +12 -3
- data/bin/sitemap_check +3 -2
- data/lib/sitemap_check.rb +12 -11
- data/lib/sitemap_check/page.rb +1 -1
- data/lib/sitemap_check/sitemap.rb +6 -6
- data/lib/sitemap_check/version.rb +1 -1
- data/sitemap_check.gemspec +19 -19
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4e69b470a984ae38c8a202d0e735cbfa617b97fe
|
4
|
+
data.tar.gz: 16c23271e24dad8c8abf9fc426c90d2a327153fd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3b8b09b2b0aff796389dcaf4d118af6330bd426778ba51eb10fff276bfe7e06ba63af211c8660bbcac2d23d09c2914c5ad6b93bd1e3ecfbb6cee218ba71a19da
|
7
|
+
data.tar.gz: 3f0b6cdea46515e69f31405970deabac7de5c74bd7fb5945527de3a9a07218ff29971205cb1315e82f0a3a516a17d4db2e55439de00715cb75c10f698ce7279b
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.3.3
|
data/.travis.yml
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
|
-
- 2.
|
4
|
-
- 2.
|
5
|
-
-
|
3
|
+
- 2.4.0
|
4
|
+
- 2.3.3
|
5
|
+
- 2.2.6
|
6
|
+
- 2.1.10
|
6
7
|
- ruby-head
|
7
8
|
- jruby-1.7.19
|
8
|
-
before_install: gem install bundler
|
9
|
+
before_install: gem update --system && gem install bundler
|
10
|
+
after_success: bundle exec codeclimate-test-reporter
|
9
11
|
sudo: false
|
10
12
|
addons:
|
11
13
|
code_climate:
|
data/Dockerfile
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
FROM quay.io/assemblyline/alpine:3.5
|
2
|
+
|
3
|
+
RUN apk add --no-cache --virtual .builddeps \
|
4
|
+
build-base \
|
5
|
+
ruby-dev=2.3.3-r100 \
|
6
|
+
ruby=2.3.3-r100 \
|
7
|
+
zlib-dev \
|
8
|
+
&& gem install sitemap_check --no-document \
|
9
|
+
&& runDeps="$( \
|
10
|
+
scanelf --needed --nobanner --recursive /usr/lib/ruby/gems \
|
11
|
+
| awk '{ gsub(/,/, "\nso:", $2); print "so:" $2 }' \
|
12
|
+
| sort -u \
|
13
|
+
| xargs -r apk info --installed \
|
14
|
+
| sort -u \
|
15
|
+
)" \
|
16
|
+
&& apk add --no-cache --virtual .rundeps $runDeps ruby=2.3.3-r100 ca-certificates \
|
17
|
+
&& apk del --no-cache .builddeps
|
18
|
+
ENTRYPOINT ["sitemap_check"]
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Sitemap Check
|
2
2
|
|
3
|
+
[](https://travis-ci.org/reevoo/sitemap_check)
|
4
|
+
[](https://codeclimate.com/github/reevoo/sitemap_check)
|
5
|
+
[](https://codeclimate.com/github/reevoo/sitemap_check/coverage)
|
6
|
+
[](https://rubygems.org/gems/sitemap_check)
|
7
|
+
|
3
8
|
## Install
|
4
9
|
|
5
10
|
`gem install sitemap_check`
|
@@ -10,6 +15,18 @@
|
|
10
15
|
$ CHECK_URL=http://reevoo.com/sitemap_index.xml sitemap_check
|
11
16
|
```
|
12
17
|
|
18
|
+
`CHECK_URL` can also be passed as an argument to sitemap_check
|
19
|
+
|
20
|
+
```bash
|
21
|
+
$ sitemap_check http://reevoo.com/sitemap_index.xml
|
22
|
+
```
|
23
|
+
|
24
|
+
# Docker
|
25
|
+
|
26
|
+
```bash
|
27
|
+
$ docker run --rm quay.io/reevoo/sitemap_check https://reevoo.com/sitemap_index.xml
|
28
|
+
```
|
29
|
+
|
13
30
|
## Config
|
14
31
|
|
15
32
|
Config can be set with enviroment variables
|
@@ -18,3 +35,4 @@ variable | default | description
|
|
18
35
|
-------------|---------|-------------
|
19
36
|
`CHECK_URL` | `nil` | The url of the sitemap or sitemap index to check
|
20
37
|
`CONCURRENCY`| `10` | The number of concurent threads to use when checking the sitemap
|
38
|
+
|
data/Rakefile
CHANGED
@@ -1,10 +1,19 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
1
|
+
require "bundler/gem_tasks"
|
2
|
+
require "reevoocop/rake_task"
|
3
|
+
require "rspec/core/rake_task"
|
4
4
|
|
5
5
|
ReevooCop::RakeTask.new(:reevoocop)
|
6
6
|
RSpec::Core::RakeTask.new(:spec)
|
7
7
|
|
8
|
+
DOCKER_REPO = "quay.io/reevoo/sitemap_check"
|
9
|
+
|
8
10
|
task default: [:spec, :reevoocop]
|
9
11
|
task release: [:spec, :reevoocop]
|
10
12
|
task build: [:spec, :reevoocop]
|
13
|
+
|
14
|
+
task :release do
|
15
|
+
sh "docker build -t #{DOCKER_REPO}:#{SitemapCheck::VERSION} ."
|
16
|
+
sh "docker build -t #{DOCKER_REPO}:latest ."
|
17
|
+
sh "docker push #{DOCKER_REPO}:#{SitemapCheck::VERSION}"
|
18
|
+
sh "docker push #{DOCKER_REPO}:latest"
|
19
|
+
end
|
data/bin/sitemap_check
CHANGED
data/lib/sitemap_check.rb
CHANGED
@@ -1,19 +1,20 @@
|
|
1
|
-
require
|
2
|
-
require
|
1
|
+
require "colorize"
|
2
|
+
require "sitemap_check/sitemap"
|
3
3
|
|
4
4
|
class SitemapCheck
|
5
5
|
|
6
6
|
|
7
|
-
def self.check
|
7
|
+
def self.check(url)
|
8
8
|
$stdout.sync = true
|
9
|
-
new.check
|
9
|
+
new(url).check
|
10
10
|
end
|
11
11
|
|
12
|
-
def initialize(http = HTTPClient.new)
|
12
|
+
def initialize(url = nil, http = HTTPClient.new)
|
13
13
|
self.start_time = Time.now
|
14
14
|
self.exit_code = 0
|
15
|
-
|
16
|
-
|
15
|
+
check_url = url || ENV.fetch("CHECK_URL")
|
16
|
+
puts "Expanding Sitemaps from #{check_url}"
|
17
|
+
self.sitemaps = Sitemap.new(check_url, http).sitemaps
|
17
18
|
end
|
18
19
|
|
19
20
|
def check
|
@@ -30,7 +31,7 @@ class SitemapCheck
|
|
30
31
|
private
|
31
32
|
|
32
33
|
def stats
|
33
|
-
puts "checked #{sitemaps.count} sitemaps and #{checked_pages} in #{time_taken} seconds"
|
34
|
+
puts "checked #{sitemaps.count} sitemaps and #{checked_pages} pages in #{time_taken} seconds"
|
34
35
|
puts "thats #{pages_per_second} pages per second"
|
35
36
|
end
|
36
37
|
|
@@ -51,7 +52,7 @@ class SitemapCheck
|
|
51
52
|
puts " #{sitemap.url} does not exist".red.bold
|
52
53
|
self.exit_code = 1
|
53
54
|
end
|
54
|
-
puts
|
55
|
+
puts ""
|
55
56
|
end
|
56
57
|
|
57
58
|
def good_sitemaps
|
@@ -73,7 +74,7 @@ class SitemapCheck
|
|
73
74
|
nothing_doing
|
74
75
|
end
|
75
76
|
end
|
76
|
-
puts
|
77
|
+
puts ""
|
77
78
|
end
|
78
79
|
|
79
80
|
def missing_pages(sitemap)
|
@@ -86,6 +87,6 @@ class SitemapCheck
|
|
86
87
|
end
|
87
88
|
|
88
89
|
def nothing_doing
|
89
|
-
puts
|
90
|
+
puts " this sitemap did not contain any pages".green
|
90
91
|
end
|
91
92
|
end
|
data/lib/sitemap_check/page.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require
|
5
|
-
require
|
1
|
+
require "httpclient"
|
2
|
+
require "sitemap_check/page"
|
3
|
+
require "sitemap_check/logger"
|
4
|
+
require "nokogiri"
|
5
|
+
require "colorize"
|
6
6
|
|
7
7
|
class SitemapCheck
|
8
8
|
class Sitemap
|
@@ -44,7 +44,7 @@ class SitemapCheck
|
|
44
44
|
private
|
45
45
|
|
46
46
|
def concurency
|
47
|
-
ENV.fetch(
|
47
|
+
ENV.fetch("CONCURRENCY", "10").to_i
|
48
48
|
end
|
49
49
|
|
50
50
|
def find_missing_pages # rubocop:disable Metrics/AbcSize
|
data/sitemap_check.gemspec
CHANGED
@@ -1,30 +1,30 @@
|
|
1
1
|
# coding: utf-8
|
2
|
-
lib = File.expand_path(
|
2
|
+
lib = File.expand_path("../lib", __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require
|
4
|
+
require "sitemap_check/version"
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
7
|
+
spec.name = "sitemap_check"
|
8
8
|
spec.version = SitemapCheck::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
9
|
+
spec.authors = ["Ed Robinson"]
|
10
|
+
spec.email = ["ed@reevoo.com"]
|
11
11
|
|
12
|
-
spec.summary =
|
13
|
-
spec.homepage =
|
14
|
-
spec.license =
|
12
|
+
spec.summary = "Check for broken links in your sitemap"
|
13
|
+
spec.homepage = "https://github.com/reevoo/sitemap_check"
|
14
|
+
spec.license = "MIT"
|
15
15
|
|
16
16
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(/^spec\//) }
|
17
|
-
spec.bindir =
|
17
|
+
spec.bindir = "bin"
|
18
18
|
spec.executables = spec.files.grep(/^bin\//) { |f| File.basename(f) }
|
19
|
-
spec.require_paths = [
|
19
|
+
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_dependency
|
22
|
-
spec.add_dependency
|
23
|
-
spec.add_dependency
|
24
|
-
spec.add_development_dependency
|
25
|
-
spec.add_development_dependency
|
26
|
-
spec.add_development_dependency
|
27
|
-
spec.add_development_dependency
|
28
|
-
spec.add_development_dependency
|
29
|
-
spec.add_development_dependency
|
21
|
+
spec.add_dependency "nokogiri", "~> 1.5"
|
22
|
+
spec.add_dependency "httpclient", "~> 2.6"
|
23
|
+
spec.add_dependency "colorize", "~> 0.7"
|
24
|
+
spec.add_development_dependency "bundler", "~> 1.9"
|
25
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
26
|
+
spec.add_development_dependency "rspec", "~> 3.1"
|
27
|
+
spec.add_development_dependency "reevoocop"
|
28
|
+
spec.add_development_dependency "pry"
|
29
|
+
spec.add_development_dependency "codeclimate-test-reporter"
|
30
30
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sitemap_check
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ed Robinson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-02-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -149,6 +149,7 @@ files:
|
|
149
149
|
- ".ruby-version"
|
150
150
|
- ".travis.yml"
|
151
151
|
- CODE_OF_CONDUCT.md
|
152
|
+
- Dockerfile
|
152
153
|
- Gemfile
|
153
154
|
- LICENCE
|
154
155
|
- README.md
|
@@ -180,7 +181,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
180
181
|
version: '0'
|
181
182
|
requirements: []
|
182
183
|
rubyforge_project:
|
183
|
-
rubygems_version: 2.
|
184
|
+
rubygems_version: 2.6.10
|
184
185
|
signing_key:
|
185
186
|
specification_version: 4
|
186
187
|
summary: Check for broken links in your sitemap
|